Function at 0xa7b000
Capabilities:
Delete registry value
Query or enumerate registry value

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0xabda94
mov eax, dword fs:[0]
push eax
mov eax, 0xa0e4
call fcn.00ab5d50
mov eax, dword [0xae6d50]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xor ebx, ebx
mov dword [ebp - 4], ebx
mov edi, ecx
mov dword [ebp - 0xa074], ebx
push 0x47
xor eax, eax
mov esi, 7
push 0xadca38
lea ecx, [ebp - 0xa048]
mov dword [ebp - 0xa04c], edi
mov dword [ebp - 0xa034], esi
mov dword [ebp - 0xa038], ebx
mov word [ebp - 0xa048], ax
call fcn.00a51740
mov eax, 1
mov dword [ebp - 4], eax
xor ecx, ecx
mov dword [edi + 0x14], esi
mov dword [edi + 0x10], ebx
mov word [edi], cx
xor esi, esi
mov dword [ebp - 0xa074], eax
mov dword [ebp - 0xa06c], ebx
mov dword [ebp - 0xa068], esi
mov dword [ebp - 0xa064], esi
mov byte [ebp - 4], 2
cmp dword [ebp - 0xa034], 8
mov eax, dword [ebp - 0xa048]
jae 0xa7b0b7
lea eax, [ebp - 0xa048]
lea edx, [ebp - 0xa050]
push edx
push 0xf003f
push esi
push eax
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0xa7b584
push eax
mov edx, dword [ebp - 0xa050]
push eax
push eax
push eax
lea eax, [ebp - 0xa058]
push eax
push 0
push 0
lea ecx, [ebp - 0xa0e4]
push ecx
push 0
push 0
push 0
push edx
call dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
mov eax, dword [ebp - 0xa058]
test eax, eax
je 0xa7b537
mov dword [ebp - 0xa0e0], 0xada2c8
mov dword [ebp - 0xa0dc], 0xada16c
mov dword [ebp - 0xa0d8], 0xad80c4
mov dword [ebp - 0xa0d4], 0xadcac8
mov dword [ebp - 0xa0d0], 0xad802c
mov dword [ebp - 0xa0cc], 0xadcae4
mov dword [ebp - 0xa0c8], 0xad7fc4
mov dword [ebp - 0xa0c4], 0xad818c
mov dword [ebp - 0xa0c0], 0xadcb00
mov dword [ebp - 0xa0bc], 0xad8fa4
mov dword [ebp - 0xa0b8], 0xad8098
mov dword [ebp - 0xa0b4], 0xad7ef8
mov dword [ebp - 0xa0b0], 0xadcb14
mov dword [ebp - 0xa0ac], 0xadcb2c
mov dword [ebp - 0xa0a8], 0xad8160
mov dword [ebp - 0xa0a4], 0xad8130
mov dword [ebp - 0xa0a0], 0xadbe18
mov dword [ebp - 0xa09c], 0xad8bac
mov dword [ebp - 0xa098], 0xadb294
mov dword [ebp - 0xa094], 0xad6074
mov dword [ebp - 0xa090], 0xad6028
mov dword [ebp - 0xa08c], 0xadcb44
mov dword [ebp - 0xa088], 0xad6040
mov dword [ebp - 0xa084], 0xad9d6c
mov dword [ebp - 0xa080], 0xad91e0
mov dword [ebp - 0xa07c], 0xad6058
mov dword [ebp - 0xa054], 0
xor eax, eax
mov word [ebp - 0xa010], ax
xor ecx, ecx
lea edx, [ebp - 0xa070]
push edx
lea eax, [ebp - 0x2010]
push eax
mov eax, dword [ebp - 0xa054]
push ecx
push ecx
mov word [ebp - 0x2010], cx
lea ecx, [ebp - 0xa078]
push ecx
mov ecx, dword [ebp - 0xa050]
lea edx, [ebp - 0xa010]
push edx
push eax
push ecx
mov dword [ebp - 0xa078], 0x3fff
mov dword [ebp - 0xa070], 0x1000
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
jne 0xa7b46b
mov dword [ebp - 0xa05c], eax
mov eax, dword [ebp + eax*4 - 0xa0e0]
lea edx, [ebp - 0x2010]
push edx
push eax
call fcn.00a9fbdb
add esp, 8
test eax, eax
jne 0xa7b44f
push 0xadcb58
push ecx
lea ecx, [ebp - 0x2010]
push ecx
push ecx
push 0xadc93c
push 0xaeae58
call fcn.00a65080
add esp, 0xc
push eax
call fcn.00a64730
add esp, 0xc
push eax
call fcn.00a64730
mov edi, eax
mov edx, dword [edi]
mov eax, dword [edx + 4]
add esp, 8
xor ebx, ebx
test byte [eax + edi + 0xc], 6
jne 0xa7b2f9
mov eax, dword [eax + edi + 0x38]
mov edx, dword [eax]
mov ecx, eax
mov eax, dword [edx + 0x34]
call eax
cmp eax, 0xffffffff
jne 0xa7b2f9
lea ebx, [eax + 5]
mov ecx, dword [edi]
mov ecx, dword [ecx + 4]
xor esi, esi
add ecx, edi
cmp ebx, esi
je 0xa7b31a
mov eax, dword [ecx + 0xc]
or eax, ebx
cmp dword [ecx + 0x38], esi
jne 0xa7b313
or eax, 4
push esi
push eax
call fcn.00a52d10
xor edx, edx
mov ebx, 7
lea eax, [ebp - 0xa010]
mov word [ebp - 0xa02c], dx
mov dword [ebp - 0xa018], ebx
mov dword [ebp - 0xa01c], esi
lea edx, [eax + 2]
lea ecx, [ecx]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0xa7b340
sub eax, edx
sar eax, 1
push eax
lea eax, [ebp - 0xa010]
push eax
lea ecx, [ebp - 0xa02c]
call fcn.00a51740
lea ecx, [ebp - 0xa02c]
lea edi, [ebp - 0xa06c]
mov byte [ebp - 4], 3
call fcn.00a5ecc0
mov byte [ebp - 4], 2
cmp dword [ebp - 0xa018], 8
jb 0xa7b393
mov ecx, dword [ebp - 0xa02c]
push ecx
call fcn.00a9e60d
add esp, 4
sub esp, 0x1c
mov ecx, esp
xor edx, edx
lea eax, [ebp - 0x2010]
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x10], esi
mov dword [ebp - 0xa0e8], esp
mov word [ecx], dx
lea edi, [eax + 2]
mov dx, word [eax]
add eax, 2
cmp dx, si
jne 0xa7b3b2
sub eax, edi
sar eax, 1
push eax
lea eax, [ebp - 0x2010]
push eax
call fcn.00a51740
sub esp, 0x1c
mov ecx, esp
mov byte [ebp - 4], 4
xor edx, edx
mov dword [ecx + 0x14], ebx
mov dword [ecx + 0x10], esi
lea eax, [ebp - 0xa010]
mov word [ecx], dx
mov dword [ebp - 0xa0ec], esp
lea edx, [eax + 2]
mov di, word [eax]
add eax, 2
cmp di, si
jne 0xa7b3f1
sub eax, edx
sar eax, 1
push eax
lea eax, [ebp - 0xa010]
push eax
call fcn.00a51740
lea ecx, [ebp - 0xa02c]
push ecx
mov byte [ebp - 4], 2
call fcn.00a7b940
add esp, 0x3c
push 0xffffffffffffffff
push esi
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0xa04c]
push eax
call fcn.00a61f30
mov byte [ebp - 4], 2
cmp dword [ebp - 0xa018], 8
jb 0xa7b44f
mov edx, dword [ebp - 0xa02c]
push edx
call fcn.00a9e60d
add esp, 4
mov eax, dword [ebp - 0xa05c]
inc eax
mov dword [ebp - 0xa05c], eax
cmp eax, 0x1a
jb 0xa7b283
mov edi, dword [ebp - 0xa04c]
mov eax, dword [ebp - 0xa054]
inc eax
mov dword [ebp - 0xa054], eax
cmp eax, dword [ebp - 0xa058]
jb 0xa7b21d
cmp dword [edi + 0x10], 0
mov esi, dword [ebp - 0xa068]
mov ebx, dword [ebp - 0xa06c]
je 0xa7b537
lea eax, [ebp - 0xa02c]
push 0xadcb90
push eax
mov ebx, edi
call fcn.00a64e00
add esp, 8
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0xa04c]
push eax
call fcn.00a51560
mov byte [ebp - 4], 2
cmp dword [ebp - 0xa018], 8
jb 0xa7b4dc
mov ecx, dword [ebp - 0xa02c]
push ecx
call fcn.00a9e60d
add esp, 4
mov ecx, esi
sub ecx, dword [ebp - 0xa06c]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 4
mov edi, edx
shr edi, 0x1f
xor ebx, ebx
add edi, edx
je 0xa7b531
mov esi, dword [ebp - 0xa06c]
cmp edi, ebx
jbe 0xa7b5be
cmp dword [esi + 0x14], 8
jb 0xa7b513
mov eax, dword [esi]
jmp 0xa7b515
mov eax, esi
mov edx, dword [ebp - 0xa050]
push eax
push edx
call dword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
inc ebx
add esi, 0x1c
cmp edi, ebx
ja 0xa7b509
mov esi, dword [ebp - 0xa068]
mov ebx, dword [ebp - 0xa06c]
mov eax, dword [ebp - 0xa050]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
je 0xa7b584
mov edi, ebx
cmp ebx, esi
je 0xa7b57b
mov edi, edi
cmp dword [edi + 0x14], 8
jb 0xa7b561
mov eax, dword [edi]
push eax
call fcn.00a9e60d
add esp, 4
xor ecx, ecx
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], 0
mov word [edi], cx
add edi, 0x1c
cmp edi, esi
jne 0xa7b550
push ebx
call fcn.00a9e60d
add esp, 4
cmp dword [ebp - 0xa034], 8
jb 0xa7b59c
mov edx, dword [ebp - 0xa048]
push edx
call fcn.00a9e60d
add esp, 4
mov eax, dword [ebp - 0xa04c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00a9e488
mov esp, ebp
pop ebp
ret
push 0xadd254
call fcn.00a89ea8
int3