Function at 0x4e9530
Capabilities:
Get graphical window text

Disassembly:
mov eax, 0x126c
call fcn.0051dcc0
mov eax, dword [0x572844]
xor eax, esp
mov dword [esp + 0x1268], eax
mov eax, dword [esp + 0x1284]
push ebx
mov ebx, dword [esp + 0x1274]
push ebp
mov ebp, dword [esp + 0x1288]
push esi
push edi
push str.Profiles_d
mov dword [esp + 0x14], eax
call fcn.004c2b00
mov edi, eax
mov eax, dword [esp + 0x128c]
cmp eax, 0xffffffff
jne 0x4e960f
xor esi, esi
mov eax, edi
test edi, edi
jle 0x4e960f
lea ecx, [ecx]
push esi
push str.Profiles_d
lea eax, [esp + 0x1e0]
push 0x50
push eax
call fcn.00402c90
add esp, 0x10
lea eax, [esp + 0x278]
push 0x200
push 0x54266c
push eax
push 0x5521a4
lea eax, [esp + 0x1e8]
push eax
call fcn.004c3190
mov eax, ebp
lea ecx, [esp + 0x278]
mov dx, word [ecx]
cmp dx, word [eax]
jne 0x4e95fb
test dx, dx
je 0x4e95f7
mov dx, word [ecx + 2]
cmp dx, word [eax + 2]
jne 0x4e95fb
add ecx, 4
add eax, 4
test dx, dx
jne 0x4e95d5
xor eax, eax
jmp 0x4e9600
sbb eax, eax
or eax, 1
test eax, eax
je 0x4e960d
inc esi
cmp esi, edi
jl 0x4e9590
mov eax, edi
jmp 0x4e960f
mov eax, esi
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x4e9629
push 0x50
push ecx
lea eax, [esp + 0xdc]
push eax
call fcn.004b0360
jmp 0x4e9641
push eax
push str.Profiles_d
lea eax, [esp + 0xdc]
push 0x50
push eax
call fcn.00402c90
add esp, 0x10
push ebp
push 0x5521a4
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
mov al, byte [esp + 0x1288]
test al, al
je 0x4e96a8
xor esi, esi
test edi, edi
jle 0x4e96a8
jmp 0x4e9670
push esi
push str.Profiles_d
lea eax, [esp + 0x1e0]
push 0x50
push eax
call fcn.00402c90
add esp, 0x10
lea eax, [esp + 0x1d8]
push 0
push 0x554d74
push eax
call fcn.004c3de0
inc esi
cmp esi, edi
jl 0x4e9670
mov al, byte [esp + 0x1288]
movzx eax, al
push eax
push 0x554d74
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push str.ArcName
lea eax, [esp + 0xd8]
push eax
call fcn.004c27c0
push str.FileNames
lea eax, [esp + 0xd8]
push eax
call fcn.004c27c0
push 0
push str.ImmExec
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
test ebx, ebx
je 0x4e981c
push 0x6c
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push eax
push str.ImmExec
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push 0x6e
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
push eax
push str.AddToMenu
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push 0x67
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
test eax, eax
je 0x4e9773
push 0x800
lea eax, [esp + 0x27c]
push eax
push 0x68
push ebx
call dword [sym.imp.USER32.dll_GetDlgItemTextW]
lea eax, [esp + 0x278]
push eax
push str.ArcName
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push 0x69
push ebx
call dword [sym.imp.USER32.dll_IsDlgButtonChecked]
test eax, eax
je 0x4e981c
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.0051de7f
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.004c3cd0
push esi
call fcn.0051de88
add esp, 4
cmp byte [esp + 0x1284], 0
jne 0x4ea0b1
push 0x800
lea eax, [esp + 0x27c]
mov ecx, 0x5a84b0
push eax
call fcn.00452420
lea eax, [esp + 0x278]
push eax
push str.CurDir
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
jmp 0x4e982a
cmp byte [esp + 0x1284], 0
jne 0x4ea0b1
push 0x59807c
call fcn.004cc470
mov esi, eax
lea eax, [esp + 0xd4]
push esi
push str.ExclNames
push eax
call fcn.004c3cd0
push esi
call fcn.00525b95
add esp, 4
push 0x59819c
call fcn.004cc470
mov esi, eax
lea eax, [esp + 0xd4]
push esi
push str.StoreNames
push eax
call fcn.004c3cd0
push esi
call fcn.00525b95
xor eax, eax
add esp, 4
cmp dword [0x591fc0], eax
sete al
push eax
push str.UseRAR
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc6c]
push eax
push str.RAR5
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push 0x589ad0
push str.SFXModule
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push 0x551e5c
lea eax, [esp + 0xd8]
push eax
call fcn.004c27c0
push 0x591fca
push str.SFXIcon
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push 0x592fca
push str.SFXLogo
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push 0x593fca
push str.SFXLogo2
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
movzx eax, byte [0x594fca]
push eax
push str.SFXElevate
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push 0x58bad6
push str.CmtFile
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
cmp word [0x58bad6], 0
je 0x4e9962
mov edx, 0x54266c
jmp 0x4e996f
push dword [0x5d869c]
call fcn.004affc0
mov edx, eax
mov ecx, edx
lea esi, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4e9974
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.004c3e60
mov ecx, dword [0x58fc30]
mov eax, dword [0x58fc34]
cmp ecx, 0x7fffffff
jne 0x4e99ce
cmp eax, 0x7fffffff
jne 0x4e99ce
push 0x32
push 0x55556c
lea eax, [esp + 0x17c]
push eax
call fcn.004b0360
jmp 0x4e99df
push 0x32
lea edx, [esp + 0x178]
push edx
push eax
push ecx
call fcn.004b0130
lea eax, [esp + 0x174]
push eax
push str.VolumeSize
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push dword [0x594fd8]
lea eax, [esp + 0xd8]
push str.VolSizeMod
push eax
call fcn.004c3de0
movzx eax, byte [0x58fedb]
push eax
push str.VolPause
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc70]
push eax
push str.OldVolNames
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x58fc08]
lea eax, [esp + 0xd8]
push str.RecVolNumber
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc20]
push eax
push 0x55395c
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc1f]
push eax
push str.Fresh
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fe82]
push eax
push str.SyncFiles
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x58fbf8]
lea eax, [esp + 0xd8]
push str.Overwrite
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc6a]
push eax
push str.Move
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc6f]
push eax
push str.ArcRecBin
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc6e]
push eax
push str.ArcWipe
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x594fd5]
push eax
push str.WipeIfPassword
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x58fc14]
lea eax, [esp + 0xd8]
push str.Solid
push eax
call fcn.004c3de0
movzx eax, byte [0x58fed9]
push eax
push str.Test
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x5d86b7]
push eax
push str.RecEnabled
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x5d86b8]
lea eax, [esp + 0xd8]
push str.RecSize
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc6d]
push eax
push str.EraseDest
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc1d]
push eax
push str.AddArcOnly
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc1c]
push eax
push str.ClearArc
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fed8]
push eax
push 0x542ef4
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x58fbfc]
lea eax, [esp + 0xd8]
push str.Method
push eax
call fcn.004c3de0
cmp dword [0x591fc0], 1
je 0x4e9c48
push dword [0x588acc]
lea eax, [esp + 0xd8]
push str.DictSizeLZ
push eax
call fcn.004c3de0
push dword [0x591fc4]
lea eax, [esp + 0xd8]
push str.DictSize
push eax
call fcn.004c3de0
movzx eax, byte [0x594fcb]
push eax
push 0x555250
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x594fcc]
push eax
push str.WaitForOther
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x590fa4]
lea eax, [esp + 0xd8]
push str.Shutdown
push eax
call fcn.004c3de0
lea eax, [esp + 0xd4]
push eax
call fcn.004e9260
movzx eax, byte [0x58ebea]
push eax
push str.EncryptHeaders
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x595fef]
push eax
push str.ZipLegacyEncrypt
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc69]
push eax
push str.OpenShared
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc5c]
push eax
push str.ProcessOwners
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fe84]
push eax
push str.SaveStreams
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc5d]
push eax
push str.SaveSymLinks
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc5e]
push eax
push str.SaveHardLinks
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x58fc81]
push eax
push str.GenerateArcName
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x590f9c]
lea eax, [esp + 0xd8]
push str.VersionControl
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc00], 3
sete al
push eax
push str.BLAKE2
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc74], 1
sete al
push eax
push str.FileCopies
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x58aad0]
lea eax, [esp + 0xd8]
push str.QuickOpen
push eax
call fcn.004c3de0
push 0x58fc82
push str.GenerateMask
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push dword [0x5d86a4]
lea eax, [esp + 0xd8]
push str.FileTimeMode
push eax
call fcn.004c3de0
push dword [0x5d86a8]
lea eax, [esp + 0xd8]
push str.FileDays
push eax
call fcn.004c3de0
push dword [0x5d86ac]
lea eax, [esp + 0xd8]
push str.FileHours
push eax
call fcn.004c3de0
push dword [0x5d86b0]
lea eax, [esp + 0xd8]
push str.FileMinutes
push eax
call fcn.004c3de0
mov eax, dword [0x5d86a4]
cmp eax, 1
je 0x4e9e9d
cmp eax, 2
je 0x4e9e9d
cmp eax, 5
je 0x4e9e9d
cmp eax, 6
je 0x4e9e9d
cmp eax, 9
je 0x4e9e9d
cmp eax, 0xa
je 0x4e9e9d
cmp eax, 3
je 0x4e9e9d
cmp eax, 4
je 0x4e9e9d
cmp eax, 7
je 0x4e9e9d
cmp eax, 8
je 0x4e9e9d
cmp eax, 0xb
je 0x4e9e9d
cmp eax, 0xc
je 0x4e9e9d
xor eax, eax
xor edx, edx
jmp 0x4e9eaa
push eax
call fcn.004e8b20
mov ecx, eax
call fcn.004b1830
push edx
push eax
push str.FileTimeLimit
lea eax, [esp + 0xe0]
push eax
call fcn.004c3b00
xor eax, eax
cmp dword [0x58fc54], 1
sete al
push eax
push str.ArcTimeOriginal
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc54], 2
sete al
push eax
push str.ArcTimeLatest
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push dword [0x590fa8]
lea eax, [esp + 0xd8]
push str.mtime
push eax
call fcn.004c3de0
push dword [0x590fac]
lea eax, [esp + 0xd8]
push str.ctime
push eax
call fcn.004c3de0
push dword [0x590fb0]
lea eax, [esp + 0xd8]
push str.atime
push eax
call fcn.004c3de0
movzx eax, byte [0x590fb4]
push eax
push str.PreserveAtime
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc24], 3
sete al
push eax
push str.PathsAbs
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc24], 1
sete al
push eax
push str.PathsNone
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
xor eax, eax
cmp dword [0x58fc24], 4
sete al
push eax
push str.PathsAbsDrive
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x595fec]
push eax
push str.SeparateArc
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x595fed]
push eax
push str.SeparateArcDoubleExt
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
movzx eax, byte [0x595fee]
push eax
push str.SeparateArcSubfolders
lea eax, [esp + 0xdc]
push eax
call fcn.004c3de0
push 0x58ff9c
push str.EmailArcTo
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
push 0xc0
lea eax, [esp + 0x18]
push 0
push eax
call fcn.005201d0
add esp, 0xc
xor esi, esi
jmp 0x4ea040
mov eax, dword [esi + 0x5713b0]
lea ecx, [esp + 0x14]
lea edx, [eax + eax*2]
mov eax, dword [esi + 0x5713b4]
add esi, 8
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*4]
mov eax, dword [edx*4 + 0x58fedc]
mov dword [ecx], eax
mov eax, dword [edx*4 + 0x58fee0]
mov dword [ecx + 4], eax
mov eax, dword [edx*4 + 0x58fee4]
mov dword [ecx + 8], eax
cmp esi, 0x40
jb 0x4ea040
push 0xc0
lea eax, [esp + 0x18]
push eax
push str.PackDetails
lea eax, [esp + 0xe0]
push eax
call fcn.004c3e60
push 0x594fec
push str.CmdSwitches
lea eax, [esp + 0xdc]
push eax
call fcn.004c3cd0
mov ecx, dword [esp + 0x1278]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0051dca8
add esp, 0x126c
ret 0x18