Function at 0x472308
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffc4
push ebx
push esi
mov dword [ebp - 8], edx
mov dword [ebp - 4], eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
cmp eax, 0x200
jge 0x472367
cmp eax, 0x21
jg 0x47234b
je 0x47273d
sub eax, 7
je 0x472449
dec eax
je 0x472487
sub eax, 0x17
je 0x472794
jmp 0x47286a
sub eax, 0x84
je 0x472499
add eax, 0xffffff84
sub eax, 0xa
jb 0x47277f
jmp 0x47286a
cmp eax, 0xb047
jg 0x472399
je 0x47240e
add eax, 0xfffffe00
sub eax, 0xf
jb 0x472546
sub eax, 0x31
je 0x472844
sub eax, 0x63
je 0x4724fe
jmp 0x47286a
sub eax, 0xb04a
je 0x4727e1
sub eax, 4
je 0x4723b7
sub eax, 3
je 0x472837
jmp 0x47286a
mov eax, dword [ebp - 4]
test byte [eax + 0x1c], 0x10
je 0x47286a
call fcn.00481344
cmp byte [eax + 5], 0
je 0x47286a
push 0x472894
push 0x472894
mov eax, dword [ebp - 4]
call fcn.004754f4
push eax
mov eax, dword [0x4a8508]
mov eax, dword [eax]
call eax
push 0x77
push 0
push 0
push 0
push 0
push 0
mov eax, dword [ebp - 4]
call fcn.004754f4
push eax
call sub.user32.dll_GetWindowTextW
jmp 0x47286a
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0048e0d0
mov ebx, eax
test ebx, ebx
je 0x47286a
cmp ebx, dword [ebp - 4]
je 0x47286a
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
push eax
mov ecx, dword [ebp - 8]
mov ecx, dword [ecx + 4]
mov edx, 0xb047
mov eax, ebx
call fcn.0046dd7c
jmp 0x47286a
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.0048e0d0
mov ebx, eax
test ebx, ebx
je 0x47286a
test byte [ebx + 0x1c], 0x10
je 0x47246d
cmp dword [ebx + 0x34], 0
jne 0x47286a
mov edx, dword [ebp - 4]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x10c]
test al, al
je 0x47288b
jmp 0x47286a
mov eax, dword [ebp - 4]
test byte [eax + 0x54], 0x20
jne 0x47288b
jmp 0x47286a
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0046de94
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0xffffffff
jne 0x47288b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
mov dword [ebp - 0x14], eax
movsx eax, word [ebp - 0x14]
mov dword [ebp - 0x1c], eax
movsx eax, word [ebp - 0x12]
mov dword [ebp - 0x18], eax
push 0
push 0
lea ecx, [ebp - 0x3c]
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 4]
call fcn.0046c544
lea edx, [ebp - 0x3c]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.0047202c
test eax, eax
je 0x47288b
mov eax, dword [ebp - 8]
mov dword [eax + 0xc], 1
jmp 0x47288b
mov eax, dword [ebp - 4]
mov byte [eax + 0x248], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
test eax, eax
je 0x472525
push 0
xor ecx, ecx
mov edx, 0xb014
call fcn.0046dd7c
jmp 0x472536
push 0
xor ecx, ecx
mov edx, 0xb014
mov eax, dword [ebp - 4]
call fcn.0046dd7c
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x24c], edx
jmp 0x47286a
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0xac]
mov esi, dword [ebx + 8]
test esi, esi
je 0x47256c
mov eax, esi
mov edx, dword [eax]
call dword [edx + 4]
test al, 1
je 0x47256c
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x10]
mov eax, dword [ebp - 8]
cmp dword [eax], 0x200
jne 0x4726e6
mov eax, dword [ebp - 8]
movsx eax, word [eax + 8]
mov edx, dword [ebp - 8]
movsx edx, word [edx + 0xa]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edx
lea ecx, [ebp - 0x10]
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 4]
call fcn.0046c410
call fcn.00469438
mov dword [0x4a7b70], eax
cmp dword [0x4a7b70], 0
jne 0x4725be
lea eax, [ebp - 0x10]
mov dl, 1
call fcn.0046ad28
mov ebx, eax
jmp 0x4725c4
mov ebx, dword [0x4a7b70]
mov eax, dword [ebp - 4]
cmp ebx, dword [eax + 0x24c]
je 0x4726a7
mov eax, dword [ebp - 4]
cmp dword [eax + 0x24c], 0
je 0x4725e8
cmp dword [0x4a7b70], 0
je 0x47261e
cmp dword [0x4a7b70], 0
je 0x472602
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
cmp eax, dword [0x4a7b70]
je 0x47261e
cmp dword [0x4a7b70], 0
je 0x472635
mov eax, dword [0x4a7b70]
mov eax, dword [eax + 0x34]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x24c]
jne 0x472635
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
xor ecx, ecx
mov edx, 0xb014
call fcn.0046dd7c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
test eax, eax
je 0x47264a
mov edx, dword [ebp - 4]
call fcn.00439bf4
mov edx, dword [ebp - 4]
mov eax, ebx
mov dword [edx + 0x24c], eax
test eax, eax
je 0x472661
mov edx, dword [ebp - 4]
call fcn.00439910
mov eax, dword [ebp - 4]
cmp dword [eax + 0x24c], 0
je 0x472676
cmp dword [0x4a7b70], 0
je 0x472690
cmp dword [0x4a7b70], 0
je 0x4726a7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
cmp eax, dword [0x4a7b70]
jne 0x4726a7
push 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x24c]
xor ecx, ecx
mov edx, 0xb013
call fcn.0046dd7c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x248], 0
jne 0x4726e6
mov eax, dword [ebp - 4]
mov byte [eax + 0x248], 1
mov dword [ebp - 0x30], 2
mov eax, dword [ebp - 4]
call fcn.004754f4
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x28], 0xffffffff
mov dword [ebp - 0x34], 0x10
lea eax, [ebp - 0x34]
push eax
call sub.comctl32.dll__TrackMouseEvent
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.004720f0
test al, al
je 0x47286a
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0
jne 0x47288b
mov eax, dword [ebp - 4]
call fcn.004758a0
test al, al
je 0x47288b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 8]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 4]
call fcn.004754f4
push eax
call fcn.0040bb6c
jmp 0x47288b
mov edx, dword [ebp - 8]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.004721b0
test al, al
je 0x47286a
mov eax, dword [ebp - 8]
cmp dword [eax + 0xc], 0
jne 0x47288b
mov eax, dword [ebp - 4]
call fcn.004758a0
test al, al
je 0x47288b
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0046de94
jmp 0x47288b
mov eax, dword [ebp - 4]
call fcn.0046d2ac
test al, al
jne 0x47288b
jmp 0x47286a
mov eax, dword [ebp - 4]
call fcn.004754f4
mov ebx, eax
call fcn.0040bc54
cmp ebx, eax
jne 0x47286a
cmp dword [0x4a7b70], 0
je 0x47286a
mov eax, dword [0x4a7b70]
mov eax, dword [eax + 0x34]
cmp eax, dword [ebp - 4]
jne 0x47286a
push 0
xor ecx, ecx
mov edx, 0x1f
mov eax, dword [0x4a7b70]
call fcn.0046dd7c
jmp 0x47286a
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
test al, al
je 0x4727f5
mov dl, 1
mov eax, dword [ebp - 4]
call fcn.004772b0
xor eax, eax
push ebp
push 0x472830
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0xc0]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47288b
mov eax, dword [ebp - 8]
mov eax, dword [eax + 4]
test al, al
je 0x47282f
xor edx, edx
mov eax, dword [ebp - 4]
call fcn.004772b0
ret
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0047115c
jmp 0x47286a
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0xac]
mov esi, dword [ebx + 8]
test esi, esi
je 0x47286a
mov eax, esi
mov edx, dword [eax]
call dword [edx + 4]
test al, 2
je 0x47286a
mov edx, dword [ebp - 8]
mov eax, dword [ebx + 8]
mov ecx, dword [eax]
call dword [ecx + 0x10]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
call fcn.0046de94
mov eax, dword [ebp - 8]
cmp dword [eax], 0x128
jne 0x47288b
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x90]
pop esi
pop ebx
mov esp, ebp
pop ebp
ret