Function at 0x49b260
Capabilities:
Check mutex on windows
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x44
push ebx
push esi
push edi
push 0x8003
call dword [sym.imp.KERNEL32.dll_SetErrorMode]
push 0xffffffffffffffff
call sub.IMM32.dll_ImmDisableIME
call fcn.00489be0
mov eax, dword [0x4ea5dc]
cmp eax, 2
je 0x49b292
cmp eax, 3
jne 0x49b2d3
call fcn.00401bb0
mov esi, eax
cmp byte [esi + 0x270], 0
jne 0x49b2a7
call fcn.00401860
xor ebx, ebx
cmp dword [esi], ebx
je 0x49b2c8
mov eax, dword [esi + 0x214]
cmp eax, ebx
je 0x49b2c8
push ebx
call eax
add esp, 4
mov dword [esi + 0x274], eax
cmp eax, 1
je 0x49b2d5
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
xor ebx, ebx
push str.LocalQ360SkinView
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov esi, eax
cmp esi, ebx
je 0x49b2fd
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x49b322
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push ebx
push 0x4b01f8
call dword [sym.imp.USER32.dll_FindWindowW]
push ebx
push ebx
push 0x62b
push eax
call dword [sym.imp.USER32.dll_PostMessageW]
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
call dword [sym.imp.SHELL32.dll_IsUserAnAdmin]
push 0x4b0224
lea esi, [esp + 0x14]
mov dword [0x4e9898], eax
call fcn.004016d0
push eax
lea eax, [esp + 0x14]
push eax
call fcn.0040f510
mov eax, dword [esp + 0x1c]
add eax, 0xfffffff0
add esp, 0xc
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x49b369
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [esp + 0xc]
call fcn.0040f130
test eax, eax
je 0x49b39b
mov ecx, dword [esp + 0xc]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp eax, ebx
je 0x49b39b
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.Initialize
push eax
call esi
cmp eax, ebx
je 0x49b3a1
call eax
jmp 0x49b3a1
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov eax, dword [esp + 0xc]
add eax, 0xfffffff0
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x49b3c1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp + 0x10]
push ecx
call fcn.0049b1d0
add esp, 4
cmp al, 1
jne 0x49b3f9
push 0x4b0254
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp eax, ebx
je 0x49b3ee
push 0x4b0274
push eax
call esi
cmp eax, ebx
je 0x49b3ee
call eax
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push ebx
call dword [sym.imp.ole32.dll_CoInitialize]
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea edx, [esp + 0x10]
push edx
mov dword [esp + 0x14], 8
mov dword [esp + 0x18], 0x404
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call fcn.0042dbc0
lea eax, [esp + 0x18]
push eax
mov dword [esp + 0x1c], vtable.WTL::CMessageLoop.0
mov dword [esp + 0x20], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x34], ebx
call fcn.0042db30
call fcn.0042d930
call fcn.00473cd0
test eax, eax
jne 0x49b493
push 0x4b0280
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp eax, ebx
je 0x49b47f
push 0x4b02a0
push eax
call esi
cmp eax, ebx
je 0x49b47f
call eax
lea esi, [esp + 0x18]
call fcn.00428040
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x178
call fcn.004463b6
add esp, 4
cmp eax, ebx
je 0x49b4ac
push eax
call fcn.0046ff30
mov ebx, eax
lea esi, [ebx + 0x2c]
mov edi, esi
mov dword [0x4eae10], ebx
call fcn.00428080
test eax, eax
jne 0x49b4f5
push 0x4b02ac
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test eax, eax
je 0x49b4e1
push 0x4b02cc
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x49b4e1
call eax
lea esi, [esp + 0x18]
call fcn.00428040
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov ecx, dword [ebx + 0x30]
push 5
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
lea edi, [esp + 0x18]
call fcn.00428500
xor edi, edi
mov dword [0x4eae10], edi
mov edx, dword [esi]
mov ebx, eax
mov eax, dword [edx + 4]
push 1
mov ecx, esi
call eax
mov dword [0x4eae28], edi
mov dword [0x4eae24], edi
call fcn.004283f0
call fcn.00428390
call dword [sym.imp.ole32.dll_CoUninitialize]
push str.CrashReport.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
cmp eax, edi
je 0x49b55c
push str.OnExiting
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, edi
je 0x49b55c
call eax
lea esi, [esp + 0x18]
call fcn.00428040
pop edi
pop esi
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
ret 0x10