Function at 0x46aa75
Capabilities:
Delete registry value

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44cb22
mov eax, dword fs:[0]
push eax
mov eax, 0x2260
call fcn.00447ce0
mov eax, dword [0x4a0cb8]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, ecx
mov dword [ebp - 0x221c], eax
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2220], ecx
xor ecx, ecx
mov ebx, ecx
mov dword [ebp - 0x2248], ecx
mov dword [ebp - 0x2234], ebx
mov dword [ebp - 0x2230], ecx
mov dword [ebp - 0x222c], ecx
mov dword [ebp - 4], ecx
mov ecx, eax
push edi
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b031
jmp 0x46afdd
push 0x40e06c
push edi
mov dword [ebp - 0x2224], 1
call dword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
neg eax
push 0x40e040
sbb ebx, ebx
push edi
inc ebx
call dword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
test eax, eax
je 0x46ab26
test ebx, ebx
je 0x46abbb
mov ecx, dword [ebp - 0x221c]
push edi
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
cmp dword [ebp + 0x10], 0
je 0x46abbb
xor eax, eax
mov ecx, edi
push 0x5c
pop edx
mov dword [ebp - 0x2254], eax
mov dword [ebp - 0x2250], eax
mov dword [ebp - 0x224c], eax
call fcn.0046b764
test eax, eax
jne 0x46b01b
push edi
call fcn.00468a31
test eax, eax
je 0x46ab92
mov eax, dword [ebp - 0x2220]
lea ecx, [ebp - 0x2254]
push edi
mov dword [ebp - 0x2254], eax
call fcn.0046a6ad
xor eax, eax
mov dword [ebp - 0x2254], eax
test ebx, ebx
je 0x46abbb
mov ebx, dword [ebp - 0x221c]
mov ecx, ebx
push edi
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push edi
mov ecx, ebx
call fcn.0046b683
jmp 0x46adab
push 0x40e058
push edi
call dword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
mov ebx, dword [ebp - 0x221c]
test eax, eax
jne 0x46abe9
push edi
mov ecx, ebx
mov dword [ebp - 0x2224], eax
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push 0x40e038
push edi
call dword [sym.imp.api_ms_win_core_string_obsolete_l1_1_0.dll_lstrcmpiW]
test eax, eax
jne 0x46ad1a
lea eax, [ebp - 0x2218]
mov ecx, ebx
push eax
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push edi
mov ecx, ebx
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push 0x3d
pop eax
cmp word [edi], ax
jne 0x46b01b
cmp dword [ebp + 0x10], 0
je 0x46ac87
xor eax, eax
mov dword [ebp - 0x225c], eax
mov dword [ebp - 0x2258], eax
mov eax, dword [ebp - 0x2220]
mov ecx, ebx
mov byte [ebp - 4], 1
mov dword [ebp - 0x2260], eax
lea eax, [ebp - 0x2218]
push edi
push eax
lea eax, [ebp - 0x2260]
push eax
call fcn.00468096
mov esi, eax
xor eax, eax
mov dword [ebp - 0x2260], eax
test esi, esi
js 0x46b020
mov byte [ebp - 4], al
jmp 0x46adb5
cmp dword [ebp + 0x14], 0
jne 0x46ad03
cmp dword [ebp - 0x2224], 0
je 0x46ad03
xor eax, eax
lea ecx, [ebp - 0x2244]
push 0x20006
push eax
push dword [ebp - 0x2220]
mov dword [ebp - 0x2244], eax
mov dword [ebp - 0x2240], eax
mov dword [ebp - 0x223c], eax
call fcn.0046a070
test eax, eax
jne 0x46b001
mov ebx, dword [ebp - 0x2244]
lea eax, [ebp - 0x2218]
push eax
push ebx
call dword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegDeleteValueW]
test eax, eax
je 0x46acea
cmp eax, 2
jne 0x46afeb
test ebx, ebx
je 0x46acfd
push ebx
call dword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
xor eax, eax
mov dword [ebp - 0x2244], eax
mov ebx, dword [ebp - 0x221c]
push edi
mov ecx, ebx
call fcn.0046b683
mov esi, eax
test esi, esi
js 0x46b020
jmp 0x46afdd
push 0x5c
pop edx
mov ecx, edi
call fcn.0046b764
test eax, eax
jne 0x46b01b
cmp dword [ebp + 0x10], eax
je 0x46ae0d
mov esi, dword [ebp - 0x2220]
lea ecx, [ebp - 0x2234]
push 0x2001f
push edi
push esi
call fcn.0046a070
test eax, eax
je 0x46ad7f
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x2234]
call fcn.0046a070
test eax, eax
je 0x46ad7f
sub esp, 0x14
lea ecx, [ebp - 0x2234]
push edi
push esi
call fcn.00468c7c
test eax, eax
jne 0x46af18
push edi
mov ecx, ebx
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push 0x3d
pop eax
cmp word [edi], ax
jne 0x46adb5
push edi
xor eax, eax
mov ecx, ebx
push eax
lea eax, [ebp - 0x2234]
push eax
call fcn.00468096
mov esi, eax
test esi, esi
js 0x46b020
push 0x7b
pop eax
cmp word [edi], ax
jne 0x46afdd
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, word [ebp - 0x2248]
jne 0x46adc6
sub ecx, edx
sar ecx, 1
cmp ecx, 1
jne 0x46afdd
xor eax, eax
mov ecx, ebx
push eax
push dword [ebp + 0x10]
push dword [ebp - 0x2234]
push edi
call fcn.0046aa75
mov esi, eax
test esi, esi
js 0x46b020
push edi
mov ecx, ebx
call fcn.00469d43
jmp 0x46ad0b
mov esi, dword [ebp + 0x14]
test esi, esi
jne 0x46ae2d
push 0x20019
push edi
push dword [ebp - 0x2220]
lea ecx, [ebp - 0x2234]
call fcn.0046a070
jmp 0x46ae30
push 2
pop eax
mov dword [ebp - 0x2228], eax
mov dword [ebp - 0x2238], esi
test eax, eax
je 0x46ae4a
mov dword [ebp - 0x2238], 1
push 0xffffffffffffffff
push edi
lea eax, [ebp - 0x218]
push 0x104
push eax
call dword [sym.imp.msvcrt.dll_wcsncpy_s]
add esp, 0x10
mov ecx, eax
call fcn.00423eaa
push edi
mov ecx, ebx
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
push edi
mov ecx, ebx
call fcn.0046b683
mov esi, eax
test esi, esi
js 0x46b020
push 0x7b
pop eax
cmp word [edi], ax
jne 0x46aef5
mov ecx, edi
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x46ae9c
sub ecx, edx
sar ecx, 1
cmp ecx, 1
jne 0x46aef5
push dword [ebp - 0x2238]
mov ecx, dword [ebp - 0x221c]
push ebx
mov ebx, dword [ebp - 0x2234]
push ebx
push edi
call fcn.0046aa75
mov esi, eax
test esi, esi
jns 0x46aedd
cmp dword [ebp - 0x2238], 0
je 0x46b020
mov ecx, dword [ebp - 0x221c]
push edi
call fcn.00469d43
mov esi, eax
test esi, esi
js 0x46b020
jmp 0x46aefb
mov ebx, dword [ebp - 0x2234]
mov eax, dword [ebp - 0x2228]
cmp eax, 2
je 0x46afdd
test eax, eax
je 0x46af26
cmp dword [ebp + 0x14], 0
jne 0x46afdd
mov ecx, eax
call fcn.0043ec6b
mov esi, eax
jmp 0x46b020
cmp dword [ebp + 0x14], 0
je 0x46af6b
push ebx
call fcn.004698fa
test eax, eax
je 0x46af6b
lea eax, [ebp - 0x218]
push eax
call fcn.00468a31
test eax, eax
je 0x46afdd
cmp dword [ebp - 0x2224], 0
je 0x46afdd
lea eax, [ebp - 0x218]
push eax
lea ecx, [ebp - 0x2234]
call fcn.0046a6ad
jmp 0x46afdd
push ebx
call fcn.004698fa
mov dword [ebp - 0x2228], eax
test ebx, ebx
je 0x46af96
push ebx
call dword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
xor ebx, ebx
mov dword [ebp - 0x2234], ebx
test eax, eax
jne 0x46af18
mov eax, dword [ebp - 0x2228]
jmp 0x46af98
xor ebx, ebx
cmp dword [ebp - 0x2224], 0
je 0x46afdd
test eax, eax
jne 0x46afdd
mov eax, dword [ebp - 0x2220]
lea ecx, [ebp - 0x226c]
mov dword [ebp - 0x226c], eax
lea eax, [ebp - 0x218]
push eax
mov dword [ebp - 0x2268], ebx
mov dword [ebp - 0x2264], ebx
call fcn.0046945a
mov dword [ebp - 0x226c], ebx
test eax, eax
jne 0x46af18
push 0x7d
pop eax
cmp word [edi], ax
jne 0x46aaf3
jmp 0x46b020
mov ecx, eax
call fcn.0043ec6b
mov esi, eax
test ebx, ebx
je 0x46b020
push ebx
call dword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
jmp 0x46b020
mov ecx, eax
call fcn.0043ec6b
cmp dword [ebp - 0x2244], 0
mov esi, eax
je 0x46b020
push dword [ebp - 0x2244]
jmp 0x46aff9
mov esi, 0x80020009
mov eax, dword [ebp - 0x2234]
test eax, eax
je 0x46b031
push eax
call dword [sym.imp.api_ms_win_core_registry_l1_1_0.dll_RegCloseKey]
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0043b590
leave
ret 0x10