Function at 0x4d2570
Capabilities:
Get graphical window text

Disassembly:
mov eax, 0x166c
call fcn.00502fa0
mov eax, dword [0x5513d4]
xor eax, esp
mov dword [esp + 0x1668], eax
mov eax, dword [esp + 0x1684]
push ebx
mov ebx, dword [esp + 0x1674]
push ebp
mov ebp, dword [esp + 0x1688]
push esi
push edi
push str.Profiles_d
mov dword [esp + 0x14], eax
call fcn.004ae210
mov edi, eax
mov eax, dword [esp + 0x168c]
cmp eax, 0xffffffff
jne 0x4d264f
xor esi, esi
mov eax, edi
test edi, edi
jle 0x4d264f
lea ecx, [ecx]
push esi
push str.Profiles_d
lea eax, [esp + 0x1e0]
push 0x50
push eax
call fcn.004027c0
add esp, 0x10
lea eax, [esp + 0x278]
push 0x200
push 0x52452c
push eax
push 0x5356e4
lea eax, [esp + 0x1e8]
push eax
call fcn.004ae6d0
mov eax, ebp
lea ecx, [esp + 0x278]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4d263b
test dx, dx
je 0x4d2637
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4d263b
add ecx, 4
add eax, 4
test dx, dx
jne 0x4d2615
xor eax, eax
jmp 0x4d2640
sbb eax, eax
or eax, 1
test eax, eax
je 0x4d264d
inc esi
cmp esi, edi
jl 0x4d25d0
mov eax, edi
jmp 0x4d264f
mov eax, esi
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x4d2669
push 0x50
push ecx
lea eax, [esp + 0xdc]
push eax
call fcn.0049ce90
jmp 0x4d2681
push eax
push str.Profiles_d
lea eax, [esp + 0xdc]
push 0x50
push eax
call fcn.004027c0
add esp, 0x10
push ebp
push 0x5356e4
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
mov al, byte [esp + 0x1688]
test al, al
je 0x4d26e8
xor esi, esi
test edi, edi
jle 0x4d26e8
jmp 0x4d26b0
push esi
push str.Profiles_d
lea eax, [esp + 0x1e0]
push 0x50
push eax
call fcn.004027c0
add esp, 0x10
lea eax, [esp + 0x1d8]
push 0
push 0x5356f0
push eax
call fcn.004af150
inc esi
cmp esi, edi
jl 0x4d26b0
mov al, byte [esp + 0x1688]
movzx eax, al
push eax
push 0x5356f0
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push str.ArcName
lea eax, [esp + 0xd8]
push eax
call fcn.004ae060
push str.FileNames
lea eax, [esp + 0xd8]
push eax
call fcn.004ae060
push 0
push str.ImmExec
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
test ebx, ebx
je 0x4d285c
push 0x6c
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push eax
push str.ImmExec
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push 0x6e
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push eax
push str.AddToMenu
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push 0x67
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
test eax, eax
je 0x4d27b3
push 0x800
lea eax, [esp + 0x67c]
push eax
push 0x68
push ebx
call dword [sym.imp.USER32.dll_GetDlgItemTextW]
lea eax, [esp + 0x678]
push eax
push str.ArcName
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push 0x69
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
test eax, eax
je 0x4d285c
push 0x6a
push ebx
call dword [sym.imp.USER32.dll_GetDlgItem]
mov ebx, eax
push ebx
call dword [sym.imp.USER32.dll_GetWindowTextLengthW]
xor ecx, ecx
mov edx, 2
lea edi, [eax + 0xa]
mov eax, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.005030d4
add esp, 4
mov esi, eax
push edi
push esi
push ebx
call dword [sym.imp.USER32.dll_GetWindowTextW]
push esi
push str.FileNames
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push esi
call fcn.005030dd
add esp, 4
cmp byte [esp + 0x1684], 0
jne 0x4d30bc
push 0x800
lea eax, [esp + 0x67c]
mov ecx, 0x57de98
push eax
call fcn.00446fa0
lea eax, [esp + 0x678]
push eax
push str.CurDir
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
jmp 0x4d286a
cmp byte [esp + 0x1684], 0
jne 0x4d30bc
push 0x570b5c
call fcn.004b6c60
mov esi, eax
lea eax, [esp + 0xd4]
push esi
push str.ExclNames
push eax
call fcn.004af130
push esi
call fcn.005097b2
add esp, 4
push 0x570c7c
call fcn.004b6c60
mov esi, eax
lea eax, [esp + 0xd4]
push esi
push str.StoreNames
push eax
call fcn.004af130
push esi
call fcn.005097b2
xor eax, eax
add esp, 4
cmp dword [0x56caa0], eax
sete al
push eax
push str.UseRAR
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a74c]
push eax
push str.RAR5
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push 0x5655b8
push str.SFXModule
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push 0x5328c4
lea eax, [esp + 0xd8]
push eax
call fcn.004ae060
push 0x56caaa
push str.SFXIcon
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push 0x56daaa
push str.SFXLogo
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
movzx eax, byte [0x56eaaa]
push eax
push str.SFXElevate
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push 0x5675be
push str.CmtFile
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
cmp word [0x5675be], 0
je 0x4d298b
mov edx, 0x52452c
jmp 0x4d2998
push dword [0x5ae1f4]
call fcn.0049caf0
mov edx, eax
mov ecx, edx
lea esi, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4d29a0
sub ecx, esi
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
push edx
push str.CmtDataWide
lea eax, [esp + 0xe0]
push eax
call fcn.004af170
mov ecx, dword [0x56a710]
mov eax, dword [0x56a714]
cmp ecx, 0x7fffffff
jne 0x4d29fa
cmp eax, 0x7fffffff
jne 0x4d29fa
push 0x32
push 0x535eac
lea eax, [esp + 0x17c]
push eax
call fcn.0049ce90
jmp 0x4d2a0b
push 0x32
lea edx, [esp + 0x178]
push edx
push eax
push ecx
call fcn.0049cc80
lea eax, [esp + 0x174]
push eax
push str.VolumeSize
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push dword [0x56eab8]
lea eax, [esp + 0xd8]
push str.VolSizeMod
push eax
call fcn.004af150
movzx eax, byte [0x56a9ba]
push eax
push str.VolPause
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a751]
push eax
push str.OldVolNames
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56a6ec]
lea eax, [esp + 0xd8]
push str.RecVolNumber
push eax
call fcn.004af150
movzx eax, byte [0x56a700]
push eax
push 0x5342e0
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a6ff]
push eax
push str.Fresh
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a962]
push eax
push str.SyncFiles
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56a6dc]
lea eax, [esp + 0xd8]
push str.Overwrite
push eax
call fcn.004af150
movzx eax, byte [0x56a74a]
push eax
push str.Move
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a74f]
push eax
push str.ArcRecBin
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a74e]
push eax
push str.ArcWipe
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eab5]
push eax
push str.WipeIfPassword
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56a6f4]
lea eax, [esp + 0xd8]
push str.Solid
push eax
call fcn.004af150
movzx eax, byte [0x56a9b9]
push eax
push str.Test
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x5ae20f]
push eax
push str.RecEnabled
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x5ae210]
lea eax, [esp + 0xd8]
push str.RecSize
push eax
call fcn.004af150
movzx eax, byte [0x56a74d]
push eax
push str.EraseDest
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a6fd]
push eax
push str.AddArcOnly
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a6fc]
push eax
push str.ClearArc
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a9b8]
push eax
push 0x524d28
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56a6e0]
lea eax, [esp + 0xd8]
push str.Method
push eax
call fcn.004af150
cmp dword [0x56caa0], 1
je 0x4d2c74
push dword [0x5645b4]
lea eax, [esp + 0xd8]
push str.DictSizeLZ
push eax
call fcn.004af150
push dword [0x56caa4]
lea eax, [esp + 0xd8]
push str.DictSize
push eax
call fcn.004af150
movzx eax, byte [0x56eaab]
push eax
push 0x535ba8
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eaac]
push eax
push str.WaitForOther
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56ba84]
lea eax, [esp + 0xd8]
push str.Shutdown
push eax
call fcn.004af150
lea eax, [esp + 0xd4]
push eax
call fcn.004d22a0
movzx eax, byte [0x5696d2]
push eax
push str.EncryptHeaders
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eac8]
push eax
push str.ZipLegacyEncrypt
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a749]
push eax
push str.OpenShared
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a73c]
push eax
push str.ProcessOwners
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a964]
push eax
push str.SaveStreams
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a73d]
push eax
push str.SaveSymLinks
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a73e]
push eax
push str.SaveHardLinks
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56a761]
push eax
push str.GenerateArcName
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56ba7c]
lea eax, [esp + 0xd8]
push str.VersionControl
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a6e4], 3
sete al
push eax
push str.BLAKE2
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a754], 1
sete al
push eax
push str.FileCopies
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x5665b8]
lea eax, [esp + 0xd8]
push str.QuickOpen
push eax
call fcn.004af150
push 0x56a762
push str.GenerateMask
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push dword [0x5ae1fc]
lea eax, [esp + 0xd8]
push str.FileTimeMode
push eax
call fcn.004af150
push dword [0x5ae200]
lea eax, [esp + 0xd8]
push str.FileDays
push eax
call fcn.004af150
push dword [0x5ae204]
lea eax, [esp + 0xd8]
push str.FileHours
push eax
call fcn.004af150
push dword [0x5ae208]
lea eax, [esp + 0xd8]
push str.FileMinutes
push eax
call fcn.004af150
mov eax, dword [0x5ae1fc]
cmp eax, 1
je 0x4d2ec9
cmp eax, 2
je 0x4d2ec9
cmp eax, 5
je 0x4d2ec9
cmp eax, 6
je 0x4d2ec9
cmp eax, 9
je 0x4d2ec9
cmp eax, 0xa
je 0x4d2ec9
cmp eax, 3
je 0x4d2ec9
cmp eax, 4
je 0x4d2ec9
cmp eax, 7
je 0x4d2ec9
cmp eax, 8
je 0x4d2ec9
cmp eax, 0xb
je 0x4d2ec9
cmp eax, 0xc
je 0x4d2ec9
push 0
push 0
jmp 0x4d2ed8
push eax
call fcn.004d1b70
mov ecx, eax
call fcn.0049e370
push edx
push eax
push str.FileTimeLimit
lea eax, [esp + 0xe0]
push eax
call fcn.004aef50
xor eax, eax
cmp dword [0x56a734], 1
sete al
push eax
push str.ArcTimeOriginal
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a734], 2
sete al
push eax
push str.ArcTimeLatest
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push dword [0x56ba88]
lea eax, [esp + 0xd8]
push str.mtime
push eax
call fcn.004af150
push dword [0x56ba8c]
lea eax, [esp + 0xd8]
push str.ctime
push eax
call fcn.004af150
push dword [0x56ba90]
lea eax, [esp + 0xd8]
push str.atime
push eax
call fcn.004af150
movzx eax, byte [0x56ba94]
push eax
push str.PreserveAtime
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a704], 3
sete al
push eax
push str.PathsAbs
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a704], 1
sete al
push eax
push str.PathsNone
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
xor eax, eax
cmp dword [0x56a704], 4
sete al
push eax
push str.PathsAbsDrive
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eac5]
push eax
push str.SeparateArc
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eac6]
push eax
push str.SeparateArcDoubleExt
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
movzx eax, byte [0x56eac7]
push eax
push str.SeparateArcSubfolders
lea eax, [esp + 0xdc]
push eax
call fcn.004af150
push 0x56aa7c
push str.EmailArcTo
lea eax, [esp + 0xdc]
push eax
call fcn.004af130
push 0xc0
lea eax, [esp + 0x18]
push 0
push eax
call fcn.00505530
add esp, 0xc
xor esi, esi
mov eax, dword [esi + 0x550060]
lea ecx, [esp + 0x14]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x550064]
add esi, 8
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*4]
mov eax, dword [edx*4 + 0x56a9bc]
mov dword [ecx], eax
mov eax, dword [edx*4 + 0x56a9c0]
mov dword [ecx + 4], eax
mov eax, dword [edx*4 + 0x56a9c4]
mov dword [ecx + 8], eax
cmp esi, 0x40
jb 0x4d3062
push 0xc0
lea eax, [esp + 0x18]
push eax
push str.PackDetails
lea eax, [esp + 0xe0]
push eax
call fcn.004af170
mov ecx, dword [esp + 0x1678]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00502f8e
add esp, 0x166c
ret 0x18