Function at 0x494da7
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, dword [ebp + 0x10]
mov esi, 0x578f1c
mov edi, 0x578f20
cmp dword [ebx + 8], 0
jne 0x494e0a
push 0x63
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push ebx
mov eax, dword [ebp + 0xc]
push dword [eax]
push dword [ebp + 8]
call fcn.004d58b6
mov dword [0x578f4c], eax
cmp dword [0x578f4c], 1
jne 0x494e00
cmp dword [ebx + 8], 1
je 0x494e00
cmp dword [ebx + 8], 2
je 0x494e00
push 6
push dword [ebp + 0x1c]
push ebx
call fcn.00467663
jmp 0x495af0
mov eax, dword [0x578f4c]
jmp 0x495af0
cmp dword [ebx + 0x34], 0
jne 0x494e1a
mov eax, 2
jmp 0x495af0
cmp dword [ebx + 8], 2
jne 0x494e33
mov edx, dword [ebx + 0x34]
cmp dword [edx + 0x34], 0
jne 0x494e33
mov eax, 2
jmp 0x495af0
mov edx, dword [ebx + 0x34]
cmp dword [edx + 0x1c], 1
je 0x494e46
mov eax, 1
jmp 0x495af0
cmp dword [ebx + 8], 2
jne 0x494e62
mov edx, dword [ebx + 0x34]
mov ecx, dword [edx + 0x34]
cmp dword [ecx + 0x1c], 1
je 0x494e62
mov eax, 1
jmp 0x495af0
mov edx, dword [ebx + 0x34]
cmp dword [edx + 0xc], 0
jne 0x495abe
mov eax, dword [ebx + 8]
cmp eax, 2
jne 0x494e87
mov edx, dword [ebx + 0x34]
mov ecx, dword [edx + 0x34]
cmp dword [ecx + 0xc], 0
jne 0x495abe
cmp eax, 2
jne 0x494ea1
mov eax, dword [ebx + 0x34]
mov edx, dword [eax + 0x34]
push dword [edx]
call fcn.00542dbc
pop ecx
mov dword [0x578f4c], eax
jmp 0x494ed0
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx]
xor edx, edx
mov dl, byte [eax]
test byte [edx*2 + str.________________________________H], 4
je 0x494ec6
mov ecx, dword [ebx + 0x34]
push dword [ecx]
call fcn.00542dbc
pop ecx
mov dword [0x578f4c], eax
jmp 0x494ed0
mov dword [0x578f4c], 0x270f
cmp dword [0x578f4c], 0
jg 0x494fd3
xor eax, eax
mov dword [0x578f4c], eax
mov edx, dword [0x55b3c0]
mov dword [esi], edx
jmp 0x494faf
cmp dword [ebx + 8], 2
jne 0x494f94
mov ecx, dword [esi]
cmp byte [ecx + 0x64c], 2
jne 0x494f4c
mov eax, dword [esi]
mov al, byte [eax + 0x64d]
cmp al, 3
je 0x494f16
cmp al, 4
jne 0x494f4c
push 0x20
mov edx, dword [esi]
add edx, 4
push edx
call fcn.00539518
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
jne 0x494f36
mov ecx, dword [esi]
add ecx, 4
mov dword [edi], ecx
jmp 0x494f38
inc dword [edi]
push dword [edi]
push 0x552f55
push dword [ebp + 0x1c]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x494f79
mov eax, dword [esi]
add eax, 4
mov edx, dword [ebp + 0x1c]
push esi
push edi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
push 0
push dword [ebp + 0x1c]
mov eax, dword [ebx + 0x34]
push dword [eax]
call fcn.00513930
test eax, eax
je 0x494fa5
inc dword [0x578f4c]
jmp 0x494fa5
mov edx, dword [esi]
cmp byte [edx + 0x64c], 9
jne 0x494fa5
inc dword [0x578f4c]
mov ecx, dword [esi]
mov eax, dword [ecx + 0x9d8]
mov dword [esi], eax
cmp dword [esi], 0
jne 0x494ef1
push dword [0x578f4c]
push 0x552f5a
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
cmp dword [0x578f4c], 0x270f
jne 0x495041
mov edx, dword [ebx + 0x34]
mov ecx, dword [edx]
cmp byte [ecx], 0x2d
jne 0x495041
xor eax, eax
mov dword [0x578f4c], eax
xor edx, edx
mov dword [esi], edx
xor ecx, ecx
mov dword [ebp + 8], ecx
mov eax, dword [ebx + 0x34]
mov edx, dword [eax]
cmp byte [edx + 1], 0x31
jne 0x495011
call sub.USER32.dll_GetDesktopWindow
mov dword [ebp + 8], eax
jmp 0x495174
mov ecx, dword [ebx + 0x34]
mov eax, dword [ecx]
mov al, byte [eax + 1]
cmp al, 0x32
jne 0x49502b
mov edx, dword [0x55b3c8]
mov dword [ebp + 8], edx
jmp 0x495174
cmp al, 0x33
jne 0x495174
mov ecx, dword [0x55b3cc]
mov dword [ebp + 8], ecx
jmp 0x495174
xor eax, eax
mov dword [ebp + 8], eax
mov edx, dword [0x55b3c0]
mov dword [esi], edx
jmp 0x49516b
mov ecx, dword [esi]
cmp byte [ecx + 0x64c], 2
jne 0x4950a4
mov eax, dword [esi]
mov al, byte [eax + 0x64d]
cmp al, 3
je 0x49506e
cmp al, 4
jne 0x4950a4
push 0x20
mov edx, dword [esi]
add edx, 4
push edx
call fcn.00539518
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
jne 0x49508e
mov ecx, dword [esi]
add ecx, 4
mov dword [edi], ecx
jmp 0x495090
inc dword [edi]
push dword [edi]
push 0x552f5e
push dword [ebp + 0x1c]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x4950d1
mov eax, dword [esi]
add eax, 4
mov edx, dword [ebp + 0x1c]
push esi
push edi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
cmp dword [0x578f4c], 0x270f
jne 0x49511d
cmp dword [ebx + 8], 2
jne 0x495100
push 0
push dword [ebp + 0x1c]
mov eax, dword [ebx + 0x34]
push dword [eax]
call fcn.00513930
test eax, eax
je 0x49514f
xor edx, edx
mov dword [0x578f4c], edx
jmp 0x49514f
push dword [ebp + 0x1c]
mov ecx, dword [ebx + 0x34]
push dword [ecx]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x49514f
xor eax, eax
mov dword [0x578f4c], eax
jmp 0x49514f
cmp dword [ebx + 8], 2
jne 0x49513e
push 0
push dword [ebp + 0x1c]
mov edx, dword [ebx + 0x34]
push dword [edx]
call fcn.00513930
test eax, eax
je 0x49514f
dec dword [0x578f4c]
jmp 0x49514f
mov ecx, dword [esi]
cmp byte [ecx + 0x64c], 9
jne 0x49514f
dec dword [0x578f4c]
cmp dword [0x578f4c], 0
jg 0x495161
mov eax, dword [esi]
mov edx, dword [eax]
mov dword [ebp + 8], edx
jmp 0x495174
mov ecx, dword [esi]
mov eax, dword [ecx + 0x9d8]
mov dword [esi], eax
cmp dword [esi], 0
jne 0x495053
cmp dword [ebp + 8], 0
jne 0x4951a8
push 0x54bb30
mov edx, dword [ebx + 0x34]
push dword [edx]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4951a8
mov eax, dword [0x54bb2c]
mov dword [esi], eax
test eax, eax
je 0x4951a0
mov edx, dword [eax]
mov dword [ebp + 8], edx
xor ecx, ecx
mov dword [0x578f4c], ecx
cmp dword [ebp + 8], 0
je 0x495a3d
cmp dword [0x578f4c], 0
jne 0x495a3d
cmp dword [ebx + 0x10], 0
je 0x495a3d
push 0x2e
push dword [ebx]
call fcn.005398a0
add esp, 8
mov dword [edi], eax
test eax, eax
je 0x495a3d
cmp dword [esi], 0
je 0x495848
push 0x578f3c
push dword [ebp + 8]
call fcn.005165e0
push 0x552f63
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495223
push dword [0x578f3c]
push 0x552f67
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f6b
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495251
push dword [0x578f40]
push 0x552f6f
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f73
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x49527f
push dword [0x578f44]
push 0x552f77
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f7b
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4952ad
push dword [0x578f48]
push 0x552f7f
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f83
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4952f8
mov edx, dword [esi]
push dword [edx]
call fcn.00514192
test eax, eax
je 0x4952dd
push 0x578f3c
push dword [0x55b3cc]
call sub.USER32.dll_ClientToScreen
push dword [0x578f3c]
push 0x552f88
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f8c
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495343
mov ecx, dword [esi]
push dword [ecx]
call fcn.00514192
test eax, eax
je 0x495328
push 0x578f3c
push dword [0x55b3cc]
call sub.USER32.dll_ClientToScreen
push dword [0x578f40]
push 0x552f91
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f95
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495373
mov eax, dword [esi]
push dword [eax + 0x750]
push 0x552f9a
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552f9e
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4953a3
mov edx, dword [esi]
push dword [edx + 0x754]
push 0x552fa3
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552fa7
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4953ee
mov ecx, dword [esi]
mov eax, dword [ecx + 0x77c]
test eax, eax
je 0x495abe
push 0x578f24
push 0x18
push eax
call sub.GDI32.dll_GetObjectA
push dword [0x578f28]
push 0x552fac
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552fb0
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495439
mov edx, dword [esi]
mov eax, dword [edx + 0x77c]
test eax, eax
je 0x495abe
push 0x578f24
push 0x18
push eax
call sub.GDI32.dll_GetObjectA
push dword [0x578f2c]
push 0x552fb5
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x552fb9
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495516
cmp dword [0x55a3c0], 0
je 0x495491
mov edx, dword [esi]
cmp byte [edx + 0x664], 0
jne 0x4954b3
push dword [ebp + 8]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x49547c
push dword [ebp + 8]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x4954b3
mov ecx, dword [ebp + 0x14]
mov esi, 0x552fc1
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
mov edx, dword [esi]
push dword [edx]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x4954b3
mov ecx, dword [ebp + 0x14]
mov esi, str.hidden
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push dword [ebp + 8]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x4954cb
push dword [ebp + 8]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x4954e0
mov edx, dword [ebp + 0x14]
mov esi, 0x552fd1
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
push dword [ebp + 8]
call sub.USER32.dll_IsZoomed
test eax, eax
je 0x495501
mov edx, dword [ebp + 0x14]
mov esi, 0x552fdc
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x552fe7
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push 0x552fef
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4955a3
cmp dword [0x55a3c0], 0
je 0x495563
mov edx, dword [esi]
cmp byte [edx + 0x664], 0
je 0x495551
mov ecx, dword [ebp + 0x14]
mov esi, 0x552ff6
mov edi, ecx
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x552ffa
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
jmp 0x495abe
mov edx, dword [esi]
push dword [edx]
call sub.USER32.dll_IsIconic
test eax, eax
je 0x495591
mov ecx, dword [esi]
push dword [ecx]
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x495591
mov eax, dword [ebp + 0x14]
mov esi, 0x552fff
mov edi, eax
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x553003
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
jmp 0x495abe
push str..mdi
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4955eb
push dword [ebp + 8]
call fcn.00514192
test eax, eax
je 0x4955d6
mov edx, dword [ebp + 0x14]
mov esi, 0x55300e
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x553015
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push str..font
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495631
mov edx, dword [esi]
add edx, 0x7a4
mov ecx, dword [ebp + 0x14]
push esi
mov edi, edx
mov esi, ecx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x495abe
push str..fontbold
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x49567b
mov eax, dword [esi]
cmp dword [eax + 0x80c], 0x190
jle 0x495666
mov edx, dword [ebp + 0x14]
mov esi, 0x55302f
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x553036
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push str..fontsize
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4956ab
mov edx, dword [esi]
push dword [edx + 0x808]
push 0x553049
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 6
push 0x55304d
push dword [edi]
call fcn.00539814
add esp, 0xc
test eax, eax
jne 0x49572d
push 0x100
push dword [ebp + 0x1c]
push dword [ebp + 8]
call sub.USER32.dll_GetWindowTextA
mov ecx, dword [ebp + 0x1c]
mov byte [ecx + 0x100], 0
push 0x20
push dword [ebp + 0x1c]
call fcn.00539518
add esp, 8
mov esi, eax
mov dword [edi], esi
test esi, esi
je 0x495abe
inc dword [edi]
mov esi, dword [edi]
cmp byte [esi], 0
je 0x495abe
mov eax, dword [ebp + 0x14]
push esi
push edi
mov edi, esi
mov esi, eax
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop edi
pop esi
jmp 0x495abe
push str..logfile
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495772
mov eax, dword [esi]
add eax, 0x3fc
mov edx, dword [ebp + 0x14]
push esi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
jmp 0x495abe
push str..stamp
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4957cd
mov eax, dword [esi]
cmp dword [eax + 0x65c], 1
je 0x4957a4
mov edx, dword [esi]
cmp dword [edx + 0x65c], 2
jne 0x4957b8
cmp dword [0x557970], 0
je 0x4957b8
mov ecx, dword [ebp + 0x14]
mov esi, 0x553067
mov edi, ecx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x55306e
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push 0x553076
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4957f9
mov edx, dword [esi]
push dword [edx]
push 0x55307d
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push str..ontop
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495abe
push 0xffffffffffffffec
mov ecx, dword [esi]
push dword [ecx]
call sub.USER32.dll_GetWindowLongA
test al, 8
je 0x495833
mov eax, dword [ebp + 0x14]
mov esi, 0x553089
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x553090
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push 0x578f3c
push dword [ebp + 8]
call sub.USER32.dll_GetWindowRect
push 0x553098
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495883
push dword [0x578f3c]
push 0x55309c
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x5530a0
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4958b1
push dword [0x578f40]
push 0x5530a4
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x5530a8
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4958e6
mov edx, dword [0x578f44]
sub edx, dword [0x578f3c]
push edx
push 0x5530ac
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push 0x5530b0
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x49591b
mov ecx, dword [0x578f48]
sub ecx, dword [0x578f40]
push ecx
push 0x5530b4
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push str..hwnd
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495946
push dword [ebp + 8]
push 0x5530bf
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
push str..state
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x4959e8
cmp dword [0x55ad8c], 0
je 0x495985
push dword [ebp + 8]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x495985
mov eax, dword [ebp + 0x14]
mov esi, 0x5530cb
mov edi, eax
mov eax, edi
movsd dword es:[edi], dword [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push dword [ebp + 8]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x49599d
push dword [ebp + 8]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x4959b2
mov edx, dword [ebp + 0x14]
mov esi, str.minimized
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
push dword [ebp + 8]
call sub.USER32.dll_IsZoomed
test eax, eax
je 0x4959d3
mov edx, dword [ebp + 0x14]
mov esi, str.maximized
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, str.normal
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
push str..icon
push dword [edi]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x495abe
push dword [ebp + 8]
call sub.USER32.dll_IsIconic
test eax, eax
je 0x495a2b
push dword [ebp + 8]
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x495a2b
mov edx, dword [ebp + 0x14]
mov esi, 0x5530f6
mov edi, edx
mov eax, edi
movsw word es:[edi], word [esi]
movsb byte es:[edi], byte [esi]
jmp 0x495abe
mov edx, dword [ebp + 0x14]
mov esi, 0x5530fa
mov edi, edx
mov eax, edi
movsd dword es:[edi], dword [esi]
jmp 0x495abe
cmp dword [esi], 0
je 0x495abe
mov edx, dword [esi]
cmp byte [edx + 0x64c], 2
jne 0x495a93
mov ecx, dword [esi]
mov al, byte [ecx + 0x64d]
cmp al, 3
je 0x495a5d
cmp al, 4
jne 0x495a93
push 0x20
mov edx, dword [esi]
add edx, 4
push edx
call fcn.00539518
add esp, 8
mov dword [edi], eax
cmp dword [edi], 0
jne 0x495a7d
mov ecx, dword [esi]
add ecx, 4
mov dword [edi], ecx
jmp 0x495a7f
inc dword [edi]
push dword [edi]
push 0x5530ff
push dword [ebp + 0x14]
call sub.USER32.dll_wsprintfA
add esp, 0xc
jmp 0x495abe
mov eax, dword [esi]
add eax, 4
mov edx, dword [ebp + 0x14]
push esi
mov edi, eax
mov esi, edx
xor eax, eax
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
xchg edi, esi
mov eax, edi
mov edx, ecx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
pop esi
push dword [ebx + 0x34]
mov eax, dword [ebp + 0xc]
push dword [eax]
call fcn.004b103a
mov esi, eax
mov eax, dword [ebp + 0xc]
mov dword [eax], esi
cmp dword [ebx + 8], 2
jne 0x495ae6
push dword [ebx + 0x34]
push esi
call fcn.004b103a
mov edx, dword [ebp + 0xc]
mov dword [edx], eax
xor ecx, ecx
mov dword [ebx + 8], ecx
mov eax, 2
pop edi
pop esi
pop ebx
pop ebp
ret 0x18