Function at 0x403ac0
Capabilities:
Compare security identifiers
Enumerate processes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x290
mov eax, dword [0x490274]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push edi
push 0x228
mov dword [ebp - 0x290], eax
lea eax, [ebp - 0x280]
push 0
push eax
mov dword [ebp - 0x54], 0
mov byte [ebp - 0x285], 0
call fcn.0044e130
add esp, 0xc
mov dword [ebp - 0x4c], 0
push 0
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov edi, eax
mov dword [ebp - 0x28c], edi
cmp edi, 0xffffffff
jne 0x403b32
xor al, al
pop edi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00435bdb
mov esp, ebp
pop ebp
ret 8
push ebx
push esi
lea eax, [ebp - 0x284]
mov dword [ebp - 0x284], 0x22c
push eax
push edi
xor esi, esi
call dword [sym.imp.KERNEL32.dll_Process32FirstW]
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
je 0x403cc2
nop dword [eax]
test esi, esi
je 0x403b67
push esi
call ebx
mov eax, dword [ebp - 0x54]
xor esi, esi
mov edi, esi
test eax, eax
je 0x403b78
push eax
call ebx
mov dword [ebp - 0x54], esi
lea eax, [ebp - 0x260]
push str.explorer.exe
push eax
call fcn.00453c1f
add esp, 8
test eax, eax
jne 0x403c74
lea eax, [ebp - 0x4c]
push eax
push dword [ebp - 0x27c]
call dword [sym.imp.KERNEL32.dll_ProcessIdToSessionId]
test eax, eax
je 0x403c74
mov eax, dword [ebp + 8]
cmp dword [ebp - 0x4c], eax
jne 0x403c74
push dword [ebp - 0x27c]
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov esi, eax
test esi, esi
je 0x403c74
lea eax, [ebp - 0x54]
push eax
push 0xf01ff
push esi
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x403c74
mov ebx, dword [ebp - 0x54]
lea eax, [ebp - 0x58]
push eax
push 0
push 0
push 1
push ebx
mov dword [ebp - 0x58], edi
call dword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x403c13
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x403c6e
push dword [ebp - 0x58]
call fcn.00453d3b
mov edi, eax
add esp, 4
test edi, edi
je 0x403c6e
lea eax, [ebp - 0x58]
push eax
push dword [ebp - 0x58]
push edi
push 1
push ebx
call dword [sym.imp.ADVAPI32.dll_GetTokenInformation]
test eax, eax
jne 0x403c3c
push edi
jmp 0x403c66
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x44
push eax
lea eax, [ebp - 0x48]
push eax
push 0
push 0x16
call dword [sym.imp.ADVAPI32.dll_CreateWellKnownSid]
lea eax, [ebp - 0x48]
push eax
push dword [edi]
call dword [sym.imp.ADVAPI32.dll_EqualSid]
push edi
test eax, eax
je 0x403c92
call fcn.00453d20
add esp, 4
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
mov edi, dword [ebp - 0x28c]
lea eax, [ebp - 0x284]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x403b60
jmp 0x403cb5
mov ecx, dword [ebp - 0x290]
mov eax, dword [ebp - 0x27c]
mov byte [ebp - 0x285], 1
mov dword [ecx], eax
call fcn.00453d20
mov edi, dword [ebp - 0x28c]
add esp, 4
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
test esi, esi
je 0x403cc2
push esi
call ebx
mov ecx, dword [ebp - 0x54]
test ecx, ecx
je 0x403cd3
push ecx
call ebx
mov dword [ebp - 0x54], 0
push edi
call ebx
mov ecx, dword [ebp - 4]
mov al, byte [ebp - 0x285]
xor ecx, ebp
pop esi
pop ebx
pop edi
call fcn.00435bdb
mov esp, ebp
pop ebp
ret 8