Function at 0x445fbf
Capabilities:
Get graphical window text
Hide graphical window

Disassembly:
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov esi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov edi, 0x56f9d4
cmp dword [ebx + 4], 0
jne 0x445fe8
push 0
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov dword [0x56f9d0], 1
xor eax, eax
mov dword [0x56f9e4], eax
xor edx, edx
mov dword [0x56fa18], edx
push 0x158
push 0
push 0x58ca90
call fcn.00539438
add esp, 0xc
mov dword [0x58ca90], 0x80000000
mov dword [0x58ca94], 0x80000000
mov dword [0x58ca98], 0x80000000
mov dword [0x58ca9c], 0x80000000
mov byte [0x58caad], 1
mov byte [0x58caa6], 1
mov eax, dword [ebx + 4]
cmp byte [eax], 0x2d
jne 0x4462cb
cmp byte [eax + 1], 0x74
je 0x4462cb
mov dword [0x56f9e4], eax
push 0x64
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446081
mov byte [0x58caa0], 1
push 0x6f
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x44609c
mov byte [0x58caa1], 1
push 0x73
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4460b7
mov byte [0x58caa2], 1
push 0x53
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4460d2
mov byte [0x58caa3], 1
push 0x65
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4460ed
mov byte [0x58caa7], 1
push 0x45
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446108
mov byte [0x58caa7], 2
push 0x6d
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446123
mov byte [0x58caa8], 1
push 0x43
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446141
mov dword [0x58cab4], 1
push 0x6c
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
cmp dword [0x56f9e0], 0
je 0x4461b3
mov byte [0x58caa9], 1
mov edx, dword [0x56f9e0]
cmp byte [edx + 1], 0
je 0x4461ac
mov ecx, dword [0x56f9e0]
xor eax, eax
mov al, byte [ecx + 1]
test byte [eax*2 + str.________________________________H], 4
je 0x4461ac
mov edx, dword [0x56f9e0]
inc edx
push edx
call fcn.00542dbc
pop ecx
mov byte [0x58caaa], al
cmp byte [0x58caaa], 1
ja 0x4461b3
mov byte [0x58caaa], 1
jmp 0x4461b3
mov byte [0x58caad], 0
push 0x6e
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4461ce
mov byte [0x58caa4], 1
push 0x78
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4461e9
mov byte [0x58caa5], 1
push 0x68
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446204
mov byte [0x58caa6], 0
push 0x70
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446238
cmp byte [0x58caa9], 0
je 0x44622a
cmp byte [0x58caaa], 0
je 0x446238
mov byte [0x58caac], 1
mov byte [0x58caad], 0
push 0x61
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446253
mov byte [0x58caba], 1
push 0x6b
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x44626e
mov byte [0x58cab9], 1
push 0x6b
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
cmp dword [0x56f9e0], 0
je 0x4462a8
mov ecx, dword [0x56f9e0]
cmp byte [ecx + 1], 0x31
jne 0x4462a1
mov byte [0x58cab9], 0
jmp 0x4462a8
mov byte [0x58cab9], 1
inc dword [0x56f9d0]
mov eax, dword [0x56f9d0]
cmp dword [ebx + eax*4], 0
jne 0x4462cb
push 0
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov dword [0x58cabc], 8
mov dword [edi], 1
jmp 0x4462f4
mov edx, dword [edi]
mov ecx, dword [edx*4 + 0x58cab8]
add ecx, 8
mov eax, dword [edi]
mov dword [eax*4 + 0x58cabc], ecx
inc dword [edi]
cmp dword [edi], 0x32
jl 0x4462dd
push 2
push 0x54e33c
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.00539814
add esp, 0xc
test eax, eax
jne 0x446417
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
cmp byte [eax + 2], 0
jne 0x446337
mov dword [0x56fa18], 1
jmp 0x4463f3
xor edx, edx
mov dword [edi], edx
xor ecx, ecx
mov dword [0x58cabc], ecx
push 0x54e340
mov eax, dword [0x56f9d0]
mov edx, dword [ebx + eax*4]
add edx, 2
push edx
call fcn.00539970
add esp, 8
mov dword [0x56f9e0], eax
jmp 0x4463e6
push dword [0x56f9e0]
call fcn.00542dbc
pop ecx
mov ecx, dword [edi]
mov dword [ecx*4 + 0x58cabc], eax
mov eax, dword [edi]
cmp dword [eax*4 + 0x58cabc], 0
jg 0x446394
mov edx, dword [edi]
xor ecx, ecx
mov dword [edx*4 + 0x58cabc], ecx
jmp 0x4463f3
cmp dword [edi], 0
je 0x4463c0
mov eax, dword [edi]
mov edx, dword [eax*4 + 0x58cabc]
mov ecx, dword [edi]
cmp edx, dword [ecx*4 + 0x58cab8]
jg 0x4463c0
mov eax, dword [edi]
mov edx, dword [eax*4 + 0x58cab8]
inc edx
mov ecx, dword [edi]
mov dword [ecx*4 + 0x58cabc], edx
inc dword [edi]
cmp dword [edi], 0x32
jge 0x4463f3
mov eax, dword [edi]
xor edx, edx
mov dword [eax*4 + 0x58cabc], edx
push 0x54e343
push 0
call fcn.00539970
add esp, 8
mov dword [0x56f9e0], eax
cmp dword [0x56f9e0], 0
jne 0x446366
inc dword [0x56f9d0]
mov ecx, dword [0x56f9d0]
cmp dword [ebx + ecx*4], 0
jne 0x446417
push 0
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov eax, dword [0x56f9d0]
mov edx, dword [ebx + eax*4]
cmp byte [edx], 0x2b
jne 0x44657c
push 0x74
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446445
inc dword [0x58cab0]
push 0x66
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446462
add dword [0x58cab0], 2
push 0x6e
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446480
add dword [0x58cab0], 4
push 0x78
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x44649e
add dword [0x58cab0], 8
push 0x73
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4464bb
add dword [0x58cab0], 0x10
push 0x62
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4464d9
add dword [0x58cab0], 0x20
push 0x6c
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4464f7
add dword [0x58cab0], 0x40
push 0x4c
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446517
add dword [0x58cab0], 0x80
push 0x65
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446538
add dword [0x58cab0], 0x100
push 0x64
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446559
add dword [0x58cab0], 0x200
inc dword [0x56f9d0]
mov eax, dword [0x56f9d0]
cmp dword [ebx + eax*4], 0
jne 0x44657c
push 0
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.005395b8
pop ecx
cmp eax, 0x5a
jbe 0x44659d
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
mov byte [eax + 0x5a], 0
mov edx, dword [0x56f9d0]
mov dword [0x56f9c8], edx
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
cmp byte [eax], 0x3d
jne 0x4466c0
mov edx, dword [0x56f9d0]
mov ecx, dword [ebx + edx*4]
cmp byte [ecx + 1], 0
je 0x4466c0
xor eax, eax
mov dword [0x56fa3c], eax
push dword [0x54cbf8]
call fcn.00427805
test eax, eax
je 0x446623
mov edx, dword [0x54cbf8]
cmp dword [edx + 0x51c], 0
je 0x446623
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
inc eax
push eax
mov edx, dword [0x54cbf8]
add edx, 0x3f0
push edx
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x446623
mov ecx, dword [0x54cbf8]
mov dword [0x56fa3c], ecx
cmp dword [0x56fa3c], 0
jne 0x44668a
mov eax, dword [0x54cbf4]
mov dword [0x56fa3c], eax
jmp 0x446666
mov edx, dword [0x56f9d0]
mov ecx, dword [ebx + edx*4]
inc ecx
push ecx
add eax, 0x3f0
push eax
call fcn.0053977c
add esp, 8
test eax, eax
je 0x44666f
mov eax, dword [0x56fa3c]
mov edx, dword [eax + 0x87c]
mov dword [0x56fa3c], edx
mov eax, dword [0x56fa3c]
test eax, eax
jne 0x446638
cmp dword [0x56fa3c], 0
jne 0x44668a
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov edx, dword [0x56fa3c]
push dword [edx]
call fcn.00516145
mov dword [0x56f9dc], eax
cmp dword [0x56f9dc], 0
jne 0x446851
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
cmp byte [eax], 0x22
jne 0x4467d7
push 0
push 0x104
push dword [ebp + 0x14]
push dword [0x56f9d0]
push ebx
call fcn.004d670d
mov dword [0x56f9d0], eax
cmp dword [0x56f9d0], 0
jge 0x446708
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
push dword [ebp + 0x14]
call fcn.005160e8
mov dword [0x56f9dc], eax
cmp dword [0x56f9dc], 0
jne 0x44676c
mov edx, dword [ebp + 0x14]
cmp byte [edx], 0x40
jne 0x446734
push dword [ebp + 0x14]
call fcn.005395b8
pop ecx
cmp eax, 1
ja 0x446746
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
push 0x54bb30
push dword [ebp + 0x14]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x44676c
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
mov ecx, dword [ebp + 0x14]
cmp byte [ecx], 0x40
jne 0x446851
mov eax, dword [0x56f9c8]
mov edx, dword [ebx + eax*4]
mov ecx, dword [ebp + 0x14]
push esi
push edi
mov esi, edx
mov edi, 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 edi
pop esi
push 0x20
mov eax, dword [0x56f9c8]
push dword [ebx + eax*4]
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
cmp dword [0x56f9e0], 0
je 0x446851
mov edx, dword [0x56f9e0]
mov byte [edx], 0
jmp 0x446851
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.005160e8
mov dword [0x56f9dc], eax
cmp dword [0x56f9dc], 0
jne 0x446851
mov eax, dword [0x56f9d0]
mov edx, dword [ebx + eax*4]
cmp byte [edx], 0x40
jne 0x446814
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.005395b8
pop ecx
cmp eax, 1
ja 0x446826
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
push 0x54bb30
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x446851
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
cmp dword [0x56fa18], 0
je 0x44698b
mov eax, dword [0x56f9dc]
test eax, eax
je 0x446981
cmp byte [eax + 0x64c], 9
jne 0x446981
xor edx, edx
mov dword [edi], edx
xor ecx, ecx
mov dword [eax + 0x680], ecx
inc dword [0x56f9d0]
jmp 0x446920
mov eax, dword [0x56f9d0]
push esi
call fcn.00542dbc
pop ecx
mov edx, dword [0x56f9dc]
mov ecx, dword [edi]
mov dword [edx + ecx*4 + 0x680], eax
mov eax, dword [0x56f9dc]
mov edx, dword [edi]
cmp dword [eax + edx*4 + 0x680], 0
jg 0x4468c8
mov ecx, dword [edi]
xor edx, edx
mov dword [eax + ecx*4 + 0x680], edx
jmp 0x446930
mov eax, dword [edi]
test eax, eax
je 0x446903
mov ecx, dword [0x56f9dc]
mov edx, dword [edi]
mov ecx, dword [ecx + edx*4 + 0x680]
mov edx, dword [0x56f9dc]
cmp ecx, dword [edx + eax*4 + 0x67c]
jg 0x446903
mov edx, dword [0x56f9dc]
mov eax, dword [edx + eax*4 + 0x67c]
inc eax
mov ecx, dword [edi]
mov dword [edx + ecx*4 + 0x680], eax
inc dword [edi]
cmp dword [edi], 0x32
jge 0x446930
mov eax, dword [0x56f9dc]
mov edx, dword [edi]
xor ecx, ecx
mov dword [eax + edx*4 + 0x680], ecx
inc dword [0x56f9d0]
mov eax, dword [0x56f9d0]
mov esi, dword [ebx + eax*4]
test esi, esi
jne 0x44688f
mov eax, dword [0x56f9dc]
cmp dword [eax + 0x75c], 0
je 0x446964
push 1
push 0
mov edx, dword [0x56f9dc]
push dword [edx + 0x75c]
call sub.USER32.dll_InvalidateRect
mov ecx, dword [0x56f9dc]
push dword [ecx + 0x75c]
call sub.USER32.dll_UpdateWindow
push 1
push 0
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_InvalidateRect
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_UpdateWindow
mov eax, 1
jmp 0x447add
inc dword [0x56f9d0]
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446aa1
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.004d5474
test eax, eax
je 0x446aa1
mov eax, dword [0x56f9d0]
cmp dword [ebx + eax*4 + 4], 0
je 0x446aa1
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4 + 4]
call fcn.004d5474
test eax, eax
je 0x446aa1
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00542dbc
pop ecx
mov dword [0x58ca90], eax
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4 + 4]
call fcn.00542dbc
pop ecx
mov dword [0x58ca94], eax
add dword [0x56f9d0], 2
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446aa1
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.004d5474
test eax, eax
je 0x446aa1
mov eax, dword [0x56f9d0]
cmp dword [ebx + eax*4 + 4], 0
je 0x446aa1
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4 + 4]
call fcn.004d5474
test eax, eax
je 0x446aa1
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00542dbc
pop ecx
mov dword [0x58ca98], eax
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4 + 4]
call fcn.00542dbc
pop ecx
mov dword [0x58ca9c], eax
cmp dword [0x56f9e4], 0
je 0x446a9a
push 0x66
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446a9a
mov byte [0x58cab8], 1
add dword [0x56f9d0], 2
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446acf
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*4]
cmp byte [eax], 0x2f
jne 0x446acf
mov edx, dword [0x56f9d0]
mov dword [0x56f9cc], edx
inc dword [0x56f9d0]
jmp 0x446ad7
xor ecx, ecx
mov dword [0x56f9cc], ecx
xor eax, eax
mov dword [0x56fa14], eax
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446c56
mov ecx, dword [0x56f9d0]
mov dword [0x56fa44], ecx
jmp 0x446b02
inc dword [0x56fa44]
mov eax, dword [0x56fa44]
cmp dword [ebx + eax*4 + 4], 0
jne 0x446afc
mov edx, dword [0x56fa44]
mov dword [edi], edx
jmp 0x446c48
mov byte [esi], 0
push ebx
push esi
push dword [edi]
call fcn.004d5691
xor ecx, ecx
mov dword [0x56fa48], ecx
push 0x20
push esi
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
mov eax, dword [0x56f9e0]
test eax, eax
je 0x446b6d
inc eax
push eax
call fcn.004d5474
test eax, eax
je 0x446b6d
push dword [0x56f9e0]
call fcn.00542dbc
pop ecx
mov dword [0x56fa48], eax
mov edx, dword [0x56f9e0]
mov byte [edx], 0
cmp byte [esi], 0x22
jne 0x446baf
push 0x22
lea ecx, [esi + 1]
push ecx
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
cmp dword [0x56f9e0], 0
je 0x446baf
mov eax, dword [0x56f9e0]
mov byte [eax], 0
lea edx, [esi + 1]
push edx
call fcn.005395b8
pop ecx
inc eax
push eax
lea ecx, [esi + 1]
push ecx
push esi
call fcn.005393ec
add esp, 0xc
push 0x54e346
push esi
call fcn.0041d5ea
mov dword [0x56fa40], eax
cmp dword [0x56fa40], 0
jne 0x446bd8
push str..ico
push esi
call fcn.0041d5ea
mov dword [0x56fa40], eax
cmp dword [0x56fa40], 0
jne 0x446bf1
push str..dll
push esi
call fcn.0041d5ea
mov dword [0x56fa40], eax
cmp dword [0x56fa40], 0
je 0x446c46
mov eax, dword [edi]
xor edx, edx
mov dword [ebx + eax*4], edx
push esi
push esi
call fcn.0041cd2d
test eax, eax
jne 0x446c1e
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
push dword [0x56fa48]
push esi
push dword [0x55b3c4]
call sub.SHELL32.dll_ExtractIconA
mov edi, eax
mov dword [0x56fa14], edi
cmp edi, 1
jne 0x446c56
xor eax, eax
mov dword [0x56fa14], eax
jmp 0x446c56
dec dword [edi]
mov edx, dword [edi]
cmp edx, dword [0x56f9d0]
jge 0x446b1b
mov ecx, dword [ebp + 0x14]
mov byte [ecx], 0
mov eax, dword [0x56f9d0]
cmp dword [ebx + eax*4], 0
je 0x446d83
push 0x54e358
mov edx, dword [0x56f9d0]
push dword [ebx + edx*4]
call fcn.0053977c
add esp, 8
test eax, eax
je 0x446c9f
push 0x54e35b
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.0053977c
add esp, 8
test eax, eax
jne 0x446caa
inc dword [0x56f9d0]
jmp 0x446d83
mov eax, dword [0x56f9d0]
mov edx, dword [ebx + eax*4]
cmp byte [edx], 0x40
jne 0x446cf1
mov ecx, dword [0x56f9d0]
mov eax, dword [ebx + ecx*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
inc dword [0x56f9d0]
jmp 0x446d83
mov eax, dword [0x56f9d0]
mov edx, dword [ebx + eax*4]
cmp byte [edx], 0x22
je 0x446d26
push 0x2e
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446d83
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
call fcn.004d560d
test eax, eax
jne 0x446d83
push 0
push 0x104
push dword [ebp + 0x14]
push dword [0x56f9d0]
push ebx
call fcn.004d670d
mov dword [0x56f9d0], eax
cmp dword [0x56f9d0], 0
jge 0x446d5c
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
push dword [ebp + 0x14]
push dword [ebp + 0x14]
call fcn.0041cd2d
test eax, eax
jne 0x446d7d
push 3
push 0
push dword [ebx]
push 0
call fcn.00467118
jmp 0x447add
inc dword [0x56f9d0]
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446e4c
mov byte [esi], 0
jmp 0x446dd2
mov ecx, dword [0x56f9d0]
push eax
call fcn.004d5474
test eax, eax
jne 0x446ddf
cmp byte [esi], 0
je 0x446dbb
push 0x54e35f
push esi
call fcn.005394dc
add esp, 8
mov eax, dword [0x56f9d0]
push dword [ebx + eax*4]
push esi
call fcn.005394dc
add esp, 8
inc dword [0x56f9d0]
mov edx, dword [0x56f9d0]
mov eax, dword [ebx + edx*4]
test eax, eax
jne 0x446d98
push esi
call fcn.004fef5f
cmp byte [esi], 0
je 0x446e4c
push 0x54e362
push esi
call fcn.005394dc
add esp, 8
mov edx, dword [0x56f9d0]
cmp dword [ebx + edx*4], 0
je 0x446e18
mov ecx, dword [0x56f9d0]
push dword [ebx + ecx*4]
push esi
call fcn.005394dc
add esp, 8
jmp 0x446e26
push 0x54e365
push esi
call fcn.005394dc
add esp, 8
push esi
mov edi, esi
mov esi, 0x58cb84
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
xor edi, edi
cmp dword [0x56f9dc], 0
jne 0x446f19
cmp dword [0x56f9e4], 0
je 0x446e82
push 0x63
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x446e82
mov eax, 1
jmp 0x447add
cmp dword [0x58ca90], 0xffffffff
jne 0x446e95
mov dword [0x58ca90], 0x80000000
cmp dword [0x58ca94], 0xffffffff
jne 0x446ea8
mov dword [0x58ca94], 0x80000000
cmp dword [0x58ca98], 0xffffffff
jne 0x446ebb
mov dword [0x58ca98], 0x80000000
cmp dword [0x58ca9c], 0xffffffff
jne 0x446ece
mov dword [0x58ca9c], 0x80000000
push 0
push 0
push 9
mov edx, dword [0x56f9c8]
push dword [ebx + edx*4]
call fcn.00519cb1
mov edi, eax
test edi, edi
jne 0x446eef
xor eax, eax
jmp 0x447add
push edi
call fcn.00516145
mov dword [0x56f9dc], eax
cmp dword [0x56f9dc], 0
jne 0x446f0a
xor eax, eax
jmp 0x447add
mov edx, dword [0x56f9dc]
mov ecx, dword [ebp + 0x18]
mov dword [edx + 0x970], ecx
mov eax, dword [0x56f9dc]
cmp byte [eax + 0x64c], 9
jne 0x447132
cmp dword [0x56f9cc], 0
je 0x447049
mov edx, dword [0x56f9cc]
mov ecx, dword [ebx + edx*4]
push esi
push edi
mov edi, 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 edi
pop esi
mov byte [esi + 0x5a], 0
push 0x54e369
push esi
call fcn.005394dc
add esp, 8
mov eax, dword [0x56f9dc]
cmp byte [eax + 0x974], 0
je 0x446fa2
mov edx, dword [0x56f9dc]
add edx, 0x974
push edx
push esi
call fcn.0053977c
add esp, 8
test eax, eax
je 0x447049
mov ecx, dword [0x56f9dc]
add ecx, 0x974
push esi
push edi
mov edi, esi
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 edi
pop esi
mov eax, dword [0x56f9dc]
add eax, 0x974
push eax
push 0
push 0xc
mov edx, dword [0x56f9dc]
push dword [edx + 0x758]
call sub.USER32.dll_SendMessageA
mov ecx, dword [0x56f9dc]
add ecx, 0x974
push ecx
call fcn.005395b8
pop ecx
push eax
mov eax, dword [0x56f9dc]
add eax, 0x974
push eax
call fcn.005395b8
pop ecx
push eax
push 0xb1
mov edx, dword [0x56f9dc]
push dword [edx + 0x758]
call sub.USER32.dll_SendMessageA
push 0
push 0
push 0xb7
mov ecx, dword [0x56f9dc]
push dword [ecx + 0x758]
call sub.USER32.dll_SendMessageA
mov eax, dword [ebp + 0x14]
cmp byte [eax], 0
je 0x447087
mov edx, dword [0x56f9dc]
add edx, 0x868
mov ecx, dword [ebp + 0x14]
push esi
push edi
mov esi, edx
mov edi, 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 edi
pop esi
jmp 0x4470cf
mov eax, dword [0x56f9dc]
cmp byte [eax + 0x868], 0
jne 0x4470cf
mov edx, dword [0x56f9dc]
add edx, 0x868
mov ecx, dword [0x56f9dc]
add ecx, 4
push esi
push edi
mov esi, edx
mov edi, 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 edi
pop esi
cmp dword [0x56fa14], 0
je 0x447132
mov eax, dword [0x56f9dc]
cmp dword [eax + 0x81c], 0
je 0x4470f7
mov edx, dword [0x56f9dc]
push dword [edx + 0x81c]
call sub.USER32.dll_DestroyIcon
mov ecx, dword [0x56f9dc]
mov eax, dword [0x56fa14]
mov dword [ecx + 0x81c], eax
push dword [0x56fa14]
push 1
push 0x80
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_SendMessageA
call fcn.00500c40
push dword [0x56f9dc]
call fcn.005010e4
cmp dword [0x56f9e4], 0
je 0x447152
push 0x67
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
jmp 0x44715a
xor ecx, ecx
mov dword [0x56f9e0], ecx
cmp dword [0x56f9e0], 0
je 0x447289
mov byte [0x56fa4c], 1
inc dword [0x56f9e0]
mov eax, dword [0x56f9e0]
cmp byte [eax], 0
je 0x4471c5
mov edx, dword [0x56f9e0]
xor ecx, ecx
mov cl, byte [edx]
test byte [ecx*2 + str.________________________________H], 4
je 0x4471c5
push dword [0x56f9e0]
call fcn.00542dbc
pop ecx
mov byte [0x56fa4c], al
cmp byte [0x56fa4c], 0
ja 0x4471b5
mov byte [0x56fa4c], 0
jmp 0x4471c5
cmp byte [0x56fa4c], 3
jbe 0x4471c5
mov byte [0x56fa4c], 3
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x4471e6
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x447254
mov ecx, dword [0x56f9dc]
mov al, byte [0x56fa4c]
mov byte [ecx + 0x64e], al
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_IsWindowVisible
test eax, eax
je 0x44723e
mov ecx, dword [0x56f9dc]
cmp byte [ecx + 0x64e], 0
jne 0x447231
push 0x37
push 0
push 0
push 0
push 0
push 0
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_SetWindowPos
jmp 0x44723e
push 0
push dword [0x56f9dc]
call fcn.0047f28c
cmp dword [0x55a3c0], 0
je 0x447289
push dword [0x56f9dc]
call fcn.005010e4
jmp 0x447289
cmp dword [0x55a3c0], 0
je 0x447289
mov edx, dword [0x56f9dc]
mov ecx, dword [edx]
cmp ecx, dword [0x55b3d4]
je 0x447289
mov eax, dword [0x56f9dc]
mov dl, byte [0x56fa4c]
mov byte [eax + 0x64e], dl
push dword [0x56f9dc]
call fcn.005010e4
test edi, edi
je 0x447297
mov eax, 1
jmp 0x447add
cmp dword [0x56f9e4], 0
je 0x4472fb
push 0x63
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4472fb
mov edx, dword [0x56f9dc]
cmp byte [edx + 0x652], 0
jne 0x4472f1
mov ecx, dword [0x56f9dc]
cmp byte [ecx + 0x64c], 1
je 0x4472f1
mov eax, dword [0x56f9dc]
mov byte [eax + 0x652], 1
push 0
push 0
push 0x10
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_SendMessageA
mov eax, 1
jmp 0x447add
mov edx, dword [0x56f9dc]
cmp byte [edx + 0x64c], 9
jne 0x447429
cmp dword [0x56f9e4], 0
je 0x447429
push 0x6b
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447429
mov ecx, dword [0x56f9dc]
mov al, byte [0x58cab9]
mov byte [ecx + 0x66a], al
push 0x180
push dword [ebp + 0x14]
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_GetWindowTextA
push 0x20
push dword [ebp + 0x14]
call fcn.00539518
add esp, 8
mov dword [0x56f9e0], eax
mov ecx, dword [0x56f9dc]
cmp byte [ecx + 0x66a], 0
je 0x4473ca
mov eax, dword [0x56f9dc]
add eax, 5
push esi
mov edi, 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 esi
cmp dword [0x56f9e0], 0
je 0x4473bb
push dword [0x56f9e0]
push esi
call fcn.005394dc
add esp, 8
push esi
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_SetWindowTextA
jmp 0x447419
mov edx, dword [0x56f9dc]
add edx, 4
push esi
mov edi, 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
cmp dword [0x56f9e0], 0
je 0x44740c
push dword [0x56f9e0]
push esi
call fcn.005394dc
add esp, 8
push esi
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_SetWindowTextA
cmp dword [0x55a3c0], 0
je 0x447429
push 0
call fcn.005010e4
cmp dword [0x56f9e4], 0
je 0x447468
push 0x77
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447468
mov edx, dword [0x56f9dc]
mov byte [edx + 0x664], 1
cmp dword [0x55a3c0], 0
je 0x447468
call fcn.00500c40
push 0
call fcn.005010e4
mov ecx, dword [0x56f9dc]
cmp byte [ecx + 0x64c], 9
jne 0x4474bb
cmp dword [0x56f9e4], 0
je 0x4474bb
push 0x62
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4474bb
mov eax, dword [0x56f9dc]
cmp byte [eax + 0x64d], 1
jne 0x4474bb
push 0
push 0x54e36c
push 0x425
mov edx, dword [0x56f9dc]
push dword [edx]
call fcn.00515b46
cmp dword [0x56f9e4], 0
je 0x4475af
push 0x6e
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
jne 0x4474f4
push 0x68
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x4475af
cmp dword [0x55a3c0], 0
je 0x447550
mov ecx, dword [0x56f9dc]
push dword [ecx]
call fcn.00500c1e
test eax, eax
je 0x447550
mov eax, dword [0x56f9dc]
push dword [eax]
call fcn.00514192
test eax, eax
je 0x447550
push 0x68
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x44753f
mov edx, dword [0x56f9dc]
mov byte [edx + 0x664], 0
push 1
mov ecx, dword [0x56f9dc]
push dword [ecx]
call fcn.00501b3f
jmp 0x447590
push 0x68
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447581
mov eax, dword [0x56f9dc]
mov byte [eax + 0x664], 0
push 0
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_ShowWindow
jmp 0x447590
push 6
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_ShowWindow
cmp dword [0x55a3c0], 0
je 0x4475a5
call fcn.00500c40
push 0
call fcn.005010e4
mov eax, 1
jmp 0x447add
xor edx, edx
mov dword [0x56f9d8], edx
cmp dword [0x5595ec], 0
je 0x4475eb
call sub.USER32.dll_GetFocus
mov ebx, eax
test ebx, ebx
je 0x4475eb
cmp ebx, dword [0x5595ec]
je 0x4475e1
push ebx
call sub.USER32.dll_GetParent
cmp eax, dword [0x5595ec]
jne 0x4475eb
mov dword [0x56f9d8], 1
cmp dword [0x56f9e4], 0
je 0x44766b
push 0x78
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x44766b
cmp dword [0x55b3d4], 0
je 0x44762e
push dword [0x55b3d4]
call sub.USER32.dll_IsZoomed
test eax, eax
jne 0x44762e
push 3
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_ShowWindow
cmp dword [0x56f9e4], 0
je 0x447661
push 0x61
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447661
cmp dword [0x56f9d8], 0
jne 0x447661
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_BringWindowToTop
mov eax, 1
jmp 0x447add
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x447691
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_IsZoomed
test eax, eax
je 0x44780d
mov dword [0x56f9e8], 0x2c
push 0x56f9e8
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_GetWindowPlacement
cmp dword [0x58ca90], 0xffffffff
jne 0x4476c1
mov edx, dword [0x56fa04]
mov dword [0x58ca90], edx
cmp dword [0x58ca94], 0xffffffff
jne 0x4476d6
mov ecx, dword [0x56fa08]
mov dword [0x58ca94], ecx
cmp dword [0x58ca98], 0xffffffff
jne 0x4476e9
mov dword [0x58ca98], 0x80000000
cmp dword [0x58ca9c], 0xffffffff
jne 0x4476fc
mov dword [0x58ca9c], 0x80000000
cmp dword [0x58ca90], 0x80000000
je 0x4477d4
cmp dword [0x58ca98], 0x80000000
jne 0x447728
mov eax, dword [0x56fa0c]
sub eax, dword [0x56fa04]
mov dword [0x58ca98], eax
cmp dword [0x58ca9c], 0x80000000
jne 0x447746
mov edx, dword [0x56fa10]
sub edx, dword [0x56fa08]
mov dword [0x58ca9c], edx
mov ecx, dword [0x58ca90]
mov dword [0x56fa04], ecx
mov eax, dword [0x58ca94]
mov dword [0x56fa08], eax
mov edx, dword [0x58ca90]
add edx, dword [0x58ca98]
mov dword [0x56fa0c], edx
mov ecx, dword [0x58ca94]
add ecx, dword [0x58ca9c]
mov dword [0x56fa10], ecx
cmp dword [0x55a3c0], 0
je 0x4477c2
mov eax, dword [0x56f9dc]
push dword [eax]
call fcn.00500c1e
test eax, eax
je 0x4477c2
mov edx, dword [0x56f9dc]
push dword [edx]
call fcn.00514192
test eax, eax
je 0x4477c2
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_IsIconic
test eax, eax
je 0x4477c2
xor eax, eax
mov dword [0x56f9f0], eax
push 0x56f9e8
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_SetWindowPlacement
cmp dword [0x56f9e4], 0
je 0x447969
push 0x72
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447969
push 9
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_ShowWindow
jmp 0x447969
push 0x56fa1c
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_GetWindowRect
mov edx, dword [0x56f9dc]
push dword [edx]
call fcn.00514192
test eax, eax
je 0x447843
push 2
push 0x56fa1c
push dword [0x55b3cc]
push 0
call sub.USER32.dll_MapWindowPoints
cmp dword [0x58ca90], 0xffffffff
jne 0x447858
mov ecx, dword [0x56fa1c]
mov dword [0x58ca90], ecx
cmp dword [0x58ca94], 0xffffffff
jne 0x44786b
mov eax, dword [0x56fa20]
mov dword [0x58ca94], eax
cmp dword [0x58ca98], 0xffffffff
jne 0x44787e
mov dword [0x58ca98], 0x80000000
cmp dword [0x58ca9c], 0xffffffff
jne 0x447891
mov dword [0x58ca9c], 0x80000000
cmp dword [0x58ca90], 0x80000000
je 0x447969
cmp dword [0x58ca98], 0x80000000
jne 0x4478bf
mov edx, dword [0x56fa24]
sub edx, dword [0x56fa1c]
mov dword [0x58ca98], edx
cmp dword [0x58ca9c], 0x80000000
jne 0x4478dd
mov ecx, dword [0x56fa28]
sub ecx, dword [0x56fa20]
mov dword [0x58ca9c], ecx
cmp dword [0x56f9e4], 0
je 0x447942
push 0x66
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447942
push 0
push 0x56fa1c
mov eax, dword [0x56f9dc]
push dword [eax]
call fcn.00516353
push 0x56fa2c
mov edx, dword [0x56f9dc]
push dword [edx]
call fcn.005165e0
mov ecx, dword [0x56fa34]
sub ecx, dword [0x56fa24]
add dword [0x58ca98], ecx
mov eax, dword [0x56fa38]
sub eax, dword [0x56fa28]
add dword [0x58ca9c], eax
push 1
push dword [0x58ca9c]
push dword [0x58ca98]
push dword [0x58ca94]
push dword [0x58ca90]
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_MoveWindow
cmp dword [0x56f9e4], 0
je 0x447a2f
push 0x61
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447a2f
cmp dword [0x56f9d8], 0
jne 0x447a2f
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_IsIconic
test eax, eax
je 0x4479ba
push 9
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_ShowWindow
push 8
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_ShowWindow
mov ecx, dword [0x56f9dc]
push dword [ecx]
call fcn.00514192
test eax, eax
je 0x447a09
cmp dword [0x55b3d0], 0
je 0x4479fa
push dword [0x55b3c8]
call sub.USER32.dll_SetForegroundWindow
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_SetActiveWindow
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_BringWindowToTop
jmp 0x447a2f
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_SetForegroundWindow
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_SetActiveWindow
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_BringWindowToTop
cmp dword [0x56f9e4], 0
je 0x447a8d
push 0x6f
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447a8d
mov ecx, dword [0x56f9dc]
push dword [ecx]
call sub.USER32.dll_IsIconic
test eax, eax
jne 0x447a6d
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x447a7c
push 8
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_ShowWindow
push 0
mov ecx, dword [0x56f9dc]
push dword [ecx]
call fcn.005141b2
jmp 0x447ad8
cmp dword [0x56f9e4], 0
je 0x447ad8
push 0x75
push dword [0x56f9e4]
call fcn.00539518
add esp, 8
test eax, eax
je 0x447ad8
mov eax, dword [0x56f9dc]
push dword [eax]
call sub.USER32.dll_IsWindowVisible
test eax, eax
jne 0x447ac9
push 8
mov edx, dword [0x56f9dc]
push dword [edx]
call sub.USER32.dll_ShowWindow
push 1
mov ecx, dword [0x56f9dc]
push dword [ecx]
call fcn.005141b2
mov eax, 1
pop edi
pop esi
pop ebx
pop ebp
ret 0x14