Function at 0x1004cc26
Capabilities:
Get graphical window text

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x21c
mov eax, dword [0x1008a418]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
push esi
push edi
push 0x1900
mov esi, edx
mov dword [ebp - 0x1dc], eax
mov eax, dword [ebp + 0x14]
push 0x40
mov dword [ebp - 0x1bc], esi
mov dword [ebp - 0x1a8], ecx
mov dword [ebp - 0x1e0], eax
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
xor ebx, ebx
mov dword [ebp - 0x1c4], eax
mov dword [ebp - 0x1a0], ebx
mov dword [ebp - 0x1d4], ebx
mov dword [ebp - 0x1d0], ebx
mov dword [ebp - 0x1b4], ebx
mov dword [ebp - 0x19c], 1
mov dword [ebp - 0x198], 0x3a710003
test eax, eax
je 0x1004d27e
mov eax, dword [esi + 0x10]
lea ecx, [ebp - 0x1d0]
mov edi, esp
push ecx
lea ecx, [ebp - 0x1d4]
mov esi, dword [eax]
push ecx
push SysReAllocStringLen
lea ecx, [ebp - 0x19c]
push ecx
mov ecx, dword [esi + 0x14]
push eax
call dword [0x1008c6d4]
call dword [esi + 0x14]
cmp edi, esp
je 0x1004cce0
mov ecx, 4
int 0x29
test eax, eax
js 0x1004d24d
mov esi, dword [ebp - 0x1c4]
xor eax, eax
mov edi, dword [ebp - 0x1a8]
push 0xad6
push edi
mov word [esi], ax
call dword [sym.imp.USER32.dll_GetDlgItem]
push ebx
push ebx
push 0x1004
push eax
mov dword [ebp - 0x1d8], eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [ebp - 0x1bc]
mov dword [ebp - 0x1b8], eax
lea eax, [ebp - 0x1b4]
push ebx
push eax
push ecx
mov ecx, edi
call fcn.1004c70f
mov dword [ebp - 0x1a4], ebx
mov edi, ebx
push dword [edi + 0x1008ab24]
push dword [ebp - 0x1a8]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x1004cd9d
push 0xc80
push esi
xor ecx, ecx
push eax
mov word [esi], cx
call dword [sym.imp.USER32.dll_GetWindowTextW]
test eax, eax
je 0x1004cd9d
mov ecx, esi
call fcn.1005c2c8
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1004cd75
mov eax, dword [ebp - 0x1a4]
sub ecx, edx
sar ecx, 1
je 0x1004cda3
cmp dword [edi + 0x1008ab20], ebx
je 0x1004cda3
inc eax
mov dword [ebp - 0x1a4], eax
jmp 0x1004cda3
mov eax, dword [ebp - 0x1a4]
add edi, 8
cmp edi, 0x48
jb 0x1004cd3d
mov ecx, dword [ebp - 0x1b8]
test eax, eax
jne 0x1004cdbd
test ecx, ecx
jle 0x1004d240
lea edi, [eax + 1]
test ecx, ecx
jle 0x1004cdc7
add edi, 5
lea eax, [ebp - 0x1a0]
inc edi
push eax
mov eax, edi
mov dword [ebp - 0x1b0], edi
shl eax, 4
push eax
call fcn.100333b0
test eax, eax
jne 0x1004d24f
mov dword [ebp - 0x1a4], ebx
mov edi, ebx
mov dword [ebp - 0x1ac], ebx
push dword [edi + 0x1008ab24]
push dword [ebp - 0x1a8]
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x1004cf02
push 0xc80
push esi
xor ecx, ecx
push eax
mov word [esi], cx
call dword [sym.imp.USER32.dll_GetWindowTextW]
mov ecx, esi
call fcn.1005c2c8
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1004ce2e
sub ecx, edx
sar ecx, 1
je 0x1004cf02
mov eax, dword [edi + 0x1008ab24]
cmp eax, 0x1795
jne 0x1004ce57
mov eax, dword [0x1008b3dc]
jmp 0x1004ce63
cmp eax, 0x1794
jne 0x1004ce69
mov eax, dword [0x1008b3d8]
mov dword [edi + 0x1008ab20], eax
cmp dword [edi + 0x1008ab20], ebx
je 0x1004cf02
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1004ce7a
mov eax, dword [ebp - 0x1a0]
sub ecx, edx
mov esi, dword [ebp - 0x1ac]
sar ecx, 1
lea edx, [ecx*2 + 2]
mov ecx, dword [edi + 0x1008ab20]
mov dword [esi + eax], ecx
mov eax, esi
mov ecx, dword [ebp - 0x1a0]
add eax, 8
add eax, ecx
mov dword [ebp - 0x1c0], edx
push eax
push ecx
push edx
call fcn.10033410
mov esi, dword [ebp - 0x1c4]
test eax, eax
jne 0x1004d245
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x1ac]
mov edx, dword [ebp - 0x1c0]
push esi
shr edx, 1
mov ecx, dword [eax + ecx + 8]
call fcn.1000b82d
mov ecx, dword [ebp - 0x1a4]
inc ecx
add dword [ebp - 0x1ac], 0x10
mov dword [ebp - 0x1a4], ecx
jmp 0x1004cf08
mov ecx, dword [ebp - 0x1a4]
add edi, 8
cmp edi, 0x48
jb 0x1004cdf6
mov eax, dword [ebp - 0x1a0]
mov esi, ecx
mov edi, dword [ebp - 0x1bc]
shl esi, 4
mov dword [esi + eax], 0xfff0102
mov edx, dword [edi]
mov eax, dword [ebp - 0x1a0]
test edx, edx
jne 0x1004cf48
mov dword [esi + eax + 8], ebx
mov eax, dword [ebp - 0x1a0]
mov dword [esi + eax + 0xc], ebx
jmp 0x1004cf85
mov dword [esi + eax + 8], edx
mov ecx, dword [ebp - 0x1a0]
lea eax, [ecx + 0xc]
add eax, esi
push eax
push ecx
push dword [edi]
call fcn.10033410
test eax, eax
jne 0x1004d245
push dword [edi]
mov eax, dword [ebp - 0x1a0]
push dword [edi + 4]
push dword [esi + eax + 0xc]
call sub.msvcrt.dll_memcpy
mov ecx, dword [ebp - 0x1a4]
add esp, 0xc
xor eax, eax
inc ecx
mov dword [ebp - 0x1a4], ecx
mov word [ebp - 0x194], ax
cmp dword [edi + 0x78], eax
je 0x1004cfc0
push 0xc8
lea eax, [ebp - 0x194]
push eax
push dword [edi + 0x78]
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea ecx, [ebp - 0x194]
call fcn.1005c2c8
mov ecx, dword [ebp - 0x1a4]
cmp dword [ebp - 0x1b8], ebx
jle 0x1004d224
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1bc], ecx
inc ecx
mov dword [ebp - 0x1ac], ecx
lea esi, [ecx + 1]
shl esi, 4
lea edx, [ecx + 2]
shl edx, 4
lea edi, [ecx + 3]
add ecx, 4
shl edi, 4
mov dword [ebp - 0x1a4], ecx
mov ecx, dword [ebp - 0x1bc]
mov dword [esi + eax], 0x3003001f
add ecx, ecx
mov eax, dword [ebp - 0x1a0]
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1cc], esi
mov esi, ebx
mov dword [ebp - 0x1c8], edi
mov dword [edx + eax], 0x3002001f
mov eax, dword [ebp - 0x1a0]
mov edx, dword [ebp - 0x1ac]
add edx, edx
mov dword [ebp - 0x1a8], esi
mov dword [edi + eax], 0x3a550003
mov eax, dword [ebp - 0x1a0]
mov dword [eax + ecx*8], 0x3a56101f
mov eax, dword [ebp - 0x1a0]
mov dword [eax + edx*8], 0x3a54101f
mov eax, dword [ebp - 0x1a0]
mov dword [eax + ecx*8 + 8], ebx
mov eax, dword [ebp - 0x1a0]
mov dword [eax + ecx*8 + 0xc], ebx
mov eax, dword [ebp - 0x1a0]
mov dword [eax + edx*8 + 8], ebx
mov eax, dword [ebp - 0x1a0]
mov dword [eax + edx*8 + 0xc], ebx
cmp dword [ebp - 0x1b8], ebx
jbe 0x1004d224
push 0x3c
lea eax, [ebp - 0x21c]
push ebx
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
mov dword [ebp - 0x21c], 4
lea eax, [ebp - 0x21c]
mov dword [ebp - 0x218], esi
mov dword [ebp - 0x214], ebx
push eax
push ebx
push 0x104b
push dword [ebp - 0x1d8]
call dword [sym.imp.USER32.dll_SendMessageW]
test eax, eax
je 0x1004d211
mov esi, dword [ebp - 0x1fc]
mov ecx, dword [ebp - 0x1a0]
lea edi, [esi + 0x640]
push edi
push dword [ebp - 0x1bc]
call fcn.10036e9b
test eax, eax
js 0x1004d245
mov ecx, dword [ebp - 0x1a0]
lea eax, [esi + 0x960]
push eax
push dword [ebp - 0x1ac]
mov dword [ebp - 0x1c0], eax
call fcn.10036e9b
test eax, eax
js 0x1004d245
cmp dword [esi + 0xc80], ebx
mov esi, dword [ebp - 0x1a8]
je 0x1004d211
mov eax, dword [ebp - 0x1a0]
mov ecx, dword [ebp - 0x1c8]
mov dword [ecx + eax + 8], esi
test edi, edi
je 0x1004d164
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1004d153
sub ecx, edx
sar ecx, 1
jmp 0x1004d166
mov ecx, ebx
mov eax, dword [ebp - 0x1cc]
lea edx, [ecx + 1]
mov ecx, dword [ebp - 0x1a0]
add eax, 8
add eax, ecx
mov dword [ebp - 0x1a8], edx
push eax
push ecx
lea eax, [edx + edx]
push eax
call fcn.10033410
test eax, eax
js 0x1004d245
mov ecx, dword [ebp - 0x1a0]
mov eax, dword [ebp - 0x1cc]
mov edx, dword [ebp - 0x1a8]
push edi
mov ecx, dword [eax + ecx + 8]
call fcn.1000b82d
mov eax, dword [ebp - 0x1c0]
test eax, eax
je 0x1004d1cf
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x1004d1be
sub ecx, edx
sar ecx, 1
jmp 0x1004d1d1
mov ecx, ebx
mov eax, dword [ebp - 0x1b4]
lea edi, [ecx + 1]
mov ecx, dword [ebp - 0x1a0]
add eax, 8
add eax, ecx
push eax
push ecx
lea eax, [edi + edi]
push eax
call fcn.10033410
test eax, eax
js 0x1004d245
mov ecx, dword [ebp - 0x1a0]
mov edx, edi
mov eax, dword [ebp - 0x1b4]
push dword [ebp - 0x1c0]
mov ecx, dword [eax + ecx + 8]
call fcn.1000b82d
inc esi
mov dword [ebp - 0x1a8], esi
cmp esi, dword [ebp - 0x1b8]
jb 0x1004d093
mov ecx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 0x1a0]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x1e0]
mov eax, dword [ebp - 0x1a4]
mov dword [ecx], eax
xor ebx, ebx
inc ebx
jmp 0x1004d266
mov edi, dword [ebp - 0x1b0]
jmp 0x1004d24f
mov edi, ebx
cmp dword [ebp - 0x1a0], ebx
je 0x1004d266
test edi, edi
je 0x1004d266
push dword [ebp - 0x1a0]
call fcn.10033470
lea ecx, [ebp - 0x1c4]
call fcn.10037062
lea ecx, [ebp - 0x1d0]
call fcn.10037048
mov eax, ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.10087900
mov esp, ebp
pop ebp
ret 0x10