Function at 0x42d63a
Capabilities:
Get session user name
Get token membership

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x268
mov eax, dword [0x4d5630]
xor eax, ebp
mov dword [ebp - 8], eax
push ebx
push esi
push edi
xor esi, esi
mov ebx, edx
mov edi, ecx
mov dword [ebp - 0x220], ebx
mov ecx, dword [ebp + 0x10]
push esi
mov dword [ebp - 0x23c], ecx
mov dword [ebp - 0x238], esi
call fcn.0042e1a2
lea eax, [ebp - 0x238]
mov dword [ebp - 0x238], 0x101
push eax
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
cmp dword [edi + 0x14], 8
jb 0x42d699
mov eax, dword [edi]
jmp 0x42d69b
mov eax, edi
lea ecx, [ebp - 0x218]
push ecx
push esi
lea ecx, [ebp - 0x230]
push ecx
push esi
push esi
mov esi, dword [sym.imp.ADVAPI32.dll_GetNamedSecurityInfoW]
push 4
push ebx
push eax
call esi
cmp eax, 5
jne 0x42d6f3
mov edx, ebx
mov ecx, edi
call fcn.0042d521
test al, al
je 0x42d8a7
cmp dword [edi + 0x14], 8
jb 0x42d6d8
mov eax, dword [edi]
jmp 0x42d6da
mov eax, edi
lea ecx, [ebp - 0x218]
xor edx, edx
push ecx
push edx
lea ecx, [ebp - 0x230]
push ecx
push edx
push edx
push 4
push ebx
push eax
call esi
test eax, eax
jne 0x42d8a7
lea eax, [ebp - 0x21c]
push eax
lea eax, [ebp - 0x228]
push eax
push dword [ebp - 0x230]
call dword [sym.imp.ADVAPI32.dll_GetExplicitEntriesFromAclW]
test eax, eax
je 0x42d72a
push dword [ebp - 0x218]
call dword [sym.imp.KERNEL32.DLL_LocalFree]
jmp 0x42d8a7
xor ebx, ebx
cmp dword [ebp - 0x228], ebx
jbe 0x42d784
xor esi, esi
mov eax, dword [ebp - 0x21c]
cmp dword [esi + eax + 4], 3
jne 0x42d778
cmp dword [esi + eax + 0x14], 0
jne 0x42d778
lea ecx, [ebp - 0x224]
push ecx
push dword [esi + eax + 0x1c]
push 0
call dword [sym.imp.ADVAPI32.dll_CheckTokenMembership]
test eax, eax
je 0x42d778
cmp dword [ebp - 0x224], 0
je 0x42d778
mov ecx, dword [ebp - 0x21c]
mov eax, dword [ebp + 8]
not eax
and dword [esi + ecx], eax
inc ebx
add esi, 0x20
cmp ebx, dword [ebp - 0x228]
jb 0x42d736
push 3
push 1
push dword [ebp + 8]
lea eax, [ebp - 0x214]
push eax
lea eax, [ebp - 0x268]
push eax
call dword [sym.imp.ADVAPI32.dll_BuildExplicitAccessWithNameW]
mov esi, dword [sym.imp.ADVAPI32.dll_SetEntriesInAclW]
lea eax, [ebp - 0x234]
push eax
push 0
lea eax, [ebp - 0x268]
push eax
push 1
call esi
mov ebx, dword [sym.imp.KERNEL32.DLL_LocalFree]
test eax, eax
jne 0x42d897
lea eax, [ebp - 0x22c]
push eax
push dword [ebp - 0x234]
push dword [ebp - 0x21c]
push dword [ebp - 0x228]
call esi
push dword [ebp - 0x234]
mov esi, eax
call ebx
test esi, esi
jne 0x42d897
cmp dword [edi + 0x14], 8
jb 0x42d7fe
mov ecx, dword [edi]
jmp 0x42d800
mov ecx, edi
cmp dword [edi + 0x14], 8
mov eax, dword [edi + 0x10]
lea eax, [ecx + eax*2]
jb 0x42d810
mov ecx, dword [edi]
jmp 0x42d812
mov ecx, edi
push eax
push ecx
lea ecx, [ebp - 0x248]
call fcn.0042e1cb
mov esi, dword [ebp - 0x248]
xor eax, eax
push eax
push dword [ebp - 0x22c]
push eax
push eax
push 4
push dword [ebp - 0x220]
push esi
call dword [sym.imp.ADVAPI32.dll_SetNamedSecurityInfoW]
mov dword [ebp - 0x224], eax
cmp eax, 5
jne 0x42d87b
mov edx, dword [ebp - 0x220]
mov ecx, edi
call fcn.0042d521
test al, al
je 0x42d87b
xor eax, eax
push eax
push dword [ebp - 0x22c]
push eax
push eax
push 4
push dword [ebp - 0x220]
push esi
call dword [sym.imp.ADVAPI32.dll_SetNamedSecurityInfoW]
mov dword [ebp - 0x224], eax
push dword [ebp - 0x22c]
call ebx
cmp dword [ebp - 0x224], 0
je 0x42d8ba
test esi, esi
je 0x42d897
push esi
call fcn.004835e0
pop ecx
push dword [ebp - 0x21c]
call ebx
push dword [ebp - 0x218]
call ebx
xor al, al
mov ecx, dword [ebp - 8]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00486d53
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x21c]
call ebx
cmp dword [ebp + 0xc], 0
je 0x42d8d2
push dword [ebp - 0x218]
call ebx
jmp 0x42d92d
push 0x24
call fcn.00483600
pop ecx
test eax, eax
je 0x42d8f0
and dword [eax + 0x10], 0
xor ecx, ecx
mov dword [eax + 0x14], 7
mov word [eax], cx
jmp 0x42d8f2
xor eax, eax
mov ebx, dword [ebp - 0x23c]
mov ecx, ebx
push eax
call fcn.0042e1a2
mov ecx, dword [ebx]
push 0xffffffffffffffff
push 0
push edi
call fcn.00404911
mov ecx, dword [ebx]
mov eax, dword [ebp - 0x230]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebx]
mov eax, dword [ebp - 0x218]
mov dword [ecx + 0x20], eax
mov eax, dword [ebx]
mov ecx, dword [ebp - 0x220]
mov dword [eax + 0x18], ecx
test esi, esi
je 0x42d938
push esi
call fcn.004835e0
pop ecx
mov al, 1
jmp 0x42d8a9