Function at 0x6c3aa0
Capabilities:
Get session user name

Disassembly:
sub esp, 0x488
mov eax, dword [esp + 0x48c]
push ebx
push ebp
xor ebp, ebp
push esi
cmp eax, ebp
push edi
mov dword [esp + 0x10], ebp
je case.0x6c3b65.4
mov ecx, dword [0x6b4760]
mov eax, dword [eax + 0x54]
push ecx
push eax
call fcn.006bf6c0
mov ebx, eax
add esp, 8
cmp ebx, ebp
jne 0x6c3ae9
pop edi
pop esi
pop ebp
mov ax, 2
pop ebx
add esp, 0x488
ret 0xc
mov ax, word [ebx + 0x44]
cmp ax, bp
je 0x6c3b09
cmp ax, 0xffff
je 0x6c3b09
pop edi
pop esi
pop ebp
mov ax, 0x48
pop ebx
add esp, 0x488
ret 0xc
mov ecx, 0x80
xor eax, eax
lea edi, [esp + 0x98]
rep stosd dword es:[edi], eax
mov ecx, 0x80
lea edi, [esp + 0x298]
rep stosd dword es:[edi], eax
mov ecx, 0x10
lea edi, [esp + 0x18]
rep stosd dword es:[edi], eax
mov ecx, 0x10
lea edi, [esp + 0x58]
rep stosd dword es:[edi], eax
mov eax, 1
mov word [ebx + 0x1ac], ax
mov word [ebx + 0x1ae], ax
mov eax, dword [esp + 0x4a0]
and eax, 0xffff
cmp eax, 8
ja case.0x6c3b65.4
jmp dword [eax*4 + 0x6c3d2c]
lea edx, [esp + 0x10]
lea eax, [esp + 0x98]
push edx
push eax
mov dword [esp + 0x18], 0x40
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
jne 0x6c3c66
mov ecx, dword [0x6b1070]
mov dx, word [0x6b1074]
mov al, byte [0x6b1076]
mov dword [esp + 0x98], ecx
mov word [esp + 0x9c], dx
mov byte [esp + 0x9e], al
jmp 0x6c3c66
mov dword [esp + 0x10], 0x40
jmp 0x6c3c29
lea eax, [esp + 0x10]
lea ecx, [esp + 0x18]
push eax
push ecx
mov dword [esp + 0x18], 0x40
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
test eax, eax
jne 0x6c3c01
mov edx, dword [0x6b1070]
mov ax, word [0x6b1074]
mov cl, byte [0x6b1076]
mov dword [esp + 0x18], edx
mov word [esp + 0x1c], ax
mov byte [esp + 0x1e], cl
lea edi, [esp + 0x18]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x98]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x58]
push ecx
call fcn.006c6ca0
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
xor eax, eax
add esp, 4
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
lea edx, [esp + 0x98]
mov esi, edi
mov edi, edx
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea eax, [esp + 0x298]
push 0x40
lea ecx, [esp + 0x9c]
push eax
push ecx
call fcn.006c9210
add esp, 0xc
cmp eax, 0xffffffff
jne 0x6c3c9c
pop edi
mov dword [ebx + 0x1a8], ebp
pop esi
pop ebp
mov ax, 0x4a
pop ebx
add esp, 0x488
ret 0xc
lea edi, [esp + 0x298]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x14]
repne scasb al, byte es:[edi]
not ecx
dec ecx
push edx
lea eax, [esp + 0x29c]
push ecx
push eax
mov dword [esp + 0x20], ebp
call fcn.006c6bc0
add esp, 0xc
cmp eax, 0xffffffff
jne 0x6c3ce2
pop edi
mov dword [ebx + 0x1a8], ebp
pop esi
pop ebp
xor ax, ax
pop ebx
add esp, 0x488
ret 0xc
mov ecx, dword [esp + 0x14]
pop edi
pop esi
mov dword [ebx + 0x1a8], ecx
pop ebp
xor ax, ax
pop ebx
add esp, 0x488
ret 0xc
mov word [ebx + 0x1ac], bp
pop edi
mov word [ebx + 0x1ae], bp
pop esi
pop ebp
xor ax, ax
pop ebx
add esp, 0x488
ret 0xc
pop edi
pop esi
pop ebp
mov ax, 0x10
pop ebx
add esp, 0x488
ret 0xc