Function at 0x4438f0
Capabilities:
Get graphical window text

Disassembly:
push ecx
mov ecx, dword fs:[0x2c]
push esi
mov esi, dword [0x62271c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443917
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp dword [eax + 0x274], 0
je 0x443d4f
cmp byte [eax + 0x2198], 0
jne 0x44393c
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
push edi
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x274]
jne 0x44395b
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
imul ecx, dword [eax + 0x270], 0xd4
mov al, byte [esp + 0x10]
mov byte [ecx + edi + 6], al
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x44398f
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x274]
jne 0x4439ad
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
imul ecx, dword [eax + 0x270], 0xd4
mov al, byte [esp + 0x14]
mov byte [ecx + edi], al
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x4439e0
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x274]
jne 0x4439fe
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
imul ecx, dword [eax + 0x270], 0xd4
mov ax, word [esp + 0x18]
mov word [ecx + edi + 2], ax
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443a34
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x274]
jne 0x443a52
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
mov ecx, 0x69
imul eax, dword [eax + 0x270], 0xd4
mov word [eax + edi + 4], cx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword fs:[0x2c]
mov edi, eax
mov ecx, dword [edx + esi*4]
cmp byte [ecx + 0x2198], 0
jne 0x443a90
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp byte [eax + 0x2198], 0
mov dword [eax + 0x26c], edi
jne 0x443aae
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443ac6
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + esi*4]
mov eax, dword [ecx + 0x26c]
sub eax, dword [ecx + 0x67c]
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
cmp byte [ecx + 0x2198], 0
addsd xmm0, qword [eax*8 + 0x4f91a0]
cvtpd2ps xmm0, xmm0
divss xmm0, dword [0x4f9194]
movss dword [esp + 8], xmm0
jne 0x443b10
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x274]
jne 0x443b2e
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
movss xmm0, dword [esp + 8]
imul eax, dword [eax + 0x270], 0xd4
movss dword [eax + edi + 8], xmm0
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443b66
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov edi, dword [eax + 0x26c]
jne 0x443b84
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
push ebx
mov dword [eax + 0x67c], edi
call dword [sym.imp.USER32.dll_GetForegroundWindow]
mov edi, eax
test edi, edi
je 0x443c65
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + esi*4]
cmp byte [ecx + 0x2198], 0
jne 0x443bbd
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp edi, dword [eax + 0x268]
je 0x443c1c
cmp byte [eax + 0x2198], 0
jne 0x443bdd
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp byte [eax + 0x2198], 0
mov ebx, dword [eax + 0x274]
jne 0x443bfb
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
push 0x64
imul eax, dword [eax + 0x270], 0xd4
add eax, 0xc
add eax, ebx
push eax
push edi
call dword [sym.imp.USER32.dll_GetWindowTextW]
jmp 0x443cbf
cmp byte [eax + 0x2198], 0
jne 0x443c31
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
cmp byte [eax + 0x2198], 0
mov ebx, dword [eax + 0x274]
jne 0x443c4f
call fcn.004ebad3
mov edx, dword fs:[0x2c]
mov eax, dword [edx + esi*4]
imul eax, dword [eax + 0x270], 0xd4
xor ecx, ecx
mov word [eax + ebx + 0xc], cx
jmp 0x443cbf
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443c84
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov ebx, dword [eax + 0x274]
jne 0x443ca2
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
imul eax, dword [eax + 0x270], 0xd4
mov dword [eax + ebx + 0xc], 0x2f004e
mov dword [eax + ebx + 0x10], 0x41
mov ecx, dword fs:[0x2c]
pop ebx
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443cdf
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
mov dword [eax + 0x268], edi
pop edi
jne 0x443cfe
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
cmp byte [eax + 0x2198], 0
jne 0x443d16
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov edx, dword [ecx + esi*4]
inc dword [edx + 0x270]
mov eax, dword [edx + 0x270]
cmp eax, dword [edx + 0x1c8]
jl 0x443d4f
cmp byte [edx + 0x2198], 0
jne 0x443d42
call fcn.004ebad3
mov ecx, dword fs:[0x2c]
mov eax, dword [ecx + esi*4]
mov dword [eax + 0x270], 0
pop esi
pop ecx
ret