Function at 0x406900
Capabilities:
Check mutex on windows
Check os version
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x150
mov eax, dword [0x41fea0]
xor eax, ebp
mov dword [ebp - 4], eax
push str.XXXXXX_EVERYLITTLEP
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [0x4211d4], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
je 0x406c53
push ebx
push esi
push edi
call fcn.004035c0
push 0
mov dword [ebp - 0xe0], 0x30
mov dword [ebp - 0xdc], 0x40
mov dword [ebp - 0xd8], 0x405850
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd0], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
xorps xmm0, xmm0
mov dword [ebp - 0xcc], eax
movdqu xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb8], str.Lucky_Dog
lea eax, [ebp - 0x12c]
movdqu xmm0, xmmword [ebp - 0xe0]
mov dword [ebp - 0xb4], 0
push eax
movdqu xmmword [ebp - 0x12c], xmm0
movdqu xmm0, xmmword [ebp - 0xd0]
movdqu xmmword [ebp - 0x11c], xmm0
movdqu xmm0, xmmword [ebp - 0xc0]
movdqu xmmword [ebp - 0x10c], xmm0
call dword [sym.imp.USER32.dll_RegisterClassExA]
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0x10
call esi
push 0x11
mov ebx, eax
call esi
mov ecx, dword [0x4213e8]
mov edi, eax
mov esi, dword [sym.imp.USER32.dll_SetRect]
test ecx, ecx
jne 0x406a1b
push 0x32a
push 0x348
push 0
push 0
lea eax, [ebp - 0xb0]
push eax
call esi
mov ecx, dword [0x4213e8]
cmp ecx, 1
jne 0x406a3d
push 0x21c
push 0x230
push 0
push 0
lea eax, [ebp - 0xb0]
push eax
call esi
mov ecx, dword [0x4213e8]
cmp ecx, 2
jne 0x406a5f
push 0x168
push 0x174
push 0
push 0
lea eax, [ebp - 0xb0]
push eax
call esi
mov ecx, dword [0x4213e8]
cmp ecx, 3
jne 0x406a7b
push 0x10e
push 0x118
push 0
push 0
lea eax, [ebp - 0xb0]
push eax
call esi
lea eax, [ebp - 0x150]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
lea eax, [ebp - 0xa0]
mov dword [ebp - 0xa0], 0x9c
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
cmp dword [ebp - 0x9c], 6
ja 0x406af3
cmp dword [ebp - 0x98], 1
ja 0x406af3
push str.EveryLittlePCore9.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x4211dc], eax
test eax, eax
jne 0x406ae2
push 0x10
push str.Lucky_Dog
push str.Failed_to_init_core9_
push dword [0x4211d0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x406c50
mov ecx, 0x80088
mov dword [0x4213dc], 0
jmp 0x406b33
push str.EveryLittlePCore11.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x4211dc], eax
test eax, eax
jne 0x406b24
push 0x10
push str.Lucky_Dog
push str.Failed_to_init_core11_
push dword [0x4211d0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x406c50
mov ecx, 0x2000a8
mov dword [0x4213dc], 1
mov eax, dword [0x4213e4]
mov esi, dword [ebp - 0xa4]
cmp eax, 0xffffffff
jne 0x406b47
sub edi, esi
jmp 0x406b49
mov edi, eax
mov eax, dword [0x4213e0]
mov edx, dword [ebp - 0xa8]
cmp eax, 0xffffffff
jne 0x406b5d
sub ebx, edx
jmp 0x406b5f
mov ebx, eax
push 0
push dword [ebp - 0x118]
push 0
push 0
push esi
push edx
push edi
push ebx
push 0x80000000
push str.Lucky_Dog
push str.Lucky_Dog
push ecx
call dword [sym.imp.USER32.dll_CreateWindowExA]
mov ecx, eax
mov dword [0x4211d0], ecx
test ecx, ecx
jne 0x406ba9
push 0x10
push str.Lucky_Dog
push str.Failed_to_create_window_
push eax
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x406c50
mov eax, dword [ebp - 0x118]
push 0xa
push ecx
mov dword [0x4211d8], eax
call dword [sym.imp.USER32.dll_ShowWindow]
push dword [0x4211d0]
call dword [sym.imp.USER32.dll_UpdateWindow]
call fcn.00403a40
test eax, eax
jne 0x406bec
push 0x10
push str.Lucky_Dog
push str.Failed_to_instance_application_
push dword [0x4211d0]
call dword [sym.imp.USER32.dll_MessageBoxA]
jmp 0x406c50
push 0
push 0x64
push 0x3e9
push dword [0x4211d0]
call dword [sym.imp.USER32.dll_SetTimer]
mov esi, dword [sym.imp.USER32.dll_PeekMessageA]
mov edi, dword [sym.imp.USER32.dll_TranslateMessage]
mov ebx, dword [sym.imp.USER32.dll_DispatchMessageA]
push 1
push 0
push 0
push 0
lea eax, [ebp - 0xfc]
push eax
call esi
test eax, eax
je 0x406c3c
lea eax, [ebp - 0xfc]
push eax
call edi
lea eax, [ebp - 0xfc]
push eax
call ebx
jmp 0x406c42
call dword [0x421944]
cmp dword [ebp - 0xf8], 0x12
jne 0x406c13
call fcn.00403570
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor eax, eax
xor ecx, ebp
call fcn.00407792
mov esp, ebp
pop ebp
ret 0x10