Function at 0x140002e50
Capabilities:
Accept command line arguments
Compare security identifiers
Create directory
Create process on windows
Create thread
Delete directory
Delete registry value
Find taskbar
Get common file path
Get program files directory
Get token membership
Impersonate user
Move file
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 r13
push r14
lea rbp, [rsp - 0x1368]
mov eax, 0x1468
call fcn.14001d640
sub rsp, rax
mov rax, qword [section..data]
xor rax, rsp
mov qword [rbp + 0x1350], rax
mov rsi, rcx
mov r14, r8
lea rcx, [0x14002ee40]
call fcn.140001d90
xor edi, edi
mov rcx, 0xfffffffffffffffc
mov r13d, edi
call qword [sym.imp.USER32.dll_SetProcessDpiAwarenessContext]
lea rdx, [rbp + 0x100]
mov dword [rbp + 0x100], edi
mov rcx, r14
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
xor edx, edx
lea rcx, [rbp + 0x320]
mov r8d, 0x208
mov rbx, rax
call fcn.14001d8a0
cmp dword [rbp + 0x100], 1
jl 0x1400033ca
mov rcx, qword [rbx]
lea rdx, str._extract
call fcn.1400118b4
test eax, eax
jne 0x1400033ca
cmp dword [rbp + 0x100], 2
jl 0x140002f24
mov r8, qword [rbx + 8]
lea rcx, [rbp + 0x320]
mov r9d, 0x104
mov edx, r9d
call fcn.140011a30
mov rcx, qword [rbx + 8]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
jmp 0x140002f36
lea rdx, [rbp + 0x320]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
mov edx, 0x68
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140002fb5
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400285e8]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x67
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140003042
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028620]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x69
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400030cf
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028658]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x6a
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x14000315c
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028670]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x6b
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400031e9
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028698]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0xc9
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140003276
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400286d0]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x6c
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140003303
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400286f8]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x140003396
mov edx, 0x6d
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140003390
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028718]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, ebx
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
mov edx, 1
lea rax, [rbp + 0x320]
mov r8d, edx
mov qword [rsp + 0x20], rax
mov r9, rsi
lea rcx, [rbp + 0xd8]
call fcn.140002b90
cmp dword [rbp + 0xd8], edi
sete dil
mov eax, edi
jmp 0x1400053db
lea rcx, [0x140028740]
mov qword [rsp + 0x1460], r15
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov rcx, rax
lea rdx, str.IsWow64Process2
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
je 0x140003427
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
lea r8, [rbp + 0xdc]
lea rdx, [rbp + 0xd8]
call r15
test eax, eax
je 0x140003427
mov eax, 0xaa64
cmp word [rbp + 0xdc], ax
je 0x140005402
xor edx, edx
mov qword [rsp + 0x14a8], r12
mov r8d, 0x104
lea rcx, [rbp + 0x730]
call fcn.14001d8a0
mov r8d, 0x104
lea rdx, [rbp + 0x730]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1400053fa
cmp dword [rbp + 0x100], 1
lea r15, str._uninstall_silent
jl 0x140003497
mov rcx, qword [rbx]
lea rdx, [0x140028778]
call fcn.1400118b4
test eax, eax
je 0x140003492
mov rcx, qword [rbx]
mov rdx, r15
call fcn.1400118b4
test eax, eax
jne 0x140003497
mov r12d, edi
jmp 0x14000349d
mov r12d, 1
lea rcx, [rbp + 0x730]
call qword [sym.imp.SHLWAPI.dll_PathStripPathW]
lea rdx, str.ep_uninstall.exe
lea rcx, [rbp + 0x730]
call fcn.1400118b4
test eax, eax
jne 0x1400034d2
mov rcx, qword [rbx]
mov rdx, r15
mov r12d, edi
call fcn.1400118b4
mov r13d, eax
mov r8d, 0x104
lea rdx, [rbp + 0x730]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
test eax, eax
je 0x1400053fa
cmp dword [rbp + 0x100], 1
jl 0x140003515
mov rcx, qword [rbx]
lea rdx, [0x1400287e0]
call fcn.1400118b4
mov dword [rbp + 0x104], 1
test eax, eax
je 0x14000351b
mov dword [rbp + 0x104], edi
test r12d, r12d
jne 0x14000357f
mov rcx, qword [rbx]
lea rdx, [0x140028778]
call fcn.1400118b4
test eax, eax
je 0x140003538
test r13d, r13d
je 0x14000357f
mov r9d, 0x100
mov word [rbp + 0x110], di
lea r8, [rbp + 0x110]
mov edx, 0x12e
mov rcx, rsi
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x124
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x110]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
je 0x140005485
lea rax, [rbp + 0xf0]
mov dword [rbp + 0xd8], edi
mov qword [rsp + 0x50], rax
lea rcx, [rbp + 0xe4]
mov dword [rsp + 0x48], edi
mov ebx, edi
mov dword [rsp + 0x40], edi
mov r9d, 0x220
mov dword [rsp + 0x38], edi
mov r8d, 0x20
mov dword [rsp + 0x30], edi
mov dl, 2
mov dword [rsp + 0x28], edi
mov dword [rsp + 0x20], edi
mov qword [rbp + 0xf0], rdi
mov dword [rbp + 0xe4], ebx
mov word [rbp + 0xe8], 0x500
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x1400035fa
mov rdx, qword [rbp + 0xf0]
lea r8, [rbp + 0xd8]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
test eax, eax
jne 0x140003602
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [rbp + 0xf0]
test rcx, rcx
je 0x140003614
call qword [sym.imp.ADVAPI32.dll_FreeSid]
test ebx, ebx
jne 0x1400054aa
cmp dword [rbp + 0xd8], edi
je 0x1400054aa
lea rax, [rbp + 0x10c]
mov dword [rbp + 0x108], edi
mov qword [rsp + 0x30], rax
lea r8, str.UndockingDisabled
lea rax, [rbp + 0x108]
mov dword [rbp + 0x10c], 4
mov qword [rsp + 0x28], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionShellUpdatePackages
mov r9d, 0x18
mov qword [rsp + 0x20], rdi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegGetValueW]
cmp dword [rbp + 0x108], edi
je 0x1400036e7
mov edx, r12d
mov word [rbp + 0x110], di
xor edx, 1
lea r8, [rbp + 0x110]
add edx, 0x12f
mov r9d, 0x100
mov rcx, rsi
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x24
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x110]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x14000548d
lea r8, str.UndockingDisabled
mov rcx, 0xffffffff80000002
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionShellUpdatePackages
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyValueW]
lea r9, [0x1400288b0]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateEventW]
lea rax, [rbp + 0x320]
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, [0x140027b78]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
xor edx, edx
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x140003756
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x1400053c5
mov r14d, 1
mov qword [rsp + 0x60], 0xffffffffffffffff
xor edx, edx
mov dword [rbp + 0xd8], r14d
lea rcx, [0x140027a78]
call qword [sym.imp.USER32.dll_FindWindowW]
mov r13, rax
test rax, rax
je 0x1400039ea
lea rdx, [rbp + 0xe4]
mov dword [rbp + 0xe4], edi
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov r8d, dword [rbp + 0xe4]
test r8d, r8d
je 0x140003962
xor edx, edx
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
je 0x1400037de
lea r8, [rsp + 0x60]
mov edx, 0xb
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp qword [rsp + 0x60], rdi
je 0x140003962
mov qword [rbp + 0xf0], 0xffffffffffffffff
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rbp + 0xf0]
mov edx, 0xb
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
cmp qword [rbp + 0xf0], 0xffffffffffffffff
je 0x140003962
xor ecx, ecx
mov dword [rbp + 0xdc], edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rsp + 0x60]
lea rax, [rbp + 0xdc]
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 0x140003955
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x140003955
mov ecx, dword [rbp + 0xdc]
call fcn.1400117d0
mov r15, rax
test rax, rax
je 0x140003955
mov r9d, dword [rbp + 0xdc]
lea rax, [rbp + 0xdc]
mov rcx, qword [rsp + 0x60]
mov r8, r15
mov edx, r14d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x14000394d
xor ecx, ecx
mov dword [rbp + 0xdc], edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp + 0xf0]
lea rax, [rbp + 0xdc]
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 0x14000394d
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14000394d
mov ecx, dword [rbp + 0xdc]
call fcn.1400117d0
mov rbx, rax
test rax, rax
je 0x14000394d
mov r9d, dword [rbp + 0xdc]
lea rax, [rbp + 0xdc]
mov rcx, qword [rbp + 0xf0]
mov r8, rbx
mov edx, r14d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
je 0x140003945
mov rdx, qword [rbx]
mov rcx, qword [r15]
call qword [sym.imp.ADVAPI32.dll_EqualSid]
test eax, eax
je 0x140003945
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x60], 0xffffffffffffffff
mov rcx, rbx
call fcn.1400113f8
mov rcx, r15
call fcn.1400113f8
mov rcx, qword [rbp + 0xf0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rax, [rsp + 0x68]
mov qword [rsp + 0x68], 0xffffffffffffffff
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 0x1400039ea
cmp qword [rsp + 0x68], rdi
je 0x1400039ea
mov qword [rsp + 0x28], rdi
lea r8, [fcn.140001280]
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, rax
test rax, rax
je 0x1400039e3
mov edx, 0x7d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x1400039ea
xor ecx, ecx
call fcn.140001280
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140027bd0]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
xorps xmm0, xmm0
lea rax, [rbp + 0x320]
movups xmmword [rbp - 0x20], xmm0
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x70
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 8], rax
lea rax, [0x140028920]
movups xmmword [rbp + 0x10], xmm0
mov dword [rbp - 0x1c], 0x40
movups xmmword [rbp], xmm0
mov qword [rbp], rax
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp + 0x18], rdi
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp - 0x10], rdi
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp - 0x18], rdi
mov dword [rbp + 0x10], 2
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003aa1
mov rcx, qword [rbp + 0x48]
test rcx, rcx
je 0x140003aa1
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0x48]
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 r15, rax
test rax, rax
je 0x140003ae1
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, r15
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
cmp ebx, 0xb7
jmp 0x140003aea
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 5
jne 0x140003afe
mov edx, r14d
call fcn.140001830
mov edx, 3
call fcn.140001830
mov edx, 0x104
lea rcx, [rbp + 0x1140]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140027b68]
mov edx, 0x104
lea rcx, [rbp + 0x1140]
call fcn.140010e88
xorps xmm0, xmm0
lea rax, [0x140028088]
movups xmmword [rbp + 0x50], xmm0
lea rcx, [rbp + 0x50]
mov dword [rbp + 0x50], 0x70
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x1140]
movups xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x68], rax
lea rax, str.stop_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
movups xmmword [rbp + 0x80], xmm0
mov qword [rbp + 0x70], rax
movups xmmword [rbp + 0x90], xmm0
mov dword [rbp + 0x54], 0x40
movups xmmword [rbp + 0xa0], xmm0
mov qword [rbp + 0x58], rdi
movups xmmword [rbp + 0xb0], xmm0
mov qword [rbp + 0x78], rdi
mov dword [rbp + 0x80], edi
mov qword [rbp + 0x88], rdi
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003be3
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x140003be3
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0xb8]
lea rdx, [rbp + 0xe4]
mov dword [rbp + 0xe4], edi
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rbp + 0xb8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor edx, edx
lea rcx, [0x140028a30]
call qword [sym.imp.USER32.dll_FindWindowW]
mov rbx, rax
test rax, rax
je 0x140003cf4
lea rdx, [rbp + 0xe4]
mov dword [rbp + 0xe4], edi
mov rcx, rax
call qword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov r8d, dword [rbp + 0xe4]
test r8d, r8d
je 0x140003cf4
xor edx, edx
mov ecx, r14d
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov r15, rax
test rax, rax
je 0x140003cf4
xor r9d, r9d
mov edx, 0x401
mov r8, r14
mov rcx, rbx
call qword [sym.imp.USER32.dll_SendMessageW]
xor edx, edx
mov rcx, r15
mov dword [rbp + 0xdc], eax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rdx, [0x140028aa8]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 0x2011f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
mov qword [rbp + 0xf0], rdi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0xf0]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140003cf4
lea rax, [rbp + 0xdc]
mov dword [rsp + 0x28], 4
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
lea rdx, [0x140028ae0]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0xf0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rax, [rbp + 0x320]
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, [0x140027b78]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
test r12d, r12d
je 0x140003da9
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028b18]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
xor r8d, r8d
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov r14d, eax
mov dword [rbp + 0xd8], eax
mov r13d, edi
jmp 0x140003f3f
lea rax, [rsp + 0x68]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [0x140028b40]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov rcx, qword [rsp + 0x68]
lea rax, [rcx + 1]
test rax, 0xfffffffffffffffe
jne 0x140003deb
mov qword [rsp + 0x68], rdi
mov r13d, edi
jmp 0x140003df4
mov r13d, r14d
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test r13d, r13d
je 0x140003f3f
lea rax, [rbp + 0x118]
mov dword [rbp + 0x110], 0x75002f
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rbp + 0x114], 0x220020
mov edx, 0x26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
lea r8, [0x140028be0]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea rdx, [rbp + 0x110]
lea rcx, [0x140028080]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x940]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140028c38]
mov edx, 0x208
lea rcx, [rbp + 0x940]
call fcn.140010e88
lea rdx, [rbp + 0x940]
lea rcx, [0x140028080]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x940]
movups xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x70], 0x70
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x110]
movups xmmword [rbp - 0x60], xmm0
mov dword [rsp + 0x74], 0x40
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x70], rax
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x58], rdi
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x80], rdi
movups xmmword [rbp - 0x30], xmm0
mov qword [rsp + 0x78], rdi
mov dword [rbp - 0x60], r14d
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140003f3f
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140003f3f
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 0x28]
lea rdx, [rbp + 0xe0]
mov dword [rbp + 0xe0], edi
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r14d, r14d
je 0x140004187
mov edx, 0x68
mov r8d, 0xa
mov rcx, rsi
mov r14d, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
je 0x140003fca
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400285e8]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, rbx
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov r14d, eax
mov dword [rbp + 0xd8], r14d
test r14d, r14d
je 0x140004187
mov edx, 0x67
mov r8d, 0xa
mov rcx, rsi
mov r14d, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
je 0x14000405c
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028620]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, rbx
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov r14d, eax
mov dword [rbp + 0xd8], r14d
test r14d, r14d
je 0x140004187
mov edx, 0x6d
mov r8d, 0xa
mov rcx, rsi
mov r14d, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
je 0x1400040ee
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028718]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, rbx
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov r14d, eax
mov dword [rbp + 0xd8], r14d
test r14d, r14d
je 0x140004187
mov edx, 0x69
mov r8d, 0xa
mov rcx, rsi
mov r14d, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
test rax, rax
je 0x140004180
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028658]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, rbx
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov r14d, eax
mov dword [rbp + 0xd8], r14d
test r12d, r12d
je 0x14000433b
test r14d, r14d
je 0x14000433b
mov edx, 0x6a
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140004219
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028670]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x14000433b
mov edx, 0x6b
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400042a7
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028698]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
test ebx, ebx
je 0x14000433b
mov edx, 0xc9
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x140004335
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400286d0]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
mov dword [rbp + 0xd8], ebx
lea rax, [rbp + 0x320]
mov r9, rsi
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov edx, r12d
lea rcx, [rbp + 0xd8]
call fcn.140002b90
mov ebx, dword [rbp + 0xd8]
test ebx, ebx
je 0x1400049f5
mov edx, 0x104
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov edx, 0x67
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400043fc
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028c58]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
test ebx, ebx
je 0x1400049f5
mov edx, 0x104
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str.SystemAppsMicrosoft.Windows.StartMenuExperienceHost_cw5n1h2txyewy
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
mov edx, 0x67
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400044ae
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028c58]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
test ebx, ebx
je 0x1400049f5
test r12d, r12d
je 0x1400044e1
cmp dword [0x14002ee44], edi
jne 0x1400044cf
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
mov r14d, 1
jae 0x1400044e4
mov r14d, edi
mov edx, 0x6c
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r15, rax
test rax, rax
je 0x140004564
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400286f8]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r15
mov rdx, rsi
mov ecx, r14d
call fcn.1400026e0
mov ebx, eax
test ebx, ebx
je 0x1400049f5
lea rdx, [0x140028cf8]
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400049f5
cmp dword [0x14002ee44], edi
jne 0x14000459d
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
jb 0x140004622
test r12d, r12d
je 0x140004622
mov edx, 0x104
lea rcx, [rbp + 0x940]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, str.wincorlib.dll
mov edx, 0x104
lea rcx, [rbp + 0x940]
call fcn.140010e88
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140028d40]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
xor r8d, r8d
lea rdx, [rbp + 0x940]
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_CreateSymbolicLinkW]
movzx ebx, al
test ebx, ebx
je 0x1400049f5
lea rdx, str.AppResolverLegacy.dll
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400049f5
lea rdx, str.StartTileDataLegacy.dll
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400049f5
cmp dword [0x14002ee44], edi
jne 0x140004678
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
jb 0x140004699
lea rdx, str.Windows.UI.ShellCommon.pri
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test ebx, ebx
je 0x1400049f5
cmp dword [0x14002ee44], edi
jne 0x1400046b5
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
mov ecx, edi
setae cl
test ecx, ecx
je 0x140004743
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140028e00]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea rdx, [rbp + 0x940]
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x140004743
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea rdx, str.StartTileDataLegacy.dll.mui
lea rcx, [rbp + 0x110]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x140004743
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov ebx, eax
test ebx, ebx
je 0x1400049f5
cmp dword [0x14002ee44], edi
jne 0x14000475f
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
mov eax, edi
setae al
test eax, eax
je 0x1400047ed
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, str.pris2
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea rdx, [rbp + 0x940]
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400047ed
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_FindClose]
lea rdx, str.Windows.UI.ShellCommon.en_US.pri
lea rcx, [rbp + 0x110]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400047ed
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov ebx, eax
test ebx, ebx
je 0x1400049f5
mov edx, 0x104
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, str.SystemAppsShellExperienceHost_cw5n1h2txyewy
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
cmp dword [0x14002ee44], edi
jne 0x140004833
lea rcx, [0x14002ee40]
call fcn.140001d90
cmp dword [0x14002ee4c], 0x55ec
jb 0x1400048c3
mov edx, 0x67
mov r8d, 0xa
mov rcx, rsi
mov ebx, 1
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov r14, rax
test rax, rax
je 0x1400048c3
lea r8, [rbp + 0x320]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [0x140027a70]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x140028c58]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r9, [rbp + 0x110]
mov r8, r14
mov rdx, rsi
mov ecx, r12d
call fcn.1400026e0
mov ebx, eax
test ebx, ebx
je 0x1400049f5
mov edx, 0x104
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea rax, [rbp + 0x320]
mov rcx, 0xffffffffffffffff
nop dword [rax + rax]
inc rcx
cmp word [rax + rcx*2], di
jne 0x1400048f0
mov edx, 0x104
lea r8, str._rundll32.exe__
sub edx, ecx
lea rcx, [rbp + 0x320]
call fcn.140010e88
lea rcx, [rbp + 0x320]
mov rax, 0xffffffffffffffff
inc rax
cmp word [rcx + rax*2], di
jne 0x140004921
mov eax, eax
lea rcx, [rbp + 0x320]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x26
lea rbx, [rbp + rax*2 + 0x31c]
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 + 0x320]
call fcn.140010e88
lea r8, [rbx + 2]
mov word [rbx], di
lea rdx, [rbp + 0x320]
mov ecx, r12d
call fcn.140001eb0
xor edx, edx
lea rcx, [rbp + 0x320]
mov r8d, 0x104
mov ebx, eax
call fcn.14001d8a0
test ebx, ebx
je 0x1400049f5
lea rax, [rbp + 0x322]
mov r14d, 0x22
xor r9d, r9d
mov word [rbp + 0x320], 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 + 0x320]
call fcn.140010e88
lea rdx, [rbp + 0x320]
mov ecx, r12d
call fcn.140002270
mov ebx, eax
lea rcx, str.start_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
test r12d, r12d
lea rax, str.delete_ep_dwm_D17F1E1A_5919_4427_8F89_A1A8503CA3EB
cmovne rax, rcx
lea rcx, [rbp + 0x50]
mov qword [rbp + 0x70], rax
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140004a5a
mov rcx, qword [rbp + 0xb8]
test rcx, rcx
je 0x140004a5a
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp + 0xb8]
lea rdx, [rbp + 0xe0]
mov dword [rbp + 0xe0], edi
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov rcx, qword [rbp + 0xb8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x140004df0
mov dword [rbp + 0x110], 0x73002f
mov dword [rbp + 0x114], 0x220020
test r12d, r12d
jne 0x140004a8f
mov dword [rbp + 0x116], 0x75002f
mov dword [rbp + 0x11a], 0x220020
test r12d, r12d
lea rax, [rbp + 0x118]
mov r14d, 6
mov edx, 0x26
cmovne r14, rdi
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 + 0x110]
call fcn.140010e88
lea rdx, [rbp + 0x110]
lea rcx, [0x140028080]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x940]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140028c38]
mov edx, 0x208
lea rcx, [rbp + 0x940]
call fcn.140010e88
lea rdx, [rbp + 0x940]
lea rcx, [0x140028080]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x940]
movups xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x70], 0x70
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x110]
movups xmmword [rbp - 0x60], xmm0
mov dword [rsp + 0x74], 0x40
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x70], rax
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x58], rdi
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x80], rdi
movups xmmword [rbp - 0x30], xmm0
mov qword [rsp + 0x78], rdi
mov dword [rbp - 0x60], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140004bd0
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140004bd0
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 0x28]
lea rdx, [rbp + 0xe0]
mov dword [rbp + 0xe0], edi
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rbp + 0x110], 0x73002f
mov dword [rbp + 0x114], 0x220020
test r12d, r12d
jne 0x140004bfd
mov dword [rbp + 0x116], 0x75002f
mov dword [rbp + 0x11a], 0x220020
lea rax, [rbp + 0x118]
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 + 0x110]
call fcn.140010e88
lea rdx, [rbp + 0x110]
lea rcx, [0x140028080]
call fcn.140001010
mov edx, 0x208
lea rcx, [rbp + 0x940]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [0x140028c38]
mov edx, 0x208
lea rcx, [rbp + 0x940]
call fcn.140010e88
lea rdx, [rbp + 0x940]
lea rcx, [0x140028080]
call fcn.140001010
xorps xmm0, xmm0
lea rax, [rbp + 0x940]
movups xmmword [rsp + 0x70], xmm0
lea rcx, [rsp + 0x70]
mov dword [rsp + 0x70], 0x70
movups xmmword [rbp - 0x80], xmm0
mov qword [rbp - 0x78], rax
lea rax, [rbp + 0x110]
movups xmmword [rbp - 0x60], xmm0
mov dword [rsp + 0x74], 0x40
movups xmmword [rbp - 0x70], xmm0
mov qword [rbp - 0x70], rax
movups xmmword [rbp - 0x50], xmm0
mov qword [rbp - 0x58], rdi
movups xmmword [rbp - 0x40], xmm0
mov qword [rbp - 0x80], rdi
movups xmmword [rbp - 0x30], xmm0
mov qword [rsp + 0x78], rdi
mov dword [rbp - 0x60], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140004d31
mov rcx, qword [rbp - 0x28]
test rcx, rcx
je 0x140004d31
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rbp - 0x28]
lea rdx, [rbp + 0xe0]
mov dword [rbp + 0xe0], edi
call qword [sym.imp.KERNEL32.dll_GetExitCodeProcess]
mov ecx, dword [rbp + 0xe0]
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rcx, qword [rbp - 0x28]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r12d, r12d
je 0x140004df9
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rdx, [0x140029170]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
mov qword [rbp + 0xf0], rdi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0xf0]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140004d94
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rdx, [0x1400291d0]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0xf0]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140004e87
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140004e87
test r12d, r12d
jne 0x140004e87
lea rax, [rbp + 0x320]
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, [0x140027b78]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
test ebx, ebx
je 0x1400051e2
lea rdx, [0x140028670]
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400051e2
lea rdx, [0x140028698]
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test eax, eax
je 0x1400051e2
lea rdx, [0x1400286d0]
lea rcx, [rbp + 0x320]
call fcn.140002a60
mov ebx, eax
test ebx, ebx
je 0x1400051e2
test r12d, r12d
jne 0x14000513b
lea rdx, [rbp + 0x940]
mov ecx, 0x104
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
lea r8, [0x140028b18]
mov edx, 0x104
lea rcx, [rbp + 0x940]
call fcn.140010e88
mov r8d, 1
lea rdx, [rbp + 0x940]
lea rcx, [rbp + 0x730]
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
test eax, eax
je 0x140004fec
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rdx, str.SOFTWAREMicrosoftWindowsCurrentVersionRunOnce
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 0x2001f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
mov qword [rbp + 0xf0], rdi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rax, qword [rbp + 0xf0]
test rax, rax
je 0x140004fec
cmp rax, 0xffffffffffffffff
je 0x140004fec
lea r8, str.cmd__c_del__f__q__
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e20
lea r8, [rbp + 0x940]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea r8, [0x1400280cc]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
lea rcx, [rbp + 0x110]
mov rax, 0xffffffffffffffff
nop word [rax + rax]
cmp word [rcx + rax*2 + 2], di
lea rax, [rax + 1]
jne 0x140004fa0
mov rcx, qword [rbp + 0xf0]
lea eax, [rax*2 + 2]
mov dword [rsp + 0x28], eax
lea rdx, str.ExplorerPatcherCleanup
lea rax, [rbp + 0x110]
mov r9d, 1
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0xf0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, [rbp + 0x320]
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, [0x140027b78]
mov edx, 0x104
lea rcx, [rbp + 0x320]
call fcn.140010e88
lea rcx, [rbp + 0x320]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov word [rbp + 0x530], di
mov r9d, 0x100
lea r8, [rbp + 0x530]
mov rcx, rsi
test r13d, r13d
je 0x14000510f
mov edx, 0x131
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x24
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x530]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 6
jne 0x140005224
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
lea r8, [rsp + 0x68]
mov edx, 0x28
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x140005224
lea r8, [rbp + 0xf4]
xor ecx, ecx
lea rdx, str.SeShutdownPrivilege
call qword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
mov rcx, qword [rsp + 0x68]
lea r8, [rbp + 0xf0]
xor r9d, r9d
mov qword [rsp + 0x28], rdi
xor edx, edx
mov dword [rbp + 0xf0], 1
mov dword [rbp + 0xfc], 2
mov qword [rsp + 0x20], rdi
call qword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x140005224
mov edx, 0x80020003
mov ecx, 6
call qword [sym.imp.USER32.dll_ExitWindowsEx]
jmp 0x140005224
mov edx, 0x132
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x40
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x530]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
jmp 0x140005224
cmp dword [rbp + 0x104], edi
je 0x140005224
mov qword [rsp + 0x40], rdi
lea rax, [rbp + 0xf0]
mov qword [rsp + 0x38], rax
lea rdx, [0x140028aa8]
mov qword [rsp + 0x30], rdi
xor r9d, r9d
mov dword [rsp + 0x28], 0x2011f
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov dword [rsp + 0x20], edi
mov qword [rbp + 0xf0], rdi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov rcx, qword [rbp + 0xf0]
lea rax, [rcx - 1]
cmp rax, 0xfffffffffffffffd
ja 0x140005224
lea rax, [rbp + 0x104]
mov dword [rsp + 0x28], 4
mov r9d, 4
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov dword [rbp + 0x104], 1
lea rdx, [0x140029310]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rbp + 0xf0]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x140005224
mov r9d, 0x400
mov word [rbp + 0x940], di
lea r8, [rbp + 0x940]
mov edx, 0x133
mov rcx, rsi
call qword [sym.imp.USER32.dll_LoadStringW]
mov r9d, 0x10
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x940]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
test ebx, ebx
je 0x140005230
cmp dword [rbp + 0x108], edi
jne 0x140005495
mov rbx, qword [rsp + 0x60]
lea rcx, [rbp + 0x110]
xor edx, edx
mov r8d, 0x208
call fcn.14001d8a0
mov edx, 0x104
lea rcx, [rbp + 0x110]
call qword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
lea r8, [0x140027ab0]
mov edx, 0x104
lea rcx, [rbp + 0x110]
call fcn.140010e88
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp rbx, 0xffffffffffffffff
je 0x14000538e
mov rcx, rbx
mov qword [rbp + 0xf0], 0xffffffffffffffff
call qword [sym.imp.ADVAPI32.dll_ImpersonateLoggedOnUser]
test eax, eax
je 0x1400052d1
lea rax, [rbp + 0xf0]
mov r9d, 2
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov edx, 0x2000000
mov dword [rsp + 0x20], 1
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_DuplicateTokenEx]
call qword [sym.imp.ADVAPI32.dll_RevertToSelf]
mov rcx, qword [rbp + 0xf0]
cmp rcx, 0xffffffffffffffff
je 0x14000538e
xorps xmm1, xmm1
mov dword [rsp + 0x70], 0x68
xor eax, eax
lea r8, [rbp + 0x110]
mov qword [rbp + 0xd0], rax
xorps xmm0, xmm0
mov dword [rbp - 0x2c], eax
xor r9d, r9d
lea rax, [rbp + 0xc0]
mov edx, 1
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov dword [rsp + 0x20], edi
movups xmmword [rbp + 0xc0], xmm0
movups xmmword [rsp + 0x74], xmm1
movups xmmword [rbp - 0x7c], xmm1
movups xmmword [rbp - 0x6c], xmm1
movups xmmword [rbp - 0x5c], xmm1
movups xmmword [rbp - 0x4c], xmm1
movups xmmword [rbp - 0x3c], xmm1
call qword [sym.imp.ADVAPI32.dll_CreateProcessWithTokenW]
mov rcx, qword [rbp + 0xf0]
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xc0]
cmp rcx, 0xffffffffffffffff
je 0x140005377
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbp + 0xc8]
cmp rcx, 0xffffffffffffffff
je 0x14000538a
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
jne 0x1400053b4
mov dword [rsp + 0x28], 1
lea r8, [rbp + 0x110]
xor r9d, r9d
mov qword [rsp + 0x20], rdi
lea rdx, [0x140028238]
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
mov rcx, qword [rsp + 0x60]
cmp rcx, 0xffffffffffffffff
je 0x1400053c5
call qword [sym.imp.KERNEL32.dll_CloseHandle]
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r12, qword [rsp + 0x14a8]
mov r15, qword [rsp + 0x1460]
mov rcx, qword [rbp + 0x1350]
xor rcx, rsp
call fcn.140005530
add rsp, 0x1468
pop r14
pop r13
pop rdi
pop rsi
pop rbx
pop rbp
ret
xor ecx, ecx
call fcn.140008e58
int3
mov r9d, 0x100
mov word [rbp + 0x530], di
lea r8, [rbp + 0x530]
mov edx, 0x12d
mov rcx, rsi
call qword [sym.imp.USER32.dll_LoadStringW]
test eax, eax
jle 0x14000547d
cmp eax, 0x100
jae 0x14000547d
lea rax, [0x140028760]
mov word [rbp + 0x110], di
lea r9, str.ARM64
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x530]
mov edx, 0x100
lea rcx, [rbp + 0x110]
call fcn.140001d30
mov r9d, 0x10
lea r8, [0x140027ad0]
lea rdx, [rbp + 0x110]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
xor ecx, ecx
call fcn.140008e58
int3
xor ecx, ecx
call fcn.140008e58
int3
xor ecx, ecx
call fcn.140008e58
int3
mov edx, 0x80000000
xor ecx, ecx
call qword [sym.imp.USER32.dll_ExitWindowsEx]
xor ecx, ecx
call fcn.140008e58
int3
xorps xmm0, xmm0
lea rax, [0x140028088]
movups xmmword [rbp - 0x10], xmm0
mov qword [rbp - 0x10], rax
lea rax, [rbp + 0x730]
movups xmmword [rbp - 0x20], xmm0
test r12d, r12d
lea rcx, [rbp - 0x20]
movups xmmword [rbp], xmm0
cmove r14, r15
mov qword [rbp - 8], rax
movups xmmword [rbp + 0x10], xmm0
mov dword [rbp - 0x20], 0x70
movups xmmword [rbp + 0x20], xmm0
mov qword [rbp], r14
movups xmmword [rbp + 0x30], xmm0
mov qword [rbp - 0x18], rdi
movups xmmword [rbp + 0x40], xmm0
mov dword [rbp + 0x10], 1
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
jne 0x140005510
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ecx, ecx
call fcn.140008e58
int3