Function at 0x140004068
Capabilities:
Delete registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x21e8]
mov eax, 0x22e8
call fcn.140011550
sub rsp, rax
mov rax, qword [0x140045308]
xor rax, rsp
mov qword [rbp + 0x21d0], rax
mov r14d, r9d
mov dword [rsp + 0x40], r9d
mov r13, r8
mov rdi, rdx
mov r15, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
xor esi, esi
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x50], esi
mov qword [rsp + 0x58], rsi
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
lfence
cmp word [rdi], 0x7d
je 0x14000463e
mov r12d, 1
lea rdx, str.Delete
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
sete sil
lea rdx, [0x140030938]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x140004118
test esi, esi
je 0x1400041e7
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
xor edx, edx
test eax, eax
js 0x14000463e
lfence
test r14d, r14d
je 0x1400041e7
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x60], rdx
mov qword [rsp + 0x70], rdx
mov rcx, rdi
movzx eax, word [rdi]
jmp 0x140004164
cmp ax, 0x5c
je 0x14000416b
call qword [sym.imp.USER32.dll_CharNextW]
mov rcx, rax
movzx eax, word [rax]
test ax, ax
jne 0x140004152
jmp 0x140004174
test rcx, rcx
jne 0x1400046a3
lea rbx, str.AppID
mov rdx, qword [rbx]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x1400041b6
add rbx, 8
lea rax, [0x140030ae0]
cmp rbx, rax
jl 0x14000417b
lfence
mov qword [rsp + 0x60], r13
mov rdx, rdi
lea rcx, [rsp + 0x60]
call fcn.1400038b8
and qword [rsp + 0x60], 0
test esi, esi
je 0x1400041e7
lfence
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
xor esi, esi
test eax, eax
js 0x14000463e
lfence
mov rdx, rdi
mov rcx, r15
call fcn.1400047c4
jmp 0x1400043ee
lea rdx, str.NoRemove
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
xor esi, esi
test eax, eax
jne 0x140004215
mov r12d, esi
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
lea rdx, [0x140030930]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x140004329
lea rdx, [rbp + 0x1d0]
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
lfence
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
cmp word [rdi], 0x3d
jne 0x1400046a3
test r14d, r14d
je 0x1400042a7
lfence
xorps xmm0, xmm0
movups xmmword [rsp + 0x78], xmm0
mov qword [rsp + 0x78], r13
mov dword [rbp - 0x80], esi
mov qword [rbp - 0x78], rsi
mov r9, rdi
lea r8, [rbp + 0x1d0]
lea rdx, [rsp + 0x78]
mov rcx, r15
call fcn.140001814
mov ebx, eax
mov qword [rsp + 0x78], rsi
jmp 0x1400043f0
cmp dword [rbp + 0x2250], esi
jne 0x14000430c
test r12d, r12d
je 0x14000430c
mov qword [rbp - 0x68], rsi
mov qword [rbp - 0x70], rsi
mov qword [rbp - 0x60], rsi
mov r9d, 0x20006
xor r8d, r8d
mov rdx, r13
lea rcx, [rbp - 0x70]
call fcn.14000307c
test eax, eax
jne 0x140004689
lea rdx, [rbp + 0x1d0]
mov rsi, qword [rbp - 0x70]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, 0xfffffffd
jne 0x140004676
test rsi, rsi
je 0x14000430a
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
lfence
mov rdx, rdi
mov rcx, r15
call fcn.1400047c4
mov ebx, eax
test eax, eax
js 0x14000463e
jmp 0x1400040d6
mov rcx, rdi
movzx eax, word [rdi]
jmp 0x140004343
cmp ax, 0x5c
je 0x14000434a
call qword [sym.imp.USER32.dll_CharNextW]
mov rcx, rax
movzx eax, word [rax]
test ax, ax
jne 0x140004331
jmp 0x140004353
test rcx, rcx
jne 0x1400046a3
test r14d, r14d
je 0x140004448
mov ebx, 0x2001f
mov r9d, ebx
mov r8, rdi
mov rdx, r13
lea rcx, [rsp + 0x48]
call fcn.14000307c
test eax, eax
je 0x1400043bd
lea r9d, [rbx - 6]
mov r8, rdi
mov rdx, r13
lea rcx, [rsp + 0x48]
call fcn.14000307c
test eax, eax
je 0x1400043bd
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], esi
xor r9d, r9d
mov r8, rdi
mov rdx, r13
lea rcx, [rsp + 0x48]
call fcn.140002b6c
test eax, eax
jne 0x140004635
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
cmp word [rdi], 0x3d
jne 0x1400043f8
lfence
mov r9, rdi
xor r8d, r8d
lea rdx, [rsp + 0x48]
mov rcx, r15
call fcn.140001814
mov ebx, eax
test eax, eax
js 0x14000463e
cmp word [rdi], 0x7b
jne 0x1400040d6
mov rcx, rdi
call fcn.140018c18
cmp rax, 1
jne 0x1400040d6
mov dword [rsp + 0x20], esi
mov r9d, r14d
mov r8, qword [rsp + 0x48]
mov rdx, rdi
mov rcx, r15
call fcn.140004068
mov ebx, eax
test eax, eax
js 0x14000463e
lfence
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
jmp 0x14000431a
cmp dword [rbp + 0x2250], esi
jne 0x14000446a
mov r9d, 0x20019
mov r8, rdi
mov rdx, r13
lea rcx, [rsp + 0x48]
call fcn.14000307c
mov esi, eax
jmp 0x14000446f
mov esi, 2
mov r14d, 1
test esi, esi
cmove r14d, dword [rbp + 0x2250]
or r9, 0xffffffffffffffff
mov r8, rdi
mov edx, 0x104
lea rcx, [rbp - 0x40]
call fcn.140018b1c
test eax, eax
je 0x1400044bc
cmp eax, 0xc
je 0x1400046ae
cmp eax, 0x16
je 0x1400046c4
cmp eax, 0x22
je 0x1400046c4
cmp eax, 0x50
jne 0x1400046b9
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
test eax, eax
js 0x14000463e
lfence
mov rdx, rdi
mov rcx, r15
call fcn.1400047c4
mov ebx, eax
xor edx, edx
test eax, eax
js 0x14000463e
cmp word [rdi], 0x7b
jne 0x14000454a
lfence
mov rcx, rdi
call fcn.140018c18
cmp rax, 1
jne 0x140004548
lfence
mov dword [rsp + 0x20], r14d
xor r9d, r9d
mov r8, qword [rsp + 0x48]
mov rdx, rdi
mov rcx, r15
call fcn.140004068
mov ebx, eax
test eax, eax
jns 0x14000452c
test r14d, r14d
je 0x14000463e
lfence
mov rdx, rdi
mov rcx, r15
call fcn.140002ec0
mov ebx, eax
xor edx, edx
test eax, eax
js 0x14000463e
jmp 0x14000454a
xor edx, edx
cmp esi, 2
je 0x14000455f
test esi, esi
je 0x14000456b
cmp dword [rbp + 0x2250], edx
je 0x1400046aa
xor esi, esi
mov r14d, dword [rsp + 0x40]
jmp 0x1400040d6
cmp dword [rbp + 0x2250], edx
je 0x1400045c6
lfence
mov rdx, qword [rsp + 0x48]
mov rcx, r15
call fcn.140002d78
test eax, eax
je 0x1400045c6
lea rsi, str.AppID
mov rdx, qword [rsi]
lea rcx, [rbp - 0x40]
call qword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x14000455f
add rsi, 8
lea rax, [0x140030ae0]
cmp rsi, rax
jl 0x14000458e
xor esi, esi
test r12d, r12d
je 0x140004561
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x48]
call fcn.1400038b8
jmp 0x140004561
lfence
mov rsi, qword [rsp + 0x48]
mov rdx, rsi
mov rcx, r15
call fcn.140002d78
mov r14d, eax
xor ecx, ecx
mov eax, ecx
test rsi, rsi
je 0x1400045f5
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor esi, esi
mov qword [rsp + 0x48], rsi
mov dword [rsp + 0x50], esi
test eax, eax
jne 0x140004635
test r12d, r12d
je 0x140004561
test r14d, r14d
jne 0x140004561
and qword [rbp - 0x50], 0
mov qword [rbp - 0x58], r13
mov qword [rbp - 0x48], rsi
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x58]
call fcn.140002c70
mov qword [rbp - 0x58], rsi
test eax, eax
je 0x140004561
mov ecx, eax
call fcn.140001ffc
mov ebx, eax
mov rsi, qword [rsp + 0x48]
test rsi, rsi
je 0x140004651
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, ebx
mov rcx, qword [rbp + 0x21d0]
xor rcx, rsp
call fcn.1400115c0
add rsp, 0x22e8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov ecx, eax
call fcn.140001ffc
mov ebx, eax
test rsi, rsi
je 0x14000463e
mov rcx, rsi
jmp 0x14000469b
mov ecx, eax
call fcn.140001ffc
mov ebx, eax
mov rcx, qword [rbp - 0x70]
test rcx, rcx
je 0x14000463e
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x14000463e
mov ebx, 0x80020009
jmp 0x14000463e
mov ecx, esi
jmp 0x140004637
mov ecx, 0x8007000e
call fcn.140002900
int3
mov ecx, 0x80004005
call fcn.140002900
int3
mov ecx, 0x80070057
call fcn.140002900
int3