Function at 0x4c73e0
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x596516
mov eax, dword fs:[0]
push eax
mov eax, 0x115c
call fcn.00540100
mov eax, dword [0x5fae30]
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, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
xor ebx, ebx
mov dword [ebp - 0x1118], ecx
mov dword [ebp - 0x112c], eax
mov dword [ebp - 0x1124], ebx
mov dword [ebp - 0x1120], ebx
mov dword [ebp - 0x111c], ebx
mov edx, dword [ebp + 0x14]
push edi
mov dword [ebp - 4], ebx
mov dword [ebp - 0x1140], edx
call fcn.004072d9
mov esi, eax
cmp esi, ebx
jl 0x4c7a8a
cmp byte [edi], 0x7d
je 0x4c7a88
lea ecx, [ecx]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiA]
push 0x5b9f28
push edi
mov dword [ebp - 0x113c], 1
call esi
neg eax
push 0x5b9f08
sbb ebx, ebx
push edi
inc ebx
call esi
test eax, eax
je 0x4c7491
test ebx, ebx
je 0x4c75d7
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
xor eax, eax
cmp dword [ebp + 0x10], eax
je 0x4c75d7
mov cl, byte [edi]
mov dword [ebp - 0x1138], eax
mov dword [ebp - 0x1134], eax
mov dword [ebp - 0x1130], eax
mov eax, edi
test cl, cl
je 0x4c74ea
mov esi, dword [sym.imp.USER32.dll_CharNextA]
cmp cl, 0x5c
je 0x4c74e2
push eax
call esi
mov cl, byte [eax]
test cl, cl
jne 0x4c74d2
jmp 0x4c74ea
test eax, eax
jne 0x4c7a4f
mov esi, 0x5ba528
nop
mov eax, dword [esi]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x4c7541
add esi, 4
cmp esi, 0x5ba558
jl 0x4c74f0
mov ecx, dword [ebp - 0x112c]
xor esi, esi
mov dword [ebp - 0x1138], ecx
push edi
lea ecx, [ebp - 0x1138]
mov dword [ebp - 0x1134], esi
mov dword [ebp - 0x1130], esi
call fcn.00403788
mov dword [ebp - 0x1138], esi
mov dword [ebp - 0x1134], esi
mov dword [ebp - 0x1130], esi
test ebx, ebx
je 0x4c75cd
mov ebx, dword [ebp - 0x1118]
push edi
mov ecx, ebx
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a6c
push edi
mov ecx, ebx
call fcn.0040112c
mov esi, eax
test esi, esi
js 0x4c7a6c
mov dword [ebp - 0x1134], 0
cmp byte [edi], 0x7b
jne 0x4c75bf
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 1
jne 0x4c75bf
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x1124]
push 0
push eax
push ecx
push edi
mov ecx, ebx
call fcn.00405bfa
mov esi, eax
test esi, esi
js 0x4c7a77
push edi
mov ecx, ebx
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
cmp byte [edi], 0x7d
jne 0x4c7460
jmp 0x4c7a77
mov dword [ebp - 0x1134], 0
push 0x5b9f18
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x4c7603
mov ecx, dword [ebp - 0x1118]
push edi
mov dword [ebp - 0x113c], eax
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
push 0x5b9f00
push edi
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
jne 0x4c7751
mov ecx, dword [ebp - 0x1118]
lea edx, [ebp - 0x1114]
push edx
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
cmp byte [edi], 0x3d
jne 0x4c7a5a
xor ebx, ebx
cmp dword [ebp + 0x10], ebx
je 0x4c76bf
mov eax, dword [ebp - 0x112c]
push edi
lea ecx, [ebp - 0x1114]
push ecx
mov ecx, dword [ebp - 0x1118]
lea edx, [ebp - 0x114c]
push edx
mov byte [ebp - 4], 1
mov dword [ebp - 0x114c], eax
mov dword [ebp - 0x1148], ebx
mov dword [ebp - 0x1144], ebx
call fcn.0040496c
mov esi, eax
mov dword [ebp - 0x114c], ebx
mov dword [ebp - 0x1148], ebx
mov dword [ebp - 0x1144], ebx
cmp esi, ebx
jl 0x4c7aa8
mov byte [ebp - 4], bl
mov dword [ebp - 0x1148], ebx
mov ebx, dword [ebp - 0x1118]
jmp 0x4c757d
cmp dword [ebp + 0x14], ebx
jne 0x4c7736
cmp dword [ebp - 0x113c], ebx
je 0x4c7736
mov eax, dword [ebp - 0x112c]
push 0x20006
push ebx
push eax
lea ecx, [ebp - 0x1158]
mov dword [ebp - 0x1158], ebx
mov dword [ebp - 0x1154], ebx
mov dword [ebp - 0x1150], ebx
call fcn.00403d5f
cmp eax, ebx
jne 0x4c7ac0
mov esi, dword [ebp - 0x1158]
lea ecx, [ebp - 0x1114]
push ecx
push esi
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
cmp eax, ebx
je 0x4c771f
cmp eax, 2
jne 0x4c7ac0
cmp esi, ebx
je 0x4c7730
push esi
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x1158], ebx
mov dword [ebp - 0x1154], ebx
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.0040112c
mov esi, eax
cmp esi, ebx
jl 0x4c7a77
jmp 0x4c75bf
mov cl, byte [edi]
mov eax, edi
test cl, cl
je 0x4c777c
lea esp, [esp]
cmp cl, 0x5c
je 0x4c7774
push eax
call dword [sym.imp.USER32.dll_CharNextA]
mov cl, byte [eax]
test cl, cl
jne 0x4c7760
jmp 0x4c777c
test eax, eax
jne 0x4c7a5a
cmp dword [ebp + 0x10], 0
je 0x4c781d
mov esi, dword [ebp - 0x112c]
push 0x2001f
push edi
push esi
lea ecx, [ebp - 0x1124]
call fcn.00403d5f
test eax, eax
je 0x4c77dc
push 0x20019
push edi
push esi
lea ecx, [ebp - 0x1124]
call fcn.00403d5f
test eax, eax
je 0x4c77dc
push 0
push 0
push 0x2001f
push 0
push 0
push edi
push esi
lea ecx, [ebp - 0x1124]
call fcn.004026d0
mov esi, eax
test esi, esi
jne 0x4c7ad3
mov ebx, dword [ebp - 0x1118]
push edi
mov ecx, ebx
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
cmp byte [edi], 0x3d
jne 0x4c757d
push edi
push 0
lea edx, [ebp - 0x1124]
push edx
mov ecx, ebx
call fcn.0040496c
mov esi, eax
test esi, esi
js 0x4c7a77
jmp 0x4c757d
cmp dword [ebp + 0x14], 0
jne 0x4c787c
mov eax, dword [ebp - 0x112c]
push 0x20019
push edi
push eax
lea ecx, [ebp - 0x1124]
call fcn.00403d5f
mov ebx, eax
mov dword [ebp - 0x1128], ebx
test ebx, ebx
je 0x4c784e
mov dword [ebp + 0x14], 1
push 0xffffffffffffffff
push edi
lea ecx, [ebp - 0x114]
push 0x104
push ecx
call fcn.0054378d
add esp, 0x10
cmp eax, 0x50
ja case.0x4c7875.1
movzx edx, byte [eax + 0x4c7b48]
jmp dword [edx*4 + 0x4c7b38]
mov dword [ebp - 0x1128], 2
mov ebx, dword [ebp - 0x1128]
jmp 0x4c7847
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.0040112c
mov esi, eax
test esi, esi
js 0x4c7a77
cmp byte [edi], 0x7b
jne 0x4c790e
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
cmp eax, 1
jne 0x4c790e
mov ebx, dword [ebp + 0x14]
mov eax, dword [ebp - 0x1124]
mov ecx, dword [ebp - 0x1118]
push ebx
push 0
push eax
push edi
call fcn.00405bfa
mov esi, eax
test esi, esi
jns 0x4c78f2
test ebx, ebx
je 0x4c7a77
mov ecx, dword [ebp - 0x1118]
push edi
call fcn.004072d9
mov esi, eax
test esi, esi
js 0x4c7a77
mov ebx, dword [ebp - 0x1128]
mov ecx, dword [ebp - 0x1140]
mov dword [ebp + 0x14], ecx
cmp ebx, 2
je 0x4c75bf
test ebx, ebx
je 0x4c793c
test ecx, ecx
jne 0x4c75bf
push ebx
call fcn.00405e5c
add esp, 4
mov esi, eax
jmp 0x4c7a77
mov ebx, dword [ebp - 0x1124]
test ecx, ecx
je 0x4c7994
mov ecx, dword [ebp - 0x1118]
push ebx
call fcn.00404f57
test eax, eax
je 0x4c7994
mov ecx, dword [ebp - 0x1118]
lea edx, [ebp - 0x114]
push edx
call fcn.00403b20
test eax, eax
je 0x4c75bf
cmp dword [ebp - 0x113c], 0
je 0x4c75bf
lea eax, [ebp - 0x114]
push eax
lea ecx, [ebp - 0x1124]
call fcn.00403788
jmp 0x4c75bf
mov ecx, dword [ebp - 0x1118]
push ebx
call fcn.00404f57
mov dword [ebp - 0x1168], eax
mov dword [ebp - 0x1128], 0
test ebx, ebx
je 0x4c79cb
push ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x1128], eax
mov dword [ebp - 0x1124], 0
mov ebx, dword [ebp - 0x1128]
mov dword [ebp - 0x1120], 0
test ebx, ebx
jne 0x4c7afd
cmp dword [ebp - 0x113c], ebx
je 0x4c75bf
cmp dword [ebp - 0x1168], ebx
jne 0x4c75bf
mov ecx, dword [ebp - 0x112c]
lea edx, [ebp - 0x114]
mov dword [ebp - 0x1164], ecx
push edx
lea ecx, [ebp - 0x1164]
mov dword [ebp - 0x1160], ebx
mov dword [ebp - 0x115c], ebx
call fcn.00401c62
mov dword [ebp - 0x1164], ebx
mov dword [ebp - 0x1160], ebx
mov dword [ebp - 0x115c], ebx
cmp eax, ebx
jne 0x4c7b16
lea ecx, [ebp - 0x1164]
call fcn.00403cc4
jmp 0x4c75bf
lea ecx, [ebp - 0x1138]
call fcn.00403cc4
lea ecx, [ebp - 0x1124]
call fcn.00403cc4
mov eax, 0x80020009
jmp 0x4c7a8a
lea ecx, [ebp - 0x1138]
call fcn.00403cc4
mov eax, dword [ebp - 0x1124]
test eax, eax
je 0x4c7a88
push eax
call dword [sym.imp.ADVAPI32.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.0053fd20
mov esp, ebp
pop ebp
ret 0x10
lea ecx, [ebp - 0x114c]
call fcn.00403cc4
lea ecx, [ebp - 0x1124]
call fcn.00403cc4
jmp 0x4c7a88
push eax
call fcn.00405e5c
add esp, 4
mov esi, eax
lea ecx, [ebp - 0x1158]
jmp 0x4c7a72
lea ecx, [ebp - 0x1124]
call fcn.00403cc4
push esi
call fcn.00405e5c
add esp, 4
jmp 0x4c7a8a
push 0x8007000e
call fcn.00404570
push 0x80070057
call fcn.00404570
lea ecx, [ebp - 0x1124]
call fcn.00403cc4
push ebx
call fcn.00405e5c
add esp, 4
jmp 0x4c7a8a
push eax
call fcn.00405e5c
add esp, 4
mov esi, eax
lea ecx, [ebp - 0x1164]
jmp 0x4c7a72
push 0x80004005
call fcn.00404570
mov edi, edi
invalid