Function at 0x418d80
Capabilities:
Delete registry value

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
push ebx
push esi
push edi
mov ebx, ecx
push 1
lea ecx, [ebp - 0xd8]
call fcn.00406150
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.UpdateRegistry__
push eax
call fcn.00404170
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2b0
lea eax, [ebp - 0x70]
push eax
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa80
add esp, 4
push 0x20019
xor edi, edi
push str.AppID
push SysReAllocString
lea ecx, [ebp - 0xc]
mov dword [ebp - 0xc], edi
mov dword [ebp - 8], edi
mov dword [ebp - 4], edi
call fcn.0040d000
mov esi, eax
cmp esi, edi
je 0x418e19
mov eax, dword [ebp - 0xc]
mov dword [ebx + 0x250], esi
cmp eax, edi
je 0x418e10
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0xc]
push 0x20019
push str.11AC3232_E7D7_49CD_ABFE_501700100B3A
push esi
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
call fcn.0040d000
push 1
lea ecx, [ebp - 0xd8]
test eax, eax
jne 0x418ea6
call fcn.00406150
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.Registry_is_up_to_date
push eax
call fcn.00404170
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2b0
lea ecx, [ebp - 0x70]
push ecx
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa80
mov eax, dword [ebp - 0x18]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esp, 4
cmp eax, edi
je 0x418e92
push eax
call ebx
cmp esi, edi
je 0x4190e1
push esi
call ebx
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00406150
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.Registry_update_needed
push eax
call fcn.00404170
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2b0
lea edx, [ebp - 0x70]
push edx
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa80
mov ecx, dword [0x43f30c]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push 1
push 0x65
push ecx
mov dword [ebp - 0x28], 0x433660
mov dword [ebp - 0x24], str.11AC3232_E7D7_49CD_ABFE_501700100B3A
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
call fcn.00410450
mov esi, eax
cmp esi, edi
jge 0x418f35
mov eax, dword [ebp - 0x18]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp eax, edi
je 0x418f22
push eax
call ebx
mov eax, dword [ebp - 0xc]
cmp eax, edi
je 0x418f2c
push eax
call ebx
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xc]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp eax, edi
je 0x418f48
push eax
call esi
mov dword [ebp - 0xc], edi
push 0x20006
push str.AppID
push SysReAllocString
lea ecx, [ebp - 0xc]
mov dword [ebp - 8], edi
call fcn.0040d000
cmp eax, edi
je 0x418f8e
push eax
call fcn.0040cd00
mov ebx, eax
mov eax, dword [ebp - 0x18]
add esp, 4
cmp eax, edi
je 0x418f7b
push eax
call esi
mov eax, dword [ebp - 0xc]
cmp eax, edi
je 0x418f85
push eax
call esi
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xc]
push edi
push edi
push 0x2001f
push edi
push edi
push str.11AC3232_E7D7_49CD_ABFE_501700100B3A
push edx
lea ecx, [ebp - 0x18]
call fcn.0040cf60
mov esi, eax
cmp esi, edi
je 0x418fce
lea ecx, [ebp - 0x18]
call fcn.0040da90
lea ecx, [ebp - 0xc]
call fcn.0040da90
push esi
call fcn.0040cd00
add esp, 4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x18]
push str.LocalService
push eax
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
push 1
lea ecx, [ebp - 0xd8]
call fcn.00406150
lea esi, [ebx + 0x40]
push esi
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.LocalService_:
push eax
call fcn.00404170
add esp, 8
push eax
call fcn.0040a620
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a20
push 1
push esi
push str.LocalService
lea ecx, [ebp - 0x18]
call fcn.0040d0d0
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.00418000
add esp, 4
push 1
lea ecx, [ebp - 0xd8]
call fcn.00406150
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.Registering_Server
push eax
call fcn.00404170
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a20
push edi
push 1
mov ecx, ebx
call fcn.00417bf0
mov esi, eax
cmp esi, edi
jge 0x41909b
lea ecx, [ebp - 0x18]
call fcn.0040da90
lea ecx, [ebp - 0xc]
call fcn.0040da90
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
lea ecx, [ebp - 0xd8]
call fcn.00406150
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.UpdateRegistry___done
push eax
call fcn.00404170
push eax
call fcn.00405590
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a20
lea ecx, [ebp - 0x18]
call fcn.0040da90
lea ecx, [ebp - 0xc]
call fcn.0040da90
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret