Function at 0x180003450
Capabilities:
Delete registry value

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2e8
lea rbp, [rsp + 0x60]
mov rax, qword [0x180008098]
xor rax, rbp
mov qword [rbp + 0x270], rax
mov eax, dword [rbp + 0x2f0]
xor r14d, r14d
mov ebx, r14d
mov qword [rbp + 0x40], r14
mov r15d, r14d
mov qword [rbp + 0x48], r14
mov qword [rbp + 0x50], r14
mov r13d, r14d
mov dword [rbp + 8], r9d
mov rsi, rdx
mov qword [rbp + 0x10], r8
mov r12, rcx
mov dword [rbp + 0x18], 1
mov dword [rbp + 0x38], eax
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c7f
cmp word [rsi], 0x7d
je 0x180003c52
lea rdx, str.Delete
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
lea rdx, str.ForceRemove
mov rcx, rsi
test eax, eax
sete r14b
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
test eax, eax
je 0x180003508
test r14d, r14d
je 0x1800035dc
mov rdx, rsi
mov rcx, r12
call fcn.180002698
xor edx, edx
mov edi, eax
test eax, eax
js 0x180003c52
cmp dword [rbp + 8], edx
je 0x1800035dc
movzx eax, word [rsi]
mov rcx, rsi
mov qword [rbp + 0x20], rdx
mov qword [rbp + 0x28], rdx
mov qword [rbp + 0x30], rdx
jmp 0x180003554
cmp ax, 0x5c
je 0x18000355b
call qword [sym.imp.api_ms_win_core_string_l2_1_0.dll_CharNextW]
nop dword [rax + rax]
mov rcx, rax
movzx eax, word [rax]
test ax, ax
jne 0x18000353c
jmp 0x180003564
test rcx, rcx
jne 0x180003c4d
lea rdi, str.CLSID
mov rdx, qword [rdi]
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
test eax, eax
je 0x1800035a5
add rdi, 8
lea rax, [0x1800061c0]
cmp rdi, rax
jl 0x18000356b
mov rax, qword [rbp + 0x10]
lea rcx, [rbp + 0x20]
mov rdx, rsi
mov qword [rbp + 0x20], rax
call fcn.180001ee0
test r14d, r14d
je 0x1800035dc
mov rdx, rsi
mov rcx, r12
call fcn.180002698
xor r14d, r14d
mov edi, eax
test eax, eax
js 0x180003c52
mov rdx, rsi
mov rcx, r12
call fcn.180002f2c
mov edi, eax
test eax, eax
js 0x180003c52
jmp 0x180003bc8
lea rdx, str.NoRemove
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
xor r14d, r14d
test eax, eax
jne 0x180003612
mov rdx, rsi
mov dword [rbp + 0x18], r14d
mov rcx, r12
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c52
lea rdx, [0x180006720]
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
test eax, eax
jne 0x18000372f
lea rdx, [rbp + 0x60]
mov rcx, r12
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c52
mov rdx, rsi
mov rcx, r12
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c52
cmp word [rsi], 0x3d
jne 0x180003c4d
cmp dword [rbp + 8], r14d
je 0x180003698
mov rax, qword [rbp + 0x10]
lea r8, [rbp + 0x60]
mov r9, rsi
mov qword [rbp + 0x20], rax
lea rdx, [rbp + 0x20]
mov qword [rbp + 0x28], r14
mov rcx, r12
mov qword [rbp + 0x30], r14
mov byte [rsp + 0x20], r14b
call fcn.180002874
jmp 0x1800035cd
xor edi, edi
cmp dword [rbp + 0x2f0], edi
jne 0x180003712
mov rcx, qword [rbp + 0x10]
lea rax, [rbp]
mov r9d, 0x20006
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rbp], rdi
xor edx, edx
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x180003c22
mov r14, qword [rbp]
mov eax, edi
test eax, eax
jne 0x180003c22
lea rdx, [rbp + 0x60]
mov rcx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegDeleteValueW]
nop dword [rax + rax]
test eax, 0xfffffffd
jne 0x180003c22
test r14, r14
je 0x180003712
mov rcx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov rdx, rsi
mov rcx, r12
call fcn.180002f2c
xor r14d, r14d
mov edi, eax
test eax, eax
js 0x180003c52
jmp 0x1800034bf
movzx eax, word [rsi]
mov rcx, rsi
jmp 0x18000374f
cmp ax, 0x5c
je 0x180003756
call qword [sym.imp.api_ms_win_core_string_l2_1_0.dll_CharNextW]
nop dword [rax + rax]
mov rcx, rax
movzx eax, word [rax]
test ax, ax
jne 0x180003737
jmp 0x18000375f
test rcx, rcx
jne 0x180003c4d
cmp dword [rbp + 8], r14d
je 0x1800038f2
mov rdi, qword [rbp + 0x10]
lea rax, [rbp]
mov rcx, rdi
mov qword [rbp], r14
mov r9d, 0xf003f
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x1800037c0
mov eax, r14d
test r15, r15
je 0x1800037b0
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov r15, qword [rbp]
mov qword [rbp + 0x40], r15
test eax, eax
je 0x18000387e
lea rax, [rbp]
mov qword [rbp], r14
mov r9d, 0x20019
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x18000380f
mov eax, r14d
test r15, r15
je 0x180003803
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov r15, qword [rbp]
mov qword [rbp + 0x40], r15
test eax, eax
je 0x18000387e
lea rax, [rbp + 0x58]
mov qword [rbp], r14
mov qword [rsp + 0x40], rax
xor r9d, r9d
lea rax, [rbp]
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov rdx, rsi
mov qword [rsp + 0x30], r14
mov rcx, rdi
mov dword [rsp + 0x28], 0x2001f
mov dword [rsp + 0x20], r14d
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCreateKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x180003c4d
mov eax, r14d
test r15, r15
je 0x18000386e
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov r15, qword [rbp]
mov qword [rbp + 0x40], r15
test eax, eax
jne 0x180003c4d
movzx eax, word [rsi]
mov ecx, 0xffdf
sub ax, 0x4c
test cx, ax
jne 0x1800038b4
lea rdx, str.LocalServer32
mov rcx, rsi
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
test eax, eax
movzx r14d, r14b
mov eax, 1
cmove r14d, eax
mov rdx, rsi
mov rcx, r12
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c52
cmp word [rsi], 0x3d
jne 0x180003bc5
mov r9, rsi
mov byte [rsp + 0x20], r14b
xor r8d, r8d
lea rdx, [rbp + 0x40]
mov rcx, r12
call fcn.180002874
xor r14d, r14d
jmp 0x1800035cd
mov r14d, dword [rbp + 0x2f0]
xor edi, edi
test r14d, r14d
jne 0x18000395d
mov rcx, qword [rbp + 0x10]
lea rax, [rbp]
mov r9d, 0x20019
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rbp], rdi
mov rdx, rsi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegOpenKeyExW]
nop dword [rax + rax]
test eax, eax
jne 0x18000394f
mov eax, edi
test r15, r15
je 0x180003943
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov r15, qword [rbp]
mov qword [rbp + 0x40], r15
test eax, eax
je 0x18000395d
mov eax, 1
mov r14d, eax
mov dword [rbp + 0x2f0], eax
test r13, r13
jne 0x1800039b4
mov ecx, 0x208
call fcn.180001bac
test al, al
je 0x180003986
mov eax, dword [rsp]
mov eax, 0x210
sub rsp, rax
lea r13, [rsp + 0x60]
mov eax, dword [r13]
jmp 0x1800039ab
mov ecx, 0x218
call qword [sym.imp.msvcrt.dll_malloc]
nop dword [rax + rax]
test rax, rax
jne 0x1800039a1
mov r13, rdi
jmp 0x1800039ab
mov qword [rax], rbx
lea r13, [rax + 0x10]
mov rbx, rax
test r13, r13
je 0x180003c46
mov r8d, 0x104
mov rdx, rsi
mov rcx, r13
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcpynW]
nop dword [rax + rax]
test r14d, r14d
jne 0x180003a30
mov qword [rsp + 0x58], rdi
lea rax, [rbp]
mov qword [rsp + 0x50], rdi
xor r9d, r9d
mov qword [rsp + 0x48], rdi
xor r8d, r8d
mov qword [rsp + 0x40], rdi
xor edx, edx
mov qword [rsp + 0x38], rdi
mov rcx, r15
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
mov dword [rbp], edi
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryInfoKeyW]
nop dword [rax + rax]
test eax, eax
js 0x180003a20
cmp dword [rbp], edi
ja 0x180003a30
mov rdx, r15
call fcn.180002e28
test eax, eax
je 0x180003b6d
mov rdx, rsi
mov rcx, r12
call fcn.180002698
mov edi, eax
test eax, eax
js 0x180003c52
mov rdx, rsi
mov rcx, r12
call fcn.180002f2c
mov edi, eax
xor eax, eax
test edi, edi
js 0x180003c52
cmp word [rsi], 0x7b
jne 0x180003aba
xor r9d, r9d
mov dword [rsp + 0x20], r14d
mov r8, r15
mov rdx, rsi
mov rcx, r12
call fcn.180003450
mov edi, eax
xor eax, eax
test edi, edi
js 0x180003c52
test r14d, r14d
je 0x180003ac3
mov eax, dword [rbp + 0x38]
mov rdx, rsi
mov rcx, r12
mov dword [rbp + 0x2f0], eax
call fcn.180002698
xor r14d, r14d
mov edi, eax
test eax, eax
js 0x180003c52
mov rdx, rsi
mov rcx, r12
call fcn.180002f2c
jmp 0x180003720
test r14d, r14d
jne 0x180003c1a
mov qword [rsp + 0x58], rax
xor r9d, r9d
mov qword [rsp + 0x50], rax
xor r8d, r8d
mov qword [rsp + 0x48], rax
xor edx, edx
mov qword [rsp + 0x40], rax
mov rcx, r15
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov dword [rbp], eax
lea rax, [rbp]
mov qword [rsp + 0x20], rax
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegQueryInfoKeyW]
nop dword [rax + rax]
xor ecx, ecx
test eax, eax
js 0x180003b64
cmp dword [rbp], ecx
jbe 0x180003b64
lea rdi, str.CLSID
xor r14d, r14d
mov rdx, qword [rdi]
mov rcx, r13
call qword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
nop dword [rax + rax]
test eax, eax
je 0x180003b54
add rdi, 8
lea rax, [0x1800061c0]
cmp rdi, rax
jl 0x180003b1e
mov rdx, r13
lea rcx, [rbp + 0x40]
call fcn.180001ee0
mov r15, qword [rbp + 0x40]
mov rdx, rsi
mov rcx, r12
call fcn.180002698
jmp 0x180003720
test r14d, r14d
jne 0x180003c1a
xor r14d, r14d
test r15, r15
je 0x180003b93
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
mov r15d, r14d
mov qword [rbp + 0x40], r14
test eax, eax
jne 0x180003c4d
cmp dword [rbp + 0x18], r14d
je 0x180003bb5
mov rax, qword [rbp + 0x10]
lea rcx, [rbp + 0x20]
mov rdx, r13
mov qword [rbp + 0x20], rax
mov qword [rbp + 0x28], r14
mov qword [rbp + 0x30], r14
call fcn.180001e04
mov rdx, rsi
mov rcx, r12
call fcn.180002698
jmp 0x1800035b8
xor r14d, r14d
mov ecx, dword [rbp + 8]
test ecx, ecx
je 0x1800034bf
cmp word [rsi], 0x7b
jne 0x1800034bf
or rax, 0xffffffffffffffff
inc rax
cmp word [rsi + rax*2], r14w
jne 0x180003be1
mov edx, 1
cmp rax, rdx
jne 0x1800034bf
mov r9d, ecx
mov dword [rsp + 0x20], r14d
mov rcx, r12
mov r8, r15
mov rdx, rsi
call fcn.180003450
mov edi, eax
test eax, eax
js 0x180003c52
jmp 0x180003b54
xor r14d, r14d
jmp 0x1800034bf
movzx edi, ax
or edi, 0x80070000
test eax, eax
cmovle edi, eax
test r14, r14
je 0x180003c52
mov rcx, r14
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
jmp 0x180003c52
mov edi, 0x8007000e
jmp 0x180003c52
mov edi, 0x80020009
test r15, r15
je 0x180003c7a
mov rcx, r15
call qword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
nop dword [rax + rax]
jmp 0x180003c7a
mov rcx, rbx
mov rbx, qword [rbx]
call qword [sym.imp.msvcrt.dll_free]
nop dword [rax + rax]
test rbx, rbx
jne 0x180003c68
mov eax, edi
mov rcx, qword [rbp + 0x270]
xor rcx, rbp
call fcn.1800051b0
lea rsp, [rbp + 0x288]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret