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.1400278a0
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.140027a40
cmp dword [rbp + 0x118], 1
jl 0x140003a77
mov rcx, qword [rdi]
lea rdx, str._extract
call fcn.140018828
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.140018cbc
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.14001836c
cmp dword [rsi + 0x68], 8
mov qword [rsi], rbx
jne 0x140003a26
lea rcx, [rsi + 8]
call fcn.14000b4b0
mov rcx, rsi
mov dword [rsi + 0x68], ebx
call fcn.14001836c
mov qword [rdi + 0x110], rbx
mov rdx, qword [rdi + 0x60]
mov rcx, qword [rdi + 0x38]
call qword [rdi + 0x28]
mov rcx, rdi
call fcn.14001836c
mov rdi, qword [rsp + 0x68]
test rdi, rdi
je 0x140003a6a
mov rcx, qword [rdi]
test rcx, rcx
je 0x140003a62
call fcn.14001836c
mov rcx, rdi
call fcn.14001836c
test r14d, r14d
sete bl
mov eax, ebx
jmp 0x140005fa4
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 0x140005fcd
xor edx, edx
mov qword [rsp + 0x14d8], r13
mov r8d, 0x104
lea rcx, [rbp + 0x760]
call fcn.140027a40
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140005fc5
cmp dword [rbp + 0x118], 1
lea r13, str._uninstall_silent
jl 0x140003b3a
mov rcx, qword [rdi]
lea rdx, str._uninstall
call fcn.140018828
test eax, eax
je 0x140003b36
mov rcx, qword [rdi]
mov rdx, r13
call fcn.140018828
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.140018828
test eax, eax
jne 0x140003b73
mov rcx, qword [rdi]
mov rdx, r13
mov esi, ebx
call fcn.140018828
mov r15d, eax
mov r8d, 0x104
lea rdx, [rbp + 0x760]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x140005fc5
cmp dword [rbp + 0x118], 1
jl 0x140003bb6
mov rcx, qword [rdi]
lea rdx, str._update_silent
call fcn.140018828
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.140018828
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 0x140006050
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 0x140006075
cmp dword [rbp + 0x100], ebx
je 0x140006075
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 0x140005fc5
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 0x140006058
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.1400179a0
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 0x140005f26
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.140018744
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.140018744
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.14001836c
mov rcx, r12
call fcn.14001836c
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.1400179a0
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.1400179a0
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.1400179a0
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.1400179a0
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.1400179a0
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, str.ExplorerPatcher.IA_32.dll
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, str.ExplorerPatcher.amd64.dll
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 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, [0x140034578]
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 0x140004a9f
nop word [rax + rax]
cmp r14, 0x2d
jae 0x140004a9f
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
mov r8, qword [rbp + r14*8 + 0x340]
lea rcx, [rbp + 0x130]
mov edx, 0x104
call fcn.1400179a0
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.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov ecx, dword [0x14003be6c]
lea eax, [rcx - 0x585d]
cmp eax, 0xe
ja 0x140004b17
cmp dword [0x14003be38], 0xf5a
jae 0x140004b22
mov r14d, ebx
cmp ecx, 0x6251
jb 0x140004b28
mov r14d, 1
cmp ecx, 0x6294
mov dword [rbp + 0x104], r14d
mov r12d, ebx
setae r12b
test esi, esi
je 0x140004c42
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 0x140004bc7
mov edx, dword [rbp + 0x100]
mov rcx, 0xffffffffffffffff
mov eax, 2
mul rdx
cmovb rax, rcx
mov rcx, rax
call fcn.140018744
mov r14, rax
test rax, rax
je 0x140004bc7
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 0x140004bc7
mov rcx, r14
call fcn.14001836c
mov r14, rbx
test r14, r14
lea rax, [0x140034578]
cmovne rax, r14
mov qword [rsp + 0x78], rax
test r12d, r12d
je 0x140004c0b
test edi, edi
je 0x140004c0b
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
mov rax, qword [rsp + 0x78]
mov r14d, dword [rbp + 0x104]
test r14d, r14d
je 0x140004c42
test edi, edi
je 0x140005472
mov r9, rax
mov dword [rsp + 0x20], 2
lea r8, [rbp + 0x550]
mov rcx, r15
lea rdx, str.Windows.UI.ShellCommon_
call fcn.140003030
mov edi, eax
test edi, edi
je 0x140005472
test esi, esi
je 0x140004c58
mov ecx, 1
test r12d, r12d
jne 0x140004c5a
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 0x140005472
test r12d, r12d
je 0x140004d21
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionExplorerShellServiceObjectsC2796011_81BA_4148_8FCA_C6643245113F
mov rcx, 0xffffffff80000002
test esi, esi
je 0x140004d1b
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 0x140004d21
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 0x140004d21
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.140002e10
mov edi, eax
test eax, eax
je 0x140005472
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.1400179a0
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.140002e10
mov edi, eax
test eax, eax
je 0x140005472
test esi, esi
je 0x140004df1
cmp dword [0x14003be64], ebx
jne 0x140004de0
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov ecx, 1
jae 0x140004df3
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 0x140005472
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, [0x140035230]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005472
cmp dword [0x14003be64], ebx
jne 0x140004ea6
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
jb 0x140004f2a
test esi, esi
je 0x140004f2a
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.1400179a0
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017938
lea r8, str.wincorlib_orig.dll
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
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 0x140005472
test esi, esi
je 0x140004f40
mov ecx, 1
test r14d, r14d
jne 0x140004f42
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 0x140005472
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, str.AppResolverLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005472
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, str.StartTileDataLegacy.dll
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005472
cmp dword [0x14003be64], ebx
jne 0x14000505a
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400050ca
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, str.Windows.UI.ShellCommon.pri
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test edi, edi
je 0x140005472
cmp dword [0x14003be64], ebx
jne 0x1400050ec
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400051c6
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, str.en_US
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400051c6
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
lea r8, str.StartTileDataLegacy.dll.mui
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x1400051c6
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140005472
cmp dword [0x14003be64], ebx
jne 0x1400051e8
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
mov eax, ebx
setae al
test eax, eax
je 0x1400052c2
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, str.pris2
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea rdx, [rbp + 0x970]
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400052c2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea r8, [rbp + 0x130]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
lea r8, str.Windows.UI.ShellCommon.en_US.pri
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
lea r9, [rbp + 0x340]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x1400052c2
lea rcx, [rbp + 0x130]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov edi, eax
test edi, edi
je 0x140005472
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.1400179a0
cmp dword [0x14003be64], ebx
jne 0x14000530e
lea rcx, [0x14003be60]
call fcn.140001d90
mov dword [0x14003be38], eax
cmp dword [0x14003be6c], 0x55ec
jb 0x140005341
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.140002e10
mov edi, eax
test edi, edi
je 0x140005472
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 dword [rax]
inc rcx
cmp word [rax + rcx*2], bx
jne 0x140005370
mov edx, 0x104
lea r8, str._rundll32.exe__
sub edx, ecx
lea rcx, [rbp + 0x550]
call fcn.1400179a0
lea rcx, [rbp + 0x550]
mov rax, rdi
nop dword [rax]
inc rax
cmp word [rcx + rax*2], bx
jne 0x1400053a0
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.1400179a0
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.140027a40
test edi, edi
je 0x140005472
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.1400179a0
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 0x1400054d9
mov rcx, qword [rbp + 0xd8]
test rcx, rcx
je 0x1400054d9
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 0x140005861
mov dword [rbp + 0x130], 0x73002f
mov dword [rbp + 0x134], 0x220020
test esi, esi
jne 0x14000550d
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.1400179a0
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.1400179a0
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 0x140005648
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x140005648
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 0x140005674
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.1400179a0
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.1400179a0
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 0x1400057a3
mov rcx, qword [rbp - 8]
test rcx, rcx
je 0x1400057a3
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 0x140005869
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 0x140005805
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 0x1400059cf
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x1400059cf
test esi, esi
jne 0x1400059cf
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.1400179a0
test edi, edi
je 0x140005d45
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, [0x140034c38]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005d45
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, [0x140034c78]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test eax, eax
je 0x140005d45
lea r8, [rbp + 0x550]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [0x140033980]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, [0x140034cd0]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r9, [rbp + 0x130]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call fcn.140002a40
mov edi, eax
test edi, edi
je 0x140005d45
test esi, esi
jne 0x140005a20
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.1400179a0
lea rcx, [rbp + 0x550]
call fcn.140003730
mov edi, eax
test edi, edi
je 0x140005b8c
test esi, esi
je 0x140005a39
cmp dword [0x14003aa70], 1
jle 0x140005b8c
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.1400179a0
test esi, esi
je 0x140005a8c
lea r8, str.cleanup
mov edx, 0x104
lea rcx, [rbp + 0x340]
call fcn.1400179a0
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 0x140005b8c
cmp rax, 0xffffffffffffffff
je 0x140005b8c
lea r8, str.cmd__c_rmdir__s__q__
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.140017938
lea r8, [rbp + 0x340]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea r8, [0x140033fdc]
mov edx, 0x104
lea rcx, [rbp + 0x130]
call fcn.1400179a0
lea rcx, [rbp + 0x130]
mov rax, 0xffffffffffffffff
nop
cmp word [rcx + rax*2 + 2], bx
lea rax, [rax + 1]
jne 0x140005b40
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 0x140005ca0
lea r8, [rbp + 0x340]
mov word [rbp + 0x340], bx
mov r9d, 0x100
mov rcx, r13
cmp dword [rsp + 0x60], ebx
je 0x140005c74
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 0x140005d41
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 0x140005d41
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 0x140005d41
mov edx, 0x80020003
mov ecx, 6
call qword [sym.imp.USER32.dll_ExitWindowsEx]
jmp 0x140005d41
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 0x140005d41
cmp dword [rbp + 0x11c], ebx
je 0x140005d41
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 0x140005d41
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 0x140005d87
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 0x140005d93
cmp dword [rbp + 0x120], ebx
jne 0x140006060
mov rdi, qword [rbp - 0x80]
lea rcx, [rbp + 0x130]
xor edx, edx
mov r8d, 0x208
call fcn.140027a40
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.1400179a0
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp rdi, 0xffffffffffffffff
je 0x140005ef0
mov rax, 0xffffffffffffffff
mov rcx, rdi
mov qword [rbp + 0x108], rax
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
je 0x140005e36
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 0x140005ef0
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 0x140005ed9
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xe8]
cmp rcx, 0xffffffffffffffff
je 0x140005eec
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test edi, edi
jne 0x140005f16
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 0x140005f26
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r15, r15
je 0x140005f77
mov rdi, qword [r15 + 0x110]
test rdi, rdi
je 0x140005f63
mov rcx, qword [rdi]
call fcn.14001836c
cmp dword [rdi + 0x68], 8
mov qword [rdi], rbx
jne 0x140005f51
lea rcx, [rdi + 8]
call fcn.14000b4b0
mov rcx, rdi
mov dword [rdi + 0x68], ebx
call fcn.14001836c
mov qword [r15 + 0x110], rbx
mov rdx, qword [r15 + 0x60]
mov rcx, qword [r15 + 0x38]
call qword [r15 + 0x28]
mov rcx, r15
call fcn.14001836c
mov rbx, qword [rsp + 0x68]
test rbx, rbx
je 0x140005f96
mov rcx, qword [rbx]
test rcx, rcx
je 0x140005f8e
call fcn.14001836c
mov rcx, rbx
call fcn.14001836c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r13, qword [rsp + 0x14d8]
mov rcx, qword [rbp + 0x1380]
xor rcx, rsp
call fcn.140008df0
add rsp, 0x1490
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor ecx, ecx
call fcn.14000f8a8
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 0x140006048
cmp eax, 0x100
jae 0x140006048
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.14000f8a8
int3
xor ecx, ecx
call fcn.14000f8a8
int3
xor ecx, ecx
call fcn.14000f8a8
int3
mov edx, 0x80000000
xor ecx, ecx
call qword [sym.imp.USER32.dll_ExitWindowsEx]
xor ecx, ecx
call fcn.14000f8a8
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 0x1400060da
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
call fcn.14000f8a8
int3