Function at 0x1004954
Capabilities:
Get graphical window text

Disassembly:
lea ecx, [esi + 0x844]
call fcn.01002f8f
jmp 0x1004b5c
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0xd8
mov eax, dword [0x105405c]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
mov esi, ecx
cmp byte [esi + 8], 0
push 3
mov byte [ebp - 0xcd], 0
pop edx
mov ebx, 0x111
jne 0x10049bd
movzx ecx, word [ebp + 0xc]
lea eax, [ebx - 0x65]
cmp ecx, eax
jg 0x1020bf2
je 0x1026639
mov eax, ecx
sub eax, 0x77
je 0x10265ce
sub eax, 0x24
je 0x1026592
sub eax, 0xd
je 0x10264da
sub eax, edx
je 0x10264c3
movzx eax, word [ebp + 0xc]
mov edi, dword [sym.imp.USER32.dll_PostMessageW]
mov dword [ebp - 0xd4], eax
sub eax, 0x41b
je 0x102677d
dec eax
je 0x10076ea
sub eax, 3
je 0x1026715
dec eax
je 0x10266b1
mov eax, dword [ebp + 0xc]
xor ecx, ecx
shr eax, 0x10
inc ecx
mov dword [ebp - 0xd8], eax
cmp cx, ax
je 0x100753c
mov eax, dword [0x1054320]
cmp dword [esi + 0xf4], 0
je 0x1015942
mov ecx, dword [ebp + 0xc]
mov edx, 0x9d
cmp cx, dx
je 0x10267ec
mov edx, 0x9e
cmp cx, dx
je 0x1026822
mov edx, 0x94
cmp cx, dx
je 0x101c7fc
mov edx, 0x99
cmp cx, dx
je 0x1026862
mov edx, 0x41a
cmp cx, dx
je 0x1026872
mov edx, 0xa0
cmp cx, dx
je 0x10268ab
mov edx, 0x9c
cmp cx, dx
je 0x10268ce
mov edx, 0x41d
cmp cx, dx
je 0x10268f4
mov edx, 0x41e
cmp cx, dx
je 0x1026905
cmp dword [esi + 0xe0], 2
je 0x1026921
cmp dword [esi + 0xf4], 2
je 0x10125ca
cmp byte [ebp - 0xcd], 0
mov eax, dword [ebp + 0xc]
jne 0x1020bc7
cmp ax, 0x50
jb 0x1020bc7
mov ecx, 0x93
cmp ax, cx
ja 0x1020bc7
cmp byte [esi + 8], 0
jne 0x102698e
cmp ax, 0x51
je 0x1004b13
cmp word [ebp + 0xc], 0x52
je 0x1004b13
push dword [ebp - 0xd4]
mov eax, dword [esi + 0xf0]
push dword [eax + 0x1c]
mov ecx, dword [0x10540a4]
push dword [esi + 0xf4]
call fcn.01004f01
push dword [ebp - 0xd4]
mov ecx, dword [esi + 0xf0]
call fcn.01004b7f
mov byte [esi + 8], 0
cmp word [ebp + 0xc], 0x79
je 0x1007452
cmp dword [ebp - 0xd4], 0x51
je 0x10152de
cmp dword [ebp - 0xd4], 0x79
je 0x100747a
lea eax, [ebp + 0xc]
push eax
lea ecx, [esi + 0x844]
call fcn.01004da7
mov byte [ebp - 0xcd], 1
mov al, byte [ebp - 0xcd]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.01001e8f
leave
ret 0xc
push dword [0x1054318]
mov edi, dword [sym.imp.USER32.dll_SetFocus]
call edi
mov eax, dword [esi + 0x130]
push 0x96
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call edi
jmp 0x1004b33
mov eax, dword [esi + 0x130]
push 0x64
lea edi, [esi + 0x10]
push edi
push 0x96
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
push edi
call fcn.0100228d
mov ecx, eax
call fcn.010040c6
test al, al
je 0x1002fe3
jmp 0x102699d
mov eax, dword [0x1054320]
test eax, eax
je 0x1004a0c
mov eax, dword [eax + 8]
push dword [ebp - 0xd4]
mov eax, dword [eax + 4]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
test eax, eax
je 0x1004a07
mov eax, dword [0x1054320]
mov eax, dword [eax + 8]
push dword [ebp - 0xd4]
mov eax, dword [eax + 4]
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_IsWindowEnabled]
test eax, eax
jne 0x1004a07
jmp 0x10267b7
cmp dword [esi + 0xf4], 3
je 0x1026759
cmp byte [esi + 0xf8], 0
jne 0x1026766
mov byte [ebp - 0xcd], 1
jmp 0x10049ef
mov eax, dword [ebp - 0xd4]
add eax, 0xfffffcfe
cmp eax, 2
ja 0x1004ab4
jmp 0x1026969
xor eax, eax
mov word [esi + 0x10], ax
jmp 0x1002fe3
xor ecx, ecx
inc ecx
cmp cx, word [ebp - 0xd8]
jne 0x1004a19
push 0x51
pop ecx
cmp cx, word [ebp + 0xc]
jne 0x1004a19
jmp 0x10267be
push dword [ebp + 0xc]
mov ecx, esi
call fcn.0101c822
jmp 0x1004a9a
mov eax, dword [ebp + 0xc]
cmp ax, 0x52
je 0x1004ae6
jmp 0x1004b28
mov ecx, 0x139
cmp ax, cx
jb 0x1020bdd
add ecx, 0xa
cmp ax, cx
jbe 0x1004adc
lea ecx, [eax - 0x2bc]
cmp cx, 0x3f
ja 0x1004b63
jmp 0x1004adc
sub ecx, 0xad
je 0x102669a
dec ecx
je 0x1026683
dec ecx
je 0x1026669
dec ecx
jne 0x10049bd
jmp 0x102664f
push 1
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 0x10
jmp 0x10049bd
mov eax, dword [esi + 0x394]
push 0x64
lea ecx, [ebp - 0xcc]
push ecx
push 0x96
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [ebp + eax*2 - 0xce]
cmp word [eax], 0x20
jne 0x102650e
xor ecx, ecx
mov word [eax], cx
push 0x64
lea eax, [ebp - 0xcc]
push eax
mov eax, dword [0x10542e8]
mov ecx, dword [eax + 0x10]
call fcn.01003672
lea edi, [esi + 0x390]
mov ecx, edi
call fcn.010337fd
mov edx, dword [eax]
lea ecx, [ebp - 0xcc]
push ecx
mov ecx, eax
call dword [edx + 8]
test al, al
je 0x10049bd
push 0x1002b54
lea eax, [ebp - 0xcc]
push eax
mov eax, dword [esi + 0xf0]
mov ecx, dword [eax + 0x10]
call fcn.010304c6
mov ecx, edi
call fcn.010337fd
mov ecx, eax
call fcn.01038695
cmp eax, 0x7d0
jg 0x10049bd
push dword [ebp + 0x10]
mov eax, dword [esi + 0x394]
push 0x51
push ebx
push eax
call dword [sym.imp.USER32.dll_GetParent]
jmp 0x102662d
cmp dword [esi + 0xf4], edx
jne 0x10265a7
lea ecx, [esi + 0x390]
call fcn.010337fd
jmp 0x10265bb
cmp byte [esi + 0xf8], 0
je 0x10265c2
lea ecx, [esi + 0x358]
call fcn.01003154
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 4]
mov byte [ebp - 0xcd], 1
jmp 0x10049bd
mov eax, dword [esi + 0xf4]
cmp eax, edx
jne 0x10265f4
mov edi, dword [esi + 0x128]
mov eax, dword [edi + 8]
mov eax, dword [eax + 4]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
lea ecx, [edi + 0x16c]
jmp 0x1026616
test eax, eax
jne 0x10049bd
mov edi, dword [esi + 0x128]
mov eax, dword [edi + 8]
mov eax, dword [eax + 4]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetDlgItem]
lea ecx, [edi + 0x1e8]
cmp byte [ecx], 0
push 0
sete dl
mov byte [ecx], dl
xor ecx, ecx
test dl, dl
setne cl
push ecx
push 0xf1
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x10049bd
push edx
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 0x40
jmp 0x10049bd
push 5
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 0x100
jmp 0x10049bd
push 4
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 0x80
jmp 0x10049bd
push 2
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 0x20
jmp 0x10049bd
push 0
mov ecx, esi
call fcn.01032136
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 8
jmp 0x10049bd
lea ecx, [esi + 0x390]
call fcn.010337fd
mov ecx, eax
call fcn.01020b78
test eax, eax
je 0x10266df
mov eax, dword [esi + 0x394]
push 0
push 0xa0
push ebx
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call edi
lea ecx, [esi + 0x390]
call fcn.010337fd
mov ecx, eax
call fcn.01038988
push dword [ebp + 0x10]
mov eax, dword [esi + 0x394]
push 0x51
push ebx
push eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call edi
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 2
jmp 0x10049ef
lea ecx, [esi + 0x390]
call fcn.010337fd
mov ecx, eax
call fcn.01020b78
lea ecx, [esi + 0x390]
test eax, eax
jne 0x102673f
call fcn.010337fd
mov ecx, eax
call fcn.010388c9
jmp 0x102674b
call fcn.010337fd
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x10]
mov eax, dword [0x10540a4]
or dword [eax + 0x28], 4
jmp 0x10049ef
lea ecx, [esi + 0x390]
call fcn.010337fd
jmp 0x1026771
lea ecx, [esi + 0x358]
call fcn.01003154
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x18]
jmp 0x1007704
cmp dword [esi + 0xf4], 3
jne 0x1026793
lea ecx, [esi + 0x390]
call fcn.010337fd
jmp 0x10267ab
cmp byte [esi + 0xf8], 0
je 0x1007704
lea ecx, [esi + 0x358]
call fcn.01003154
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x14]
jmp 0x1007704
xor al, al
jmp 0x1004b69
mov ecx, dword [esi + 0x128]
cmp byte [ecx + 0x1e8], 0
je 0x1004a9a
mov eax, dword [eax + 8]
push 0
push 0x77
push ebx
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [0x1054320]
jmp 0x1004a19
mov ecx, 0x1054550
call fcn.01003154
mov ecx, eax
call fcn.01020b78
test eax, eax
je 0x102680d
push dword [0x1054554]
call dword [sym.imp.USER32.dll_SetFocus]
push 0
push 0x94
push ebx
push dword [0x1054554]
call edi
jmp 0x1004a9a
lea ecx, [esi + 0x390]
call fcn.010337fd
mov ecx, eax
call fcn.01020b78
test eax, eax
jne 0x1026849
push dword [ebp + 0x10]
push 0x9b
push ebx
push dword [0x1054318]
jmp 0x102681b
lea ecx, [esi + 0x390]
call fcn.010337fd
mov edx, dword [eax]
push 0x2b
mov ecx, eax
call dword [edx + 0xc]
jmp 0x1004a9a
mov ecx, dword [esi + 0xf0]
call fcn.0101b06b
jmp 0x1004a9a
mov ecx, 0x1054550
call fcn.01003154
mov ecx, eax
call fcn.01020b78
test eax, eax
je 0x102689b
push 0
push 0x9c
push ebx
push dword [0x1054318]
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esi + 0xf0]
call fcn.010355a3
jmp 0x1004a9a
push dword [0x1054318]
call dword [sym.imp.USER32.dll_SetFocus]
lea ecx, [esi + 0x390]
call fcn.010337fd
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0x10]
jmp 0x1004a9a
push dword [0x1054318]
call dword [sym.imp.USER32.dll_SetFocus]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
push dword [0x1054554]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x1004a9a
cmp dword [0x10542ec], 3
je 0x1004a9a
push 0
jmp 0x1026914
cmp dword [0x10542ec], 3
je 0x1004a9a
push 1
mov ecx, dword [eax + 8]
call fcn.01032de2
jmp 0x1004a9a
mov eax, dword [ebp + 0xc]
lea ecx, [eax - 0x82]
cmp ecx, 0xf
ja 0x1026946
add eax, 0xffffffae
movzx eax, ax
mov ecx, dword [esi + 0xe4]
push eax
call fcn.010336c0
jmp 0x1004b5c
cmp eax, 0x50
je 0x1026959
cmp eax, 0x54
jne 0x1004b63
push 0x2e
pop eax
jmp 0x1026935
mov ecx, dword [esi + 0xe4]
call fcn.01033613
jmp 0x1004b5c
push dword [ebp + 0x10]
mov eax, dword [esi + 0x128]
push dword [ebp + 0xc]
mov eax, dword [eax + 8]
push ebx
push dword [eax + 4]
call dword [sym.imp.USER32.dll_SendMessageW]
mov byte [ebp - 0xcd], 1
jmp 0x1004ab4
cmp ax, 0x51
jne 0x101c80b
jmp 0x1004b13
xor eax, eax
mov word [edi], ax
jmp 0x1004b5c