Function at 0x407350
Capabilities:
Get session user name

Disassembly:
push 0x2b0
mov eax, 0x40f716
call fcn.0040e688
mov edi, dword [0x41c4a0]
mov ecx, 0x41e49c
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 0x407382
xor eax, eax
inc eax
jmp 0x407699
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 0x4074e1
push str.runaszvideo
lea ecx, [ebp - 0x298]
call fcn.00407168
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.00407145
push str.TRUE
lea ecx, [ebp - 0x22c]
call fcn.004072c8
test al, al
jne 0x4076a1
push str.multipt
lea ecx, [ebp - 0x260]
call fcn.00407168
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 0x40746b
mov edx, dword [ebp - 0x218]
cmp edx, 0x10
jb 0x40743b
mov ecx, dword [ebp - 0x22c]
inc edx
call fcn.004047a8
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.00407145
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 2
call fcn.00407145
push str.TRUE
lea ecx, [ebp - 0x22c]
call fcn.004072c8
test al, al
jne 0x4076a1
call fcn.00406a38
test eax, eax
je 0x4074c5
call fcn.00406de7
test eax, eax
jne 0x4074c5
call fcn.00406fd0
test eax, eax
jne 0x4074c5
call fcn.00407034
test eax, eax
je 0x4076a1
call fcn.00406f4c
test eax, eax
jne 0x4076a1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x22c]
call fcn.00407145
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 0x41e49c
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 0x40767c
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 0x407591
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, 0x414a4c
test eax, eax
jne 0x4075db
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 0x41e49c
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.00406de7
test eax, eax
je 0x407613
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.00407034
test eax, eax
je 0x40763a
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 0x4076b1
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x4076b1
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.0040e643
ret 4
lea ecx, [ebp - 0x22c]
call fcn.00407145
jmp 0x40737a
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 0x40767f