Function at 0x414370
Capabilities:
Create thread
Get graphical window text

Disassembly:
push ecx
mov eax, dword [0x422b18]
push ebx
push esi
push edi
test eax, eax
mov esi, ecx
je 0x41439a
mov eax, dword [esi + 0x1554]
push 0
push 1
push 0x52d
push eax
call dword [sym.imp.USER32.dll_PostMessageA]
pop edi
pop esi
pop ebx
pop ecx
ret
mov ecx, dword [0x4225b4]
lea eax, [ecx - 4]
cmp eax, 0x3e
ja case.0x4143b4.10
xor edx, edx
mov dl, byte [eax + 0x414668]
jmp dword [edx*4 + 0x41464c]
lea ecx, [esi + 0x160]
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
mov ebx, dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
jg 0x4143e0
mov ecx, 0x10
xor eax, eax
mov edi, 0x4223ac
rep stosd dword es:[edi], eax
jmp 0x4143f0
mov eax, dword [esi + 0x180]
push 0x20
push 0x4223ac
push eax
call ebx
lea ecx, [esi + 0x120]
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x414412
mov ecx, 0x10
xor eax, eax
mov edi, 0x4223f0
rep stosd dword es:[edi], eax
jmp case.0x4143b4.5
mov ecx, dword [esi + 0x140]
push 0x20
push 0x4223f0
push ecx
call ebx
jmp case.0x4143b4.5
lea ebx, [esi + 0x160]
mov ecx, ebx
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x414444
mov ecx, ebx
call sub.MFC42.DLL_CWnd::SetFocus
pop edi
pop esi
pop ebx
pop ecx
ret
lea edi, [esi + 0x120]
mov ecx, edi
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x41449b
mov ecx, edi
call sub.MFC42.DLL_CWnd::SetFocus
pop edi
pop esi
pop ebx
pop ecx
ret
lea ebx, [esi + 0x160]
mov ecx, ebx
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x41447e
mov ecx, ebx
call sub.MFC42.DLL_CWnd::SetFocus
pop edi
pop esi
pop ebx
pop ecx
ret
lea edi, [esi + 0x120]
mov ecx, edi
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x41449b
mov ecx, edi
call sub.MFC42.DLL_CWnd::SetFocus
pop edi
pop esi
pop ebx
pop ecx
ret
push 0x20
push 0x422a38
mov ecx, ebx
call sub.MFC42.DLL_CWnd::GetWindowTextA_1
push 0x20
push 0x422a58
mov ecx, edi
call sub.MFC42.DLL_CWnd::GetWindowTextA_1
jmp case.0x4143b4.5
push 0x420f60
call fcn.0040b9a0
lea ebx, [esi + 0x160]
add esp, 4
mov ecx, ebx
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x4144ea
mov ecx, 0x10
xor eax, eax
mov edi, 0x4223ac
rep stosd dword es:[edi], eax
jmp 0x4144fe
mov edx, dword [esi + 0x180]
push 0x20
push 0x4223ac
push edx
call dword [sym.imp.USER32.dll_GetWindowTextW]
push ebp
lea ebp, [esi + 0x120]
mov ecx, ebp
call sub.MFC42.DLL_CWnd::GetWindowTextLengthA
test eax, eax
jg 0x414520
mov ecx, 0x10
xor eax, eax
mov edi, 0x4223f0
rep stosd dword es:[edi], eax
jmp 0x414534
mov eax, dword [esi + 0x140]
push 0x20
push 0x4223f0
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
push 0x20
push 0x422a38
mov ecx, ebx
call sub.MFC42.DLL_CWnd::GetWindowTextA_1
push 0x20
push 0x422a58
mov ecx, ebp
call sub.MFC42.DLL_CWnd::GetWindowTextA_1
pop ebp
jmp case.0x4143b4.5
push 0x420f3c
call fcn.0040b9a0
add esp, 4
jmp case.0x4143b4.5
push 0x420f28
call fcn.0040b9a0
add esp, 4
mov dword [0x4225b4], 3
mov ecx, 0xc
xor eax, eax
mov edi, 0x456d90
rep stosd dword es:[edi], eax
mov ecx, 0x4224f0
mov byte [0x456d90], al
call fcn.004128f0
test eax, eax
je 0x4145b1
push 0x420f04
call fcn.0040b9a0
add esp, 4
mov ecx, 0x4224f0
call fcn.00413010
test esi, esi
jne 0x4145b9
xor eax, eax
jmp 0x4145bc
mov eax, dword [esi + 0x20]
lea ecx, [esp + 0xc]
push ecx
push 0
push eax
push 0x415440
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
test eax, eax
jne 0x4145e6
push 0x420bfc
call fcn.0040b9a0
add esp, 4
jmp 0x4145f3
push 1
lea ecx, [esi + 0x69c]
call sub.MFC42.DLL_CWnd::EnableWindow
mov ebx, dword [sym.imp.USER32.dll_GetSystemMetrics]
push 0
call ebx
cdq
sub eax, edx
push 1
mov edi, eax
sar edi, 1
call ebx
cdq
sub eax, edx
sar eax, 1
test esi, esi
jne 0x414615
xor ecx, ecx
jmp 0x414618
mov ecx, dword [esi + 0x20]
push 1
push 0
push 0
push eax
push edi
push ecx
call dword [sym.imp.USER32.dll_MoveWindow]
push 0x42237c
mov ecx, esi
call sub.MFC42.DLL_CWnd::SetWindowTextA
mov edx, dword [esi + 0x20]
push 0x14
push 0
push 0x531
push edx
call dword [sym.imp.USER32.dll_PostMessageA]
pop edi
pop esi
pop ebx
pop ecx
ret