Function at 0x440e20
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x2228
call fcn.004e1f60
mov eax, dword [0x55e2f4]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x56b470], 0
push edi
mov edi, ecx
jne 0x4411b8
push ebx
push esi
push 0x802
lea eax, [ebp - 0x808]
mov dword [0x56b470], 1
push 0
push eax
call fcn.004e46b0
add esp, 0xc
cmp dword [ebp + 8], 0
je 0x440ff9
lea esi, [edi + 0x10a8]
mov ecx, 0x516968
mov edx, esi
sub edx, ecx
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x440e82
push 0x400
lea eax, [ebp - 0x808]
mov ecx, edi
push eax
mov eax, dword [edi]
push 0x40a
call dword [eax + 0x8c]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp - 0x808]
push eax
call fcn.0042a830
lea ecx, [ebp - 0x808]
add esp, 4
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x440ed0
mov ebx, dword [sym.imp.USER32.dll_SetWindowTextW]
sub ecx, edx
sar ecx, 1
je 0x440fa3
push 0x400
lea eax, [ebp - 0x120c]
push eax
lea eax, [ebp - 0x808]
push eax
call dword [sym.imp.KERNEL32.DLL_GetVolumePathNameW]
test eax, eax
je 0x440fa3
lea eax, [ebp - 0x2220]
push eax
lea eax, [ebp - 0x120c]
push eax
call fcn.00429220
add esp, 8
test eax, eax
je 0x440fa3
lea eax, [ebp - 0xa08]
push eax
push dword [ebp - 0x221c]
push dword [ebp - 0x2220]
call fcn.00415f20
add esp, 0xc
push eax
lea eax, [ebp - 0x120c]
push eax
push str.DISK_FREE
call fcn.004bb8b0
add esp, 4
push eax
lea eax, [ebp - 0x1a10]
push 0x401
push eax
call fcn.00405500
add esp, 0x14
lea eax, [ebp - 0x1a10]
mov ecx, edi
push eax
mov eax, dword [edi]
push 0x555
call dword [eax + 0x8c]
push eax
call ebx
lea ecx, [ebp - 0x808]
mov edx, esi
mov eax, ecx
sub edx, eax
movzx eax, word [ecx]
mov word [edx + ecx], ax
add ecx, 2
test ax, ax
jne 0x440f94
mov eax, 0x516968
mov cx, word [esi]
cmp cx, word [eax]
jne 0x440fce
test cx, cx
je 0x440fca
mov cx, word [esi + 2]
cmp cx, word [eax + 2]
jne 0x440fce
add esi, 4
add eax, 4
test cx, cx
jne 0x440fa8
xor eax, eax
jmp 0x440fd3
sbb eax, eax
or eax, 1
test eax, eax
jne 0x441020
push str.LOCATION_INPUT_INFO
call fcn.004bb8b0
add esp, 4
mov ecx, edi
push eax
mov eax, dword [edi]
push 0x555
call dword [eax + 0x8c]
push eax
call ebx
jmp 0x441020
lea ecx, [edi + 0x10a8]
lea edx, [ebp - 0x808]
sub edx, ecx
nop word [eax + eax]
movzx eax, word [ecx]
lea ecx, [ecx + 2]
mov word [edx + ecx - 2], ax
test ax, ax
jne 0x441010
mov ecx, 0x516968
lea eax, [ebp - 0x808]
nop dword [eax + eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x441056
test dx, dx
je 0x441052
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x441056
add eax, 4
add ecx, 4
test dx, dx
jne 0x441030
xor eax, eax
jmp 0x44105b
sbb eax, eax
or eax, 1
test eax, eax
je 0x441196
mov eax, dword [edi]
mov ecx, edi
push 0x200
push 0x552
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 0x536
call dword [eax + 0x8c]
push eax
call fcn.00405d30
mov ebx, eax
add esp, 0xc
mov eax, edx
mov ecx, ebx
and ecx, eax
mov dword [ebp - 0x2218], eax
cmp ecx, 0xffffffff
je 0x441196
mov esi, ebx
mov ecx, eax
add esi, 0xfffb7000
adc ecx, 0xffffffff
cmp ecx, 0x3ffff
ja 0x441196
jb 0x4410ce
cmp esi, 0xfffb7000
ja 0x441196
push 0x400
lea eax, [ebp - 0x2214]
push eax
lea eax, [ebp - 0x808]
push eax
call dword [sym.imp.KERNEL32.DLL_GetVolumePathNameW]
test eax, eax
je 0x441196
lea eax, [ebp - 0x2228]
push eax
lea eax, [ebp - 0x2214]
push eax
call fcn.00429220
add esp, 8
test eax, eax
je 0x441196
mov eax, dword [edi]
mov ecx, edi
push 0x58f
call dword [eax + 0x8c]
push eax
call fcn.00406330
add esp, 4
test eax, eax
mov eax, dword [ebp - 0x2218]
jne 0x441141
cmp eax, dword [ebp - 0x2224]
jg 0x441196
jl 0x441141
cmp ebx, dword [ebp - 0x2228]
ja 0x441196
push dword [edi + 0x10a0]
mov dword [edi + 0x109c], eax
mov ecx, edi
mov eax, dword [edi]
push 0x3ea
mov dword [edi + 0x1098], ebx
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 0x40b
call dword [eax + 0x8c]
push eax
mov eax, dword [edi]
mov ecx, edi
push 1
call dword [eax + 0x8c]
push eax
call fcn.004bd7d0
xor ecx, ecx
add esp, 0x10
test eax, eax
mov edx, 1
cmovne ecx, edx
jmp 0x441198
xor ecx, ecx
mov eax, dword [edi]
push ecx
push 1
mov ecx, edi
call dword [eax + 0x8c]
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
pop esi
mov dword [0x56b470], 0
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
pop edi
call fcn.004e1f40
mov esp, ebp
pop ebp
ret 4