Function at 0x418d30
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.00405fb0
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.UpdateRegistry__
push eax
call fcn.004041c0
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2e0
lea eax, [ebp - 0x70]
push eax
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa30
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.0040d020
mov esi, eax
cmp esi, edi
je 0x418dc9
mov eax, dword [ebp - 0xc]
mov dword [ebx + 0x250], esi
cmp eax, edi
je 0x418dc0
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.0040d020
push 1
lea ecx, [ebp - 0xd8]
test eax, eax
jne 0x418e56
call fcn.00405fb0
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.Registry_is_up_to_date
push eax
call fcn.004041c0
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2e0
lea ecx, [ebp - 0x70]
push ecx
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa30
mov eax, dword [ebp - 0x18]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
add esp, 4
cmp eax, edi
je 0x418e42
push eax
call ebx
cmp esi, edi
je 0x419091
push esi
call ebx
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00405fb0
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.Registry_update_needed
push eax
call fcn.004041c0
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0x70]
call fcn.0040c2e0
lea edx, [ebp - 0x70]
push edx
mov dword [ebp - 0x70], vtable.std::ios_base.0
call fcn.0041aa30
mov ecx, dword [0x43f30c]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push 1
push 0x65
push ecx
mov dword [ebp - 0x28], 0x433650
mov dword [ebp - 0x24], str.11AC3232_E7D7_49CD_ABFE_501700100B3A
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x1c], edi
call fcn.00410470
mov esi, eax
cmp esi, edi
jge 0x418ee5
mov eax, dword [ebp - 0x18]
mov ebx, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
cmp eax, edi
je 0x418ed2
push eax
call ebx
mov eax, dword [ebp - 0xc]
cmp eax, edi
je 0x418edc
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 0x418ef8
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.0040d020
cmp eax, edi
je 0x418f3e
push eax
call fcn.0040cd30
mov ebx, eax
mov eax, dword [ebp - 0x18]
add esp, 4
cmp eax, edi
je 0x418f2b
push eax
call esi
mov eax, dword [ebp - 0xc]
cmp eax, edi
je 0x418f35
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.0040cf80
mov esi, eax
cmp esi, edi
je 0x418f7e
lea ecx, [ebp - 0x18]
call fcn.0040dab0
lea ecx, [ebp - 0xc]
call fcn.0040dab0
push esi
call fcn.0040cd30
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.00405fb0
lea esi, [ebx + 0x40]
push esi
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.LocalService_:
push eax
call fcn.004041c0
add esp, 8
push eax
call fcn.0040a460
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a50
push 1
push esi
push str.LocalService
lea ecx, [ebp - 0x18]
call fcn.0040d0f0
mov ecx, dword [ebp - 0x18]
push ecx
call fcn.00417fb0
add esp, 4
push 1
lea ecx, [ebp - 0xd8]
call fcn.00405fb0
mov dword [eax + 0x60], 0xa
add eax, 0x10
push str.Registering_Server
push eax
call fcn.004041c0
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a50
push edi
push 1
mov ecx, ebx
call fcn.004179c0
mov esi, eax
cmp esi, edi
jge 0x41904b
lea ecx, [ebp - 0x18]
call fcn.0040dab0
lea ecx, [ebp - 0xc]
call fcn.0040dab0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 1
lea ecx, [ebp - 0xd8]
call fcn.00405fb0
mov dword [eax + 0x60], 0x64
add eax, 0x10
push str.UpdateRegistry___done
push eax
call fcn.004041c0
push eax
call fcn.004053f0
add esp, 0xc
lea ecx, [ebp - 0xd8]
call fcn.00401a50
lea ecx, [ebp - 0x18]
call fcn.0040dab0
lea ecx, [ebp - 0xc]
call fcn.0040dab0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret