Function at 0x10007c680
Capabilities:
Delete registry value
Persist via windows service
Set registry value

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov dword [rsp + 0x10], edx
mov qword [rsp + 8], rcx
sub rsp, 0x228
mov qword [rsp + 0x1e0], 0xfffffffffffffffe
mov dword [rsp + 0x60], 0
lea rcx, [rsp + 0xa8]
call fcn.100054000
nop
lea rcx, [rsp + 0x98]
call fcn.100014450
nop
lea rcx, [rsp + 0x68]
call fcn.1000141d0
nop
mov dword [rsp + 0xa0], 1
lea rcx, [rsp + 0x30]
call fcn.1000141d0
nop
mov rax, qword [rsp + 0x248]
mov dword [rax], 0
lea rcx, [rsp + 0x98]
call fcn.100013df0
mov rcx, qword [rsp + 0x240]
call fcn.100013bb0
mov qword [rsp + 0xe0], rax
cmp qword [rsp + 0xe0], 0
je 0x10007c9ad
cmp dword [rsp + 0x60], 0
jne 0x10007c9ad
lea rcx, [rsp + 0xf0]
call fcn.100014450
nop
lea rdx, [rsp + 0xe0]
mov rcx, qword [rsp + 0x240]
call fcn.100013bc0
mov rdx, rax
lea rcx, [rsp + 0xf0]
call fcn.100015fc0
mov rdx, qword [0x1000a8810]
lea rcx, [rsp + 0xf0]
call fcn.100013e90
test eax, eax
jne 0x10007c7a9
lea rdx, [0x100010560]
mov ecx, 2
call fcn.100053cc0
mov dword [rsp + 0x60], 0
mov dword [rsp + 0xa0], 0
jmp 0x10007c923
lea rax, [rsp + 0x190]
mov qword [rsp + 0x198], rax
lea rdx, [rsp + 0xf0]
mov rcx, qword [rsp + 0x198]
call fcn.1000148e0
mov qword [rsp + 0x1e8], rax
mov rax, qword [rsp + 0x1e8]
mov qword [rsp + 0x1f0], rax
mov r8d, 3
mov rdx, qword [rsp + 0x1f0]
lea rcx, [rsp + 0xa8]
call fcn.1000541d0
cmp eax, 0xb7
je 0x10007c815
mov dword [rsp + 0x60], 0
jmp 0x10007c923
lea r8, [rsp + 0x98]
mov edx, 2
lea rcx, [rsp + 0xa8]
call fcn.100054600
test eax, eax
jne 0x10007c840
mov dword [rsp + 0x60], 0
jmp 0x10007c923
mov dword [rsp + 0xe8], 0
mov eax, dword [rsp + 0x238]
mov dword [rsp + 0x1f8], eax
cmp dword [rsp + 0x1f8], 5
je 0x10007c86f
cmp dword [rsp + 0x1f8], 9
je 0x10007c895
jmp 0x10007c8ed
lea r8, [rsp + 0xe8]
mov rdx, qword [rsp + 0x230]
lea rcx, [rsp + 0x98]
call fcn.1000789f0
mov dword [rsp + 0xf8], eax
jmp 0x10007c8ed
lea rcx, [rsp + 0x30]
call fcn.100013f10
lea r8, [rsp + 0x30]
mov edx, 8
lea rcx, [rsp + 0xa8]
call fcn.100054a90
test eax, eax
jne 0x10007c8c4
mov dword [rsp + 0x60], 0
jmp 0x10007c923
lea r9, [rsp + 0xe8]
lea r8, [rsp + 0x30]
mov rdx, qword [rsp + 0x230]
lea rcx, [rsp + 0x98]
call fcn.1000790b0
mov dword [rsp + 0xf8], eax
cmp dword [rsp + 0xf8], 0
je 0x10007c903
mov dword [rsp + 0x60], 0
jmp 0x10007c923
mov dword [rsp + 0x60], 1
cmp dword [rsp + 0xe8], 0
je 0x10007c923
mov rax, qword [rsp + 0x248]
mov dword [rax], 1
cmp dword [rsp + 0x60], 0
jne 0x10007c98d
mov rax, qword [rsp + 0x230]
mov rax, qword [rax]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x98]
mov r8d, dword [rsp + 0xf8]
lea rdx, [0x1000104d0]
mov ecx, 3
call fcn.100053cc0
mov rdx, qword [0x1000a8810]
lea rcx, [rsp + 0xf0]
call fcn.100013e90
test eax, eax
je 0x10007c98d
lea rcx, [rsp + 0xf0]
call fcn.100013bb0
mov rdx, rax
lea rcx, [rsp + 0x68]
call fcn.10001c640
lea rcx, [rsp + 0xa8]
call fcn.100054470
nop
lea rcx, [rsp + 0xf0]
call fcn.1000144b0
jmp 0x10007c71b
cmp dword [rsp + 0x60], 0
jne 0x10007cabf
mov rax, qword [rsp + 0x230]
mov r8, qword [rax]
lea rdx, [0x100010450]
mov ecx, 1
call fcn.100053cc0
cmp dword [rsp + 0xa0], 0
je 0x10007cab2
lea rdx, [0x100010400]
mov ecx, 1
call fcn.100053cc0
mov dword [rsp + 0x100], 0
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x1a8], rax
mov rdx, qword [rsp + 0x230]
mov rcx, qword [rsp + 0x1a8]
call fcn.1000148e0
mov qword [rsp + 0x200], rax
mov rax, qword [rsp + 0x200]
mov qword [rsp + 0x208], rax
lea r8, [rsp + 0x100]
mov rdx, qword [rsp + 0x208]
mov ecx, dword [rsp + 0x238]
call fcn.10007d1a0
mov dword [rsp + 0xfc], eax
cmp dword [rsp + 0xfc], 0
je 0x10007ca90
mov r8d, dword [rsp + 0xfc]
lea rdx, [0x1000120d0]
mov ecx, 3
call fcn.100053cc0
mov dword [rsp + 0x60], 0
jmp 0x10007cf17
mov dword [rsp + 0x60], 1
cmp dword [rsp + 0x100], 0
je 0x10007cab0
mov rax, qword [rsp + 0x248]
mov dword [rax], 1
jmp 0x10007cabf
mov dword [rsp + 0x60], 1
jmp 0x10007cf17
lea rcx, [rsp + 0x68]
call fcn.100013ba0
movzx eax, al
test eax, eax
jne 0x10007cf17
lea rcx, [rsp + 0x128]
call fcn.100014450
nop
lea rcx, [rsp + 0x68]
call fcn.100013bb0
mov qword [rsp + 0x118], rax
cmp qword [rsp + 0x118], 0
je 0x10007cc9e
lea rcx, [rsp + 0x140]
call fcn.100014450
nop
lea rdx, [rsp + 0x118]
lea rcx, [rsp + 0x68]
call fcn.100013bc0
mov rdx, rax
lea rcx, [rsp + 0x140]
call fcn.100015fc0
lea rdx, [rsp + 0x140]
mov rcx, qword [rsp + 0x240]
call fcn.100056c00
lea rcx, [rsp + 0x148]
call fcn.1000141d0
nop
lea rax, [rsp + 0x1b0]
mov qword [rsp + 0x1b8], rax
lea rdx, [rsp + 0x140]
mov rcx, qword [rsp + 0x1b8]
call fcn.1000148e0
mov qword [rsp + 0x210], rax
mov rax, qword [rsp + 0x210]
mov qword [rsp + 0x218], rax
mov r8d, 3
mov rdx, qword [rsp + 0x218]
lea rcx, [rsp + 0xa8]
call fcn.1000541d0
lea r8, [rsp + 0x148]
mov edx, 0xa
lea rcx, [rsp + 0xa8]
call fcn.100054a90
lea rcx, [rsp + 0xa8]
call fcn.100054470
lea rcx, [rsp + 0x148]
call fcn.100013bb0
mov qword [rsp + 0x138], rax
cmp qword [rsp + 0x138], 0
je 0x10007cc7e
lea rcx, [rsp + 0x178]
call fcn.100014450
nop
lea rdx, [rsp + 0x138]
lea rcx, [rsp + 0x148]
call fcn.100013bc0
mov rdx, rax
lea rcx, [rsp + 0x178]
call fcn.100015fc0
lea rdx, [rsp + 0x178]
lea rcx, [rsp + 0x128]
call fcn.100015c80
cmp qword [rsp + 0x138], 0
jne 0x10007cc57
cmp qword [rsp + 0x118], 0
je 0x10007cc6c
lea rdx, [0x100010360]
lea rcx, [rsp + 0x128]
call fcn.100015e80
nop
lea rcx, [rsp + 0x178]
call fcn.1000144b0
jmp 0x10007cbea
lea rcx, [rsp + 0x148]
call fcn.100014300
nop
lea rcx, [rsp + 0x140]
call fcn.1000144b0
jmp 0x10007caf4
lea rcx, [rsp + 0x128]
call fcn.100013fa0
test eax, eax
jle 0x10007ccc8
mov r8, qword [rsp + 0x128]
lea rdx, [0x1000101e0]
mov ecx, 3
call fcn.100053cc0
mov qword [rsp + 0x120], 0
lea rcx, [rsp + 0x108]
call fcn.100014450
nop
lea rcx, [rsp + 0x130]
call fcn.100014450
nop
lea rdx, [0x100010df0]
lea rcx, [rsp + 0x1c0]
call fcn.100018c00
nop
lea r8, [rsp + 0x108]
mov rdx, qword [rsp + 0x230]
lea rcx, [rsp + 0x1c0]
call fcn.100048450
nop
lea rcx, [rsp + 0x1c0]
call fcn.1000144b0
mov rdx, qword [0x1000a8800]
lea rcx, [rsp + 0x1c8]
call fcn.100018c00
nop
lea r8, [rsp + 0x130]
lea rdx, [rsp + 0x1c8]
lea rcx, [rsp + 0x108]
call fcn.100048450
nop
lea rcx, [rsp + 0x1c8]
call fcn.1000144b0
lea rcx, [rsp + 0x130]
call fcn.100013bb0
lea rcx, [rsp + 0x120]
mov qword [rsp + 0x20], rcx
mov r9d, 0x2001f
xor r8d, r8d
mov rdx, rax
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov dword [rsp + 0x110], eax
cmp dword [rsp + 0x110], 0
jne 0x10007ceca
mov rcx, qword [rsp + 0x240]
call fcn.100013ba0
movzx eax, al
test eax, eax
jne 0x10007ce88
lea rdx, [rsp + 0x180]
mov rcx, qword [rsp + 0x240]
call fcn.10004b610
mov qword [rsp + 0x188], rax
cmp qword [rsp + 0x188], 0
je 0x10007ce6d
mov eax, dword [rsp + 0x180]
shl rax, 1
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x20], rax
mov r9d, 7
xor r8d, r8d
mov rdx, qword [0x1000a8808]
mov rcx, qword [rsp + 0x120]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x10007ce4e
mov dword [rsp + 0x60], 0
lea rdx, [0x100010080]
mov ecx, 3
call fcn.100053cc0
mov rax, qword [rsp + 0x188]
mov qword [rsp + 0x1d0], rax
mov rcx, qword [rsp + 0x1d0]
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
jmp 0x10007ce86
mov dword [rsp + 0x60], 0
lea rdx, [0x100010080]
mov ecx, 3
call fcn.100053cc0
jmp 0x10007ceba
mov rdx, qword [0x1000a8808]
mov rcx, qword [rsp + 0x120]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
test eax, eax
je 0x10007ceba
mov dword [rsp + 0x60], 0
lea rdx, [0x100010080]
mov ecx, 3
call fcn.100053cc0
mov rcx, qword [rsp + 0x120]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x10007ceee
cmp dword [rsp + 0x110], 2
je 0x10007ceee
mov dword [rsp + 0x60], 0
lea rdx, [0x100010080]
mov ecx, 3
call fcn.100053cc0
nop
lea rcx, [rsp + 0x130]
call fcn.1000144b0
nop
lea rcx, [rsp + 0x108]
call fcn.1000144b0
nop
lea rcx, [rsp + 0x128]
call fcn.1000144b0
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x1d8], eax
lea rcx, [rsp + 0x30]
call fcn.100014300
nop
lea rcx, [rsp + 0x68]
call fcn.100014300
nop
lea rcx, [rsp + 0x98]
call fcn.1000144b0
nop
lea rcx, [rsp + 0xa8]
call fcn.100054100
nop
mov rcx, qword [rsp + 0x230]
call fcn.1000144b0
mov eax, dword [rsp + 0x1d8]
add rsp, 0x228
ret