Function at 0x404d97
Capabilities:
Delete file
Delete registry key
Delete service

Disassembly:
pushfd
pop dword [esp + 0x20]
call fcn.00404953
sbb al, 0x55
push ebp
mov ebp, esp
sub esp, 0xe38
and dword [ebp - 0x418], 0
and dword [ebp - 0x414], 0
and dword [ebp - 0x410], 0
and dword [ebp - 4], 0
and dword [ebp - 0x41c], 0
mov eax, dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov dword [ebp - 0x40c], eax
push str.SeBackupPrivilege
call fcn.00403f4e
push str.SeRestorePrivilege
call fcn.00403f4e
push 0x400
push 0
lea eax, [ebp - 0xe30]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x928]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push dword [ebp + 8]
push dword [0x413ce0]
push 0x4103c4
lea eax, [ebp - 0xe30]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
call fcn.0040246e
push eax
push 0x415940
push str._ss_x.txt
lea eax, [ebp - 0x928]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x410]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0xe30]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push 0
lea eax, [ebp - 0x928]
push eax
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegSaveKeyA]
push 0x104
push 0
lea eax, [ebp - 0xa30]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0x400
push 0
lea eax, [ebp - 0x408]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
call fcn.0040246e
push eax
push 0x415940
push str._sr_x.txt
lea eax, [ebp - 0xa30]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0xa30]
push eax
push dword [ebp + 8]
push dword [0x413ce0]
push str.reg_export_HKLM
push str._s_s_s__s
lea eax, [ebp - 0x408]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x18
push 0
push 0
push 0x2710
lea eax, [ebp - 0x408]
push eax
call fcn.004033ee
push 0xf003f
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_OpenSCManagerA]
mov dword [ebp - 4], eax
push 0xf01ff
push dword [ebp + 8]
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_OpenServiceA]
mov dword [ebp - 0x41c], eax
push dword [ebp - 0x41c]
call dword [sym.imp.ADVAPI32.dll_DeleteService]
push dword [ebp - 0x41c]
call dword [ebp - 0x40c]
push dword [ebp - 4]
call dword [ebp - 0x40c]
lea eax, [ebp - 0xe30]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x400
push 0
lea eax, [ebp - 0x820]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push str.Parameters
push dword [ebp + 8]
push dword [0x413ce0]
push str._s_s_s
lea eax, [ebp - 0x820]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
and dword [ebp - 0xe34], 0
jmp 0x404fc0
mov eax, dword [ebp - 0xe34]
inc eax
mov dword [ebp - 0xe34], eax
cmp dword [ebp - 0xe34], 0xa
jge 0x4050dd
and dword [ebp - 0xe38], 0
lea eax, [ebp - 0x410]
push eax
push 0x2001f
push 0
push dword [0x413ce0]
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [ebp - 0x414]
push eax
lea eax, [ebp - 0xe38]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push dword [ebp + 8]
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 8
lea eax, [ebp - 0x928]
push eax
push dword [ebp - 0xe38]
call dword [sym.imp.ADVAPI32.dll_RegRestoreKeyA]
push dword [ebp - 0xe38]
call dword [sym.imp.ADVAPI32.dll_RegFlushKey]
push dword [ebp - 0xe38]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x410]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0x820]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4050d8
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x410]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0x820]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4050d8
push dword [ebp - 0x410]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x418], 1
jmp 0x4050dd
jmp 0x404fb3
cmp dword [ebp - 0x418], 0
jne 0x40514e
lea eax, [ebp - 0xe30]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
push 0x400
push 0
lea eax, [ebp - 0x408]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
lea eax, [ebp - 0xa30]
push eax
push str.reg_import
push str._s_s
lea eax, [ebp - 0x408]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
push 0
push 0
push 0x2710
lea eax, [ebp - 0x408]
push eax
call fcn.004033ee
mov dword [ebp - 0x418], 1
lea eax, [ebp - 0x928]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0xa30]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x418]
leave
ret 4