Function at 0x100e2ac
Capabilities:
Delete registry key

Disassembly:
push 0x1ac
mov eax, 0x105406f
call fcn.01034bcc
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
xor ebx, ebx
mov dword [ebp - 0x1a4], eax
mov dword [ebp - 0x1ac], ebx
xor edi, edi
inc edi
mov dword [ebp - 4], edi
cmp esi, ebx
jne 0x100e2f2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ac]
call fcn.01010e9b
xor eax, eax
call fcn.01034c4f
ret 0xc
push 0x10062a0
push eax
call fcn.0100cd86
test eax, eax
jne 0x100e2d9
lea eax, [ebp - 0x1ac]
push eax
push 0x1001acc
push edi
push ebx
push 0x1006280
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, ebx
jge 0x100e331
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1ac]
call fcn.01010e9b
mov eax, ebx
jmp 0x100e2ea
cmp dword [esi], ebx
mov eax, esi
mov dword [ebp - 0x1a8], eax
jne 0x100e523
cmp dword [ebp + 0x10], ebx
jne 0x100e31e
push 0x40
lea eax, [ebp - 0x190]
push eax
push dword [ebp - 0x1a4]
call dword [sym.imp.ole32.dll_StringFromGUID2]
call dword [0x1066c5c]
mov dword [ebp - 0x1b4], ebx
mov byte [ebp - 4], 2
push 0x1001abc
mov esi, 0x80
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.01034f98
add esp, 0xc
push eax
call fcn.0100cf0b
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.0100cfa7
push 0x1001a90
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.010350cd
add esp, 0x18
push eax
call fcn.0100cf0b
mov edi, SysReAllocStringLen
mov dword [ebp - 0x1b0], edi
mov byte [ebp - 4], 3
mov dword [ebp - 0x1a4], ebx
mov byte [ebp - 4], 4
push 0x20019
lea eax, [ebp - 0x110]
push eax
push edi
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x1a8], ebx
call fcn.0100d2cb
test eax, eax
jne 0x100e441
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x1a8]
push eax
push ebx
push ebx
push ebx
push dword [ebp - 0x1a4]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
lea ecx, [ebp - 0x1a4]
mov dword [ebp - 0x1b8], eax
call fcn.0100d262
cmp dword [ebp - 0x1b8], ebx
jne 0x100e441
cmp dword [ebp - 0x1a8], ebx
jne 0x100e441
lea eax, [ebp - 0x110]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
push 0x1001abc
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.01034f98
add esp, 0xc
push eax
call fcn.0100cf0b
lea eax, [ebp - 0x190]
push eax
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.0100cfa7
push 0x1001a60
lea eax, [ebp - 0x110]
push esi
push eax
call fcn.010350cd
add esp, 0x18
push eax
call fcn.0100cf0b
push 0x20019
lea eax, [ebp - 0x110]
push eax
push edi
lea ecx, [ebp - 0x1a4]
call fcn.0100d2cb
cmp eax, ebx
jne 0x100e4eb
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp - 0x1a8]
push eax
push ebx
push ebx
push ebx
push dword [ebp - 0x1a4]
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
lea ecx, [ebp - 0x1a4]
mov esi, eax
call fcn.0100d262
cmp esi, ebx
jne 0x100e4eb
cmp dword [ebp - 0x1a8], ebx
jne 0x100e4eb
lea eax, [ebp - 0x110]
push eax
push edi
call dword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1a4]
call fcn.0100d262
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x1b0]
call fcn.0100d262
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x1b4]
call fcn.0100d896
jmp 0x100e31e
mov eax, dword [ebp - 0x1a8]
cmp dword [ebp + 0x10], ebx
mov esi, dword [eax + 4]
lea edi, [ebp - 0x1a0]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea edx, [ebp - 0x1a0]
movsd dword es:[edi], dword [esi]
push edx
push 1
push dword [ebp - 0x1a4]
movsd dword es:[edi], dword [esi]
je 0x100e565
cmp dword [eax], 1
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [eax]
push eax
jne 0x100e557
call dword [ecx + 0x14]
jmp 0x100e55a
call dword [ecx + 0x1c]
cmp eax, ebx
jge 0x100e57b
mov ebx, eax
jmp 0x100e31e
cmp dword [eax], 1
mov eax, dword [ebp - 0x1ac]
mov ecx, dword [eax]
push eax
jne 0x100e578
call dword [ecx + 0x18]
jmp 0x100e57b
call dword [ecx + 0x20]
add dword [ebp - 0x1a8], 8
mov eax, dword [ebp - 0x1a8]
cmp dword [eax], ebx
jne 0x100e51d
jmp 0x100e341