Function at 0x412970
Capabilities:
Create thread
Terminate process

Disassembly:
push esi
push edi
call fcn.00411f80
call fcn.00402020
mov eax, dword [esp + 0xc]
mov edi, dword [sym.imp.SHLWAPI.dll_PathFindFileNameA]
push str.Start__
push 0x28
push str..MaWebDRMAgent.cpp
mov dword [0x70adb4], eax
call edi
mov ecx, eax
mov esi, str.WinMain
call fcn.00401070
add esp, 8
call fcn.00413b90
test eax, eax
jne 0x4129b8
push eax
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov esi, dword [sym.imp.KERNEL32.dll_CreateMutexA]
push str.AF7F2046_43AC_4d2e_BA38_8A7BEDB392A5_WEBDRMNOAX
push 1
push 0
call esi
mov dword [0x70bfb0], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp dword [0x70bfb0], 0
jne 0x412a19
push str.g_hMutex_is_NULL__exit
push 0x31
push str..MaWebDRMAgent.cpp
call edi
mov ecx, eax
mov esi, str.WinMain
call fcn.00401070
add esp, 8
call fcn.00401c80
cmp eax, 1
jne 0x412a11
mov ecx, dword [0x70ad80]
push ecx
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp eax, 0xb7
jne 0x412a62
push str.g_hMutext_is_ERROR_ALREADY_EXISTS__exit
push 0x37
push str..MaWebDRMAgent.cpp
call edi
mov ecx, eax
mov esi, str.WinMain
call fcn.00401070
mov edx, dword [0x70bfb0]
add esp, 8
push edx
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
mov eax, dword [0x70bfb0]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
call fcn.00401c80
cmp eax, 1
jne 0x412a11
jmp 0x412a04
push 1
call fcn.00401320
push str.AF7F2046_43AC_4d2e_BA38_8A7BEDB392A5_CRISEC
push 0
push 0
call esi
push 0
push 0
push 0
push 0x4152c0
push 0
push 0
mov dword [0x70bfb8], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x413210
push 0
push 0
mov dword [0x70bfb4], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x412fd0
push 0
push 0
mov dword [0x70bfc0], eax
call sub.MSVCR90.dll__beginthreadex
add esp, 0x48
push 0
push 0
push 0
push 0x413890
push 0
push 0
mov dword [0x70bfbc], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x4130f0
push 0
push 0
mov dword [0x70bfc4], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x4143f0
push 0
push 0
mov dword [0x70bfd8], eax
call sub.MSVCR90.dll__beginthreadex
add esp, 0x48
push 0
push 0
push 0
push 0x412c30
push 0
push 0
mov dword [0x70bfe0], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x412ce0
push 0
push 0
mov dword [0x70bfc8], eax
call sub.MSVCR90.dll__beginthreadex
push 0
push 0
push 0
push 0x412d90
push 0
push 0
mov dword [0x70bfcc], eax
call sub.MSVCR90.dll__beginthreadex
add esp, 0x48
push 0
push 0
push 0
push 0x412e90
push 0
push 0
mov dword [0x70bfd0], eax
call sub.MSVCR90.dll__beginthreadex
add esp, 0x18
push 0xffffffffffffffff
push 0
push 0x70bfc8
push 4
mov dword [0x70bfd4], eax
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
test eax, eax
jne 0x412b9d
push str.WAIT_OBJECT_0_____
push 0x54
jmp 0x412bc5
cmp eax, 1
jne 0x412bab
push str.WAIT_OBJECT_1_____
push 0x55
jmp 0x412bc5
cmp eax, 2
jne 0x412bb9
push str.WAIT_OBJECT_2_____
push 0x56
jmp 0x412bc5
cmp eax, 3
jne 0x412bdb
push str.WAIT_OBJECT_3_____
push 0x57
push str..MaWebDRMAgent.cpp
call edi
mov ecx, eax
mov esi, str.WinMain
call fcn.00401070
add esp, 8
call fcn.00413fc0
push 0
call fcn.00401320
call fcn.00401c80
cmp eax, 1
jne 0x412bfe
mov edx, dword [0x70ad80]
push edx
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
push str.End__
push 0x5e
push str..MaWebDRMAgent.cpp
call edi
mov ecx, eax
mov esi, str.WinMain
call fcn.00401070
add esp, 8
pop edi
xor eax, eax
pop esi
ret 0x10