Function at 0x498710
Capabilities:
Get graphical window text

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x529fcd
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x20
mov eax, dword [0x58b18c]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0x800
push 0x951d70
push dword [0x598c20]
call dword [sym.imp.USER32.dll_GetWindowTextA]
mov ecx, 0x951d70
mov dword [ebp - 0x1c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x2c], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x498781
sub ecx, edx
push ecx
push 0x951d70
lea ecx, [ebp - 0x2c]
call fcn.004185e0
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0
call fcn.0049f1c0
push 0x55ac52
push dword [0x598c20]
call dword [sym.imp.USER32.dll_SetWindowTextA]
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x498b6e
mov eax, dword [ebp - 0x18]
lea ecx, [ebp - 0x2c]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
cmovae ecx, edx
cmp esi, 1
jne 0x49883d
mov edx, esi
mov edi, 0x56dba0
sub edx, 4
jb 0x4987f4
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x4987f9
add ecx, 4
add edi, 4
sub edx, 4
jae 0x4987e3
cmp edx, 0xfffffffc
je 0x49882d
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x498826
cmp edx, 0xfffffffd
je 0x49882d
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x498826
cmp edx, 0xfffffffe
je 0x49882d
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x498826
cmp edx, 0xffffffff
je 0x49882d
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x49882d
sbb eax, eax
or eax, 1
jmp 0x49882f
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 2
jne 0x4988b1
mov edx, esi
mov edi, 0x56dba4
sub edx, 4
jb 0x498868
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x49886d
add ecx, 4
add edi, 4
sub edx, 4
jae 0x498857
cmp edx, 0xfffffffc
je 0x4988a1
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x49889a
cmp edx, 0xfffffffd
je 0x4988a1
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x49889a
cmp edx, 0xfffffffe
je 0x4988a1
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x49889a
cmp edx, 0xffffffff
je 0x4988a1
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x4988a1
sbb eax, eax
or eax, 1
jmp 0x4988a3
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 5
jne 0x49892a
mov edx, esi
mov edi, str._quit
sub edx, 4
jb 0x4988e1
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x4988e6
add ecx, 4
add edi, 4
sub edx, 4
jae 0x4988d0
cmp edx, 0xfffffffc
je 0x49891a
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x498913
cmp edx, 0xfffffffd
je 0x49891a
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x498913
cmp edx, 0xfffffffe
je 0x49891a
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x498913
cmp edx, 0xffffffff
je 0x49891a
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x49891a
sbb eax, eax
or eax, 1
jmp 0x49891c
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 4
jne 0x49899d
mov edx, esi
mov edi, str.quit
sub edx, esi
jb 0x498954
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x498959
add ecx, 4
add edi, 4
sub edx, 4
jae 0x498943
cmp edx, 0xfffffffc
je 0x49898d
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x498986
cmp edx, 0xfffffffd
je 0x49898d
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x498986
cmp edx, 0xfffffffe
je 0x49898d
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x498986
cmp edx, 0xffffffff
je 0x49898d
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x49898d
sbb eax, eax
or eax, 1
jmp 0x49898f
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 1
jne 0x498a11
mov edx, esi
mov edi, 0x56dbb0
sub edx, 4
jb 0x4989c8
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x4989cd
add ecx, 4
add edi, 4
sub edx, 4
jae 0x4989b7
cmp edx, 0xfffffffc
je 0x498a01
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x4989fa
cmp edx, 0xfffffffd
je 0x498a01
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x4989fa
cmp edx, 0xfffffffe
je 0x498a01
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x4989fa
cmp edx, 0xffffffff
je 0x498a01
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x498a01
sbb eax, eax
or eax, 1
jmp 0x498a03
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 2
jne 0x498a8a
mov edx, esi
mov edi, 0x56dbb4
sub edx, 4
jb 0x498a41
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x498a46
add ecx, 4
add edi, 4
sub edx, 4
jae 0x498a30
cmp edx, 0xfffffffc
je 0x498a7a
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x498a73
cmp edx, 0xfffffffd
je 0x498a7a
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x498a73
cmp edx, 0xfffffffe
je 0x498a7a
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x498a73
cmp edx, 0xffffffff
je 0x498a7a
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x498a7a
sbb eax, eax
or eax, 1
jmp 0x498a7c
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 4
jne 0x498af9
mov edx, esi
mov edi, str.exit
sub edx, esi
jb 0x498ab4
mov eax, dword [ecx]
cmp eax, dword [edi]
jne 0x498ab9
add ecx, 4
add edi, 4
sub edx, 4
jae 0x498aa3
cmp edx, 0xfffffffc
je 0x498aed
mov al, byte [ecx]
cmp al, byte [edi]
jne 0x498ae6
cmp edx, 0xfffffffd
je 0x498aed
mov al, byte [ecx + 1]
cmp al, byte [edi + 1]
jne 0x498ae6
cmp edx, 0xfffffffe
je 0x498aed
mov al, byte [ecx + 2]
cmp al, byte [edi + 2]
jne 0x498ae6
cmp edx, 0xffffffff
je 0x498aed
mov al, byte [ecx + 3]
cmp al, byte [edi + 3]
je 0x498aed
sbb eax, eax
or eax, 1
jmp 0x498aef
xor eax, eax
test eax, eax
je 0x498b61
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x2c]
cmp eax, 0x10
lea ecx, [ebp - 0x2c]
cmovae ecx, edx
cmp esi, 5
jne 0x498b65
mov edx, str._exit
sub esi, 4
jb 0x498b22
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x498b27
add ecx, 4
add edx, 4
sub esi, 4
jae 0x498b11
cmp esi, 0xfffffffc
je 0x498b5b
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x498b54
cmp esi, 0xfffffffd
je 0x498b5b
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x498b54
cmp esi, 0xfffffffe
je 0x498b5b
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x498b54
cmp esi, 0xffffffff
je 0x498b5b
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x498b5b
sbb eax, eax
or eax, 1
jmp 0x498b5d
xor eax, eax
test eax, eax
jne 0x498b65
mov al, 1
jmp 0x498b67
xor al, al
mov ecx, 0x598cfd
xchg byte [ecx], al
mov al, byte [0x598cfd]
mov byte [ebp - 0x2d], al
mov ecx, dword [ebp - 0x18]
cmp ecx, 0x10
jb 0x498ba6
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x498b9c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x498bc7
push ecx
push edx
call fcn.004f79ae
add esp, 8
mov al, byte [ebp - 0x2d]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.004f7466
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.005094c8
int3