Function at 0x42a88b
Capabilities:
Get session user name

Disassembly:
push 0x324
mov eax, 0x45d628
call fcn.0043587d
mov eax, dword [ebp + 8]
push eax
push str.ami_sExi
lea eax, [ebp - 0xb0]
push 0x50
push eax
mov esi, ecx
call fcn.004311bc
add esp, 0x10
lea eax, [ebp - 0x324]
push eax
lea eax, [ebp - 0x2b8]
push eax
push 2
mov dword [ebp - 0x324], 0x104
call dword [sym.imp.Secur32.dll_GetUserNameExW]
xor ebx, ebx
mov dword [ebp - 0x314], ebx
lea eax, [ebp - 0x314]
push eax
mov dword [ebp - 4], ebx
call fcn.0042affb
cmp eax, ebx
jge 0x42a90d
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x314]
cmp eax, ebx
je 0x42a905
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
inc eax
jmp 0x42ab74
mov dword [ebp - 0x318], ebx
mov dword [ebp - 0x310], ebx
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
lea edx, [ebp - 0xb0]
push edx
push eax
call dword [ecx + 0x1c]
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
lea edx, [ebp - 0x310]
push edx
push 0x466504
push 0x466534
lea edx, [ebp - 0xb0]
push edx
push eax
call dword [ecx + 0x20]
cmp eax, ebx
jge 0x42a988
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x310]
cmp eax, ebx
je 0x42a96c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x318]
cmp eax, ebx
je 0x42a8f1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x42a8f1
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
lea edx, [ebp - 0x2b8]
push edx
push eax
call dword [ecx + 0x50]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push ebx
lea edx, [ebp - 0x2b8]
push edx
push eax
call dword [ecx + 0x78]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push 0x46c3f8
push eax
call dword [ecx + 0x48]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push esi
push eax
call dword [ecx + 0x80]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push edi
push eax
call dword [ecx + 0x88]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push 0x200b20
push eax
call dword [ecx + 0xa8]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
push 0x2402
push eax
call dword [ecx + 0x70]
push ebx
call fcn.00430451
mov ecx, eax
mov eax, dword [ebp + 0xc]
imul eax, eax, 0x3c
mov esi, edx
cdq
add eax, ecx
mov dword [ebp - 0x330], eax
lea eax, [ebp - 0x330]
push eax
lea eax, [ebp - 0x30c]
adc edx, esi
push eax
mov dword [ebp - 0x32c], edx
call fcn.00431458
push 0x30
lea eax, [ebp - 0x2e8]
push ebx
push eax
call fcn.00434cd0
mov si, word [ebp - 0x304]
mov ecx, dword [ebp - 0x2fc]
mov edx, dword [ebp - 0x300]
add esp, 0x18
push 0x30
pop eax
mov word [ebp - 0x2e8], ax
mov eax, dword [ebp - 0x2f8]
add eax, 0x76c
inc ecx
mov word [ebp - 0x2d8], si
mov si, word [ebp - 0x308]
mov word [ebp - 0x2e4], ax
mov word [ebp - 0x2e2], cx
mov word [ebp - 0x2e0], dx
mov word [ebp - 0x2d6], si
mov word [ebp - 0x2de], ax
mov word [ebp - 0x2dc], cx
mov word [ebp - 0x2da], dx
mov dword [ebp - 0x2c8], ebx
mov dword [ebp - 0x31c], ebx
lea edx, [ebp - 0x31c]
push edx
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x310]
lea edx, [ebp - 0x320]
push edx
mov dword [ebp - 0x320], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
test eax, eax
js 0x42aafa
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax]
lea edx, [ebp - 0x2e8]
push edx
push eax
call dword [ecx + 0xc]
mov eax, dword [ebp - 0x310]
mov ecx, dword [eax]
lea edx, [ebp - 0x318]
push edx
push 0x463c20
push eax
call dword [ecx]
cmp eax, ebx
jl 0x42ab23
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
push ebx
push ebx
push eax
call dword [ecx + 0x18]
mov byte [ebp - 4], 2
mov eax, dword [ebp - 0x31c]
cmp eax, ebx
je 0x42ab37
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 1
mov eax, dword [ebp - 0x310]
cmp eax, ebx
je 0x42ab4b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], bl
mov eax, dword [ebp - 0x318]
cmp eax, ebx
je 0x42ab5e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
or dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x314]
cmp eax, ebx
je 0x42ab72
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
xor eax, eax
call fcn.00435900
ret