Function at 0x470028
Capabilities:
Delete registry value

Disassembly:
push ebp
sub esp, 0x30
lea ebp, [esp - 4]
mov eax, dword [0x601328]
xor eax, ebp
mov dword [ebp + 0x30], eax
push 0x8c
mov eax, 0x572ffb
call fcn.0054d40c
mov eax, dword [ebp + 0x3c]
xor edi, edi
mov ebx, ecx
mov dword [ebp], edi
mov dword [ebp + 4], edi
push eax
mov dword [ebp - 4], edi
call fcn.0046f12f
mov esi, eax
cmp esi, edi
jne 0x470093
mov edi, 0x3e81
lea esi, [ebp]
call fcn.00415e80
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x30]
xor ecx, ebp
call fcn.0054677c
add ebp, 0x34
leave
ret 4
cmp dword [ebx + 0x18], 8
mov dword [ebp], esi
mov dword [ebp + 4], edi
jb 0x4700a4
mov eax, dword [ebx + 4]
jmp 0x4700a7
lea eax, [ebx + 4]
push eax
push esi
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov dword [ebp + 8], eax
cmp eax, edi
jne 0x4700c2
push esi
call dword [sym.imp.ADVAPI32.dll_RegFlushKey]
mov edi, dword [ebp + 8]
jmp 0x47006a
call fcn.00462c28
cmp byte [eax], 0
jne 0x47013c
lea eax, [ebp - 0x98]
push eax
call fcn.00409b60
push ebx
mov edi, 0x5967ac
push edi
lea eax, [ebp - 0x90]
push str.CRegistry::removeValue_...___for_key
push eax
mov byte [ebp - 4], 1
call fcn.00407390
pop ecx
pop ecx
push eax
call fcn.00407390
pop ecx
pop ecx
push eax
call fcn.00411b20
pop ecx
pop ecx
lea ecx, [ebp + 0x14]
lea eax, [ebp - 0x98]
call fcn.00407170
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 2
call fcn.00406a80
lea ecx, [ebp + 0x14]
call fcn.00409c40
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0
call fcn.00407660
jmp 0x470267
lea eax, [ebp - 0x90]
push eax
mov byte [ebp - 4], 3
call fcn.004068d0
mov byte [ebp - 4], 4
call fcn.00462c28
lea esi, [ebp + 0x14]
call fcn.00406720
mov byte [ebp - 4], 5
cmp dword [eax + 0x18], 8
jb 0x47016c
mov esi, dword [eax + 4]
jmp 0x47016f
lea esi, [eax + 4]
lea eax, [ebp - 0x90]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CRegistry::removeValue_...___for_key
push eax
call fcn.00407390
pop ecx
pop ecx
mov edi, 0x5967ac
push edi
push eax
call fcn.00407390
pop ecx
pop ecx
push ebx
push eax
call fcn.00411b20
pop ecx
pop ecx
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 4
call fcn.00409c40
lea eax, [ebp + 0xc]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
mov ebx, 0x2710
push ebx
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 6
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x470216
lea ecx, [ebp + 0x14]
lea eax, [ebp - 0x90]
call fcn.00406700
push 0xab
push str..Registry.cpp
push eax
push ebx
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 7
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
lea ecx, [ebp + 0x14]
call fcn.00409c40
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 4
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 3
call fcn.004067e0
and dword [ebp - 4], 0
jmp 0x47026c
mov ebx, 0x2710
call fcn.00462c28
cmp byte [eax], 0
jne 0x4702e1
lea eax, [ebp - 0x98]
push eax
call fcn.00409b60
push dword [ebp + 8]
lea eax, [ebp - 0x90]
push edi
push str.CRegistry::removeValue_...___DeleteValue_error
push eax
mov byte [ebp - 4], 0xa
call fcn.00407390
pop ecx
pop ecx
push eax
call fcn.00407390
pop ecx
pop ecx
push eax
call fcn.004155d0
lea ecx, [ebp + 0x14]
lea eax, [ebp - 0x98]
call fcn.00407170
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0xb
call fcn.00406a80
lea ecx, [ebp + 0x14]
call fcn.00409c40
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 0
call fcn.00407660
jmp 0x4700bd
lea eax, [ebp - 0x90]
push eax
mov byte [ebp - 4], 0xc
call fcn.004068d0
mov byte [ebp - 4], 0xd
call fcn.00462c28
lea esi, [ebp + 0x14]
call fcn.00406720
mov byte [ebp - 4], 0xe
cmp dword [eax + 0x18], 8
jb 0x470311
mov esi, dword [eax + 4]
jmp 0x470314
lea esi, [eax + 4]
lea eax, [ebp - 0x90]
push 0x5950f8
push eax
call fcn.00407390
pop ecx
pop ecx
push esi
push eax
call fcn.00407390
pop ecx
pop ecx
push 0x5950f0
push eax
call fcn.00407390
pop ecx
pop ecx
push str.CRegistry::removeValue_...___DeleteValue_error
push eax
call fcn.00407390
pop ecx
pop ecx
push edi
push eax
call fcn.00407390
pop ecx
pop ecx
push dword [ebp + 8]
push eax
call fcn.004155d0
lea ecx, [ebp + 0x14]
mov byte [ebp - 4], 0xd
call fcn.00409c40
lea eax, [ebp + 0xc]
push eax
call sub.log4cplusU.dll_public:_static_class_log4cplus::Logger___cdecl_log4cplus::Logger::getRoot_void_
pop ecx
push ebx
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0xf
call sub.log4cplusU.dll_public:_bool___thiscall_log4cplus::Logger::isEnabledFor_int_const
test al, al
je 0x4703b1
lea ecx, [ebp + 0x14]
lea eax, [ebp - 0x90]
call fcn.00406700
push 0xac
push str..Registry.cpp
push eax
push ebx
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0x10
call sub.log4cplusU.dll_public:_void___thiscall_log4cplus::Logger::forcedLog_int__class_std::basic_string_wchar_t__struct_std::char_traits_wchar_t___class_std::allocator_wchar_t___const___char_const___int_const
lea ecx, [ebp + 0x14]
call fcn.00409c40
lea ecx, [ebp + 0xc]
mov byte [ebp - 4], 0xd
call sub.log4cplusU.dll_public_virtual:_void___thiscall_log4cplus::Logger::destructor_void_
lea eax, [ebp - 0x90]
mov byte [ebp - 4], 0xc
call fcn.004067e0
jmp 0x4700bd