Function at 0x463200
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x18
push ebx
mov ebx, dword [esp + 0x20]
mov eax, ecx
mov ecx, dword [ebx + 8]
test ecx, ecx
push ebp
push esi
mov dword [esp + 0x10], edx
mov dword [esp + 0xc], eax
jne 0x46326f
mov esi, dword [esp + 0x34]
mov ecx, dword [esp + 0x30]
mov edx, dword [edx]
push 0x63
push esi
push ecx
push ebx
mov ecx, eax
call fcn.004f48e0
mov ebp, 1
cmp eax, ebp
jne 0x463b46
mov ecx, dword [ebx + 8]
cmp ecx, ebp
je 0x463b46
cmp ecx, 2
je 0x463b46
cmp ecx, 3
je 0x463b46
push 6
mov edx, esi
mov ecx, ebx
call fcn.00479d70
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 0x1c
mov eax, dword [ebx + 0x40]
test eax, eax
je 0x463291
cmp ecx, 2
jl 0x463282
mov edx, dword [eax + 0x40]
test edx, edx
je 0x463291
cmp ecx, 3
jne 0x46329f
mov edx, dword [eax + 0x40]
mov esi, dword [edx + 0x40]
test esi, esi
jne 0x46329f
pop esi
pop ebp
mov eax, 2
pop ebx
add esp, 0x18
ret 0x1c
mov edx, dword [eax + 0x1c]
mov ebp, 1
cmp edx, ebp
jne 0x4632c8
cmp ecx, 2
jl 0x4632b8
mov edx, dword [eax + 0x40]
cmp dword [edx + 0x1c], ebp
jne 0x4632c8
cmp ecx, 3
jne 0x4632d3
mov edx, dword [eax + 0x40]
mov edx, dword [edx + 0x40]
cmp dword [edx + 0x1c], ebp
je 0x4632d3
pop esi
mov eax, ebp
pop ebp
pop ebx
add esp, 0x18
ret 0x1c
mov edx, dword [eax + 0xc]
test edx, edx
push edi
jne 0x463b12
cmp ecx, 2
jl 0x4632f2
mov edx, dword [eax + 0x40]
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x463b12
cmp ecx, 3
jne 0x463308
mov edx, dword [eax + 0x40]
mov edx, dword [edx + 0x40]
mov esi, dword [edx + 0xc]
test esi, esi
jne 0x463b12
cmp ecx, ebp
jne 0x46388f
mov ecx, dword [eax]
call fcn.004f4570
test eax, eax
je 0x4633cf
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax]
push ecx
call fcn.005705cb
mov edi, eax
add esp, 4
cmp edi, 0x270e
jle 0x4633d9
mov edi, 0x270e
mov esi, dword [0x5a56ec]
test esi, esi
je 0x463b12
mov edi, edi
cmp edi, 0x270f
jne 0x463414
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax]
push esi
push ecx
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x46341d
test esi, esi
je 0x463b12
mov eax, dword [ebx + 0x10]
test eax, eax
je 0x463876
mov edx, dword [ebx]
push 0x2e
push edx
call fcn.00570980
mov edi, eax
add esp, 8
test edi, edi
je 0x463876
push 0x58433c
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463430
mov ecx, dword [esi + 0xc8]
lea eax, [esp + 0x18]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [esp + 0x18]
push edx
jmp 0x463733
mov edi, 0x270f
jmp 0x463340
test edi, edi
jg 0x463340
mov eax, dword [0x5a56ec]
xor ecx, ecx
test eax, eax
je 0x4633fb
lea esp, [esp]
mov eax, dword [eax + 0x1018]
inc ecx
test eax, eax
jne 0x4633f0
mov edx, dword [esp + 0x30]
push ecx
push 0x583948
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
dec edi
test edi, edi
jle 0x463373
mov esi, dword [esi + 0x1018]
test esi, esi
jne 0x463350
jmp 0x463b12
push 0x584338
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463471
mov edx, dword [esi + 0xc8]
lea ecx, [esp + 0x18]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
push eax
push 0x583948
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push 0x584334
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4634b8
mov eax, dword [esi + 0xc8]
lea edx, [esp + 0x18]
push edx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov ecx, dword [esp + 0x20]
mov edi, dword [esp + 0x18]
mov edx, dword [esp + 0x30]
sub ecx, edi
push ecx
push 0x583948
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push 0x584330
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4634ea
mov ecx, dword [esi + 0xc8]
lea eax, [esp + 0x18]
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [esp + 0x24]
sub edx, dword [esp + 0x1c]
push edx
jmp 0x463733
push 0x586534
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463531
mov edx, dword [esi + 0xc8]
lea ecx, [esp + 0x18]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 0x30]
sub eax, ebp
push eax
push 0x583948
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push 0x58652c
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463578
mov eax, dword [esi + 0xc8]
lea edx, [esp + 0x18]
push edx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [esp + 0x24]
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
sub ecx, edi
push ecx
push 0x583948
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push str..title
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4635a6
mov eax, dword [esp + 0x30]
mov ecx, dword [esi + 0xc8]
push 0x180
push eax
push ecx
call dword [sym.imp.USER32.dll_GetWindowTextA]
jmp 0x463b12
push str..modal
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4635cf
mov eax, dword [esi + 0x158]
test eax, eax
mov edx, dword [esp + 0x30]
je 0x4637cd
jmp 0x4637b2
push str..table
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4635ff
mov edx, dword [esp + 0x30]
lea eax, [esi + 0x64]
sub edx, eax
lea ebx, [ebx]
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x4635f0
jmp 0x463b12
push 0x58650c
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463646
mov esi, dword [esi + 0xe0]
test esi, esi
je 0x463b12
lea eax, [esi - 0x1770]
test eax, eax
jle 0x463b12
mov ecx, dword [esp + 0x30]
push eax
push 0x583948
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push str..cancel
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x46367a
mov esi, dword [esi + 0xe4]
test esi, esi
je 0x463b12
lea eax, [esi - 0x1770]
test eax, eax
jle 0x463b12
push eax
jmp 0x46385e
push str..result
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4636c1
mov esi, dword [esi + 0xe8]
test esi, esi
je 0x463b12
lea eax, [esi - 0x1770]
test eax, eax
jle 0x463b12
push eax
mov eax, dword [esp + 0x34]
push 0x583948
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push str..focus
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463769
call dword [sym.imp.USER32.dll_GetFocus]
mov edi, eax
test edi, edi
je 0x463b12
push edi
call dword [sym.imp.USER32.dll_GetParent]
cmp eax, dword [esi + 0xc8]
jne 0x463b12
push edi
mov edi, dword [sym.imp.USER32.dll_GetDlgCtrlID]
call edi
test eax, eax
je 0x463b12
mov ecx, dword [esi + 0x1a8]
test ecx, ecx
je 0x46374b
cmp eax, 0x65
jne 0x46374b
mov ecx, dword [esi + 0xfdc]
imul ecx, ecx, 0x5c
mov edx, dword [ecx + esi + 0x1a8]
push edx
call edi
sub eax, 0x1770
push eax
mov eax, dword [esp + 0x34]
push 0x583948
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
mov ecx, dword [esp + 0x30]
add eax, 0xffffe890
push eax
push 0x583948
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push str..active
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x4637ec
call dword [sym.imp.USER32.dll_GetFocus]
mov edi, eax
test edi, edi
je 0x46379c
mov ebp, dword [esi + 0xc8]
push edi
call dword [sym.imp.USER32.dll_GetParent]
cmp eax, ebp
je 0x4637ae
cmp edi, ebp
je 0x4637ae
call dword [sym.imp.USER32.dll_GetActiveWindow]
test eax, eax
je 0x4637c9
cmp eax, dword [esi + 0xc8]
jne 0x4637c9
mov edx, dword [esp + 0x30]
mov eax, dword [str._true]
mov dword [edx], eax
mov cx, word [0x583924]
mov word [edx + 4], cx
jmp 0x463b12
mov edx, dword [esp + 0x30]
mov eax, dword [str._false]
mov dword [edx], eax
mov cx, word [0x583914]
mov word [edx + 4], cx
mov al, byte [0x583916]
mov byte [edx + 6], al
jmp 0x463b12
push str..tab
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463841
mov eax, dword [esi + 0x1a8]
test eax, eax
je 0x463b12
mov ecx, dword [esi + 0xfdc]
imul ecx, ecx, 0x5c
mov edx, dword [ecx + esi + 0x1a8]
push edx
call dword [sym.imp.USER32.dll_GetDlgCtrlID]
sub eax, 0x1770
push eax
mov eax, dword [esp + 0x34]
push 0x583948
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
push str..hwnd
push edi
call fcn.005809c6
add esp, 8
test eax, eax
jne 0x463b12
mov ecx, dword [esi + 0xc8]
push ecx
mov edx, dword [esp + 0x34]
push 0x583948
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
jmp 0x463b12
mov edx, dword [esp + 0x30]
mov eax, esi
sub edx, esi
mov edi, edi
mov cl, byte [eax]
mov byte [eax + edx], cl
inc eax
test cl, cl
jne 0x463880
jmp 0x463b12
mov ecx, dword [esp + 0x3c]
test ecx, ecx
je 0x4638b2
mov edx, 0x5a7240
mov ecx, 0x67f
call fcn.0041d620
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret 0x1c
mov edx, dword [eax]
mov eax, edx
lea esi, [eax + 1]
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4638c0
sub eax, esi
cmp eax, 0x5a
jbe 0x4638d1
mov byte [edx + 0x5a], cl
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax]
call fcn.004f4570
test eax, eax
je 0x46390c
mov ecx, dword [ebx + 0x40]
mov edx, dword [ecx]
push edx
xor edx, edx
mov ecx, 0x680
call fcn.0041d620
push eax
push 0x5a7240
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret 0x1c
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax]
call fcn.00459980
test eax, eax
je 0x463947
mov ecx, dword [ebx + 0x40]
mov edx, dword [ecx]
push edx
xor edx, edx
mov ecx, 0x681
call fcn.0041d620
push eax
push 0x5a7240
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret 0x1c
call fcn.004597b0
mov edi, eax
test edi, edi
jne 0x463969
mov edx, dword [esp + 0x38]
push 8
mov ecx, ebx
call fcn.00479d70
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 0x1c
mov eax, dword [ebx + 8]
cmp eax, ebp
jne 0x46399c
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax]
mov edx, edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x463977
mov ecx, dword [ebx + 0x40]
mov ecx, dword [ecx]
lea edx, [edi + 0x64]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x463990
jmp 0x4639ea
cmp eax, 2
jl 0x4639ea
mov edx, dword [ebx + 0x40]
mov ecx, dword [edx]
mov edx, edi
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4639a8
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax + 0x40]
mov edx, dword [ecx]
mov eax, edx
lea esi, [eax + 1]
nop
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x4639c0
sub eax, esi
cmp eax, 0x5a
jbe 0x4639d1
mov byte [edx + 0x5a], cl
mov edx, dword [ebx + 0x40]
mov eax, dword [edx + 0x40]
mov ecx, dword [eax]
lea edx, [edi + 0x64]
lea esp, [esp]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x4639e0
mov ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x44]
mov dword [edi + 0xffc], ecx
mov ecx, edi
mov dword [edi + 0xc8], 0
mov dword [edi + 0x1004], esi
call fcn.0045b320
test eax, eax
jne 0x463a3e
mov ecx, edi
call fcn.004616c0
mov al, byte [0x5a7240]
test al, al
jne 0x4638a6
mov edx, dword [esp + 0x38]
push 6
mov ecx, ebx
call fcn.00479d70
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 0x1c
cmp dword [ebx + 8], 3
jne 0x463ab1
mov edx, dword [ebx + 0x40]
mov eax, dword [edx + 0x40]
mov ecx, dword [eax + 0x40]
mov edx, dword [ecx]
push edx
call fcn.005705cb
add esp, 4
cmp eax, 0xffffffff
jne 0x463a65
call dword [sym.imp.USER32.dll_GetDesktopWindow]
jmp 0x463ab5
cmp eax, 0xfffffffe
jne 0x463a71
mov eax, dword [0x5b4314]
jmp 0x463ab5
cmp eax, 0xfffffffd
jne 0x463a86
mov eax, dword [0x5b4320]
test eax, eax
jne 0x463ab5
mov eax, dword [0x5b4314]
jmp 0x463ab5
cmp eax, 0xfffffffc
jne 0x463a97
call dword [sym.imp.USER32.dll_GetActiveWindow]
test eax, eax
jne 0x463ab5
jmp 0x463a76
mov eax, dword [ebx + 0x40]
mov ecx, dword [eax + 0x40]
mov eax, dword [ecx + 0x40]
mov ecx, dword [eax]
mov edx, esi
call fcn.004e2e60
test eax, eax
je 0x463ab1
mov eax, dword [eax]
jmp 0x463ab5
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
mov dword [edi + 0xec], ecx
mov ecx, edi
mov dword [edi + 0xcc], eax
call fcn.00462830
test eax, eax
mov ecx, edi
jg 0x463b0d
call fcn.004616c0
mov al, byte [0x5a7240]
test al, al
jne 0x463b01
mov edx, dword [ebx + 0x40]
mov eax, dword [edx]
push eax
xor edx, edx
mov ecx, 0x682
call fcn.0041d620
push eax
push 0x5a7240
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0xc
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x18
ret 0x1c
call fcn.004616c0
mov eax, dword [ebx + 8]
test eax, eax
jle 0x463b39
mov esi, dword [esp + 0x14]
lea ecx, [ecx]
mov edx, dword [ebx + 0x40]
mov ecx, dword [esi]
call fcn.004c7fe0
mov dword [esi], eax
mov ecx, dword [ebx + 8]
dec ecx
mov eax, ecx
test eax, eax
mov dword [ebx + 8], ecx
jg 0x463b20
mov dword [ebx + 8], 0
mov eax, 2
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x18
ret 0x1c