Function at 0x462460
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2250
call fcn.00470370
mov eax, dword [0x633634]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
xor ebx, ebx
push edi
mov dword [ebp - 0x2210], ecx
mov dword [ebp - 0x2220], eax
mov dword [ebp - 0x221c], ebx
mov dword [ebp - 0x2218], ebx
mov dword [ebp - 0x2238], edx
call fcn.00460860
mov esi, eax
cmp esi, ebx
jl 0x462b51
cmp word [edi], 0x7d
je 0x462b4f
lea ecx, [ecx]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
push str.Delete
push edi
mov dword [ebp - 0x222c], 1
call esi
mov ebx, eax
neg ebx
push str.ForceRemove
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x4624f3
test ebx, ebx
je 0x46260b
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
xor esi, esi
cmp dword [ebp + 0x10], esi
je 0x46260d
push 0x5c
push edi
mov dword [ebp - 0x2228], esi
mov dword [ebp - 0x2224], esi
call fcn.00460740
add esp, 8
test eax, eax
jne 0x462aa5
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.004609e0
test eax, eax
je 0x46256d
mov eax, dword [ebp - 0x2220]
push edi
lea ecx, [ebp - 0x2228]
mov dword [ebp - 0x2228], eax
mov dword [ebp - 0x2224], esi
call fcn.00460e30
mov dword [ebp - 0x2228], esi
mov dword [ebp - 0x2224], esi
cmp ebx, esi
je 0x462603
mov ebx, dword [ebp - 0x2210]
push edi
mov ecx, ebx
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462ad3
push edi
mov ecx, ebx
call fcn.00460a70
mov esi, eax
test esi, esi
jl 0x462ad3
mov dword [ebp - 0x2224], 0
cmp word [edi], 0x7b
jne 0x4625f4
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x4625f4
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2210]
push 0
push edx
push eax
push edi
call fcn.00462460
mov esi, eax
test esi, esi
jl 0x462b3e
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
cmp word [edi], 0x7d
jne 0x4624c0
jmp 0x462b3e
mov dword [ebp - 0x2224], esi
jmp 0x46260d
xor esi, esi
push str.NoRemove
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x46263b
mov ecx, dword [ebp - 0x2210]
push edi
mov dword [ebp - 0x222c], eax
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
xor esi, esi
push 0x48f5b0
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x462765
lea ecx, [ebp - 0x220c]
push ecx
mov ecx, dword [ebp - 0x2210]
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
cmp word [edi], 0x3d
jne 0x462ab0
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
je 0x4626df
mov edx, dword [ebp - 0x2220]
push edi
lea eax, [ebp - 0x220c]
push eax
lea ecx, [ebp - 0x2240]
push ecx
mov ecx, dword [ebp - 0x2210]
mov dword [ebp - 0x2240], edx
mov dword [ebp - 0x223c], ebx
call fcn.00462100
mov esi, eax
cmp esi, ebx
mov dword [ebp - 0x2240], ebx
mov dword [ebp - 0x223c], ebx
jl 0x462adb
mov dword [ebp - 0x223c], ebx
jmp 0x4625a9
cmp dword [ebp + 0x14], ebx
jne 0x462750
cmp dword [ebp - 0x222c], ebx
je 0x462750
mov edx, dword [ebp - 0x2220]
push 0x20006
push ebx
push edx
lea ecx, [ebp - 0x2234]
mov dword [ebp - 0x2234], ebx
mov dword [ebp - 0x2230], ebx
call fcn.004602e0
cmp eax, ebx
jne 0x462af3
mov esi, dword [ebp - 0x2234]
lea eax, [ebp - 0x220c]
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
cmp eax, ebx
je 0x462739
cmp eax, 2
jne 0x462af3
cmp esi, ebx
je 0x46274a
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x2234], ebx
mov dword [ebp - 0x2230], ebx
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460a70
mov esi, eax
cmp esi, ebx
jmp 0x4625ee
push 0x5c
push edi
call fcn.00460740
add esp, 8
test eax, eax
jne 0x462ab0
cmp dword [ebp + 0x10], esi
je 0x462889
mov ebx, dword [ebp - 0x2220]
lea ecx, [ebp - 0x2214]
push ecx
push 0x2001f
push esi
push edi
push ebx
mov dword [ebp - 0x2214], esi
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
cmp eax, esi
jne 0x4627cf
mov ecx, dword [ebp - 0x221c]
xor eax, eax
cmp ecx, esi
je 0x4627b9
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov edx, dword [ebp - 0x2214]
mov dword [ebp - 0x221c], edx
mov dword [ebp - 0x2218], esi
cmp eax, esi
je 0x462845
push 0x20019
push edi
push ebx
lea ecx, [ebp - 0x221c]
call fcn.004602e0
test eax, eax
je 0x462845
lea eax, [ebp - 0x2250]
push eax
lea ecx, [ebp - 0x2214]
push ecx
push esi
push 0x2001f
push esi
push esi
push esi
push edi
mov edx, ebx
push edx
mov dword [ebp - 0x2214], esi
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
mov ebx, eax
cmp ebx, esi
jne 0x462b01
mov ecx, dword [ebp - 0x221c]
xor eax, eax
cmp ecx, esi
je 0x462829
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov ecx, dword [ebp - 0x2214]
mov ebx, eax
mov dword [ebp - 0x221c], ecx
mov dword [ebp - 0x2218], esi
cmp eax, esi
jne 0x462b01
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
cmp word [edi], 0x3d
jne 0x4625a9
mov ecx, dword [ebp - 0x2210]
push edi
push 0
lea edx, [ebp - 0x221c]
push edx
call fcn.00462100
mov esi, eax
test esi, esi
jl 0x462b3e
jmp 0x4625a9
cmp dword [ebp + 0x14], esi
jne 0x462989
mov eax, dword [ebp - 0x2220]
push 0x20019
push edi
push eax
lea ecx, [ebp - 0x221c]
call fcn.004602e0
mov ebx, eax
mov dword [ebp - 0x2214], ebx
cmp ebx, esi
je 0x4628bd
mov dword [ebp + 0x14], 1
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x20c]
push 0x104
push ecx
call fcn.0046f7ce
push eax
call fcn.004013e0
mov ecx, dword [ebp - 0x2210]
add esp, 0x14
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460a70
mov esi, eax
test esi, esi
jl 0x462b3e
cmp word [edi], 0x7b
jne 0x46295b
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, 1
jne 0x46295b
mov ebx, dword [ebp + 0x14]
mov edx, dword [ebp - 0x221c]
mov ecx, dword [ebp - 0x2210]
push ebx
push 0
push edx
push edi
call fcn.00462460
mov esi, eax
test esi, esi
jge 0x46293f
test ebx, ebx
je 0x462b3e
mov ecx, dword [ebp - 0x2210]
push edi
call fcn.00460860
mov esi, eax
test esi, esi
jl 0x462b3e
mov ebx, dword [ebp - 0x2214]
mov eax, dword [ebp - 0x2238]
mov dword [ebp + 0x14], eax
cmp ebx, 2
je 0x4625f4
test ebx, ebx
je 0x46299e
test eax, eax
jne 0x4625f4
push ebx
call fcn.00460010
add esp, 4
mov esi, eax
jmp 0x462b3e
mov dword [ebp - 0x2214], 2
mov ebx, dword [ebp - 0x2214]
jmp 0x4628b6
mov ebx, dword [ebp - 0x221c]
test eax, eax
je 0x4629f6
mov ecx, dword [ebp - 0x2210]
push ebx
call fcn.00460a20
test eax, eax
je 0x4629f6
lea ecx, [ebp - 0x20c]
push ecx
mov ecx, dword [ebp - 0x2210]
call fcn.004609e0
test eax, eax
je 0x4625f4
cmp dword [ebp - 0x222c], 0
je 0x4625f4
lea edx, [ebp - 0x20c]
push edx
lea ecx, [ebp - 0x221c]
call fcn.00460e30
jmp 0x4625f4
mov ecx, dword [ebp - 0x2210]
push ebx
call fcn.00460a20
mov dword [ebp - 0x224c], eax
mov dword [ebp - 0x2214], 0
test ebx, ebx
je 0x462a2d
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x2214], eax
mov dword [ebp - 0x221c], 0
mov ebx, dword [ebp - 0x2214]
mov dword [ebp - 0x2218], 0
test ebx, ebx
jne 0x462b01
cmp dword [ebp - 0x222c], ebx
je 0x4625f4
cmp dword [ebp - 0x224c], ebx
jne 0x4625f4
mov eax, dword [ebp - 0x2220]
lea ecx, [ebp - 0x20c]
push ecx
lea ecx, [ebp - 0x2248]
mov dword [ebp - 0x2248], eax
mov dword [ebp - 0x2244], ebx
call fcn.004601b0
mov dword [ebp - 0x2248], ebx
mov dword [ebp - 0x2244], ebx
cmp eax, ebx
jne 0x462b28
lea ecx, [ebp - 0x2248]
call fcn.00460e10
jmp 0x4625f4
lea ecx, [ebp - 0x2228]
call fcn.00460e10
lea ecx, [ebp - 0x221c]
call fcn.00460e10
pop edi
pop esi
mov eax, 0x80020009
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046f8a1
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [ebp - 0x2228]
jmp 0x462b39
lea ecx, [ebp - 0x2240]
call fcn.00460e10
lea ecx, [ebp - 0x221c]
call fcn.00460e10
jmp 0x462b4f
push eax
call fcn.00460010
lea ecx, [ebp - 0x2234]
jmp 0x462b34
lea ecx, [ebp - 0x221c]
call fcn.00460e10
push ebx
call fcn.00460010
add esp, 4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046f8a1
mov esp, ebp
pop ebp
ret 0x10
push eax
call fcn.00460010
lea ecx, [ebp - 0x2248]
add esp, 4
mov esi, eax
call fcn.00460e10
mov eax, dword [ebp - 0x221c]
test eax, eax
je 0x462b4f
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046f8a1
mov esp, ebp
pop ebp
ret 0x10