Function at 0x1400038d0
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.1400278c0
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, [0x14003be60]
mov r14, r8
call fcn.140001d90
xor ebx, ebx
mov dword [0x14003be38], eax
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.140027a60
cmp dword [rbp + 0x118], 1
jl 0x140003a77
mov rcx, qword [rdi]
lea rdx, str._extract
call fcn.1400187c8
test eax, eax
jne 0x140003a77
cmp dword [rbp + 0x118], 2
jl 0x1400039b7
mov r8, qword [rdi + 8]
lea rcx, [rbp + 0x550]
mov r9d, 0x104
mov edx, r9d
call fcn.140018c5c
mov rcx, qword [rdi + 8]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x1400039c9
lea rdx, [rbp + 0x550]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
lea rcx, [rsp + 0x68]
call fcn.140002790
test rax, rax
mov r14d, ebx
mov rdi, rax
setne r14b
test rax, rax
je 0x140003a4b
xor r9d, r9d
mov dword [rsp + 0x20], ebx
lea r8, [rbp + 0x550]
xor edx, edx
mov rcx, rax
call fcn.140003030
mov rsi, qword [rdi + 0x110]
mov r14d, eax
test rsi, rsi
je 0x140003a38
mov rcx, qword [rsi]
call fcn.14001830c
cmp dword [rsi + 0x68], 8
mov qword [rsi], rbx
jne 0x140003a26
lea rcx, [rsi + 8]
call fcn.14000b4d0
mov rcx, rsi
mov dword [rsi + 0x68], ebx
call fcn.14001830c
mov qword [rdi + 0x110], rbx
mov rdx, qword [rdi + 0x60]
mov rcx, qword [rdi + 0x38]
call qword [rdi + 0x28]
mov rcx, rdi
call fcn.14001830c
mov rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x140003a6a
mov rcx, qword [rdi]
test rcx, rcx
je 0x140003a62
call fcn.14001830c
mov rcx, rdi
call fcn.14001830c
test r14d, r14d
sete bl
mov eax, ebx
jmp 0x140005fc4
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 0x140003acb
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rbp + 0x104]
lea rdx, [rbp + 0x100]
call rsi
test eax, eax
je 0x140003acb
mov eax, 0xaa64
cmp word [rbp + 0x104], ax
je 0x140005fed
xor edx, edx
mov qword [rsp + 0x14d8], r13
mov r8d, 0x104
lea rcx, [rbp + 0x760]
call fcn.140027a60
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140005fe5
cmp dword [rbp + 0x118], 1
lea r13, str._uninstall_silent
jl 0x140003b3a
mov rcx, qword [rdi]
lea rdx, str._uninstall
call fcn.1400187c8
test eax, eax
je 0x140003b36
mov rcx, qword [rdi]
mov rdx, r13
call fcn.1400187c8
test eax, eax
jne 0x140003b3a
mov esi, ebx
jmp 0x140003b3f
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.1400187c8
test eax, eax
jne 0x140003b73
mov rcx, qword [rdi]
mov rdx, r13
mov esi, ebx
call fcn.1400187c8
mov r15d, eax
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140005fe5
cmp dword [rbp + 0x118], 1
jl 0x140003bb6
mov rcx, qword [rdi]
lea rdx, str._update_silent
call fcn.1400187c8
mov dword [rbp + 0x11c], 1
test eax, eax
je 0x140003bbc
mov dword [rbp + 0x11c], ebx
test esi, esi
jne 0x140003c1f
mov rcx, qword [rdi]
lea rdx, str._uninstall
call fcn.1400187c8
test eax, eax
je 0x140003bd8
test r15d, r15d
je 0x140003c1f
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, [0x1400339e0]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
je 0x140006070
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 0x140003c94
mov rdx, qword [rsp + 0x70]
lea r8, [rbp + 0x100]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
test eax, eax
jne 0x140003c9c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
mov rcx, qword [rsp + 0x70]
test rcx, rcx
je 0x140003cac
call qword [sym.imp.ADVAPI32.dll_FreeSid]
test edi, edi
jne 0x140006095
cmp dword [rbp + 0x100], ebx
je 0x140006095
mov qword [rsp + 0x68], rbx
mov r15, rbx
test esi, esi
je 0x140003ce2
lea rcx, [rsp + 0x68]
call fcn.140002790
mov r15, rax
test rax, rax
je 0x140005fe5
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 0x140003da0
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, [0x1400339e0]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140006078
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, [0x140033a88]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.140017940
xor edx, edx
lea rcx, [rbp + 0x550]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140003e0f
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x140005f46
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 0x140004095
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 0x140004011
xor edx, edx
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rdi, rax
test rax, rax
je 0x140003e98
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 0x140004011
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 0x140004011
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 0x140004006
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140004006
mov ecx, dword [rbp + 0x104]
call fcn.1400186e4
mov r12, rax
test rax, rax
je 0x140003fff
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 0x140003ff7
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 0x140003ff7
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140003ff7
mov ecx, dword [rbp + 0x104]
call fcn.1400186e4
mov rdi, rax
test rax, rax
je 0x140003ff7
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 0x140003fef
mov rdx, qword [rdi]
mov rcx, qword [r12]
call qword [sym.imp.ADVAPI32.dll_EqualSid]
test eax, eax
je 0x140003fef
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.14001830c
mov rcx, r12
call fcn.14001830c
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 0x140004095
cmp qword [rsp + 0x78], rbx
je 0x140004095
mov qword [rsp + 0x28], rbx
lea r8, [fcn.140001280]
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 0x14000408e
mov edx, 0x7d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140004095
xor ecx, ecx
call fcn.140001280
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.140017940
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 0x14000414c
mov rcx, qword [rbp + 0x68]
test rcx, rcx
je 0x14000414c
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 0x14000418c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r12
mov edi, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp edi, 0xb7
jmp 0x140004195
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x1400041a9
mov edx, r14d
call fcn.140001830
mov edx, 3
call fcn.140001830
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.140017940
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 0x1400042a0
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1400042a0
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 0x1400043a9
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 0x1400043a9
xor edx, edx
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r12, rax
test rax, rax
je 0x1400043a9
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 0x1400043a9
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, [0x140033a88]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.140017940
test esi, esi
je 0x14000442c
mov r13, qword [rbp + 0x108]
lea rax, [0x1400349f8]
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.140002e10
mov r14d, eax
mov dword [rbp + 0x100], eax
jmp 0x1400045c2
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 0x14000446f
mov dword [rsp + 0x60], r14d
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140004474
mov qword [rsp + 0x78], rbx
cmp dword [rsp + 0x60], ebx
je 0x1400045bb
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.140017940
lea rdx, [rbp + 0x130]
lea rcx, [0x140033f90]
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.140017940
lea rdx, [rbp + 0x970]
lea rcx, [0x140033f90]
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 0x1400045bb
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400045bb
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 0x1400046af
lea rax, [0x140034b38]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140034b70]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x1400046af
lea rax, [0x140034b90]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140034bc8]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x1400046af
lea rax, [0x140034be8]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140034c00]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov dword [rbp + 0x100], eax
mov r14d, eax
test eax, eax
je 0x1400046af
lea rax, [0x140034c10]
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140034c28]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov r14d, eax
mov dword [rbp + 0x100], eax
lea r12, [0x140034cd0]
lea rax, [0x140034c38]
lea rdi, [0x140034c78]
test esi, esi
je 0x14000475e
test r14d, r14d
je 0x14000475e
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.140002e10
mov dword [rbp + 0x100], eax
test eax, eax
je 0x14000475e
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], rdi
lea r9, str.ep_weather_host_stub.dll
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.140002e10
mov dword [rbp + 0x100], eax
test eax, eax
je 0x14000475e
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.140002e10
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.1400034b0
lea rax, str.ar_SA
mov qword [rbp + 0x340], rax
lea r9, [0x140034578]
lea rax, str.bg_BG
mov qword [rbp + 0x380], r9
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, 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 0x140004a9f
nop word [rax + rax]
cmp r14, 0x2d
jae 0x140004a9f
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
mov r8, qword [rbp + r14*8 + 0x340]
lea rcx, [rbp + 0x130]
mov edx, 0x104
call fcn.140017940
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140004a94
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea rcx, [rbp + 0x130]
call fcn.140003730
mov edi, eax
inc r14
test edi, edi
jne 0x140004a10
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
cmp dword [0x14003be6c], 0x6294
lea r14, str.dxgi.dll
mov r12d, ebx
setae r12b
test esi, esi
je 0x140004c36
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 0x140004b9d
mov edx, dword [rbp + 0x100]
mov rcx, 0xffffffffffffffff
mov eax, 2
mul rdx
cmovb rax, rcx
mov rcx, rax
call fcn.1400186e4
mov r14, rax
test rax, rax
je 0x140004b9d
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 0x140004b9d
mov rcx, r14
call fcn.14001830c
mov r14, rbx
test r14, r14
lea rax, [0x140034578]
cmovne rax, r14
mov qword [rsp + 0x78], rax
test r12d, r12d
je 0x140004bdc
test edi, edi
je 0x140004bdc
mov r9, rax
mov dword [rsp + 0x20], 1
lea r8, [rbp + 0x550]
mov rcx, r15
lea rdx, str.pnidui_
call fcn.140003030
mov edi, eax
cmp dword [0x14003be64], ebx
jne 0x140004bf6
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x585d
jb 0x140004c2f
test edi, edi
je 0x140004f17
mov r9, qword [rsp + 0x78]
lea r8, [rbp + 0x550]
lea rdx, str.Windows.UI.ShellCommon_
mov dword [rsp + 0x20], 2
mov rcx, r15
call fcn.140003030
mov edi, eax
lea r14, str.dxgi.dll
test edi, edi
je 0x140004f17
test esi, esi
je 0x140004c4c
mov ecx, 1
test r12d, r12d
jne 0x140004c4e
mov ecx, ebx
lea rax, str.pnidui.dll
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140035048]
lea rax, [rbp + 0x550]
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov edi, eax
test eax, eax
je 0x140004f17
test r12d, r12d
je 0x140004d15
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionExplorerShellServiceObjectsC2796011_81BA_4148_8FCA_C6643245113F
mov rcx, 0xffffffff80000002
test esi, esi
je 0x140004d0f
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 0x140004d15
lea rax, [0x140033a30]
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 0x140004d15
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 qword [rsp + 0x28], r14
lea r9, [0x140034bc8]
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.140002e10
mov edi, eax
test eax, eax
je 0x140004f17
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.140017940
lea rax, [rbp + 0x550]
mov qword [rsp + 0x28], r14
lea r9, [0x140034bc8]
mov qword [rsp + 0x20], rax
mov r8, r15
mov rdx, r13
mov ecx, esi
call fcn.140002e10
mov edi, eax
test eax, eax
je 0x140004f17
test esi, esi
je 0x140004dde
cmp dword [0x14003be64], ebx
jne 0x140004dcd
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov ecx, 1
jae 0x140004de0
mov ecx, ebx
lea rax, [0x1400351f8]
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.140002e10
mov edi, eax
test eax, eax
je 0x140004f17
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, [0x140035230]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140004f17
cmp dword [0x14003be64], ebx
jne 0x140004e93
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
jb 0x140004f17
test esi, esi
je 0x140004f17
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.140017940
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400178d8
lea r8, str.wincorlib_orig.dll
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
xor r8d, r8d
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0x340]
call qword [sym.imp.KERNEL32.dll_CreateSymbolicLinkW]
movzx edi, al
mov eax, dword [0x14003be6c]
add eax, 0xffffa7a3
cmp eax, 0xe
ja 0x140004f33
cmp dword [0x14003be38], 0xf5a
jae 0x140004f41
cmp dword [0x14003be6c], 0x6251
mov eax, ebx
jb 0x140004f46
mov eax, 1
test edi, edi
je 0x140005492
test esi, esi
je 0x140004f5b
mov ecx, 1
test eax, eax
jne 0x140004f5d
mov ecx, ebx
lea rax, str.StartUI_.dll
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x1400352c0]
lea rax, [rbp + 0x550]
mov rdx, r13
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov edi, eax
test eax, eax
je 0x140005492
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, str.AppResolverLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005492
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, str.StartTileDataLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005492
cmp dword [0x14003be64], ebx
jne 0x140005075
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400050e5
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test edi, edi
je 0x140005492
cmp dword [0x14003be64], ebx
jne 0x140005107
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400051e1
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, str.en_US
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400051e1
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
lea r8, str.StartTileDataLegacy.dll.mui
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x1400051e1
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140005492
cmp dword [0x14003be64], ebx
jne 0x140005203
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400052dd
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, str.pris2
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400052dd
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
lea r8, str.Windows.UI.ShellCommon.en_US.pri
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x1400052dd
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140005492
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.140017940
cmp dword [0x14003be64], ebx
jne 0x140005329
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
jb 0x140005363
lea rax, str.dxgi.dll
mov r8, r15
mov qword [rsp + 0x28], rax
lea r9, [0x140034bc8]
lea rax, [rbp + 0x550]
mov rdx, r13
mov ecx, esi
mov qword [rsp + 0x20], rax
call fcn.140002e10
mov edi, eax
test edi, edi
je 0x140005492
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 0x140005390
mov edx, 0x104
lea r8, str._rundll32.exe__
sub edx, ecx
lea rcx, [rbp + 0x550]
call fcn.140017940
lea rcx, [rbp + 0x550]
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], bx
jne 0x1400053c0
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.140017940
lea r8, [rdi + 2]
mov word [rdi], bx
lea rdx, [rbp + 0x550]
mov ecx, esi
call fcn.140001eb0
xor edx, edx
lea rcx, [rbp + 0x550]
mov r8d, 0x104
mov edi, eax
call fcn.140027a60
test edi, edi
je 0x140005492
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.140017940
lea rdx, [rbp + 0x550]
mov ecx, esi
call fcn.140002270
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 0x1400054f9
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1400054f9
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 0x140005881
mov dword [rbp + 0x130], 0x73002f
mov dword [rbp + 0x134], 0x220020
test esi, esi
jne 0x14000552d
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.140017940
lea rdx, [rbp + 0x130]
lea rcx, [0x140033f90]
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.140017940
lea rdx, [rbp + 0x970]
lea rcx, [0x140033f90]
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 0x140005668
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140005668
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 0x140005694
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.140017940
lea rdx, [rbp + 0x130]
lea rcx, [0x140033f90]
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.140017940
lea rdx, [rbp + 0x970]
lea rcx, [0x140033f90]
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 0x1400057c3
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400057c3
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 0x140005889
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 0x140005825
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 0x1400059ef
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400059ef
test esi, esi
jne 0x1400059ef
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, [0x140033a88]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.140017940
test edi, edi
je 0x140005d65
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, [0x140034c38]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005d65
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, [0x140034c78]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005d65
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, [0x140034cd0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test edi, edi
je 0x140005d65
test esi, esi
jne 0x140005a40
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, [0x140033a88]
mov edx, 0x104
lea rcx, [rbp + 0x550]
call fcn.140017940
lea rcx, [rbp + 0x550]
call fcn.140003730
mov edi, eax
test edi, edi
je 0x140005bac
test esi, esi
je 0x140005a59
cmp dword [0x14003aa70], 1
jle 0x140005bac
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, [0x140033a88]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
test esi, esi
je 0x140005aac
lea r8, str.cleanup
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017940
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 0x140005bac
cmp rax, 0xffffffffffffffff
je 0x140005bac
lea r8, str.cmd__c_rmdir__s__q__
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400178d8
lea r8, [rbp + 0x340]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea r8, [0x140033fdc]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
lea rcx, [rbp + 0x130]
mov rax, 0xffffffffffffffff
nop
cmp word [rcx + rax*2 + 2], bx
lea rax, [rax + 1]
jne 0x140005b60
mov rcx, qword [rbp + 0x108]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, str.ExplorerPatcherCleanup
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 0x140005cc0
lea r8, [rbp + 0x340]
mov word [rbp + 0x340], bx
mov r9d, 0x100
mov rcx, r13
cmp dword [rsp + 0x60], ebx
je 0x140005c94
mov edx, 0x131
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x24
lea r8, [0x1400339e0]
lea rdx, [rbp + 0x340]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140005d61
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 0x140005d61
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 0x140005d61
mov edx, 0x80020003
mov ecx, 6
call qword [sym.imp.USER32.dll_ExitWindowsEx]
jmp 0x140005d61
mov edx, 0x132
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x40
lea r8, [0x1400339e0]
lea rdx, [rbp + 0x340]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x140005d61
cmp dword [rbp + 0x11c], ebx
je 0x140005d61
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 0x140005d61
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 0x140005da7
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, [0x1400339e0]
lea rdx, [rbp + 0x970]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
test edi, edi
je 0x140005db3
cmp dword [rbp + 0x120], ebx
jne 0x140006080
mov rdi, qword [rbp - 0x80]
lea rcx, [rbp + 0x130]
xor edx, edx
mov r8d, 0x208
call fcn.140027a60
mov edx, 0x104
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, [0x1400339c0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017940
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp rdi, 0xffffffffffffffff
je 0x140005f10
mov rax, 0xffffffffffffffff
mov rcx, rdi
mov qword [rbp + 0x108], rax
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
je 0x140005e56
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 0x140005f10
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 0x140005ef9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xe8]
cmp rcx, 0xffffffffffffffff
je 0x140005f0c
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
jne 0x140005f36
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 0x140005f46
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15, r15
je 0x140005f97
mov rdi, qword [r15 + 0x110]
test rdi, rdi
je 0x140005f83
mov rcx, qword [rdi]
call fcn.14001830c
cmp dword [rdi + 0x68], 8
mov qword [rdi], rbx
jne 0x140005f71
lea rcx, [rdi + 8]
call fcn.14000b4d0
mov rcx, rdi
mov dword [rdi + 0x68], ebx
call fcn.14001830c
mov qword [r15 + 0x110], rbx
mov rdx, qword [r15 + 0x60]
mov rcx, qword [r15 + 0x38]
call qword [r15 + 0x28]
mov rcx, r15
call fcn.14001830c
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x140005fb6
mov rcx, qword [rbx]
test rcx, rcx
je 0x140005fae
call fcn.14001830c
mov rcx, rbx
call fcn.14001830c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13, qword [rsp + 0x14d8]
mov rcx, qword [rbp + 0x1380]
xor rcx, rsp
call fcn.140008e10
add rsp, 0x1490
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor ecx, ecx
call fcn.14000f848
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 0x140006068
cmp eax, 0x100
jae 0x140006068
lea rax, [0x140034648]
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.140001d30
mov r9d, 0x10
lea r8, [0x1400339e0]
lea rdx, [rbp + 0x130]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call fcn.14000f848
int3
xor ecx, ecx
call fcn.14000f848
int3
xor ecx, ecx
call fcn.14000f848
int3
mov edx, 0x80000000
xor ecx, ecx
call qword [sym.imp.USER32.dll_ExitWindowsEx]
xor ecx, ecx
call fcn.14000f848
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 0x1400060fa
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
call fcn.14000f848
int3