Function at 0x45dc80
Capabilities:
Check if file exists
Get geographical location
Identify system language via api
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x880
mov eax, dword [0x4b06f0]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
mov esi, dword [ebp + 8]
push edi
push esi
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x45f5ae
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x660], ax
lea eax, [ebp - 0x65e]
push eax
call fcn.0046fe20
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x868], ax
lea eax, [ebp - 0x866]
push eax
call fcn.0046fe20
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
add esp, 0x18
push esi
push 0x27
push 0x4b6758
push 0x48d8a4
push str.Guid
push str.General
call edi
push esi
push 0x51
push 0x4c94c6
push 0x48d8a4
push str.ProductVersion
push str.General
call edi
push esi
push 0x104
push 0x4b67a6
push 0x48d8a4
push str.ProductName
push str.General
call edi
push esi
push 0x51
push 0x4c92e0
push 0x48d8a4
push str.ProductName
push str.General
call edi
movzx eax, byte [0x4b7600]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push esi
push eax
push 0x49a56c
push str.LiveUpdate
call ebx
mov byte [0x4b7600], al
test al, al
je 0x45dede
push esi
push 0x104
push 0x4b6fe8
push 0x48d8a4
push 0x49a58c
push str.LiveUpdate
call edi
push esi
push 0x104
push 0x4b71f0
push 0x48d8a4
push str.ExeParams
push str.LiveUpdate
call edi
push esi
push 0x104
push 0x4b73f8
push 0x48d8a4
push str.TargetFolder
push str.LiveUpdate
call edi
test eax, eax
je 0x45dde0
push 0x104
push 0x4b73f8
call fcn.00460070
add esp, 8
cmp word [0x4b73f8], 0
jne 0x45de01
push 0x4cb028
push 0x104
push 0x4b73f8
call fcn.00470452
add esp, 0xc
push esi
push dword [0x4b7604]
push str.CopyBinaryFile
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7608]
mov dword [0x4b7604], eax
push str.CheckDate
push str.LiveUpdate
call ebx
push esi
push dword [0x4b760c]
mov dword [0x4b7608], eax
push str.CheckSize
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7610]
mov dword [0x4b760c], eax
push str.Mandatory
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7618]
mov dword [0x4b7610], eax
push str.PromptUser
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7614]
mov dword [0x4b7618], eax
push str.Fail
push str.LiveUpdate
call ebx
push esi
push dword [0x4b761c]
mov dword [0x4b7614], eax
push str.WaitEndFile
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7620]
mov dword [0x4b761c], eax
push str.Resume
push str.LiveUpdate
call ebx
push esi
push dword [0x4b7624]
mov dword [0x4b7620], eax
push str.LinkError
push str.LiveUpdate
call ebx
mov dword [0x4b7624], eax
mov al, byte [0x4b7600]
cmp al, 1
jne 0x45dee9
call fcn.0043d1d0
jmp 0x45df01
push esi
push dword [0x4b783c]
push str.Files
push str.Runtime
call ebx
mov dword [0x4b783c], eax
push esi
push dword [0x4b7844]
push str.CompressFiles
push str.Runtime
call ebx
push esi
push dword [0x4b7848]
mov dword [0x4b7844], eax
push str.CompressType
push str.Runtime
call ebx
push esi
push 0x208
mov dword [0x4b7848], eax
lea eax, [ebp - 0x868]
push eax
push str.WebDownloadUrl
push str.Runtime
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
je 0x45df6d
push 0
push 0x104
lea eax, [ebp - 0x868]
push 0x4b938c
push eax
call fcn.0043b950
add esp, 0x10
push esi
push 0x104
push 0x4b7cf8
push 0x4b7cf8
push str.CmdLine
push str.Runtime
call edi
push esi
push dword [0x4b7854]
push str.DeleteFiles
push str.Runtime
call ebx
push esi
push dword [0x4b7858]
mov dword [0x4b7854], eax
push str.CopyToTemp
push str.Runtime
call ebx
mov dword [0x4b7858], eax
test eax, eax
jne 0x45dfeb
push esi
push 0x104
push 0x4b8108
push 0x4b8108
push str.TargetFolder
push str.Runtime
call edi
push 0x104
push 0x4b8108
call fcn.00460070
add esp, 8
push esi
push 0x104
push 0x4b7af0
push 0x4b7af0
push str.ExeFileName
push str.Runtime
call edi
push esi
push dword [0x4b8f58]
push str.LaunchExe
push str.Runtime
call ebx
push esi
push dword [0x4b97a8]
mov dword [0x4b8f58], eax
push str.LaunchOptions
push str.Runtime
call ebx
push esi
push dword [0x4b8f60]
mov dword [0x4b97a8], eax
push str.ModifyDest
push str.Runtime
call ebx
push esi
push dword [0x4b8f64]
mov dword [0x4b8f60], eax
push str.RestoreFolders
push str.Runtime
call ebx
push esi
push dword [0x4b8f68]
mov dword [0x4b8f64], eax
push str.NeedReboot
push str.Runtime
call ebx
push esi
push dword [0x4b8f6c]
mov dword [0x4b8f68], eax
push str.NeedElevation
push str.Runtime
call ebx
push esi
push dword [0x4b8f74]
mov dword [0x4b8f6c], eax
push str.RunScript
push str.Runtime
call ebx
mov dword [0x4b8f74], eax
test eax, eax
je 0x45e127
push esi
push 0x104
push 0x4b8f7c
push 0x48d8a4
push str.ScriptFile
push str.Runtime
call edi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x250], ax
lea eax, [ebp - 0x24e]
push eax
call fcn.0046fe20
push 0x4b8f7c
lea eax, [ebp - 0x250]
push 0x104
push eax
call fcn.00470452
add esp, 0x18
lea eax, [ebp - 0x250]
push eax
call dword [sym.imp.SHLWAPI.dll_PathStripPathW]
lea eax, [ebp - 0x250]
push eax
push 0x4cff60
push 0x4b8f7c
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
push esi
push dword [0x4b8f78]
push str.ResumeSetup
push str.Runtime
call ebx
push esi
push dword [0x4b8f54]
mov dword [0x4b8f78], eax
push str.WindowStyle
push str.Runtime
call ebx
push esi
push dword [0x4b8f70]
mov dword [0x4b8f54], eax
push str.ProgressBar
push str.Runtime
call ebx
push esi
push dword [0x4b97a4]
mov dword [0x4b8f70], eax
push str.ProgressBarStyle
push str.Runtime
call ebx
push esi
push dword [0x4b7880]
mov dword [0x4b97a4], eax
push str.Percent
push str.Runtime
call ebx
push esi
push dword [0x4b7884]
mov dword [0x4b7880], eax
push str.TrayIcon
push str.Runtime
call ebx
push esi
push dword [0x4b7860]
mov dword [0x4b7884], eax
push str.LanguageSystem
push str.Runtime
call ebx
push esi
push dword [0x4be97c]
mov dword [0x4b7860], eax
push str.LanguageDefault
push str.Runtime
call ebx
push esi
push dword [0x4b7868]
mov dword [0x4be97c], eax
push str.RemoveBracketLang
push str.Runtime
call ebx
push esi
push 0x104
push 0x4b78e8
push 0x48d8a4
push str.ExtraBinaryFile
push str.Runtime
mov dword [0x4b7868], eax
call edi
xor ecx, ecx
cmp ecx, eax
sbb eax, eax
neg eax
mov dword [0x4b789c], eax
je 0x45e244
push esi
push dword [0x4b785c]
push str.CopyBinaryFile
push str.Runtime
call ebx
mov dword [0x4b785c], eax
jmp 0x45e24a
mov dword [0x4b785c], ecx
push esi
push dword [0x4b78c0]
push str.CustomerExpParam
push str.Runtime
call ebx
push esi
push dword [0x4b78c4]
mov dword [0x4b78c0], eax
push str.CustomerExpParam_Hide
push str.Runtime
call ebx
push esi
push 0x104
push 0x4b8728
push 0x48d8a4
push str.TargetFolderParam
push str.Runtime
mov dword [0x4b78c4], eax
call edi
push esi
push dword [0x4b78c8]
push str.LaunchApp
push str.Runtime
call ebx
push esi
push dword [0x4b78cc]
mov dword [0x4b78c8], eax
push str.LaunchApp_Hide
push str.Runtime
call ebx
push esi
push dword [0x4b78d0]
mov dword [0x4b78cc], eax
push str.InstallAvqMsg
push str.Runtime
call ebx
push esi
push dword [0x4b78d4]
mov dword [0x4b78d0], eax
push str.InstallAvqMsg_Hide
push str.Runtime
call ebx
push esi
push dword [0x4b78d8]
mov dword [0x4b78d4], eax
push str.LangSelector_Hide
push str.Runtime
call ebx
push esi
push dword [0x4b78dc]
mov dword [0x4b78d8], eax
push str.LicensesUrl_Hide
push str.Runtime
call ebx
push esi
push 0x104
mov dword [0x4b78dc], eax
lea eax, [ebp - 0x660]
push eax
push 0x48f734
push str.TotFilesSize
push str.Runtime
call edi
lea eax, [ebp - 0x660]
push eax
call fcn.00470e02
add esp, 4
mov dword [0x4be988], eax
mov dword [0x4be98c], edx
push esi
push dword [0x4b99cc]
push str.Resources
push str.Dialogs
call ebx
push esi
mov dword [0x4b99cc], eax
movzx eax, byte [0x4b97a0]
push eax
push str.StatusType
push str.Dialogs
call ebx
push esi
push dword [0x4b7888]
mov byte [0x4b97a0], al
push str.DialogInRun
push str.Dialogs
call ebx
push esi
push dword [0x4b7628]
mov dword [0x4b7888], eax
push str.TimeExec
push str.Dialogs
call ebx
push esi
push dword [0x4b7894]
mov dword [0x4b7628], eax
push str.HideCancelButton
push str.Dialogs
call ebx
push esi
push dword [0x4b7898]
mov dword [0x4b7894], eax
push str.RemoveSystemMenu
push str.Dialogs
call ebx
push esi
push dword [0x4b78e0]
mov dword [0x4b7898], eax
push str.ColorLinkInit
push str.Dialogs
call ebx
push esi
push dword [0x4b78e4]
mov dword [0x4b78e0], eax
push str.ColorLinkVisited
push str.Dialogs
call ebx
push esi
push dword [0x4b78ac]
mov dword [0x4b78e4], eax
push str.MessageBegin
push str.Dialogs
call ebx
push esi
push dword [0x4b78b0]
mov dword [0x4b78ac], eax
push str.MessageMiddle
push str.Dialogs
call ebx
push esi
push dword [0x4b78b4]
mov dword [0x4b78b0], eax
push str.MessageEnd
push str.Dialogs
call ebx
push esi
push dword [0x4b78b8]
mov dword [0x4b78b4], eax
push str.MessageError
push str.Dialogs
call ebx
push esi
push dword [0x4b78bc]
mov dword [0x4b78b8], eax
push str.GlobalMsgError
push str.Dialogs
call ebx
push esi
push 0x104
push 0x4d0988
push 0x48d8a4
push str.LicenseFile
push str.Dialogs
mov dword [0x4b78bc], eax
call edi
push esi
push dword [0x4b7864]
push str.ChoiceLang
push str.Dialogs
call ebx
mov dword [0x4b7864], eax
push esi
push dword [0x4b7870]
push str.Welcome
push str.Dialogs
call ebx
push esi
push dword [0x4b7878]
mov dword [0x4b7870], eax
push str.Customize
push str.Dialogs
call ebx
push esi
push dword [0x4b787c]
mov dword [0x4b7878], eax
push str.Finish
push str.Dialogs
call ebx
push esi
push 0x104
push 0x4b8930
push 0x48d8a4
push str.TargetExe
push str.Dialogs
mov dword [0x4b787c], eax
call edi
push esi
push 0x104
push 0x4b8b38
push 0x48d8a4
push str.TargetParams
push str.Dialogs
call edi
push esi
push 0x104
push 0x4b8d40
push 0x48d8a4
push str.RegKeyExe
push str.Dialogs
call edi
push esi
push dword [0x4b8f48]
push str.TargetOptions
push str.Dialogs
call ebx
push esi
push dword [0x4b8310]
mov dword [0x4b8f48], eax
push str.Logo
push str.Dialogs
call ebx
mov dword [0x4b8310], eax
test eax, eax
je 0x45e5bd
push esi
push 0x104
push 0x4b8314
push 0x48d8a4
push str.LogoFile
push str.Dialogs
call edi
mov eax, dword [0x4b8310]
push esi
push eax
push str.PackImages
push str.Dialogs
call ebx
mov dword [0x4b851c], eax
test eax, eax
je 0x45e620
push esi
push 0x104
push 0x4b8520
push 0x48d8a4
push str.PackImagesFile
push str.Dialogs
call edi
push esi
push dword [0x4b8f4c]
push str.DelayPackImages
push str.Dialogs
call ebx
push esi
push dword [0x4b8f50]
mov dword [0x4b8f4c], eax
push str.TypeEffectPackImages
push str.Dialogs
call ebx
mov dword [0x4b8f50], eax
push esi
xor eax, eax
xorps xmm0, xmm0
push 0x22
mov word [ebp - 0x48], ax
lea eax, [ebp - 0x48]
push eax
push 0x49ad44
push str.Dialogs
movdqu xmmword [ebp - 0x46], xmm0
movdqu xmmword [ebp - 0x36], xmm0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStructW]
test eax, eax
je 0x45e668
push 0
push 0x11
lea eax, [ebp - 0x48]
push 0x4b6fc6
push eax
call fcn.0043b950
add esp, 0x10
mov dword [0x4b786c], eax
push esi
push dword [0x4be998]
push 0x4999a0
push str.GoogleAnalytics
call ebx
mov dword [0x4be998], eax
test eax, eax
je 0x45e825
push esi
push 0x104
push 0x4bedb0
push 0x48d8a4
push str.TrackingId
push str.GoogleAnalytics
call edi
push esi
push dword [0x4bf05c]
push str.NoUpdateProductName
push str.GoogleAnalytics
call ebx
push esi
push 0x51
push 0x4befb8
push 0x48d8a4
push str.ProductName
push str.GoogleAnalytics
mov dword [0x4bf05c], eax
call edi
push esi
push dword [0x4bf104]
push str.NoUpdateProductVersion
push str.GoogleAnalytics
call ebx
push esi
push 0x51
push 0x4bf060
push 0x48d8a4
push str.ProductVersion
push str.GoogleAnalytics
mov dword [0x4bf104], eax
call edi
push esi
push 0x104
push 0x4bf108
push 0x4bf108
push str.Description
push str.GoogleAnalytics
call edi
push esi
push 0x104
push 0x4be9a0
push 0x4be9a0
push str.PrefsFile
push str.GoogleAnalytics
call edi
push esi
push 0x104
push 0x4beba8
push 0x4beba8
push str.RegKey
push str.GoogleAnalytics
call edi
push esi
push 0x65
push 0x4bf91a
push 0x4bf91a
push str.CampaignId
push str.GoogleAnalytics
call edi
push esi
push 0x104
push 0x4bf310
push 0x4bf310
push str.CampaignContent
push str.GoogleAnalytics
call edi
push esi
push 0x65
push 0x4bf518
push 0x4bf518
push str.CampaignName
push str.GoogleAnalytics
call edi
push esi
push 0x65
push 0x4bf5e2
push 0x4bf5e2
push str.CampaignSource
push str.GoogleAnalytics
call edi
push esi
push 0x33
push 0x4bf6ac
push 0x4bf6ac
push str.CampaignMedium
push str.GoogleAnalytics
call edi
push esi
push 0x104
push 0x4bf712
push 0x4bf712
push str.CampaignKeyword
push str.GoogleAnalytics
call edi
push esi
push dword [0x4be99c]
push str.OnlyReg
push str.GoogleAnalytics
call ebx
push 0x4bedb0
push str.ReadConfigFile____TrackingId:__s
mov dword [0x4be99c], eax
call fcn.004699e0
mov eax, dword [0x4be998]
add esp, 8
push eax
push str.ReadConfigFile____GA:__d
call fcn.004699e0
movzx eax, byte [0x4bf9e8]
add esp, 8
push esi
push eax
push 0x49af30
push str.AQTools
call ebx
push esi
push dword [0x4bf9ec]
mov byte [0x4bf9e8], al
push 0x49af50
push str.AQTools
call ebx
push esi
push dword [0x4bf9f0]
mov dword [0x4bf9ec], eax
push 0x49af58
push str.AQTools
call ebx
push esi
push dword [0x4bf9f4]
mov dword [0x4bf9f0], eax
push 0x48fb7c
push str.AQTools
call ebx
push esi
push dword [0x4bf9f8]
mov dword [0x4bf9f4], eax
push str.Aqcts
push str.AQTools
call ebx
push esi
push dword [0x4bf9fc]
mov dword [0x4bf9f8], eax
push str.IAMC
push str.AQTools
call ebx
test eax, eax
je 0x45e8e5
mov eax, dword [0x4b6194]
cmp eax, 5
ja 0x45e8d9
jne 0x45e8e5
cmp dword [0x4b6198], 0
jbe 0x45e8e5
mov dword [0x4bf9fc], 1
jmp 0x45e8ef
mov dword [0x4bf9fc], 0
push esi
push 0xd
push 0x4bfc08
push 0x48d8a4
push str.MasterID
push str.AQTools
call edi
push esi
push 0x104
push 0x4bfc22
push 0x48d8a4
push str.ProductKey
push str.AQTools
call edi
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x458], ax
lea eax, [ebp - 0x456]
push eax
call fcn.0046fe20
add esp, 0xc
lea eax, [ebp - 0x458]
push esi
push 0x104
push eax
push 0x48d8a4
push str.SerialNumber
push str.AQTools
call edi
test eax, eax
je 0x45e9c1
lea ecx, [ebp - 0x458]
lea edx, [ecx + 2]
lea ecx, [ecx]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45e970
sub ecx, edx
sar ecx, 1
inc ecx
cmp ecx, 0x3fffffff
jle 0x45e98c
xor eax, eax
jmp 0x45e9ae
lea edi, [ecx + ecx]
mov eax, edi
call fcn.00470be0
mov eax, esp
lea ecx, [ebp - 0x458]
push 3
push edi
push ecx
push eax
call fcn.0045c170
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push eax
push 0x104
push 0x4bfa00
call fcn.004703fd
add esp, 0xc
push esi
push 0x104
lea eax, [ebp - 0x458]
push eax
push 0x48d8a4
push str.SerialNumberTrial
push str.AQTools
call edi
test eax, eax
je 0x45ea41
lea ecx, [ebp - 0x458]
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45e9f0
sub ecx, edx
sar ecx, 1
inc ecx
cmp ecx, 0x3fffffff
jle 0x45ea0c
xor eax, eax
jmp 0x45ea2e
lea edi, [ecx + ecx]
mov eax, edi
call fcn.00470be0
mov eax, esp
lea ecx, [ebp - 0x458]
push 3
push edi
push ecx
push eax
call fcn.0045c170
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push eax
push 0x104
push 0x4bfb04
call fcn.004703fd
add esp, 0xc
movzx eax, byte [0x4bfe2b]
push esi
push eax
push str.ProductLanguage
push str.AQTools
call ebx
push esi
mov byte [0x4bfe2b], al
movzx eax, byte [0x4bfe2a]
push eax
push str.ProductType
push str.AQTools
call ebx
push esi
mov byte [0x4bfe2a], al
movzx eax, byte [0x4bfe2c]
push eax
push str.ProductVersion
push str.AQTools
call ebx
push esi
mov byte [0x4bfe2c], al
movzx eax, byte [0x4bfe2d]
push eax
push str.InstallMode
push str.AQTools
call ebx
push esi
mov byte [0x4bfe2d], al
movzx eax, byte [0x4bfe2e]
push eax
push str.CompanyCode
push str.AQTools
call ebx
push esi
mov byte [0x4bfe2e], al
movzx eax, byte [0x4c00a8]
push eax
push str.InstallMode
push str.AQToolsSerialV3
call ebx
push esi
mov byte [0x4c00a8], al
movzx eax, byte [0x4c00a7]
push eax
push str.ProductType
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe48]
mov byte [0x4c00a7], al
push str.AlrdySerial
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe30]
mov dword [0x4bfe48], eax
push str.UserNameField
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe34]
mov dword [0x4bfe30], eax
push str.CompanyField
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe38]
mov dword [0x4bfe34], eax
push str.ButtonBuy
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe3c]
mov dword [0x4bfe38], eax
push str.ButtonPaste
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe40]
mov dword [0x4bfe3c], eax
push str.ButtonTrial
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe44]
mov dword [0x4bfe40], eax
push str.OneSerialField
push str.AQToolsSerialV3
call ebx
push esi
push dword [0x4bfe4c]
mov dword [0x4bfe44], eax
push str.DlgOptions
push str.AQToolsSerialV3
call ebx
push esi
push 0x27
push 0x4c0058
push 0x48d8a4
push str.Guid
push str.AQToolsSerialV3
mov dword [0x4bfe4c], eax
call edi
movzx eax, byte [0x4c00a6]
push esi
push eax
push str.ProductCode
push str.AQToolsSerialV3
call ebx
push esi
push 0x104
push 0x4bfe50
push 0x4bfe50
push str.UrlBuy
push str.AQToolsSerialV3
mov byte [0x4c00a6], al
call edi
movzx eax, byte [0x4c8621]
push esi
push eax
push str.InstallMode
push str.AQToolsSerialV5
call ebx
push esi
mov byte [0x4c8621], al
movzx eax, byte [0x4c8620]
push eax
push str.ProductType
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c8618]
mov byte [0x4c8620], al
push str.AlrdySerial
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c8600]
mov dword [0x4c8618], eax
push str.UserNameField
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c8604]
mov dword [0x4c8600], eax
push str.CompanyField
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c8608]
mov dword [0x4c8604], eax
push str.ButtonBuy
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c860c]
mov dword [0x4c8608], eax
push str.ButtonPaste
push str.AQToolsSerialV5
call ebx
mov dword [0x4c860c], eax
push esi
push dword [0x4c8610]
push str.ButtonTrial
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c8614]
mov dword [0x4c8610], eax
push str.OneSerialField
push str.AQToolsSerialV5
call ebx
push esi
push dword [0x4c861c]
mov dword [0x4c8614], eax
push str.DlgOptions
push str.AQToolsSerialV5
call ebx
push esi
push 0x104
push 0x4c8622
push 0x4c8622
push str.UrlBuy
push str.AQToolsSerialV5
mov dword [0x4c861c], eax
call edi
push esi
xor eax, eax
xorps xmm0, xmm0
push 0xf
mov word [ebp - 0x24], ax
mov dword [ebp - 0xa], eax
lea eax, [ebp - 0x24]
push eax
push 0x48d8a4
push str.SerialId
push str.AQToolsSerialV5
movdqu xmmword [ebp - 0x22], xmm0
movq qword [ebp - 0x12], xmm0
call edi
test eax, eax
je 0x45ed9b
lea ecx, [ebp - 0x24]
lea edx, [ecx + 2]
mov edi, edi
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45ed50
sub ecx, edx
sar ecx, 1
inc ecx
cmp ecx, 0x3fffffff
jle 0x45ed6c
xor eax, eax
jmp 0x45ed8b
lea edi, [ecx + ecx]
mov eax, edi
call fcn.00470be0
mov eax, esp
lea ecx, [ebp - 0x24]
push 3
push edi
push ecx
push eax
call fcn.0045c170
mov edi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringW]
push eax
push 0xf
push 0x4c882a
call fcn.004703fd
add esp, 0xc
push esi
push dword [0x4c00ac]
push str.NeedConnection
push str.AQToolsAP
call ebx
push esi
push dword [0x4c8840]
mov dword [0x4c00ac], eax
push str.AlwaysInstall
push str.AQToolsToolbar
call ebx
push esi
push dword [0x4c8844]
movzx eax, al
push str.Install
push str.AQToolsToolbar
mov dword [0x4c8840], eax
call ebx
push esi
push dword [0x4c8848]
movzx eax, al
push str.HomePage
push str.AQToolsToolbar
mov dword [0x4c8844], eax
call ebx
push esi
push dword [0x4c884c]
movzx eax, al
push str.WebSearch
push str.AQToolsToolbar
mov dword [0x4c8848], eax
call ebx
push esi
push 0xb
push 0x4c8850
push 0x4c8850
push 0x49b230
movzx eax, al
push str.AQToolsToolbar
mov dword [0x4c884c], eax
call edi
movzx eax, byte [0x4c8a71]
push esi
push eax
push str.DialogType
push str.AQToolsOLR
call ebx
push esi
push dword [0x4c8a78]
mov byte [0x4c8a71], al
push str.OLRInformation
push str.AQToolsOLR
call ebx
push esi
mov dword [0x4c8a78], eax
movzx eax, byte [0x4c8a70]
push eax
push 0x49af30
push str.AQToolsOLR
call ebx
push esi
push dword [0x4c8c84]
mov byte [0x4c8a70], al
push str.Options
push str.AQToolsOLR
call ebx
push esi
push 0x104
push 0x4c8a7c
push 0x48d8a4
push 0x49a58c
push str.AQToolsOLR
mov dword [0x4c8c84], eax
call edi
push esi
push dword [0x4c8e9c]
push str.AllDialogs
push str.AQToolsIAMC
call ebx
mov dword [0x4c8e9c], eax
push esi
push dword [0x4c8e98]
push 0x49b2c8
push str.AQToolsIAMC
call ebx
push esi
push dword [0x4c8ebc]
mov dword [0x4c8e98], eax
push str.CountryCode
push str.AQToolsIAMC
call ebx
push esi
mov dword [0x4c8ebc], eax
movzx eax, byte [0x4c8ec8]
push eax
push str.Border
push str.AQToolsIAMC
call ebx
push esi
push dword [0x4c8ec0]
mov byte [0x4c8ec8], al
push str.Height
push str.AQToolsIAMC
call ebx
push esi
push dword [0x4c8ec4]
mov dword [0x4c8ec0], eax
push str.TypeId
push str.AQToolsIAMC
call ebx
push esi
push 0x104
push 0x4c8eca
push 0x4c8eca
push 0x49b318
push str.AQToolsIAMC
mov dword [0x4c8ec4], eax
call edi
push esi
push 0x104
push 0x4c90d2
push 0x4c90d2
push str.LocalUrl
push str.AQToolsIAMC
call edi
push esi
push 0xd
push 0x4c8ea0
push 0x4c8ea0
push str.MasterId
push str.AQToolsIAMC
call edi
push esi
push dword [0x4c8c88]
push str.LiveUpdate
push str.AQToolsAQCTS
call ebx
push esi
push dword [0x4c8c8c]
movzx eax, al
push str.CopyCTFiles
push str.AQToolsAQCTS
mov dword [0x4c8c88], eax
call ebx
push esi
push 0x104
push 0x4c8c90
push 0x4c8c90
push str.ProductExe
push str.AQToolsAQCTS
mov dword [0x4c8c8c], eax
call edi
test eax, eax
je 0x45f056
push 0x104
push 0x4c8c90
call fcn.00460070
add esp, 8
push 0x4c8c90
call dword [sym.imp.SHLWAPI.dll_PathIsRelativeW]
test eax, eax
je 0x45f056
xor eax, eax
push 0x206
push eax
mov word [ebp - 0x250], ax
lea eax, [ebp - 0x24e]
push eax
call fcn.0046fe20
add esp, 0xc
lea eax, [ebp - 0x250]
push 0x4c8c90
push eax
call dword [sym.imp.SHLWAPI.dll_PathAppendW]
lea eax, [ebp - 0x250]
push eax
push 0x4b8108
push 0x4c8c90
call dword [sym.imp.SHLWAPI.dll_PathCombineW]
call dword [sym.imp.KERNEL32.dll_GetUserDefaultLangID]
movzx eax, ax
mov edi, eax
mov dword [ebp - 0x878], eax
and edi, 0x3ff
mov dword [ebp - 0x86c], edi
call dword [sym.imp.KERNEL32.dll_GetSystemDefaultLangID]
movzx eax, ax
mov dword [ebp - 0x87c], eax
and eax, 0x3ff
push 0x4ca5ec
push esi
mov dword [ebp - 0x870], eax
call fcn.0045f780
mov ecx, eax
add esp, 8
test ecx, ecx
je 0x45f2e5
mov edx, dword [0x4b6508]
mov dword [ebp - 0x880], 0x3ff
test dx, dx
je 0x45f142
mov edi, dword [0x4ca5ec]
xor eax, eax
test ecx, ecx
je 0x45f0ff
movzx edx, dx
mov dword [ebp - 0x874], edx
lea edx, [edi + 0x3058]
lea esp, [esp]
mov ebx, dword [ebp - 0x874]
cmp ebx, dword [edx]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
je 0x45f19d
inc eax
add edx, 0x306c
cmp eax, ecx
jb 0x45f0e0
xor edx, edx
test ecx, ecx
je 0x45f142
mov eax, dword [0x4b6508]
and eax, 0x3ff
add edi, 0x3058
mov dword [ebp - 0x874], eax
jmp 0x45f120
mov ax, word [edi]
and ax, word [ebp - 0x880]
cmp word [ebp - 0x874], ax
je 0x45f1b9
inc edx
add edi, 0x306c
cmp edx, ecx
jb 0x45f120
cmp dword [0x4b7860], 0
je 0x45f1f0
mov edx, dword [ebp - 0x87c]
test dx, dx
je 0x45f1f0
xor eax, eax
test ecx, ecx
je 0x45f252
mov edx, dword [0x4ca5ec]
add edx, 0x3058
mov edi, dword [ebp - 0x87c]
movzx ebx, di
cmp ebx, dword [edx]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, dword [0x4ca5ec]
je 0x45f1d4
inc eax
add edx, 0x306c
cmp eax, ecx
jb 0x45f174
jmp 0x45f258
mov dword [0x4be980], eax
imul eax, eax, 0x306c
push dword [eax + edi + 0x3058]
push str.ReadConfigFile____LangId_found_by_lcID_LangParam:__d
jmp 0x45f656
mov eax, dword [0x4b6508]
and eax, 0x3ff
mov dword [0x4be980], edx
push eax
push str.ReadConfigFile____LangId_found_by_lcPrimaryID_LangParam:__d
jmp 0x45f656
mov dword [0x4be980], eax
imul eax, eax, 0x306c
push dword [eax + edi + 0x3058]
push str.ReadConfigFile____LangId_found_by_lcID_system:__d
jmp 0x45f656
mov edx, dword [ebp - 0x878]
test dx, dx
je 0x45f252
xor eax, eax
test ecx, ecx
je 0x45f252
mov edx, dword [0x4ca5ec]
add edx, 0x3058
lea ecx, [ecx]
mov edi, dword [ebp - 0x878]
movzx ebx, di
cmp ebx, dword [edx]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov edi, dword [0x4ca5ec]
je 0x45f236
inc eax
add edx, 0x306c
cmp eax, ecx
jb 0x45f210
jmp 0x45f258
mov dword [0x4be980], eax
imul eax, eax, 0x306c
push dword [eax + edi + 0x3058]
push str.ReadConfigFile____LangId_found_by_lcID_user:__d
jmp 0x45f656
mov edi, dword [0x4ca5ec]
cmp dword [0x4b7860], 0
je 0x45f5df
cmp word [ebp - 0x870], 0
je 0x45f5df
xor edx, edx
test ecx, ecx
je 0x45f2a2
add edi, 0x3058
nop
mov ax, word [edi]
and ax, word [ebp - 0x880]
cmp word [ebp - 0x870], ax
je 0x45f5c5
inc edx
add edi, 0x306c
cmp edx, ecx
jb 0x45f280
xor eax, eax
test ecx, ecx
je 0x45f2df
mov edi, dword [0x4ca5ec]
lea edx, [edi + 0x3058]
jmp 0x45f2c0
mov ebx, dword [0x4be97c]
cmp ebx, dword [edx]
mov ebx, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
je 0x45f63f
inc eax
add edx, 0x306c
cmp eax, ecx
jb 0x45f2c0
mov edi, dword [ebp - 0x86c]
push 0x4b61b0
push esi
call fcn.0043d210
add esp, 8
test eax, eax
je 0x45f30b
push esi
push 0
push str.Conditions
push str.Runtime
call ebx
mov dword [0x4b788c], eax
push 0x4d0988
push str.ReadConfigFile____LicenseFile_INTL:__s
call fcn.004699e0
push 0x4b67a6
push str.ReadConfigFile____ProductName:__s
call fcn.004699e0
push 0x4c94c6
push str.ReadConfigFile____ProductVersion:__s
call fcn.004699e0
push 0x4b6758
push str.ReadConfigFile____Guid:__s
call fcn.004699e0
push dword [0x4b7848]
push dword [0x4b7844]
push str.ReadConfigFile____Compress:__d_CompressType:__d
call fcn.004699e0
push 0x4b7af0
push str.ReadConfigFile____ExeFileName:__s
call fcn.004699e0
push 0x4b7cf8
push str.ReadConfigFile____ExeCmdLine:__s
call fcn.004699e0
push dword [0x4b97a8]
push str.ReadConfigFile____LaunchOptions:__d
call fcn.004699e0
add esp, 0x44
push dword [0x4b7854]
push str.ReadConfigFile____DelFiles:__d
call fcn.004699e0
push dword [0x4b8f64]
push dword [0x4b8f60]
push dword [0x4b8f58]
push str.ReadConfigFile____LaunchExe:__d_AllowModifyDest:__d_RestoreTree:__d
call fcn.004699e0
push dword [0x4b8f54]
push str.ReadConfigFile____ExeWinDisplay:__d
call fcn.004699e0
push dword [0x4b8f70]
push str.ReadConfigFile____ProgressBar:__d
call fcn.004699e0
push dword [0x4b97a4]
push str.ReadConfigFile____StyleProgress:__d
call fcn.004699e0
push 0x4b8108
push str.ReadConfigFile____TgdFolder:__s
call fcn.004699e0
push dword [0x4be97c]
push str.ReadConfigFile____LanguageDefault:__d
call fcn.004699e0
add esp, 0x40
push dword [0x4b786c]
push str.ReadConfigFile____Password:__d
call fcn.004699e0
mov eax, dword [ebp - 0x870]
movzx eax, ax
push eax
mov eax, dword [ebp - 0x87c]
movzx eax, ax
push eax
movzx eax, di
push eax
mov eax, dword [ebp - 0x878]
movzx eax, ax
push eax
push str.ReadConfigFile____lcID_user:__d___d____lcID_system:__d___d_
call fcn.004699e0
push 0x4b8f7c
push dword [0x4b8f74]
push str.ReadConfigFile____RunScript:__d__:___s
call fcn.004699e0
push 0x4b78e8
push dword [0x4b785c]
push dword [0x4b789c]
push str.ReadConfigFile____ExtraBinaryFile:__d__CopyBinaryFile:__d______s
call fcn.004699e0
push dword [0x4b8f78]
push str.ReadConfigFile____ResumeSetup:__d
call fcn.004699e0
add esp, 0x40
push 0x4b8520
push str.ReadConfigFile____PackImagesFile:__s
call fcn.004699e0
push 0x104
push 0x4b8728
call fcn.00460070
push 0x104
push 0x4b8930
call fcn.00460070
push 0x104
push 0x4b8b38
call fcn.00460070
push 0x4b8930
push str.ReadConfigFile____TgdExe:__s
call fcn.004699e0
push 0x4b8b38
push str.ReadConfigFile____TgdParams:__s
call fcn.004699e0
push 0x4b8728
push str.ReadConfigFile____TgdFolderParam:__s
call fcn.004699e0
push dword [0x4b8f48]
push str.ReadConfigFile____TgdOptions:__d__0Open__1RunAs__2Auto_
call fcn.004699e0
movzx eax, byte [0x4bfe2b]
add esp, 0x40
push eax
push str.ReadConfigFile____AQTOOLSINFO.byProductLanguage:__d
call fcn.004699e0
movzx eax, byte [0x4bfe2a]
push eax
push str.ReadConfigFile____AQTOOLSINFO.byProductType:__d
call fcn.004699e0
movzx eax, byte [0x4bfe2c]
push eax
push str.ReadConfigFile____AQTOOLSINFO.byProductVersion:__d
call fcn.004699e0
movzx eax, byte [0x4bfe2d]
push eax
push str.ReadConfigFile____AQTOOLSINFO.byInstallMode:__d
call fcn.004699e0
movzx eax, byte [0x4bfe2e]
push eax
push str.ReadConfigFile____AQTOOLSINFO.byCompanyCode:__d
call fcn.004699e0
push dword [0x4bf9f8]
push str.ReadConfigFile____AQTOOLSINFO.bAQCTS:__d
call fcn.004699e0
push dword [0x4bf9fc]
push str.ReadConfigFile____AQTOOLSINFO.bIAMC:__d
call fcn.004699e0
push dword [0x4c00ac]
push str.ReadConfigFile____AQTOOLSAP.bNeedConnection:__d
call fcn.004699e0
movzx eax, byte [0x4c8a71]
add esp, 0x40
push eax
push str.ReadConfigFile____AQTOOLSOLR.byDialogType:__d
call fcn.004699e0
add esp, 8
mov eax, 1
lea esp, [ebp - 0x88c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0046f33a
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x870]
movzx eax, ax
push eax
mov dword [0x4be980], edx
push str.ReadConfigFile____LangId_found_by_lcPrimaryID_system:__d
jmp 0x45f656
cmp word [ebp - 0x86c], 0
je 0x45f2a2
xor edx, edx
test ecx, ecx
je 0x45f2a2
add edi, 0x3058
lea ecx, [ecx]
mov ax, word [edi]
and ax, word [ebp - 0x880]
cmp word [ebp - 0x86c], ax
je 0x45f623
inc edx
add edi, 0x306c
cmp edx, ecx
jb 0x45f600
jmp 0x45f2a2
mov edi, dword [ebp - 0x86c]
movzx eax, di
push eax
push str.ReadConfigFile____LangId_found_by_lcPrimaryID_user:__d
mov dword [0x4be980], edx
call fcn.004699e0
jmp 0x45f661
mov dword [0x4be980], eax
imul eax, eax, 0x306c
push dword [eax + edi + 0x3058]
push str.ReadConfigFile____LangId_found_by_LanguageDefault:__d
call fcn.004699e0
mov edi, dword [ebp - 0x86c]
imul ecx, dword [0x4be980], 0x306c
add esp, 8
mov eax, dword [0x4ca5ec]
add ecx, 0x610
add eax, ecx
push eax
push str.ReadConfigFile____LangISO3:__s
call fcn.004699e0
imul eax, dword [0x4be980], 0x306c
add eax, dword [0x4ca5ec]
push eax
push str.ReadConfigFile____LangFile:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add ecx, 0x62e
add eax, ecx
push eax
push str.ReadConfigFile____LicenseFile:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add ecx, 0x836
add eax, ecx
push eax
push str.ReadConfigFile____LicenseUrl:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add ecx, 0x1836
add eax, ecx
push eax
push str.ReadConfigFile____PrivacyUrl:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add ecx, 0x2a3e
add eax, ecx
push eax
push str.ReadConfigFile____LUUrl:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add ecx, 0x2c46
add eax, ecx
push eax
push str.ReadConfigFile____LUExeParams:__s
call fcn.004699e0
imul ecx, dword [0x4be980], 0x306c
mov eax, dword [0x4ca5ec]
add eax, 0x2e4e
add eax, ecx
push eax
push str.ReadConfigFile____LUTgdFolder:__s
call fcn.004699e0
add esp, 0x40
jmp 0x45f2e5