Function at 0x10002e35
Capabilities:
Delete registry value

Disassembly:
push ebp
lea ebp, [esp - 0x220c]
mov eax, 0x220c
call fcn.1000a6e0
push 0xffffffffffffffff
push 0x10019a38
mov eax, dword fs:[0]
push eax
sub esp, 0x3c
mov eax, dword [0x10021d68]
xor eax, ebp
mov dword [ebp + 0x2208], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 0x2218]
mov edi, dword [ebp + 0x2214]
xor ebx, ebx
mov dword [ebp - 0x10], ecx
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], ebx
mov dword [ebp - 0x18], ebx
mov eax, dword [ebp + 0x2220]
push edi
mov dword [ebp - 4], ebx
mov dword [ebp - 0x44], eax
call fcn.10001a76
mov esi, eax
cmp esi, ebx
jmp 0x100032e2
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push 0x1001a438
push edi
mov dword [ebp - 0x28], 1
call esi
mov ebx, eax
neg ebx
push 0x1001a45c
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x10002ed7
test ebx, ebx
je 0x10002f71
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
cmp dword [ebp + 0x221c], 0
je 0x10002f71
xor esi, esi
push 0x5c
push edi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
call fcn.10001a06
pop ecx
pop ecx
test eax, eax
jne 0x100032f0
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001b84
test eax, eax
je 0x10002f32
mov eax, dword [ebp - 0x14]
push edi
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], esi
call fcn.10001f9b
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
cmp ebx, esi
je 0x10002f69
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x100032ff
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001be5
lea ecx, [ebp - 0x24]
mov esi, eax
call fcn.1000167b
test esi, esi
jl 0x1000333d
jmp 0x100032a0
lea ecx, [ebp - 0x24]
call fcn.1000167b
push 0x1001a448
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x10002f97
mov ecx, dword [ebp - 0x10]
and dword [ebp - 0x28], eax
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
push 0x1001a474
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x1000307d
mov ecx, dword [ebp - 0x10]
lea eax, [ebp]
push eax
call fcn.10001a76
mov esi, eax
xor ebx, ebx
cmp esi, ebx
jl 0x1000333d
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
cmp esi, ebx
jl 0x1000333d
cmp word [edi], 0x3d
jne 0x100032f8
cmp dword [ebp + 0x221c], ebx
je 0x10003021
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x10]
mov dword [ebp - 0x40], eax
push edi
lea eax, [ebp]
push eax
lea eax, [ebp - 0x40]
push eax
mov byte [ebp - 4], 1
mov dword [ebp - 0x3c], ebx
call fcn.10002b51
mov esi, eax
cmp esi, ebx
mov dword [ebp - 0x40], ebx
mov dword [ebp - 0x3c], ebx
lea ecx, [ebp - 0x40]
jl 0x10003338
mov byte [ebp - 4], bl
jmp 0x1000329b
cmp dword [ebp + 0x2220], ebx
jne 0x1000306f
cmp dword [ebp - 0x28], ebx
je 0x1000306f
push 0x20006
push ebx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], ebx
call fcn.10001724
cmp eax, ebx
jne 0x10003304
lea eax, [ebp]
push eax
push dword [ebp - 0x30]
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
cmp eax, ebx
je 0x10003067
cmp eax, 2
jne 0x10003304
lea ecx, [ebp - 0x30]
call fcn.1000167b
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001be5
jmp 0x10002e9e
push 0x5c
push edi
call fcn.10001a06
pop ecx
pop ecx
test eax, eax
jne 0x100032f8
cmp dword [ebp + 0x221c], eax
je 0x10003112
mov esi, 0x2001f
push esi
push edi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
call fcn.10001724
test eax, eax
je 0x100030df
push 0x20019
push edi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
call fcn.10001724
test eax, eax
je 0x100030df
xor ebx, ebx
push ebx
push ebx
push esi
push ebx
push ebx
push edi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
call fcn.10001696
mov esi, eax
cmp esi, ebx
jne 0x10003310
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
cmp word [edi], 0x3d
jne 0x100032a0
mov ecx, dword [ebp - 0x10]
push edi
push 0
lea eax, [ebp - 0x1c]
push eax
call fcn.10002b51
mov esi, eax
jmp 0x10002f5c
cmp dword [ebp + 0x2220], 0
jne 0x10003130
push 0x20019
push edi
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1c]
call fcn.10001724
mov ebx, eax
jmp 0x10003133
push 2
pop ebx
test ebx, ebx
je 0x10003141
mov dword [ebp + 0x2220], 1
push 0xffffffffffffffff
push edi
lea eax, [ebp + 0x2000]
push 0x104
push eax
call fcn.1000a430
push eax
call fcn.100013d1
mov ecx, dword [ebp - 0x10]
add esp, 0x14
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001be5
mov esi, eax
test esi, esi
jl 0x1000333d
cmp word [edi], 0x7b
jne 0x100031d0
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x100031d0
push dword [ebp + 0x2220]
mov ecx, dword [ebp - 0x10]
push 0
push dword [ebp - 0x1c]
push edi
call fcn.10002e35
mov esi, eax
test esi, esi
jge 0x100031bd
cmp dword [ebp + 0x2220], 0
je 0x1000333d
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
mov eax, dword [ebp - 0x44]
mov dword [ebp + 0x2220], eax
cmp ebx, 2
je 0x100032e4
test ebx, ebx
je 0x100031fc
test eax, eax
jne 0x100032e4
push ebx
call fcn.10001558
pop ecx
mov esi, eax
jmp 0x1000333d
test eax, eax
je 0x10003244
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
call fcn.10001bb0
test eax, eax
je 0x10003244
mov ecx, dword [ebp - 0x10]
lea eax, [ebp + 0x2000]
push eax
call fcn.10001b84
test eax, eax
je 0x100032e4
cmp dword [ebp - 0x28], 0
je 0x100032e4
lea eax, [ebp + 0x2000]
push eax
lea ecx, [ebp - 0x1c]
call fcn.10001f9b
jmp 0x100032e4
push dword [ebp - 0x1c]
mov ecx, dword [ebp - 0x10]
call fcn.10001bb0
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x48], eax
call fcn.1000167b
mov ebx, eax
xor eax, eax
cmp ebx, eax
jne 0x10003321
cmp dword [ebp - 0x28], eax
je 0x100032e4
cmp dword [ebp - 0x48], eax
jne 0x100032e4
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
lea eax, [ebp + 0x2000]
mov dword [ebp - 0x38], ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.10001620
and dword [ebp - 0x38], 0
and dword [ebp - 0x34], 0
test eax, eax
jne 0x1000332c
lea ecx, [ebp - 0x38]
call fcn.1000167b
cmp dword [ebp + 0x221c], 0
je 0x100032e4
cmp word [edi], 0x7b
jne 0x100032e4
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x100032e4
mov ecx, dword [ebp - 0x10]
push 0
push dword [ebp + 0x221c]
push dword [ebp - 0x1c]
push edi
call fcn.10002e35
mov esi, eax
test esi, esi
jl 0x1000333d
mov ecx, dword [ebp - 0x10]
push edi
call fcn.10001a76
mov esi, eax
test esi, esi
jl 0x1000333d
cmp word [edi], 0x7d
jne 0x10002ea7
jmp 0x1000333d
lea ecx, [ebp - 0x24]
call fcn.1000167b
mov esi, 0x80020009
jmp 0x1000333d
lea ecx, [ebp - 0x24]
jmp 0x10003338
push eax
call fcn.10001558
pop ecx
lea ecx, [ebp - 0x30]
jmp 0x10003336
lea ecx, [ebp - 0x1c]
call fcn.1000167b
push esi
call fcn.10001558
pop ecx
jmp 0x10003347
lea ecx, [ebp - 0x1c]
call fcn.1000167b
push ebx
jmp 0x10003319
push eax
call fcn.10001558
pop ecx
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.1000167b
lea ecx, [ebp - 0x1c]
call fcn.1000167b
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 + 0x2208]
xor ecx, ebp
call fcn.1000a6cf
add ebp, 0x220c
leave
ret 0x10