Function at 0x401040
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x9c
mov eax, dword [0x42b7e8]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [ebp - 0x7c], eax
xor edi, edi
xor ecx, ecx
push 7
mov eax, str.turbine
lea esi, [ebp - 0x74]
mov dword [ebp - 0x80], edi
mov dword [ebp - 0x60], 7
mov dword [ebp - 0x64], edi
mov word [ebp - 0x74], cx
call fcn.00401570
lea edx, [ebp - 0x78]
push edx
mov dword [ebp - 0x78], edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ebx, eax
cmp ebx, edi
je 0x401180
cmp dword [ebp - 0x78], 1
jle 0x401172
mov eax, dword [ebx + 4]
xor ecx, ecx
mov word [ebp - 0x20], cx
mov ecx, eax
mov dword [ebp - 0xc], 7
mov dword [ebp - 0x10], edi
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, di
jne 0x4010c0
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x20]
call fcn.00401570
mov eax, dword [ebp - 0x10]
push str.drupaldev
mov edi, 9
mov ecx, esi
call fcn.00401500
test eax, eax
je 0x401142
mov eax, dword [ebp - 0x10]
push str.demo
mov edi, 4
mov ecx, esi
call fcn.00401500
test eax, eax
je 0x401142
mov eax, dword [ebp - 0x10]
push str.integration
mov edi, 0xb
mov ecx, esi
call fcn.00401500
test eax, eax
je 0x401142
mov esi, str.turbine
lea ecx, [ebp - 0x20]
call fcn.004013d0
test eax, eax
je 0x401142
mov esi, 0x426354
lea ecx, [ebp - 0x20]
call fcn.004013d0
test eax, eax
jne 0x401153
push 0
lea edx, [ebp - 0x20]
push edx
or eax, 0xffffffff
lea ecx, [ebp - 0x74]
call fcn.00401400
mov esi, 8
cmp dword [ebp - 0xc], esi
jb 0x401177
mov eax, dword [ebp - 0x20]
push eax
call fcn.0040fb61
add esp, 4
push ebx
call dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x401185
mov esi, 8
push ebx
call dword [sym.imp.KERNEL32.dll_LocalFree]
jmp 0x401185
mov esi, 8
lea ecx, [ebp - 0x3c]
push ecx
lea ebx, [ebp - 0x74]
call fcn.00401960
mov ecx, eax
add esp, 4
lea eax, [ebp - 0x58]
call fcn.00401a10
cmp dword [ebp - 0x28], esi
jb 0x4011af
mov edx, dword [ebp - 0x3c]
push edx
call fcn.0040fb61
add esp, 4
push 0x54
call fcn.0040fbbd
mov edi, eax
xor ebx, ebx
add esp, 4
cmp edi, ebx
je 0x401234
xor eax, eax
mov word [ebp - 0x3c], ax
push 0x1c
mov eax, str.The_Lord_of_the_Rings_Online
lea esi, [ebp - 0x3c]
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x2c], ebx
call fcn.00401570
cmp dword [ebp - 0x44], 8
mov eax, dword [ebp - 0x58]
jae 0x4011ec
lea eax, [ebp - 0x58]
xor ecx, ecx
mov word [ebp - 0x20], cx
mov ecx, eax
mov dword [ebp - 0xc], 7
mov dword [ebp - 0x10], ebx
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
cmp dx, bx
jne 0x401201
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [ebp - 0x20]
call fcn.00401570
lea edx, [ebp - 0x3c]
push edx
mov edx, dword [ebp - 0x7c]
push edi
mov ecx, esi
mov ebx, 3
call fcn.00402150
mov edi, eax
lea esi, [ebx + 5]
jmp 0x401239
mov ebx, dword [ebp - 0x80]
xor edi, edi
test bl, 2
je 0x401266
and ebx, 0xfffffffd
cmp dword [ebp - 0xc], esi
jb 0x401252
mov eax, dword [ebp - 0x20]
push eax
call fcn.0040fb61
add esp, 4
xor ecx, ecx
mov dword [ebp - 0xc], 7
mov dword [ebp - 0x10], 0
mov word [ebp - 0x20], cx
test bl, 1
je 0x401290
cmp dword [ebp - 0x28], esi
jb 0x40127c
mov edx, dword [ebp - 0x3c]
push edx
call fcn.0040fb61
add esp, 4
xor eax, eax
mov dword [ebp - 0x28], 7
mov dword [ebp - 0x2c], 0
mov word [ebp - 0x3c], ax
mov ebx, dword [sym.imp.USER32.dll_GetMessageW]
push 0
push 0
push 0
lea ecx, [ebp - 0x9c]
push ecx
call ebx
test eax, eax
je 0x401308
mov esi, dword [sym.imp.USER32.dll_TranslateMessage]
nop
lea edx, [ebp - 0x9c]
push edx
call esi
mov eax, dword [ebp - 0x98]
lea ecx, [eax - 0x100]
cmp ecx, 9
ja 0x4012e3
mov edx, dword [ebp - 0x90]
mov ecx, dword [ebp - 0x94]
push edx
mov edx, dword [edi + 8]
push ecx
push eax
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
lea eax, [ebp - 0x9c]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageW]
push 0
push 0
push 0
lea ecx, [ebp - 0x9c]
push ecx
call ebx
test eax, eax
jne 0x4012b0
mov esi, 8
cmp dword [ebp - 0x44], esi
jb 0x401319
mov edx, dword [ebp - 0x58]
push edx
call fcn.0040fb61
add esp, 4
xor eax, eax
cmp dword [ebp - 0x60], esi
pop edi
pop esi
mov dword [ebp - 0x44], 7
mov dword [ebp - 0x48], 0
mov word [ebp - 0x58], ax
pop ebx
jb 0x401341
mov ecx, dword [ebp - 0x74]
push ecx
call fcn.0040fb61
add esp, 4
mov ecx, dword [ebp - 4]
xor ecx, ebp
xor eax, eax
call fcn.0040f600
mov esp, ebp
pop ebp
ret 0x10