Function at 0x41b280
Capabilities:
Accept command line arguments
Check mutex on windows
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4fa13c
mov eax, dword fs:[0]
push eax
sub esp, 0x790
mov eax, dword [0x548a04]
xor eax, ebp
mov dword [ebp - 0x5e8], eax
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x778], ecx
push str.TESTAPP_MUTEX_NAME
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x41b33c
push 0x40
push 0x500f08
push 0x3ef
lea eax, [ebp - 0x754]
push eax
call fcn.00427650
add esp, 8
mov dword [ebp - 0x77c], eax
mov ecx, dword [ebp - 0x77c]
mov dword [ebp - 0x780], ecx
mov dword [ebp - 4], 0
mov ecx, dword [ebp - 0x780]
call fcn.00402880
push eax
mov ecx, dword [ebp - 0x778]
call fcn.004b9628
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x754]
call fcn.00402860
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
push 0
call fcn.004da3fb
push 0x10
call fcn.00406ab0
mov dword [ebp - 0x75c], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x75c], 0
je 0x41b36c
mov ecx, dword [ebp - 0x75c]
call fcn.0040ec90
mov dword [ebp - 0x784], eax
jmp 0x41b376
mov dword [ebp - 0x784], 0
mov edx, dword [ebp - 0x784]
mov dword [ebp - 0x758], edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x778]
mov ecx, dword [ebp - 0x758]
mov dword [eax + 0x90], ecx
mov ecx, dword [ebp - 0x778]
call fcn.0041d150
lea ecx, [ebp - 0x5e0]
call fcn.004162f0
mov dword [ebp - 4], 2
mov edx, dword [0x561d48]
push edx
mov eax, dword [0x561d44]
push eax
lea ecx, [ebp - 0x5e0]
call section..text
test eax, eax
jne 0x41b3df
mov ecx, dword [ebp - 0x778]
call fcn.0041cc30
lea ecx, [ebp - 0x5e0]
call fcn.004018c0
test eax, eax
je 0x41b41c
push str._help
lea ecx, [ebp - 0x5e0]
call fcn.00401270
movzx ecx, al
test ecx, ecx
jne 0x41b41c
push 0x500f2c
lea ecx, [ebp - 0x5e0]
call fcn.00401270
movzx edx, al
test edx, edx
je 0x41b427
mov ecx, dword [ebp - 0x778]
call fcn.0041cc30
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x760], esp
lea eax, [ebp - 0x5e0]
push eax
call fcn.00416330
mov dword [ebp - 0x788], eax
mov ecx, dword [ebp - 0x778]
call fcn.0041c530
mov ecx, dword [ebp - 0x778]
add ecx, 0x244
push ecx
mov edx, esp
mov dword [ebp - 0x764], esp
push ecx
mov ecx, edx
call fcn.00404660
mov dword [ebp - 0x78c], eax
mov eax, dword [ebp - 0x78c]
mov dword [ebp - 0x790], eax
mov byte [ebp - 4], 3
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x768], esp
lea edx, [ebp - 0x5e0]
push edx
call fcn.00416330
mov dword [ebp - 0x794], eax
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x778]
call fcn.0041cdd0
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x76c], esp
lea eax, [ebp - 0x5e0]
push eax
call fcn.00416330
mov dword [ebp - 0x798], eax
mov ecx, dword [ebp - 0x778]
call fcn.0041cac0
sub esp, 0x20
mov ecx, esp
mov dword [ebp - 0x770], esp
lea edx, [ebp - 0x5e0]
push edx
call fcn.00416330
mov dword [ebp - 0x79c], eax
mov ecx, dword [ebp - 0x778]
call fcn.0041c6e0
mov dword [ebp - 0x5bc], 1
lea eax, [ebp - 0x5bc]
push eax
call fcn.0041c310
add esp, 4
mov byte [ebp - 0x5e1], al
cmp dword [ebp - 0x5bc], 0
jl 0x41b5f9
movzx ecx, byte [ebp - 0x5e1]
test ecx, ecx
jne 0x41b5f7
push 0x104
lea edx, [ebp - 0x6f4]
push edx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x41b5f0
mov dword [ebp - 0x730], 0x3c
push 0x38
push 0
lea eax, [ebp - 0x72c]
push eax
call fcn.004d9ad0
add esp, 0xc
mov dword [ebp - 0x724], str.runas
lea ecx, [ebp - 0x6f4]
mov dword [ebp - 0x720], ecx
mov dword [ebp - 0x714], 1
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
mov dword [ebp - 0x71c], eax
lea edx, [ebp - 0x730]
push edx
call dword [sym.imp.SHELL32.dll_ShellExecuteExA]
test eax, eax
jne 0x41b5e7
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x734], eax
cmp dword [ebp - 0x734], 0x4c7
jne 0x41b5e5
push 0
push 0x500e13
push str.You_should_have_administrator_rights_to_launch_this_application
mov ecx, dword [ebp - 0x778]
call fcn.004b9628
push 1
call fcn.004da3fb
jmp 0x41b5ee
push 0
call fcn.004da3fb
jmp 0x41b5f7
push 1
call fcn.004da3fb
jmp 0x41b600
push 1
call fcn.004da3fb
mov ecx, dword [ebp - 0x778]
call fcn.004b799d
mov dword [ebp - 0x5c0], eax
mov ecx, dword [ebp - 0x778]
call fcn.0041bb40
mov dword [ebp - 0x5b8], eax
mov dword [ebp - 0x738], 0
jmp 0x41b63d
mov eax, dword [ebp - 0x738]
add eax, 1
mov dword [ebp - 0x738], eax
mov ecx, dword [ebp - 0x5b8]
call fcn.0040a5d0
cmp dword [ebp - 0x738], eax
jge 0x41b67d
mov ecx, dword [ebp - 0x738]
push ecx
mov ecx, dword [ebp - 0x5b8]
call fcn.00411920
mov ecx, eax
call fcn.00418b20
push eax
mov ecx, dword [ebp - 0x778]
add ecx, 0x94
call fcn.00411a00
jmp 0x41b62e
push 0x3023
mov ecx, dword [ebp - 0x778]
call fcn.0040b960
mov ecx, eax
call fcn.004bdb23
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x41b6a7
push 0
mov ecx, dword [ebp - 0x10]
call fcn.004bdd1d
mov dword [ebp - 0x774], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x5e0]
call fcn.00416310
mov eax, dword [ebp - 0x774]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
mov ecx, dword [ebp - 0x5e8]
xor ecx, ebp
call fcn.004d91e2
mov esp, ebp
pop ebp
ret