Function at 0xaa2b55
Capabilities:
Enumerate gui resources
Query or enumerate registry value

Disassembly:
push 0xd4
mov eax, 0xaff53f
call fcn.00af8e2b
mov edi, ecx
push ecx
push 0x9fd130
lea ecx, [ebp - 0xcc]
call fcn.00aa03aa
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0x9e5c88
call fcn.00a9fcd1
xor ebx, ebx
mov ecx, 0xc95e58
mov dword [ebp - 4], ebx
call fcn.00ab8692
test al, al
je 0xaa2c03
call fcn.00a93f45
cmp eax, 0xd
jae 0xaa2c03
call fcn.00ae94d5
test eax, eax
jns 0xaa2bb7
call fcn.00ae5ff5
call fcn.00bba0be
lea eax, [ebp - 0xe0]
mov dword [ebp - 0xd4], ebx
push eax
lea eax, [ebp - 0xd4]
mov dword [ebp - 0xe0], 4
push eax
push ebx
push 0x18
push 0x9f955c
push 0x9f6a9c
push reloc.OLEAUT32.dll_SysReAllocString
call dword [sym.imp.api_ms_win_shcore_registry_l1_1_0.dll_SHRegGetValueW]
test eax, eax
jne 0xaa2bfe
cmp dword [ebp - 0xd4], ebx
jne 0xaa2c03
call fcn.00b6638c
mov ecx, edi
call fcn.00aa51eb
mov ecx, edi
mov byte [edi + 0xc9], 1
call fcn.00aa4b07
lea ecx, [ebp - 0xcc]
call fcn.00aa016e
push 1
mov ecx, edi
call fcn.00a84b3b
push edi
push 0xaa6f10
call dword [sym.imp.ext_ms_win_rtcore_ntuser_window_ext_l1_1_0.dll_EnumWindows]
lea ecx, [ebp - 0xcc]
call fcn.00aa019e
mov ecx, edi
call fcn.00aa4a1c
mov edx, dword [edi + 0xdc]
test edx, edx
je 0xaa2c77
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0xc]
lea eax, [edi + 0xf4]
push eax
lea eax, [edi + 0x30]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
mov edx, dword [edi + 0xe0]
test edx, edx
je 0xaa2ca4
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0x20]
lea eax, [edi + 0xf8]
push eax
lea eax, [edi + 0x34]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
mov edx, dword [edi + 0xe4]
test edx, edx
je 0xaa2cd1
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0xc]
lea eax, [edi + 0xfc]
push eax
lea eax, [edi + 0x38]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
mov edx, dword [edi + 0xe8]
test edx, edx
je 0xaa2cfe
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0xc]
lea eax, [edi + 0x100]
push eax
lea eax, [edi + 0x3c]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
mov edx, dword [edi + 0xec]
test edx, edx
je 0xaa2d2b
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0x10]
lea eax, [edi + 0x104]
push eax
lea eax, [edi + 0x40]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
mov edx, dword [edi + 0xf0]
test edx, edx
je 0xaa2d58
mov eax, dword [edx]
mov ecx, edi
neg ecx
sbb ecx, ecx
mov esi, dword [eax + 0xc]
lea eax, [edi + 0x108]
push eax
lea eax, [edi + 0x50]
and ecx, eax
push ecx
push edx
mov ecx, esi
call dword [0xc99200]
call esi
push ecx
push 3
push ebx
mov ecx, 0xc97830
call fcn.00aa2fac
lea ecx, [ebp - 0xcc]
call fcn.00aa01ce
mov ecx, edi
call fcn.00aa48dd
mov ecx, edi
call fcn.00aa4775
lea eax, [ebp - 0xdc]
mov dword [ebp - 0xd8], ebx
push eax
push 1
mov esi, 0x43a
mov dword [ebp - 0xdc], ebx
push esi
push 0xc008000
push 0x8002
push dword [edi + 4]
call dword [sym.imp.SHELL32.dll_SHChangeNotifyRegister]
mov dword [edi + 0x98], eax
mov dword [ebp - 0xd0], ebx
lea eax, [ebp - 0xd0]
mov byte [ebp - 4], 1
push eax
push ebx
push 0x4000
push 0x9f76dc
call dword [sym.imp.api_ms_win_storage_exports_internal_l1_1_0.dll_SHGetKnownFolderIDList]
test eax, eax
js 0xaa2e08
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 0xdc], eax
lea eax, [ebp - 0xdc]
push eax
push 1
push esi
push 0x2000
push 0x8002
push dword [edi + 4]
call dword [sym.imp.SHELL32.dll_SHChangeNotifyRegister]
mov dword [edi + 0x9c], eax
mov ecx, edi
call fcn.00aa459d
mov esi, 0x9fd1e8
test eax, eax
jns 0xaa2e27
mov ecx, dword [ebp + 4]
mov edx, 0x1067
push eax
push esi
call fcn.00ab606d
mov ecx, edi
call fcn.00a8ba2e
test eax, eax
jns 0xaa2e3b
push eax
push esi
mov edx, 0x1068
jmp 0xaa2e90
lea esi, [edi + 0x18c]
mov ecx, esi
call fcn.00ab2d79
mov ecx, edi
lea eax, [edi + 0x44]
neg ecx
push esi
sbb ecx, ecx
and ecx, eax
call fcn.00aa3576
test eax, eax
jns 0xaa2e64
mov edx, 0x1069
jmp 0xaa2e8a
lea ecx, [ebp - 0xcc]
call fcn.00aa01fe
mov eax, dword [esi]
push eax
mov ecx, dword [eax]
mov esi, dword [ecx + 0xc]
mov ecx, esi
call dword [0xc99200]
call esi
test eax, eax
jns 0xaa2e98
mov edx, 0x106c
push eax
push 0x9fd1e8
mov ecx, dword [ebp + 4]
call fcn.00ab606d
mov eax, dword [edi + 0x1ac]
mov ecx, edi
and eax, 0xfffffffe
push eax
call fcn.00aa2f6f
mov ecx, 0xc95ea0
call fcn.00ab8db0
test al, al
je 0xaa2ebe
mov ecx, edi
call fcn.00ae93a1
push ebx
lea ecx, [ebp - 0xcc]
call fcn.00aa022e
mov eax, dword [ebp - 0xd0]
push eax
mov dword [ebp - 0xd0], ebx
call dword [sym.imp.api_ms_win_core_com_l1_1_0.dll_CoTaskMemFree]
lea ecx, [ebp - 0xcc]
mov dword [ebp - 0xcc], 0x9e5c88
call fcn.00aa076c
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0xaa2f12
or eax, 0xffffffff
lock xadd dword [ecx], eax
jne 0xaa2f0f
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0xaa2f0f
push ecx
call fcn.00b61598
mov dword [ebp - 0x14], ebx
lea ecx, [ebp - 0x20]
call fcn.00a48c27
lea ecx, [ebp - 0x88]
call fcn.00a7d7ad
cmp dword [ebp - 0xb0], 1
jne 0xaa2f4b
mov dword [ebp - 0xb0], 2
call fcn.00ab75e6
lea edx, [ebp - 0xa8]
mov ecx, dword [eax + 4]
call fcn.00b61345
cmp dword [ebp - 0xbc], 0
mov dword [ebp - 0xb0], 3
je 0xaa2f69
lea ecx, [ebp - 0xc8]
call fcn.00a59db6
call fcn.00af8dd5
ret