Function at 0x407320
Capabilities:
Get session user name

Disassembly:
push 0x2b0
mov eax, 0x40f6d6
call fcn.0040e648
mov edi, dword [0x41c4a0]
mov ecx, 0x41c4a4
mov dword [ebp - 0x2bc], edi
call dword [sym.imp.Cmmlib.dll_public:_bool___thiscall_Cmm::CStringT_wchar_t_::empty_void_const]
test al, al
je 0x407352
xor eax, eax
inc eax
jmp 0x407669
call dword [sym.imp.Cmmlib.dll_public:_static_class_Cmm::CommandLine____cdecl_Cmm::CommandLine::ForCurrentProcess_void_]
mov esi, eax
xor ebx, ebx
test esi, esi
je 0x4074b1
push str.runaszvideo
lea ecx, [ebp - 0x298]
call fcn.00407138
lea eax, [ebp - 0x298]
mov dword [ebp - 4], ebx
push eax
lea eax, [ebp - 0x22c]
mov ecx, esi
push eax
call dword [sym.imp.Cmmlib.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_Cmm::CommandLine::GetSwitchValueASCII_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 2
call fcn.00407115
push str.TRUE
lea ecx, [ebp - 0x22c]
call fcn.00407298
test al, al
jne 0x407671
push str.multipt
lea ecx, [ebp - 0x260]
call fcn.00407138
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x244]
mov ecx, esi
push eax
call dword [sym.imp.Cmmlib.dll_public:_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char_____thiscall_Cmm::CommandLine::GetSwitchValueASCII_class_std::basic_string_char__struct_std::char_traits_char___class_std::allocator_char___const__]
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x2b8], eax
cmp ecx, eax
je 0x40743b
mov edx, dword [ebp - 0x218]
cmp edx, 0x10
jb 0x40740b
mov ecx, dword [ebp - 0x22c]
inc edx
call fcn.00404778
mov eax, dword [ebp - 0x2b8]
push 0xf
pop edx
mov dword [ebp - 0x21c], ebx
lea edi, [ebp - 0x22c]
mov dword [ebp - 0x218], edx
mov esi, eax
mov byte [ebp - 0x22c], bl
push 6
pop ecx
rep movsd dword es:[edi], dword [esi]
mov edi, dword [ebp - 0x2bc]
mov dword [eax + 0x10], ebx
mov dword [eax + 0x14], edx
mov byte [eax], bl
lea ecx, [ebp - 0x244]
call fcn.00407115
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 2
call fcn.00407115
push str.TRUE
lea ecx, [ebp - 0x22c]
call fcn.00407298
test al, al
jne 0x407671
call fcn.00406a08
test eax, eax
je 0x407495
call fcn.00406db7
test eax, eax
jne 0x407495
call fcn.00406fa0
test eax, eax
jne 0x407495
call fcn.00407004
test eax, eax
je 0x407671
call fcn.00406f1c
test eax, eax
jne 0x407671
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x22c]
call fcn.00407115
lea ecx, [ebp - 0x280]
call dword [sym.imp.Cmmlib.dll_public:_void___thiscall_Cmm::CFileName::constructor_void_]
push ebx
lea ecx, [ebp - 0x280]
mov dword [ebp - 4], 4
call dword [sym.imp.Cmmlib.dll_public:_void___thiscall_Cmm::CFileName::GetModuleFileNameW_struct_HINSTANCE____]
lea ecx, [ebp - 0x280]
call dword [sym.imp.Cmmlib.dll_public:_wchar_t_const____thiscall_Cmm::CFileName::GetName_void_const]
push eax
lea ecx, [ebp - 0x2b4]
call dword [sym.imp.Cmmlib.dll_public:_void___thiscall_Cmm::CStringT_wchar_t_::constructor_wchar_t_const__]
push 0x41c4a4
lea ecx, [ebp - 0x2b4]
mov byte [ebp - 4], 5
call dword [sym.imp.Cmmlib.dll_public:_bool___thiscall_Cmm::CStringT_wchar_t_::operator_class_Cmm::CStringT_wchar_t__const__const]
test al, al
je 0x40764c
lea ecx, [ebp - 0x264]
call dword [sym.imp.Cmmlib.dll_public:_void___thiscall_Cmm::CStringT_wchar_t_::constructor_void_]
push 0x200
lea eax, [ebp - 0x214]
mov byte [ebp - 4], 6
push ebx
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov dword [ebp - 0x2b8], 0xff
lea eax, [ebp - 0x2b8]
push eax
lea eax, [ebp - 0x214]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
je 0x407561
lea eax, [ebp - 0x214]
push eax
lea ecx, [ebp - 0x264]
call dword [0x4110a8]
push str.Global_
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_void___thiscall_Cmm::CStringT_wchar_t_::constructor_wchar_t_const__]
lea ecx, [ebp - 0x264]
mov byte [ebp - 4], 7
call dword [sym.imp.Cmmlib.dll_public:_int___thiscall_Cmm::CStringT_wchar_t_::IsEmpty_void_const]
mov esi, 0x414a3c
test eax, eax
jne 0x4075ab
lea eax, [ebp - 0x264]
push eax
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_class_Cmm::CStringT_wchar_t__const__]
push esi
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_wchar_t_const__]
push 0x41c4a4
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_class_Cmm::CStringT_wchar_t__const__]
call fcn.00406db7
test eax, eax
je 0x4075e3
push esi
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_wchar_t_const__]
push str.uploadCrashDump
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_char_const__]
call fcn.00407004
test eax, eax
je 0x40760a
push esi
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_wchar_t_const__]
push str.uploadFeedback
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_class_Cmm::CStringT_wchar_t_____thiscall_Cmm::CStringT_wchar_t_::operator_char_const__]
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public:_wchar_t_const____thiscall_Cmm::CStringT_wchar_t_::operator_wchar_t_const__void_const]
push eax
push 1
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov dword [edi], eax
test eax, eax
je 0x407681
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x407681
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CStringT_wchar_t_::destructor_void_]
lea ecx, [ebp - 0x264]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CStringT_wchar_t_::destructor_void_]
xor ebx, ebx
inc ebx
lea ecx, [ebp - 0x2b4]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CStringT_wchar_t_::destructor_void_]
lea ecx, [ebp - 0x280]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CFileName::destructor_void_]
mov eax, ebx
call fcn.0040e603
ret 4
lea ecx, [ebp - 0x22c]
call fcn.00407115
jmp 0x40734a
lea ecx, [ebp - 0x248]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CStringT_wchar_t_::destructor_void_]
lea ecx, [ebp - 0x264]
call dword [sym.imp.Cmmlib.dll_public_virtual:_void___thiscall_Cmm::CStringT_wchar_t_::destructor_void_]
jmp 0x40764f