Function at 0x401c90
Capabilities:
Create process on windows
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40b511
mov eax, dword fs:[0]
push eax
mov eax, 0x12a0
call fcn.0040a0d0
mov eax, dword [0x410084]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
push 0x1fc
xor ebx, ebx
lea edx, [ebp - 0x212]
xor ecx, ecx
push ebx
push edx
mov dword [ebp - 0x12a4], eax
mov word [ebp - 0x214], cx
call fcn.00408f50
mov ecx, dword [0x423c54]
add esp, 0xc
push 0xff
lea eax, [ebp - 0x214]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0x7fe
lea eax, [ebp - 0xa12]
xor edx, edx
push ebx
push eax
mov word [ebp - 0xa14], dx
call fcn.00408f50
add esp, 0xc
push 0x400
lea ecx, [ebp - 0xa14]
push ecx
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea edx, [ebp - 0xa14]
push 0x5c
push edx
call fcn.00405969
xor ecx, ecx
mov word [eax], cx
add esp, 8
lea ecx, [ebp - 0x1284]
call section..text
mov dword [ebp - 4], ebx
mov esi, dword [0x423c70]
cmp esi, dword [0x423c74]
je 0x401e55
jmp 0x401d70
mov edi, 8
cmp dword [esi + 0x14], edi
jb 0x401d7e
mov eax, dword [esi]
jmp 0x401d80
mov eax, esi
lea edx, [ebp - 0x214]
push edx
push eax
call fcn.00405a9a
add esp, 8
test eax, eax
je 0x401da4
add esi, 0x38
cmp esi, dword [0x423c74]
jne 0x401d70
jmp 0x401e55
mov ecx, dword [ebp - 0x1284]
cmp dword [ebp - 0x1270], edi
jae 0x401db8
lea ecx, [ebp - 0x1284]
add esi, 0x1c
cmp dword [esi + 0x14], edi
jb 0x401dc4
mov eax, dword [esi]
jmp 0x401dc6
mov eax, esi
push ecx
push eax
push 0x40e20c
push str.Game
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
sub esp, 0x1c
mov edi, esp
mov dword [ebp - 0x12a8], esp
xor eax, eax
mov dword [edi + 0x14], 7
mov dword [edi + 0x10], ebx
push ebx
mov word [edi], ax
push esi
or eax, 0xffffffff
call fcn.00403510
lea esi, [ebp - 0x1230]
call fcn.004012b0
mov esi, dword [ebp - 0x1230]
mov edi, 0x10
add esp, 0x1c
cmp dword [ebp - 0x121c], edi
jae 0x401e23
lea esi, [ebp - 0x1230]
call fcn.00401210
cmp dword [ebp - 0x121c], edi
jb 0x401e3f
mov ecx, dword [ebp - 0x1230]
push ecx
call fcn.00405225
add esp, 4
mov dword [ebp - 0x121c], 0xf
mov dword [ebp - 0x1220], ebx
mov byte [ebp - 0x1230], bl
push 0x7fe
lea eax, [ebp - 0x1212]
xor edx, edx
push ebx
push eax
mov word [ebp - 0x1214], dx
call fcn.00408f50
mov eax, dword [0x423c68]
mov ecx, eax
add esp, 0xc
mov dword [ebp - 0x1238], 0xf
mov dword [ebp - 0x123c], ebx
mov byte [ebp - 0x124c], bl
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x401e93
sub ecx, esi
mov edi, ecx
lea esi, [ebp - 0x124c]
call fcn.00402d30
mov eax, esi
lea ecx, [ebp - 0x1268]
mov byte [ebp - 4], 1
call fcn.004035c0
mov esi, 8
cmp dword [eax + 0x14], esi
jb 0x401ec6
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xa14]
push ecx
lea edx, [ebp - 0x1214]
push str._s_s
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
cmp dword [ebp - 0x1254], esi
jb 0x401efa
mov eax, dword [ebp - 0x1268]
push eax
call fcn.00405225
add esp, 4
xor ecx, ecx
mov byte [ebp - 4], bl
cmp dword [ebp - 0x1238], 0x10
mov dword [ebp - 0x1254], 7
mov dword [ebp - 0x1258], ebx
mov word [ebp - 0x1268], cx
jb 0x401f2e
mov edx, dword [ebp - 0x124c]
push edx
call fcn.00405225
add esp, 4
mov eax, 0xf
mov dword [ebp - 0x1238], eax
mov dword [ebp - 0x121c], eax
mov eax, dword [0x423c6c]
mov ecx, eax
mov dword [ebp - 0x123c], ebx
mov byte [ebp - 0x124c], bl
mov dword [ebp - 0x1220], ebx
mov byte [ebp - 0x1230], bl
lea esi, [ecx + 1]
mov dl, byte [ecx]
inc ecx
cmp dl, bl
jne 0x401f61
sub ecx, esi
mov edi, ecx
lea esi, [ebp - 0x1230]
call fcn.00402d30
mov eax, esi
lea ecx, [ebp - 0x12a0]
mov byte [ebp - 4], 2
call fcn.004035c0
mov edi, 8
cmp dword [eax + 0x14], edi
jb 0x401f94
mov eax, dword [eax]
push 5
lea ecx, [ebp - 0xa14]
push ecx
push eax
lea edx, [ebp - 0x1214]
push edx
push str.open
push ebx
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov esi, eax
cmp dword [ebp - 0x128c], edi
jb 0x401fca
mov eax, dword [ebp - 0x12a0]
push eax
call fcn.00405225
add esp, 4
xor ecx, ecx
cmp dword [ebp - 0x121c], 0x10
mov dword [ebp - 0x128c], 7
mov dword [ebp - 0x1290], ebx
mov word [ebp - 0x12a0], cx
jb 0x401ffb
mov edx, dword [ebp - 0x1230]
push edx
call fcn.00405225
add esp, 4
cmp esi, 0x20
jae 0x402019
mov eax, dword [ebp - 0x12a4]
push 0x30
push str.ERROR
push str.Unable_to_launch_executable__are_you_sure_you_placed_this_file_at_the_right_directory_
push eax
call dword [sym.imp.USER32.dll_MessageBoxW]
mov ecx, dword [ebp - 0x12a4]
push ebx
push ebx
push 0x10
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov esi, eax
cmp dword [ebp - 0x1270], edi
jb 0x402043
mov edx, dword [ebp - 0x1284]
push edx
call fcn.00405225
add esp, 4
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004050dc
mov esp, ebp
pop ebp
ret 4