Function at 0x42a5a0
Capabilities:
Compare security identifiers
Find taskbar

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x547d95
mov eax, dword fs:[0]
push eax
sub esp, 0x34
mov eax, dword [0x5b0008]
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
push 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [0x5bdff0]
xor esi, esi
mov dword [ebp - 0x20], esi
cmp dword [eax + 0xe20], esi
jne 0x42a605
lea eax, [ebp - 0x20]
push eax
push 0xf01ff
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
jmp 0x42a649
push 0
push str.Shell_TrayWnd
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x42a64f
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], esi
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x42a64f
push eax
push 0
push 0x2000000
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je 0x42a64f
lea eax, [ebp - 0x20]
push eax
push 0x2000000
push esi
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
mov eax, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov byte [ebp - 0x40], 0
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x38], esi
mov dword [ebp - 4], 0
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x20]
mov byte [ebp - 0x34], 0
mov dword [ebp - 0x2c], eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 1
mov ebx, dword [sym.imp.ADVAPI32.dll_GetTokenInformation]
push ecx
push 0
push 0
push 2
push eax
mov dword [ebp - 0x18], 0
mov word [ebp - 0x14], 0x500
call ebx
test eax, eax
jne 0x42a727
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x42a727
mov edi, dword [ebp - 0x1c]
lea ecx, [edi + 8]
cmp edi, ecx
sbb eax, eax
test ecx, eax
je 0x42a727
cmp edi, ecx
sbb eax, eax
and eax, ecx
cmp eax, 0x400
ja 0x42a6dd
cmp edi, ecx
sbb eax, eax
and eax, ecx
call fcn.00546560
mov esi, esp
test esi, esi
je 0x42a727
mov dword [esi], 0xcccc
jmp 0x42a6f8
cmp edi, ecx
sbb eax, eax
and eax, ecx
push eax
call fcn.0051e703
mov esi, eax
add esp, 4
test esi, esi
je 0x42a6fb
mov dword [esi], 0xdddd
add esi, 8
mov edi, dword [ebp - 0x1c]
test esi, esi
je 0x42a727
lea eax, [ebp - 0x1c]
push eax
push edi
push esi
push 2
push dword [ebp - 0x20]
call ebx
test eax, eax
jne 0x42a75a
add esi, 0xfffffff8
cmp dword [esi], 0xdddd
jne 0x42a727
push esi
call fcn.0051cad9
add esp, 4
xor bl, bl
lea ecx, [ebp - 0x34]
call fcn.0042a850
lea ecx, [ebp - 0x40]
call fcn.0042a850
mov al, bl
lea esp, [ebp - 0x50]
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.00518799
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x24]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
push 0x220
push 0x20
push 2
lea eax, [ebp - 0x18]
push eax
call dword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
test eax, eax
je 0x42a713
xor ebx, ebx
xor edi, edi
cmp dword [esi], ebx
jbe 0x42a7b0
lea ebx, [esi + 4]
nop dword [eax]
push dword [ebp - 0x24]
push dword [ebx]
call dword [sym.imp.ADVAPI32.dll_EqualSid]
test eax, eax
jne 0x42a7ab
inc edi
add ebx, 8
cmp edi, dword [esi]
jb 0x42a790
xor ebx, ebx
jmp 0x42a7b0
mov ebx, 1
add esi, 0xfffffff8
cmp dword [esi], 0xdddd
jne 0x42a7c4
push esi
call fcn.0051cad9
add esp, 4
push dword [ebp - 0x24]
call dword [sym.imp.ADVAPI32.dll_FreeSid]
jmp 0x42a729