Function at 0x14001d110
Capabilities:
Delete registry value

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov r14, rdx
mov rsi, r8
xor edx, edx
mov rdi, rcx
lea rcx, [rbp - 1]
lea r8d, [rdx + 0x38]
call fcn.1400547d0
mov rcx, qword [rdi + 0xa0]
xor r15d, r15d
mov r9, rsi
mov qword [rbp - 9], r15
mov r8, r14
mov qword [rbp - 0x29], r15
mov edx, 0x80
mov qword [rbp - 0x11], r15
mov qword [rbp - 0x21], r15
mov qword [rbp - 0x19], r15
mov dword [rbp + 0x7f], r15d
mov dword [rbp + 0x67], r15d
mov qword [rsp + 0x20], r15
call fcn.1400734d4
cmp eax, 0x80070003
mov ebx, eax
cmove ebx, r15d
test ebx, ebx
jns 0x14001d1c8
mov rax, qword [rdi + 0xa0]
mov edx, 0x3b5
mov qword [rsp + 0x30], rax
lea rax, str.Failed_to_write_state_to_file:__ls
mov qword [rsp + 0x28], rax
lea rcx, str.d:_awixwix_src_burnengine_registration.cpp
mov r9d, 0x100
mov dword [rsp + 0x20], ebx
mov r8d, 5
call fcn.1400012b4
jmp 0x14001d430
lea rcx, [rbp - 1]
call qword [sym.imp.KERNEL32.dll_InitializeCriticalSection]
lea rax, [rbp - 9]
mov r9, rsi
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, 1
lea rcx, [rbp - 1]
call fcn.14000c0e4
mov ebx, eax
test eax, eax
jns 0x14001d206
lea rax, str.Failed_to_read_variables.
mov edx, 0x3ba
jmp 0x14001d40f
mov r8, qword [rdi + 0x88]
lea r9, str.variables
lea rdx, str._s_s
lea rcx, [rbp - 0x11]
call fcn.1400031dc
mov ebx, eax
test eax, eax
jns 0x14001d23b
lea rax, str.Failed_to_build_variable_registry_key_path.
mov edx, 0x3be
jmp 0x14001d40f
mov rdx, qword [rbp - 0x11]
lea r9, [rbp - 0x29]
mov rcx, qword [rdi + 0x80]
mov r8d, 0x20007
call fcn.140069d80
mov ebx, eax
test eax, eax
jns 0x14001d26c
lea rax, str.Failed_to_create_registration_variable_key.
mov edx, 0x3c2
jmp 0x14001d40f
mov rcx, qword [rbp - 0x29]
lea rax, [rbp + 0x67]
mov qword [rsp + 0x58], r15
xor r9d, r9d
mov qword [rsp + 0x50], r15
xor r8d, r8d
mov qword [rsp + 0x48], r15
xor edx, edx
mov qword [rsp + 0x40], r15
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], r15
mov qword [rsp + 0x28], r15
mov qword [rsp + 0x20], r15
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
mov ebx, eax
test eax, eax
jns 0x14001d2c1
lea rax, str.Failed_to_query_registration_variable_count.
mov edx, 0x3c5
jmp 0x14001d40f
mov edi, dword [rbp + 0x67]
mov rcx, qword [rbp - 0x29]
lea r9, [rbp + 0x7f]
lea r8, [rbp - 0x19]
mov edx, edi
call fcn.14006b378
mov ebx, eax
cmp eax, 0x80070103
je 0x14001d34e
test eax, eax
js 0x14001d339
mov rdx, qword [rbp - 0x19]
mov rcx, qword [rbp - 0x29]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, 0xfffffffd
jne 0x14001d2fd
dec edi
jmp 0x14001d2c4
movzx ebx, ax
lea rcx, str.d:_awixwix_src_burnengine_registration.cpp
or ebx, 0x80070000
mov edi, 0x3d6
test eax, eax
mov edx, edi
cmovle ebx, eax
mov eax, 0x80004005
test ebx, ebx
cmovns ebx, eax
mov r8d, ebx
call fcn.1400012b0
lea rax, str.Failed_to_delete_registration_variable_value.
mov edx, edi
jmp 0x14001d40f
mov dword [rsp + 0x30], edi
lea rax, str.Failed_to_enumerate_value__u
mov edx, 0x3d1
jmp 0x14001d1a2
mov ebx, r15d
mov esi, r15d
cmp dword [rbp + 0x2b], r15d
jbe 0x14001d430
mov eax, esi
imul rdi, rax, 0x38
add rdi, qword [rbp + 0x2f]
mov ecx, dword [rdi + 0x10]
test ecx, ecx
je 0x14001d3c0
sub ecx, 1
je 0x14001d383
sub ecx, 1
je 0x14001d383
sub ecx, 1
je 0x14001d383
cmp ecx, 1
jne 0x14001d3db
lea rcx, [rdi + 8]
lea rdx, [rbp - 0x21]
call fcn.1400361ec
mov ebx, eax
test eax, eax
js 0x14001d3f5
mov r8, qword [rbp - 0x21]
mov rdx, qword [rdi]
mov rcx, qword [rbp - 0x29]
call fcn.14006b748
mov ebx, eax
test eax, eax
js 0x14001d3ee
mov rcx, qword [rbp - 0x21]
test rcx, rcx
je 0x14001d3d2
call fcn.140004578
mov qword [rbp - 0x21], r15
jmp 0x14001d3d2
mov rdx, qword [rdi]
mov rcx, qword [rbp - 0x29]
call fcn.14006b608
mov ebx, eax
test eax, eax
js 0x14001d403
inc esi
cmp esi, dword [rbp + 0x2b]
jae 0x14001d430
jmp 0x14001d35e
mov ebx, 0x80070057
lea rax, str.Unsupported_variable_type.
mov edx, 0x3f5
jmp 0x14001d40f
mov edx, 0x3ee
jmp 0x14001d408
lea rax, str.Failed_to_get_variable_value.
mov edx, 0x3eb
jmp 0x14001d40f
mov edx, 0x3e4
lea rax, str.Failed_to_set_variable_value.
mov qword [rsp + 0x28], rax
lea rcx, str.d:_awixwix_src_burnengine_registration.cpp
mov r9d, 0x100
mov dword [rsp + 0x20], ebx
mov r8d, 5
call fcn.1400012b4
lea rcx, [rbp - 1]
call fcn.14000e3fc
mov rcx, qword [rbp - 0x19]
test rcx, rcx
je 0x14001d447
call fcn.140004278
mov rcx, qword [rbp - 0x21]
test rcx, rcx
je 0x14001d455
call fcn.140004278
mov rcx, qword [rbp - 0x11]
test rcx, rcx
je 0x14001d463
call fcn.140004278
mov rcx, qword [rbp - 0x29]
test rcx, rcx
je 0x14001d472
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, ebx
mov rbx, qword [rsp + 0xf8]
add rsp, 0xc0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret