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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xe30
and dword [ebp - 0x414], 0
and dword [ebp - 0x410], 0
and dword [ebp - 0x40c], 0
and dword [ebp - 4], 0
and dword [ebp - 0x418], 0
push str.SeBackupPrivilege
call fcn.004039c8
push str.SeRestorePrivilege
call fcn.004039c8
push 0x400
push 0
lea eax, [ebp - 0xe28]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x920]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push dword [ebp + 8]
push dword [0x40fba8]
push 0x40c3c4
lea eax, [ebp - 0xe28]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
call fcn.004024be
push eax
push 0x412310
push str._ss_x.txt
lea eax, [ebp - 0x920]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x40c]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0xe28]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
push 0
lea eax, [ebp - 0x920]
push eax
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegSaveKeyA]
push 0x104
push 0
lea eax, [ebp - 0xa28]
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.004024be
push eax
push 0x412310
push str._sr_x.txt
lea eax, [ebp - 0xa28]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0xa28]
push eax
push dword [ebp + 8]
push dword [0x40fba8]
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 0x2710
lea eax, [ebp - 0x408]
push eax
call fcn.0040333d
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 - 0x418], eax
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_DeleteService]
push dword [ebp - 0x418]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
push dword [ebp - 4]
call dword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
lea eax, [ebp - 0xe28]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x400
push 0
lea eax, [ebp - 0x818]
push eax
call sub.MSVCRT.dll_memset
add esp, 0xc
push str.Parameters
push dword [ebp + 8]
push dword [0x40fba8]
push str._s_s_s
lea eax, [ebp - 0x818]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
and dword [ebp - 0xe2c], 0
jmp 0x404b15
mov eax, dword [ebp - 0xe2c]
inc eax
mov dword [ebp - 0xe2c], eax
cmp dword [ebp - 0xe2c], 0xa
jge 0x404c32
and dword [ebp - 0xe30], 0
lea eax, [ebp - 0x40c]
push eax
push 0x2001f
push 0
push dword [0x40fba8]
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [ebp - 0x410]
push eax
lea eax, [ebp - 0xe30]
push eax
push 0
push 0xf003f
push 0
push 0
push 0
push dword [ebp + 8]
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 8
lea eax, [ebp - 0x920]
push eax
push dword [ebp - 0xe30]
call dword [sym.imp.ADVAPI32.dll_RegRestoreKeyA]
push dword [ebp - 0xe30]
call dword [sym.imp.ADVAPI32.dll_RegFlushKey]
push dword [ebp - 0xe30]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x40c]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0x818]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x404c2d
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x40c]
push eax
push 0x2001f
push 0
lea eax, [ebp - 0x818]
push eax
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x404c2d
push dword [ebp - 0x40c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov dword [ebp - 0x414], 1
jmp 0x404c32
jmp 0x404b08
cmp dword [ebp - 0x414], 0
jne 0x404ca1
lea eax, [ebp - 0xe28]
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 - 0xa28]
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 0x2710
lea eax, [ebp - 0x408]
push eax
call fcn.0040333d
mov dword [ebp - 0x414], 1
lea eax, [ebp - 0x920]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0xa28]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x414]
leave
ret 4