Function at 0x431e90
Capabilities:
Check if file exists
Check mutex and terminate process on windows
Check mutex on windows
Create process on windows
Create process suspended
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1a64
call fcn.004cc440
mov eax, dword [0x594584]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0x10]
push edi
push str.Global77432DED_AD78_4514_85BD_C276004AF6E3
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexW]
mov edi, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x432468
cmp eax, 5
je 0x432468
test edi, edi
je 0x43249d
push 0
push str.anysearchmain
lea ecx, [ebp - 0x19f9]
call fcn.0042a520
call dword [sym.imp.SHELL32.dll_IsUserAnAdmin]
test eax, eax
jne 0x431f1f
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
call fcn.0042c1f0
add esp, 4
lea ecx, [ebp - 0x19f9]
call fcn.0040ebf0
jmp 0x43249d
push 0
call dword [sym.imp.ole32.dll_OleInitialize]
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
call dword [sym.imp.COMCTL32.dll_InitCommonControls]
push str.Anything.log
call fcn.0042dc90
mov ecx, dword [0x59a860]
add esp, 4
test ecx, ecx
jne 0x431f9a
push 0x594020
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x59a860], 0
jne 0x431f89
push 0x34
call fcn.004cbef6
add esp, 4
test eax, eax
je 0x431f77
mov ecx, eax
call fcn.0044d510
jmp 0x431f79
xor eax, eax
xor edx, edx
lea ecx, [ebp - 0x1a00]
lock or dword [ecx], edx
mov dword [0x59a860], eax
push 0x594020
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [0x59a860]
push reloc.OLEAUT32.dll_SysReAllocString
push str.SOFTWAREAnything
push 0x54ed08
call fcn.0044e430
lea eax, [ebp - 0x1a00]
push eax
lea ecx, [ebp - 0x19fa]
call fcn.00431ba0
push 0
push 0
push 0
push 0
push dword [eax]
lea eax, [ebp - 0x1254]
push eax
call fcn.0044e580
mov edx, dword [ebp - 0x1a00]
add esp, 0x18
add edx, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x431ff7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00415e60
cmp dword [ebp - 0x1240], 8
lea ecx, [ebp - 0x1254]
cmovae ecx, dword [ebp - 0x1254]
push ecx
push str.main
mov ecx, eax
call fcn.0044cc50
push ebx
call fcn.00457750
lea eax, [ebp - 0x12d8]
push eax
call fcn.00452da0
add esp, 8
lea ecx, [ebp - 0x12d8]
push str.skin
call fcn.0044f560
lea ecx, [ebp - 0x12d8]
call fcn.0040d220
push eax
call fcn.004579d0
push 1
push str.Anything.zip
call fcn.00457a90
push str.AnythingTray.exe
call fcn.0042d510
mov ebx, dword [sym.imp.KERNEL32.dll_CloseHandle]
add esp, 0x10
test al, al
jne 0x43229b
push 0x208
lea eax, [ebp - 0x20c]
push 0
push eax
call fcn.0050f150
add esp, 0xc
push str.AnythingTray.exe
call fcn.0042d770
push eax
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
lea eax, [ebp - 0x20c]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x43229b
xorps xmm0, xmm0
mov dword [ebp - 0x1a58], 0x44
lea eax, [ebp - 0x1a58]
movlpd qword [ebp - 0x1a54], xmm0
push eax
movlpd qword [ebp - 0x1a4c], xmm0
movlpd qword [ebp - 0x1a44], xmm0
movlpd qword [ebp - 0x1a3c], xmm0
movlpd qword [ebp - 0x1a34], xmm0
movlpd qword [ebp - 0x1a2c], xmm0
movlpd qword [ebp - 0x1a24], xmm0
movlpd qword [ebp - 0x1a1c], xmm0
call dword [sym.imp.KERNEL32.dll_GetStartupInfoW]
mov eax, 4
mov dword [ebp - 0x1a2c], 1
push 0x1000
mov word [ebp - 0x1a28], ax
xorps xmm0, xmm0
lea eax, [ebp - 0x120c]
push 0
push eax
movups xmmword [ebp - 0x121c], xmm0
call fcn.0050f150
push str.search
lea eax, [ebp - 0x20c]
push eax
lea eax, [ebp - 0x120c]
push str.__s____from_s
push eax
call fcn.0042bb50
add esp, 0x1c
lea eax, [ebp - 0x121c]
push eax
lea eax, [ebp - 0x1a58]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp - 0x120c]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
je 0x43229b
push dword [ebp - 0x1218]
call ebx
push dword [ebp - 0x121c]
call ebx
call fcn.0042da80
test eax, eax
je 0x43229b
call fcn.00439f60
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
sub eax, 1
jne 0x432282
push 0x48
push str.d:jenkins.jenkinsworkspacemgame_bzysearch_searchmainquicksearch.cpp
lea ecx, [ebp - 0x123c]
mov dword [ebp - 0x122c], eax
mov dword [ebp - 0x1228], 0xf
mov byte [ebp - 0x123c], al
call fcn.0040f640
push 3
push 0x54edb0
lea ecx, [ebp - 0x1224]
mov dword [ebp - 0x1214], 0
mov dword [ebp - 0x1210], 0xf
mov byte [ebp - 0x1224], 0
call fcn.0040f640
push 0x55
lea eax, [ebp - 0x123c]
push eax
lea eax, [ebp - 0x1224]
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406f90
mov esi, eax
push str.update__exit
push esi
call fcn.00404df0
add esp, 8
call fcn.00439f60
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
lea ecx, [ebp - 0x9c]
call fcn.00408d80
lea ecx, [ebp - 0x1224]
call fcn.004079f0
lea ecx, [ebp - 0x123c]
call fcn.004079f0
push edi
call ebx
call fcn.0042f210
call dword [sym.imp.ole32.dll_CoUninitialize]
call dword [sym.imp.ole32.dll_OleUninitialize]
jmp 0x432445
call fcn.0042ea20
push 0
lea eax, [ebp - 0x1a10]
mov dword [ebp - 0x1a10], 1
push eax
lea eax, [ebp - 0x1a14]
mov dword [ebp - 0x1a0c], 0
push eax
mov dword [ebp - 0x1a08], 0
mov dword [ebp - 0x1a04], 0
call sub.gdiplus.dll_GdiplusStartup
call fcn.00439f60
push 1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
mov ecx, eax
call edx
movzx eax, al
sub eax, 1
jne 0x4323a7
push 0x48
push str.d:jenkins.jenkinsworkspacemgame_bzysearch_searchmainquicksearch.cpp
lea ecx, [ebp - 0x1224]
mov dword [ebp - 0x1214], eax
mov dword [ebp - 0x1210], 0xf
mov byte [ebp - 0x1224], al
call fcn.0040f640
push 3
push 0x54edb0
lea ecx, [ebp - 0x123c]
mov dword [ebp - 0x122c], 0
mov dword [ebp - 0x1228], 0xf
mov byte [ebp - 0x123c], 0
call fcn.0040f640
push 0x62
lea eax, [ebp - 0x1224]
push eax
lea eax, [ebp - 0x123c]
push eax
lea ecx, [ebp - 0x9c]
call fcn.00406f90
mov esi, eax
push 0x552230
push esi
call fcn.00404df0
add esp, 8
call fcn.00439f60
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x1c]
lea ecx, [ebp - 0x9c]
call fcn.00408d80
lea ecx, [ebp - 0x123c]
call fcn.004079f0
lea ecx, [ebp - 0x1224]
call fcn.004079f0
call fcn.00415e60
sub esp, 0x28
mov ecx, esp
push 0
push 0
push 1
push 0
mov dword [ecx + 0x24], 0
mov ecx, eax
push 0x54f090
call fcn.0044cca0
lea ecx, [ebp - 0x1a64]
call fcn.00450b50
push 2
lea ecx, [ebp - 0x1a64]
call fcn.00451200
lea ecx, [ebp - 0x19f8]
call fcn.00422470
movaps xmm0, xmmword [0x552280]
lea ecx, [ebp - 0x19f8]
push 0
sub esp, 0x10
mov eax, esp
push 0
push 0x86020000
push 0
push 0
movups xmmword [eax], xmm0
call fcn.00458590
lea ecx, [ebp - 0x19f8]
call fcn.004585d0
mov ecx, eax
call fcn.00455500
push edi
call ebx
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
lea ecx, [ebp - 0x19f8]
call fcn.00422a20
lea ecx, [ebp - 0x12d8]
call fcn.00407840
lea ecx, [ebp - 0x1254]
call fcn.00407a40
lea ecx, [ebp - 0x19f9]
call fcn.0040ebf0
jmp 0x43249d
test edi, edi
je 0x432473
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0
push str.any_search_main_wnd_class
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x43249d
push 0
push 0
push 0x42d
push esi
call dword [sym.imp.USER32.dll_PostMessageW]
mov ecx, dword [ebp - 4]
xor eax, eax
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004cc1ce
mov esp, ebp
pop ebp
ret 0x10