Function at 0x100af310
Capabilities:
Link many functions at runtime
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x514
mov eax, dword [0x100fa040]
xor eax, esp
mov dword [esp + 0x510], eax
mov eax, dword [0x102c6f74]
push ebx
push esi
push edi
test al, 1
je 0x100af350
push 0x102c6f75
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
test eax, eax
je 0x100af784
mov eax, dword [0x102c6f74]
test al, 2
je 0x100af395
push 0x102c6fb5
lea eax, [esp + 0x14]
push str.XTEAM_MAIN_10405__s
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
lea eax, [esp + 0x10]
push eax
push 0
push 0x1f0001
call dword [sym.imp.KERNEL32.dll_OpenMutexA]
test eax, eax
jne 0x100af473
lea eax, [esp + 0x10]
push eax
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
cmp dword [0x102c714c], 0
je 0x100af47b
push 0x104
lea eax, [esp + 0x414]
push 0
push eax
call fcn.100c2d20
add esp, 0xc
lea eax, [esp + 0x410]
push 0x104
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x100af473
lea ecx, [esp + 0x410]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100af3e0
sub ecx, edx
test ecx, ecx
jle 0x100af41d
nop dword [eax]
cmp byte [esp + ecx + 0x410], 0x5c
je 0x100af401
dec ecx
test ecx, ecx
jg 0x100af3f0
jmp 0x100af41d
lea eax, [esp + 0x411]
add eax, ecx
push eax
push 0x104
push 0x108a3b58
call fcn.100c9f6b
add esp, 0xc
push 0x102c704b
push 0x108a3b58
call fcn.100cacd7
add esp, 8
test eax, eax
jne 0x100af473
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c704b
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af45f
mov eax, dword [0x102c714c]
cmp eax, dword [esp + 0xc]
je 0x100af47b
push 0x10
push str.Error
push str.Main.exe_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
cmp dword [0x102c7150], 0
mov esi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
je 0x100af4f8
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c706b
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af55f
mov eax, dword [0x102c7150]
cmp eax, dword [esp + 0xc]
jne 0x100af55f
push 0x102c706b
call esi
test eax, eax
jne 0x100af4ea
push 0x10
push str.Error
push str.Plugin1_load_error_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af4f8
call eax
cmp dword [0x102c7154], 0
je 0x100af589
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c708b
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af5f0
mov eax, dword [0x102c7154]
cmp eax, dword [esp + 0xc]
jne 0x100af5f0
push 0x102c708b
call esi
test eax, eax
jne 0x100af57b
push 0x10
push str.Error
push str.Plugin2_load_error_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Plugin1_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af589
call eax
cmp dword [0x102c7158], 0
je 0x100af61a
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c70ab
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af681
mov eax, dword [0x102c7158]
cmp eax, dword [esp + 0xc]
jne 0x100af681
push 0x102c70ab
call esi
test eax, eax
jne 0x100af60c
push 0x10
push str.Error
push str.Plugin3_load_error_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Plugin2_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af61a
call eax
cmp dword [0x102c715c], 0
je 0x100af6ab
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c70cb
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af712
mov eax, dword [0x102c715c]
cmp eax, dword [esp + 0xc]
jne 0x100af712
push 0x102c70cb
call esi
test eax, eax
jne 0x100af69d
push 0x10
push str.Error
push str.Plugin4_load_error_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Plugin3_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af6ab
call eax
cmp dword [0x102c7160], 0
je 0x100af73c
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c70eb
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af78c
mov eax, dword [0x102c7160]
cmp eax, dword [esp + 0xc]
jne 0x100af78c
push 0x102c70eb
call esi
test eax, eax
jne 0x100af72e
push 0x10
push str.Error
push str.Plugin5_load_error_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Plugin4_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af73c
call eax
cmp dword [0x102c7164], 0
je 0x100af7b6
lea ecx, [esp + 0x10]
call fcn.10004ad0
push ecx
lea eax, [esp + 0x10]
push eax
push 0x102c710b
lea ecx, [esp + 0x1c]
call fcn.10004c00
test al, al
je 0x100af835
mov eax, dword [0x102c7164]
cmp eax, dword [esp + 0xc]
jne 0x100af835
push 0x102c710b
call esi
test eax, eax
jne 0x100af7a8
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Plugin5_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x100f10b8
push eax
call edi
test eax, eax
je 0x100af7b6
call eax
call fcn.100af870
cmp dword [0x102c6fd8], 0
jbe 0x100af851
xor esi, esi
push esi
push 2
call dword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov edi, eax
cmp edi, 0xffffffff
je 0x100af851
mov ebx, dword [sym.imp.KERNEL32.dll_Process32Next]
lea eax, [esp + 0x10]
push eax
push edi
mov dword [esp + 0x18], 0x128
call ebx
cmp eax, 1
jne 0x100af81e
lea eax, [esp + 0x34]
push 0x102c704b
push eax
call fcn.100cacd7
add esp, 8
lea ecx, [esi + 1]
test eax, eax
lea eax, [esp + 0x10]
cmovne ecx, esi
push eax
push edi
mov esi, ecx
call ebx
cmp eax, 1
je 0x100af7f5
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp esi, dword [0x102c6fd8]
jbe 0x100af851
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x10
push str.Error
push str.Camera_CRC_error_
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, dword [esp + 0x51c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100c0b64
mov esp, ebp
pop ebp
ret