Function at 0x1400031f0
Capabilities:
Accept command line arguments
Compare security identifiers
Create directory
Create process on windows
Create thread
Delete directory
Delete registry key
Delete registry value
Find taskbar
Get common file path
Get program files directory
Get token membership
Impersonate user
Persist via com hijack
Persist via run registry key
Query or enumerate registry value
Self delete
Set registry value
Shutdown system
Terminate process

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x1390]
mov eax, 0x1490
call fcn.140024e40
sub rsp, rax
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x1380], rax
mov r12, rcx
mov qword [rbp + 0x108], rcx
lea rcx, [0x140037e40]
mov r14, r8
call fcn.1400013d0
xor ebx, ebx
mov rcx, 0xfffffffffffffffc
mov dword [rsp + 0x60], ebx
mov r15d, ebx
call qword [sym.imp.USER32.dll_SetProcessDpiAwarenessContext]
lea rdx, [rbp + 0x118]
mov dword [rbp + 0x118], ebx
mov rcx, r14
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
xor edx, edx
lea rcx, [rbp + 0x550]
mov r8d, 0x208
mov rdi, rax
call fcn.140024fe0
cmp dword [rbp + 0x118], 1
jl 0x140003391
mov rcx, qword [rdi]
lea rdx, str._extract
call fcn.140015de4
test eax, eax
jne 0x140003391
cmp dword [rbp + 0x118], 2
jl 0x1400032d1
mov r8, qword [rdi + 8]
lea rcx, [rbp + 0x550]
mov r9d, 0x104
mov edx, r9d
call fcn.1400162dc
mov rcx, qword [rdi + 8]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x1400032e3
lea rdx, [rbp + 0x550]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea rcx, [rsp + 0x68]
call fcn.140002020
test rax, rax
mov r14d, ebx
mov rdi, rax
setne r14b
test rax, rax
je 0x140003365
xor r9d, r9d
mov dword [rsp + 0x20], ebx
lea r8, [rbp + 0x550]
xor edx, edx
mov rcx, rax
call fcn.1400028c0
mov rsi, qword [rdi + 0x110]
mov r14d, eax
test rsi, rsi
je 0x140003352
mov rcx, qword [rsi]
call fcn.1400159d8
cmp dword [rsi + 0x68], 8
mov qword [rsi], rbx
jne 0x140003340
lea rcx, [rsi + 8]
call fcn.14000ad90
mov rcx, rsi
mov dword [rsi + 0x68], ebx
call fcn.1400159d8
mov qword [rdi + 0x110], rbx
mov rdx, qword [rdi + 0x60]
mov rcx, qword [rdi + 0x38]
call qword [rdi + 0x28]
mov rcx, rdi
call fcn.1400159d8
mov rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x140003384
mov rcx, qword [rdi]
test rcx, rcx
je 0x14000337c
call fcn.1400159d8
mov rcx, rdi
call fcn.1400159d8
test r14d, r14d
sete bl
mov eax, ebx
jmp 0x140005884
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.IsWow64Process2
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
je 0x1400033e5
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rbp + 0x104]
lea rdx, [rbp + 0x100]
call rsi
test eax, eax
je 0x1400033e5
mov eax, 0xaa64
cmp word [rbp + 0x104], ax
je 0x1400058ad
xor edx, edx
mov qword [rsp + 0x14d8], r13
mov r8d, 0x104
lea rcx, [rbp + 0x760]
call fcn.140024fe0
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1400058a5
cmp dword [rbp + 0x118], 1
lea r13, str._uninstall_silent
jl 0x140003454
mov rcx, qword [rdi]
lea rdx, str._uninstall
call fcn.140015de4
test eax, eax
je 0x140003450
mov rcx, qword [rdi]
mov rdx, r13
call fcn.140015de4
test eax, eax
jne 0x140003454
mov esi, ebx
jmp 0x140003459
mov esi, 1
lea rcx, [rbp + 0x760]
call qword [sym.imp.SHLWAPI.dll_PathStripPathW]
lea rdx, str.ep_uninstall.exe
lea rcx, [rbp + 0x760]
call fcn.140015de4
test eax, eax
jne 0x14000348d
mov rcx, qword [rdi]
mov rdx, r13
mov esi, ebx
call fcn.140015de4
mov r15d, eax
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1400058a5
cmp dword [rbp + 0x118], 1
jl 0x1400034d0
mov rcx, qword [rdi]
lea rdx, str._update_silent
call fcn.140015de4
mov dword [rbp + 0x11c], 1
test eax, eax
je 0x1400034d6
mov dword [rbp + 0x11c], ebx
test esi, esi
jne 0x140003539
mov rcx, qword [rdi]
lea rdx, str._uninstall
call fcn.140015de4
test eax, eax
je 0x1400034f2
test r15d, r15d
je 0x140003539
mov r9d, 0x100
mov word [rbp + 0x130], bx
lea r8, [rbp + 0x130]
mov edx, 0x12e
mov rcx, r12
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x124
lea r8, [0x140030e48]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
je 0x140005930
lea rax, [rsp + 0x70]
mov dword [rbp + 0x100], ebx
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0xf8]
mov dword [rsp + 0x48], ebx
mov r9d, 0x220
mov dword [rsp + 0x40], ebx
mov r8d, 0x20
mov dword [rsp + 0x38], ebx
mov dl, 2
mov dword [rsp + 0x30], ebx
mov edi, ebx
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x70], rbx
mov dword [rbp + 0xf8], ebx
mov word [rbp + 0xfc], 0x500
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x1400035ae
mov rdx, qword [rsp + 0x70]
lea r8, [rbp + 0x100]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
test eax, eax
jne 0x1400035b6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x1400035c6
call qword [sym.imp.ADVAPI32.dll_FreeSid]
test edi, edi
jne 0x140005955
cmp dword [rbp + 0x100], ebx
je 0x140005955
mov qword [rsp + 0x68], rbx
mov r15, rbx
test esi, esi
je 0x1400035fc
lea rcx, [rsp + 0x68]
call fcn.140002020
mov r15, rax
test rax, rax
je 0x1400058a5
lea rax, [rbp + 0x124]
mov dword [rbp + 0x120], ebx
mov qword [rsp + 0x30], rax
lea r8, str.UndockingDisabled
lea rax, [rbp + 0x120]
mov dword [rbp + 0x124], 4
mov qword [rsp + 0x28], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionShellUpdatePackages
mov r9d, 0x18
mov qword [rsp + 0x20], rbx
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
cmp dword [rbp + 0x120], ebx
je 0x1400036ba
mov edx, esi
mov word [rbp + 0x130], bx
xor edx, 1
lea r8, [rbp + 0x130]
add edx, 0x12f
mov r9d, 0x100
mov rcx, r12
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x24
lea r8, [0x140030e48]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140005938
lea r8, str.UndockingDisabled
mov rcx, 0xffffffff80000002
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionShellUpdatePackages
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyValueW]
lea r9, str.Globalep_setup_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
lea rax, [rbp + 0x550]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140030920]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
xor edx, edx
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140003729
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x140005806
mov r14d, 1
lea rcx, str.Shell_TrayWnd
mov r12, 0xffffffffffffffff
mov dword [rbp + 0x100], r14d
xor edx, edx
mov qword [rbp - 0x80], r12
call qword [sym.imp.USER32.dll_FindWindowW]
mov r13, rax
test rax, rax
je 0x1400039af
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov r8d, dword [rbp + 0xf8]
test r8d, r8d
je 0x14000392b
xor edx, edx
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
je 0x1400037b2
lea r8, [rbp - 0x80]
mov edx, 0xb
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rbp - 0x80], rbx
je 0x14000392b
mov qword [rsp + 0x70], r12
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x70]
mov edx, 0xb
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
cmp qword [rsp + 0x70], r12
je 0x14000392b
xor ecx, ecx
mov dword [rbp + 0x104], ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 0x80]
lea rax, [rbp + 0x104]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov edx, r14d
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x140003920
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140003920
mov ecx, dword [rbp + 0x104]
call fcn.1400159ec
mov r12, rax
test rax, rax
je 0x140003919
mov r9d, dword [rbp + 0x104]
lea rax, [rbp + 0x104]
mov rcx, qword [rbp - 0x80]
mov r8, r12
mov edx, r14d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x140003911
xor ecx, ecx
mov dword [rbp + 0x104], ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rsp + 0x70]
lea rax, [rbp + 0x104]
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov edx, r14d
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x140003911
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140003911
mov ecx, dword [rbp + 0x104]
call fcn.1400159ec
mov rdi, rax
test rax, rax
je 0x140003911
mov r9d, dword [rbp + 0x104]
lea rax, [rbp + 0x104]
mov rcx, qword [rsp + 0x70]
mov r8, rdi
mov edx, r14d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x140003909
mov rdx, qword [rdi]
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_EqualSid]
test eax, eax
je 0x140003909
mov rcx, qword [rbp - 0x80]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, 0xffffffffffffffff
mov qword [rbp - 0x80], rcx
mov rcx, rdi
call fcn.1400159d8
mov rcx, r12
call fcn.1400159d8
mov r12, 0xffffffffffffffff
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rax, [rsp + 0x78]
mov qword [rsp + 0x78], r12
mov qword [rsp + 0x30], rax
xor r9d, r9d
mov dword [rsp + 0x28], 0x7d0
xor r8d, r8d
mov edx, 0x5b4
mov dword [rsp + 0x20], 2
mov rcx, r13
call qword [sym.imp.USER32.dll_SendMessageTimeoutW]
test rax, rax
jne 0x1400039af
cmp qword [rsp + 0x78], rbx
je 0x1400039af
mov qword [rsp + 0x28], rbx
lea r8, [fcn.140001640]
xor r9d, r9d
mov dword [rsp + 0x20], ebx
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rdi, rax
test rax, rax
je 0x1400039a8
mov edx, 0x7d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400039af
xor ecx, ecx
call fcn.140001640
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._taskkill.exe
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
xorps xmm0, xmm0
lea rax, [rbp + 0x550]
movups xmmword [rbp], xmm0
lea rcx, [rbp]
mov dword [rbp], 0x70
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x18], rax
lea rax, str._f__im_explorer.exe
movups xmmword [rbp + 0x30], xmm0
mov dword [rbp + 4], 0x40
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x20], rax
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x38], rbx
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 0x10], rbx
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 8], rbx
mov dword [rbp + 0x30], 2
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003a66
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x140003a66
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0x68]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
lea r9, str.Globalep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov r12, rax
test rax, rax
je 0x140003aa6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov edi, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, 0xb7
jmp 0x140003aaf
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x140003ac3
mov edx, r14d
call fcn.1400010d0
mov edx, 3
call fcn.1400010d0
mov edx, 0x104
lea rcx, [rbp + 0x1170]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._sc.exe
mov edx, 0x104
lea rcx, [rbp + 0x1170]
call fcn.14001506c
xorps xmm0, xmm0
lea rax, str.runas
movups xmmword [rbp + 0x70], xmm0
lea rcx, [rbp + 0x70]
mov dword [rbp + 0x70], 0x70
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x80], rax
lea rax, [rbp + 0x1170]
movups xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0x88], rax
lea rax, str.stop_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0x90], rax
movups xmmword [rbp + 0xb0], xmm0
mov dword [rbp + 0x74], 0x40
movups xmmword [rbp + 0xc0], xmm0
mov qword [rbp + 0x78], rbx
movups xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0x98], rbx
mov dword [rbp + 0xa0], ebx
mov qword [rbp + 0xa8], rbx
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003bba
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x140003bba
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0xd8]
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
lea rcx, str.ExplorerPatcher_GUI_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
call qword [sym.imp.USER32.dll_FindWindowW]
mov rdi, rax
test rax, rax
je 0x140003cc3
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov r8d, dword [rbp + 0xf8]
test r8d, r8d
je 0x140003cc3
xor edx, edx
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r12, rax
test rax, rax
je 0x140003cc3
xor r9d, r9d
mov edx, 0x401
mov r8, r14
mov rcx, rdi
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
mov rcx, r12
mov dword [rbp + 0x104], eax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, r12
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
lea rdx, str.SoftwareExplorerPatcher
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x2011f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x70], rbx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rsp + 0x70]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140003cc3
lea rax, [rbp + 0x104]
mov dword [rsp + 0x28], 4
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, str.OpenPropertiesAtNextStart
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x70]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rax, [rbp + 0x550]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140030920]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
test esi, esi
je 0x140003d46
mov r13, qword [rbp + 0x108]
lea rax, [0x140031828]
mov qword [rsp + 0x28], rax
xor r9d, r9d
lea rax, [rbp + 0x550]
xor r8d, r8d
mov rdx, r13
mov qword [rsp + 0x20], rax
mov ecx, esi
call fcn.1400026a0
mov r14d, eax
mov dword [rbp + 0x100], eax
jmp 0x140003edc
lea rax, [rsp + 0x78]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SOFTWAREClassesCLSIDD17F1E1A_5919_4427_8F89_A1A8503CA3EBInProcServer32
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov rcx, qword [rsp + 0x78]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140003d89
mov dword [rsp + 0x60], r14d
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140003d8e
mov qword [rsp + 0x78], rbx
cmp dword [rsp + 0x60], ebx
je 0x140003ed5
lea rax, [rbp + 0x138]
mov dword [rbp + 0x130], 0x75002f
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rbp + 0x134], 0x220020
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, str.ExplorerPatcherExplorerPatcher.amd64.dll_
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rdx, [rbp + 0x130]
lea rcx, [0x140030e30]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x970]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._regsvr32.exe
mov edx, 0x208
lea rcx, [rbp + 0x970]
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [0x140030e30]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x970]
movups xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x70], 0x70
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x130]
movups xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x6c], 0x40
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x50], rax
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rbx
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x60], rbx
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x40], r14d
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003ed5
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140003ed5
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 8]
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xf8]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r13, qword [rbp + 0x108]
test r14d, r14d
je 0x140003fc9
lea rax, [0x140031968]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x1400319a0]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x140003fc9
lea rax, [0x1400319c0]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, str.ExplorerPatcher.amd64.dll
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x140003fc9
lea rax, [0x140031a18]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140031a30]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x140003fc9
lea rax, [0x140031a40]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140031a58]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov r14d, eax
mov dword [rbp + 0x100], eax
lea r12, [0x140031b00]
lea rax, [0x140031a68]
lea rdi, [0x140031aa8]
test esi, esi
je 0x140004078
test r14d, r14d
je 0x140004078
mov qword [rsp + 0x28], rax
lea r9, str.ep_weather_host.dll
lea rax, [rbp + 0x550]
mov r8, r15
mov rdx, r13
mov qword [rsp + 0x20], rax
mov ecx, esi
call fcn.1400026a0
mov dword [rbp + 0x100], eax
test eax, eax
je 0x140004078
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], rdi
lea r9, [0x140031ae0]
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.1400026a0
mov dword [rbp + 0x100], eax
test eax, eax
je 0x140004078
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], r12
lea r9, str.WebView2Loader.dll
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.1400026a0
mov dword [rbp + 0x100], eax
lea rax, [rbp + 0x550]
mov r9, r13
mov qword [rsp + 0x28], rax
lea rcx, [rbp + 0x100]
mov edx, esi
mov qword [rsp + 0x20], r15
call fcn.140002d40
lea rax, str.ar_SA
mov qword [rbp + 0x340], rax
lea rax, str.bg_BG
mov qword [rbp + 0x348], rax
lea rax, str.ca_ES
mov qword [rbp + 0x350], rax
lea rax, str.cs_CZ
mov qword [rbp + 0x358], rax
lea rax, str.da_DK
mov qword [rbp + 0x360], rax
lea rax, str.de_DE
mov qword [rbp + 0x368], rax
lea rax, str.el_GR
mov qword [rbp + 0x370], rax
lea rax, str.en_GB
mov qword [rbp + 0x378], rax
lea rax, [0x140031388]
mov qword [rbp + 0x380], rax
lea rax, str.es_ES
mov qword [rbp + 0x388], rax
lea rax, str.es_MX
mov qword [rbp + 0x390], rax
lea rax, str.et_EE
mov qword [rbp + 0x398], rax
lea rax, str.eu_ES
mov qword [rbp + 0x3a0], rax
lea rax, str.fi_FI
mov qword [rbp + 0x3a8], rax
lea rax, str.fr_CA
mov qword [rbp + 0x3b0], rax
lea rax, str.fr_FR
mov qword [rbp + 0x3b8], rax
lea rax, str.gl_ES
mov qword [rbp + 0x3c0], rax
lea rax, str.he_IL
mov qword [rbp + 0x3c8], rax
lea rax, str.hr_HR
mov qword [rbp + 0x3d0], rax
lea rax, str.hu_HU
mov qword [rbp + 0x3d8], rax
lea rax, str.id_ID
mov qword [rbp + 0x3e0], rax
lea rax, str.it_IT
mov qword [rbp + 0x3e8], rax
lea rax, str.ja_JP
mov qword [rbp + 0x3f0], rax
lea rax, str.ko_KR
mov qword [rbp + 0x3f8], rax
lea rax, str.lt_LT
mov qword [rbp + 0x400], rax
lea rax, str.lv_LV
mov qword [rbp + 0x408], rax
lea rax, str.nb_NO
mov qword [rbp + 0x410], rax
lea rax, str.nl_NL
mov qword [rbp + 0x418], rax
lea rax, str.pl_PL
mov qword [rbp + 0x420], rax
lea rax, str.pt_BR
mov qword [rbp + 0x428], rax
lea rax, str.pt_PT
mov qword [rbp + 0x430], rax
lea rax, str.ro_RO
mov qword [rbp + 0x438], rax
lea rax, str.ru_RU
mov qword [rbp + 0x440], rax
lea rax, str.sk_SK
mov qword [rbp + 0x448], rax
lea rax, str.sl_SI
mov qword [rbp + 0x450], rax
lea rax, str.sr_Latn_RS
mov qword [rbp + 0x458], rax
lea rax, str.sv_SE
mov qword [rbp + 0x460], rax
mov edi, dword [rbp + 0x100]
lea rax, str.th_TH
mov qword [rbp + 0x468], rax
lea rax, str.tr_TR
mov qword [rbp + 0x470], rax
lea rax, str.uk_UA
mov qword [rbp + 0x478], rax
lea rax, str.vi_VN
mov qword [rbp + 0x480], rax
lea rax, str.zh_CN
mov qword [rbp + 0x488], rax
lea rax, str.zh_TW
mov qword [rbp + 0x490], rax
lea rax, str.pris
mov qword [rbp + 0x498], rax
lea rax, str.StartUI
mov qword [rbp + 0x4a0], rax
mov r14, rbx
test edi, edi
je 0x1400043b0
cmp r14, 0x2d
jae 0x1400043b0
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
mov r8, qword [rbp + r14*8 + 0x340]
lea rcx, [rbp + 0x130]
mov edx, 0x104
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400043a5
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea rcx, [rbp + 0x130]
call fcn.140003050
mov edi, eax
inc r14
test edi, edi
jne 0x140004321
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov ecx, dword [0x140037e4c]
cmp ecx, 0x585c
jbe 0x14000442c
lea eax, [rcx - 0x586c]
mov r14d, 1
cmp eax, 0x9e4
ja 0x14000442f
mov r14d, ebx
cmp ecx, 0x6294
mov dword [rbp + 0x104], r14d
mov r12d, ebx
setae r12b
test esi, esi
je 0x140004549
lea r9, [rbp + 0x100]
mov dword [rbp + 0xf8], ebx
xor r8d, r8d
mov dword [rbp + 0x100], ebx
lea rdx, [rbp + 0xf8]
mov ecx, 8
mov r14, rbx
call qword [sym.imp.KERNEL32.dll_GetUserPreferredUILanguages]
test eax, eax
je 0x1400044ce
mov edx, dword [rbp + 0x100]
mov rcx, 0xffffffffffffffff
mov eax, 2
mul rdx
cmovb rax, rcx
mov rcx, rax
call fcn.1400159ec
mov r14, rax
test rax, rax
je 0x1400044ce
lea r9, [rbp + 0x100]
mov r8, rax
lea rdx, [rbp + 0xf8]
mov ecx, 8
call qword [sym.imp.KERNEL32.dll_GetUserPreferredUILanguages]
test eax, eax
jne 0x1400044ce
mov rcx, r14
call fcn.1400159d8
mov r14, rbx
test r14, r14
lea rax, [0x140031388]
cmovne rax, r14
mov qword [rsp + 0x78], rax
test r12d, r12d
je 0x140004512
test edi, edi
je 0x140004512
mov r9, rax
mov dword [rsp + 0x20], 1
lea r8, [rbp + 0x550]
mov rcx, r15
lea rdx, str.pnidui_
call fcn.1400028c0
mov edi, eax
mov rax, qword [rsp + 0x78]
mov r14d, dword [rbp + 0x104]
test r14d, r14d
je 0x140004549
test edi, edi
je 0x140004d52
mov r9, rax
mov dword [rsp + 0x20], 2
lea r8, [rbp + 0x550]
mov rcx, r15
lea rdx, str.Windows.UI.ShellCommon_
call fcn.1400028c0
mov edi, eax
test edi, edi
je 0x140004d52
test esi, esi
je 0x14000455f
mov ecx, 1
test r12d, r12d
jne 0x140004561
mov ecx, ebx
lea rax, str.pnidui.dll
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140031e78]
lea rax, [rbp + 0x550]
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov edi, eax
test eax, eax
je 0x140004d52
test r12d, r12d
je 0x140004628
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionExplorerShellServiceObjectsC2796011_81BA_4148_8FCA_C6643245113F
mov rcx, 0xffffffff80000002
test esi, esi
je 0x140004622
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x78]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov qword [rsp + 0x30], rbx
xor r8d, r8d
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], ebx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rsp + 0x78]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140004628
lea rax, [0x1400308f0]
mov dword [rsp + 0x28], 2
mov r9d, 1
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, str.AutoStart
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x78]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140004628
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea rax, [rbp + 0x550]
mov r8, r15
lea r12, str.dxgi.dll
mov rdx, r13
mov qword [rsp + 0x28], r12
lea r9, str.ExplorerPatcher.amd64.dll
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov edi, eax
test eax, eax
je 0x140004d52
mov edx, 0x104
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str.SystemAppsMicrosoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], r12
lea r9, str.ExplorerPatcher.amd64.dll
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.1400026a0
mov edi, eax
test eax, eax
je 0x140004d52
test esi, esi
je 0x1400046f2
cmp dword [0x140037e44], ebx
jne 0x1400046e1
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
mov ecx, 1
jae 0x1400046f4
mov ecx, ebx
lea rax, [0x140032028]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, str.ep_startmenu.dll
lea rax, [rbp + 0x550]
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov edi, eax
test eax, eax
je 0x140004d52
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [0x140032060]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140004d52
cmp dword [0x140037e44], ebx
jne 0x1400047a1
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
jb 0x140004825
test esi, esi
je 0x140004825
mov edx, 0x104
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str.wincorlib.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400160d0
lea r8, str.wincorlib_orig.dll
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
xor r8d, r8d
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x340]
call qword [sym.imp.KERNEL32.dll_CreateSymbolicLinkW]
movzx edi, al
test edi, edi
je 0x140004d52
test esi, esi
je 0x14000483b
mov ecx, 1
test r14d, r14d
jne 0x14000483d
mov ecx, ebx
lea rax, str.StartUI_.dll
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x1400320f0]
lea rax, [rbp + 0x550]
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.1400026a0
mov edi, eax
test eax, eax
je 0x140004d52
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, str.AppResolverLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140004d52
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, str.StartTileDataLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140004d52
cmp dword [0x140037e44], ebx
jne 0x14000494f
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400049bf
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test edi, edi
je 0x140004d52
cmp dword [0x140037e44], ebx
jne 0x1400049db
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x140004ab5
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, str.en_US
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140004ab5
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
lea r8, str.StartTileDataLegacy.dll.mui
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140004ab5
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140004d52
cmp dword [0x140037e44], ebx
jne 0x140004ad1
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x140004bab
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, str.pris2
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140004bab
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
lea r8, str.Windows.UI.ShellCommon.en_US.pri
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140004bab
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140004d52
mov edx, 0x104
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str.SystemAppsShellExperienceHost_cw5n1h2txyewy
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
cmp dword [0x140037e44], ebx
jne 0x140004bf1
lea rcx, [0x140037e40]
call fcn.1400013d0
cmp dword [0x140037e4c], 0x55ec
jb 0x140004c24
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], r12
lea r9, str.ExplorerPatcher.amd64.dll
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.1400026a0
mov edi, eax
test edi, edi
je 0x140004d52
mov edx, 0x104
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov rdi, 0xffffffffffffffff
lea rax, [rbp + 0x550]
mov rcx, rdi
nop
inc rcx
cmp word [rax + rcx*2], bx
jne 0x140004c50
mov edx, 0x104
lea r8, str._rundll32.exe__
sub edx, ecx
lea rcx, [rbp + 0x550]
call fcn.14001506c
lea rcx, [rbp + 0x550]
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], bx
jne 0x140004c80
mov eax, eax
lea rcx, [rbp + 0x550]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x26
lea rdi, [rbp + rax*2 + 0x54c]
lea rax, [rcx + rax*2]
xor ecx, ecx
mov qword [rsp + 0x20], rax
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, str.ExplorerPatcherep_gui.dll__ZZGUI
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
lea r8, [rdi + 2]
mov word [rdi], bx
lea rdx, [rbp + 0x550]
mov ecx, esi
call fcn.140001730
xor edx, edx
lea rcx, [rbp + 0x550]
mov r8d, 0x104
mov edi, eax
call fcn.140024fe0
test edi, edi
je 0x140004d52
lea rax, [rbp + 0x552]
mov r14d, 0x22
xor r9d, r9d
mov word [rbp + 0x550], r14w
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, str.ExplorerPatcherep_setup.exe___uninstall
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
lea rdx, [rbp + 0x550]
mov ecx, esi
call fcn.140001af0
mov edi, eax
lea rcx, str.start_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
test esi, esi
lea rax, str.delete_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
cmovne rax, rcx
lea rcx, [rbp + 0x70]
mov qword [rbp + 0x90], rax
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140004db9
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x140004db9
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0xd8]
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rbp + 0xd8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
je 0x140005141
mov dword [rbp + 0x130], 0x73002f
mov dword [rbp + 0x134], 0x220020
test esi, esi
jne 0x140004ded
mov dword [rbp + 0x136], 0x75002f
mov dword [rbp + 0x13a], 0x220020
test esi, esi
lea rax, [rbp + 0x138]
mov r14d, 6
mov edx, 0x26
cmovne r14, rbx
xor r9d, r9d
add rax, r14
xor r8d, r8d
xor ecx, ecx
mov qword [rsp + 0x20], rax
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, str.ExplorerPatcherep_weather_host.dll_
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rdx, [rbp + 0x130]
lea rcx, [0x140030e30]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x970]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._regsvr32.exe
mov edx, 0x208
lea rcx, [rbp + 0x970]
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [0x140030e30]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x970]
movups xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x70], 0x70
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x130]
movups xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x6c], 0x40
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x50], rax
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rbx
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x60], rbx
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x40], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140004f28
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140004f28
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 8]
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xf8]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rbp + 0x130], 0x73002f
mov dword [rbp + 0x134], 0x220020
test esi, esi
jne 0x140004f54
mov dword [rbp + 0x136], 0x75002f
mov dword [rbp + 0x13a], 0x220020
lea rax, [rbp + 0x138]
xor r9d, r9d
add rax, r14
xor r8d, r8d
mov edx, 0x26
mov qword [rsp + 0x20], rax
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, str.ExplorerPatcherep_weather_host_stub.dll_
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rdx, [rbp + 0x130]
lea rcx, [0x140030e30]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x970]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str._regsvr32.exe
mov edx, 0x208
lea rcx, [rbp + 0x970]
call fcn.14001506c
lea rdx, [rbp + 0x970]
lea rcx, [0x140030e30]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x970]
movups xmmword [rbp - 0x70], xmm0
lea rcx, [rbp - 0x70]
mov dword [rbp - 0x70], 0x70
movups xmmword [rbp - 0x60], xmm0
mov qword [rbp - 0x58], rax
lea rax, [rbp + 0x130]
movups xmmword [rbp - 0x40], xmm0
mov dword [rbp - 0x6c], 0x40
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x50], rax
movups xmmword [rbp - 0x30], xmm0
mov qword [rbp - 0x38], rbx
movups xmmword [rbp - 0x20], xmm0
mov qword [rbp - 0x60], rbx
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x68], rbx
mov dword [rbp - 0x40], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140005083
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140005083
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 8]
lea rdx, [rbp + 0xf8]
mov dword [rbp + 0xf8], ebx
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xf8]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test esi, esi
je 0x140005149
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x108]
mov qword [rsp + 0x38], rax
lea rdx, str.SOFTWAREPoliciesMicrosoftWindowsExplorer
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], ebx
mov qword [rbp + 0x108], rbx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0x108]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1400050e5
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x108]
mov qword [rsp + 0x38], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], ebx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0x108]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x1400052af
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400052af
test esi, esi
jne 0x1400052af
lea rax, [rbp + 0x550]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140030920]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
test edi, edi
je 0x140005625
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [0x140031a68]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140005625
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [0x140031aa8]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test eax, eax
je 0x140005625
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [0x1400308c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [0x140031b00]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.1400022d0
mov edi, eax
test edi, edi
je 0x140005625
test esi, esi
jne 0x140005300
lea rax, [rbp + 0x550]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140030920]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.14001506c
lea rcx, [rbp + 0x550]
call fcn.140003050
mov edi, eax
test edi, edi
je 0x14000546c
test esi, esi
je 0x140005319
cmp dword [0x140036a70], 1
jle 0x14000546c
lea rax, [rbp + 0x340]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, 0x1a
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140030920]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
test esi, esi
je 0x14000536c
lea r8, str.cleanup
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.14001506c
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x108]
mov qword [rsp + 0x38], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionRunOnce
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x2001f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], ebx
mov qword [rbp + 0x108], rbx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rax, qword [rbp + 0x108]
test rax, rax
je 0x14000546c
cmp rax, 0xffffffffffffffff
je 0x14000546c
lea r8, str.cmd__c_rmdir__s__q__
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400160d0
lea r8, [rbp + 0x340]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea r8, [0x140032654]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
lea rcx, [rbp + 0x130]
mov rax, 0xffffffffffffffff
nop
cmp word [rcx + rax*2 + 2], bx
lea rax, [rax + 1]
jne 0x140005420
mov rcx, qword [rbp + 0x108]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, [0x140032658]
lea rax, [rbp + 0x130]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0x108]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test esi, esi
jne 0x140005580
lea r8, [rbp + 0x340]
mov word [rbp + 0x340], bx
mov r9d, 0x100
mov rcx, r13
cmp dword [rsp + 0x60], ebx
je 0x140005554
mov edx, 0x131
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x24
lea r8, [0x140030e48]
lea rdx, [rbp + 0x340]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140005621
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x78]
mov edx, 0x28
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140005621
lea r8, [rbp + 0x10c]
xor ecx, ecx
lea rdx, str.SeShutdownPrivilege
call qword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
mov rcx, qword [rsp + 0x78]
lea r8, [rbp + 0x108]
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor edx, edx
mov dword [rbp + 0x108], 1
mov dword [rbp + 0x114], 2
mov qword [rsp + 0x20], rbx
call qword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140005621
mov edx, 0x80020003
mov ecx, 6
call qword [sym.imp.USER32.dll_ExitWindowsEx]
jmp 0x140005621
mov edx, 0x132
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x40
lea r8, [0x140030e48]
lea rdx, [rbp + 0x340]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x140005621
cmp dword [rbp + 0x11c], ebx
je 0x140005621
mov qword [rsp + 0x40], rbx
lea rax, [rbp + 0x108]
mov qword [rsp + 0x38], rax
lea rdx, str.SoftwareExplorerPatcher
mov qword [rsp + 0x30], rbx
xor r9d, r9d
mov dword [rsp + 0x28], 0x2011f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], ebx
mov qword [rbp + 0x108], rbx
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0x108]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140005621
lea rax, [rbp + 0x11c]
mov dword [rsp + 0x28], 4
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rbp + 0x11c], 1
lea rdx, str.IsUpdatePending
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0x108]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test edi, edi
jne 0x140005667
mov r9d, 0x400
mov word [rbp + 0x970], bx
lea r8, [rbp + 0x970]
mov edx, 0x133
mov rcx, r13
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x10
lea r8, [0x140030e48]
lea rdx, [rbp + 0x970]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
test edi, edi
je 0x140005673
cmp dword [rbp + 0x120], ebx
jne 0x140005940
mov rdi, qword [rbp - 0x80]
lea rcx, [rbp + 0x130]
xor edx, edx
mov r8d, 0x208
call fcn.140024fe0
mov edx, 0x104
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, [0x140030f38]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.14001506c
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp rdi, 0xffffffffffffffff
je 0x1400057d0
mov rax, 0xffffffffffffffff
mov rcx, rdi
mov qword [rbp + 0x108], rax
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
je 0x140005716
lea rax, [rbp + 0x108]
mov r9d, 2
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov edx, 0x2000000
mov dword [rsp + 0x20], 1
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
call qword [sym.imp.ADVAPI32.dll_RevertToSelf]
mov rcx, qword [rbp + 0x108]
cmp rcx, 0xffffffffffffffff
je 0x1400057d0
xorps xmm1, xmm1
mov dword [rbp - 0x70], 0x68
xor eax, eax
lea r8, [rbp + 0x130]
mov qword [rbp + 0xf0], rax
xorps xmm0, xmm0
mov dword [rbp - 0xc], eax
xor r9d, r9d
lea rax, [rbp + 0xe0]
mov edx, 1
mov qword [rsp + 0x40], rax
lea rax, [rbp - 0x70]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], ebx
movups xmmword [rbp + 0xe0], xmm0
movups xmmword [rbp - 0x6c], xmm1
movups xmmword [rbp - 0x5c], xmm1
movups xmmword [rbp - 0x4c], xmm1
movups xmmword [rbp - 0x3c], xmm1
movups xmmword [rbp - 0x2c], xmm1
movups xmmword [rbp - 0x1c], xmm1
call qword [sym.imp.ADVAPI32.dll_CreateProcessWithTokenW]
mov rcx, qword [rbp + 0x108]
mov edi, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xe0]
cmp rcx, 0xffffffffffffffff
je 0x1400057b9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xe8]
cmp rcx, 0xffffffffffffffff
je 0x1400057cc
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
jne 0x1400057f6
mov dword [rsp + 0x28], 1
lea r8, [rbp + 0x130]
xor r9d, r9d
mov qword [rsp + 0x20], rbx
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov rcx, qword [rbp - 0x80]
cmp rcx, 0xffffffffffffffff
je 0x140005806
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15, r15
je 0x140005857
mov rdi, qword [r15 + 0x110]
test rdi, rdi
je 0x140005843
mov rcx, qword [rdi]
call fcn.1400159d8
cmp dword [rdi + 0x68], 8
mov qword [rdi], rbx
jne 0x140005831
lea rcx, [rdi + 8]
call fcn.14000ad90
mov rcx, rdi
mov dword [rdi + 0x68], ebx
call fcn.1400159d8
mov qword [r15 + 0x110], rbx
mov rdx, qword [r15 + 0x60]
mov rcx, qword [r15 + 0x38]
call qword [r15 + 0x28]
mov rcx, r15
call fcn.1400159d8
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x140005876
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000586e
call fcn.1400159d8
mov rcx, rbx
call fcn.1400159d8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13, qword [rsp + 0x14d8]
mov rcx, qword [rbp + 0x1380]
xor rcx, rsp
call fcn.1400086c0
add rsp, 0x1490
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor ecx, ecx
call fcn.140015cfc
int3
mov r9d, 0x100
mov word [rbp + 0x340], bx
lea r8, [rbp + 0x340]
mov edx, 0x12d
mov rcx, r12
call qword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
jle 0x140005928
cmp eax, 0x100
jae 0x140005928
lea rax, [0x140031470]
mov word [rbp + 0x130], bx
lea r9, str.ARM64
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x340]
mov edx, 0x100
lea rcx, [rbp + 0x130]
call fcn.140001370
mov r9d, 0x10
lea r8, [0x140030e48]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call fcn.140015cfc
int3
xor ecx, ecx
call fcn.140015cfc
int3
xor ecx, ecx
call fcn.140015cfc
int3
mov edx, 0x80000000
xor ecx, ecx
call qword [sym.imp.USER32.dll_ExitWindowsEx]
xor ecx, ecx
call fcn.140015cfc
int3
xorps xmm0, xmm0
lea rax, str.runas
movups xmmword [rbp + 0x10], xmm0
mov qword [rbp + 0x10], rax
lea rax, [rbp + 0x760]
movups xmmword [rbp], xmm0
test esi, esi
lea rcx, [rbp]
movups xmmword [rbp + 0x20], xmm0
cmove r14, r13
mov qword [rbp + 0x18], rax
movups xmmword [rbp + 0x30], xmm0
mov dword [rbp], 0x70
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x20], r14
movups xmmword [rbp + 0x50], xmm0
mov qword [rbp + 8], rbx
movups xmmword [rbp + 0x60], xmm0
mov dword [rbp + 0x30], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x1400059ba
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
call fcn.140015cfc
int3