Function at 0x4335a9
Capabilities:
Get session user name

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x45f5dc
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x12a4
call fcn.0044bb70
mov eax, dword [0x498d50]
xor eax, esp
mov dword [esp + 0x12a0], eax
push ebx
push esi
push edi
mov eax, dword [0x498d50]
xor eax, esp
push eax
lea eax, [esp + 0x12b8]
mov dword fs:[0], eax
xor ebx, ebx
mov edi, ecx
mov dword [esp + 0x14], ebx
call fcn.00434892
push eax
lea ecx, [esp + 0x24]
call fcn.0040210b
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x12c0], ebx
mov esi, 0x104
lea ecx, [esp + 0x20]
cmp dword [eax], ebx
je 0x433628
push str.SYSTEM
call fcn.004020d4
jmp 0x433649
lea eax, [esp + 0x1c]
push eax
push esi
mov dword [esp + 0x24], esi
call fcn.004023c9
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
push 0xffffffffffffffff
lea ecx, [esp + 0x24]
call fcn.0040c514
push edi
lea ecx, [esp + 0x28]
call fcn.004020a4
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x28]
push eax
mov byte [esp + 0x12c8], 1
call fcn.00433a24
pop ecx
pop ecx
cmp eax, ebx
je 0x4336ae
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040253e
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.0040253e
xor eax, eax
mov ecx, dword [esp + 0x12b8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x12a0]
xor ecx, esp
call fcn.0044546a
mov esp, ebp
pop ebp
ret
mov edi, dword [esp + 0x24]
cmp dword [edi - 0xc], ebx
je 0x4339e9
mov eax, dword [esp + 0x20]
cmp dword [eax - 0xc], ebx
je 0x4339e9
call fcn.004322f3
mov dword [esp + 0x14], eax
cmp eax, ebx
je 0x4339c9
xor eax, eax
push 0x206
mov word [esp + 0x448], ax
lea eax, [esp + 0x44a]
push ebx
push eax
call fcn.004462a0
add esp, 0xc
push 0xc34
lea eax, [esp + 0x650]
push ebx
push eax
call fcn.004462a0
add esp, 0xc
lea eax, [esp + 0x444]
push eax
mov edx, edi
mov eax, esi
call fcn.0040c53e
mov edi, eax
cmp edi, ebx
jge 0x43377c
push str.failed_to_copy_command_line_into_SM:
lea ecx, [esp + 0x18]
call fcn.00402060
push edi
lea eax, [esp + 0x28]
push eax
lea eax, [esp + 0x1c]
push eax
push 2
mov byte [esp + 0x12d0], 2
call fcn.00411b31
mov ecx, dword [esp + 0x24]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.0040253e
mov ecx, dword [esp + 0x24]
add ecx, 0xfffffff0
call fcn.0040253e
mov ecx, dword [esp + 0x20]
add ecx, 0xfffffff0
call fcn.0040253e
mov eax, ebx
jmp 0x43368a
lea eax, [esp + 0x444]
push eax
lea ecx, [esp + 0x1c]
call fcn.00402060
push str.___command_line:
lea ecx, [esp + 0x18]
mov byte [esp + 0x12c4], 3
call fcn.00402060
push ebx
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x1c]
push eax
push 2
mov byte [esp + 0x12d0], 4
call fcn.00411b31
mov ecx, dword [esp + 0x24]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.0040253e
mov byte [esp + 0x12c0], 1
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
call fcn.0040253e
mov eax, dword [ebp + 8]
mov edx, dword [eax]
lea eax, [esp + 0x64c]
push eax
mov eax, esi
call fcn.0040c53e
lea eax, [esp + 0x64c]
push eax
lea ecx, [esp + 0x18]
call fcn.00402060
push str.___ARM_update_folder:
lea ecx, [esp + 0x1c]
mov byte [esp + 0x12c4], 5
call fcn.00402060
push ebx
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x20]
push eax
push 2
mov byte [esp + 0x12d0], 6
call fcn.00411b31
mov ecx, dword [esp + 0x28]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.0040253e
mov byte [esp + 0x12c0], 1
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.0040253e
mov edx, dword [esp + 0x20]
lea eax, [esp + 0x858]
push eax
mov eax, esi
call fcn.0040c53e
lea eax, [esp + 0x28]
push eax
mov dword [esp + 0x2c], ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_ProcessIdToSessionId]
cmp eax, ebx
je 0x43391d
mov edx, dword [esp + 0x28]
push 9
xor eax, eax
pop ecx
mov word [esp + 0x1288], ax
lea edi, [esp + 0x128a]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push 0xa
lea eax, [esp + 0x128c]
push eax
push edx
mov dword [esp + 0x860], edx
call fcn.00446267
add esp, 0xc
lea eax, [esp + 0x1288]
push eax
lea ecx, [esp + 0x18]
call fcn.00402060
push str.___session_id:
lea ecx, [esp + 0x1c]
mov byte [esp + 0x12c4], 7
call fcn.00402060
push ebx
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x20]
push eax
push 2
mov byte [esp + 0x12d0], 8
call fcn.00411b31
mov ecx, dword [esp + 0x28]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.0040253e
mov byte [esp + 0x12c0], 1
mov ecx, dword [esp + 0x14]
jmp 0x433955
push str.___failed_to_get_session_id:
lea ecx, [esp + 0x1c]
call fcn.00402060
mov byte [esp + 0x12c0], 9
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
lea eax, [esp + 0x1c]
push eax
push 1
call fcn.00411fb7
mov byte [esp + 0x12cc], 1
mov ecx, dword [esp + 0x24]
add esp, 0xc
add ecx, 0xfffffff0
call fcn.0040253e
lea eax, [esp + 0x444]
push eax
lea edi, [esp + 0x30]
call fcn.0042aae7
pop ecx
mov dword [esp + 0x14], eax
lea eax, [esp + 0x234]
push eax
lea ecx, [esp + 0x20]
call fcn.00402060
mov eax, edi
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x12c4], 0xa
call fcn.00402060
mov byte [esp + 0x12c0], 0xb
push dword [esp + 0x43c]
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x20]
push eax
push 1
call fcn.00411b31
mov ecx, dword [esp + 0x28]
add esp, 0x10
add ecx, 0xfffffff0
call fcn.0040253e
jmp 0x433a0f
push str.unable_to_create_SM
lea ecx, [esp + 0x20]
call fcn.00402060
push ebx
lea eax, [esp + 0x20]
push eax
mov byte [esp + 0x12c8], 0xc
push 2
jmp 0x433a07
push str.Empty_Command_Line_or_User_Name
lea ecx, [esp + 0x20]
call fcn.00402060
push ebx
lea eax, [esp + 0x20]
push eax
mov byte [esp + 0x12c8], 0xd
push 1
call fcn.00411fb7
add esp, 0xc
mov ecx, dword [esp + 0x1c]
add ecx, 0xfffffff0
call fcn.0040253e
mov ebx, dword [esp + 0x14]
jmp 0x43375d