Function at 0x445483
Capabilities:
Check if file exists
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x558f2f
call fcn.004d8d80
sub esp, 0x3e0
push dword [ebp + 8]
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
jne 0x4454a8
or eax, 0xffffffff
jmp 0x447361
push esi
lea ecx, [ebp - 0x3ec]
call fcn.004342e1
and dword [ebp - 4], 0
push 0
push 0x74
lea eax, [ebp - 0xe4]
push dword [ebp + 8]
lea ecx, [ebp - 0x3ec]
push eax
call fcn.0043444a
mov ecx, eax
call fcn.004342d9
test al, al
jne 0x4454e4
or esi, 0xffffffff
jmp 0x44734f
lea eax, [ebp - 0x60]
push str.Downloads
push eax
lea ecx, [ebp - 0x3ec]
call fcn.00433e9d
lea ecx, [ebp - 0x60]
call fcn.004342d9
test al, al
jne 0x4454dc
mov eax, dword [0x62b3ec]
push edi
mov dword [ebp - 0x18], eax
mov edi, 0x633610
lea eax, [ebp + 8]
push edi
push str.Version
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 1
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
push edi
lea eax, [ebp + 8]
push str.Generator
push eax
lea ecx, [ebp - 0x60]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
mov eax, dword [0x62b3ec]
mov dword [ebp - 0xec], eax
mov dword [ebp - 0xe8], eax
lea eax, [ebp - 0x30]
push str.Download
push eax
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 3
call fcn.00433e9d
lea ecx, [ebp - 0x30]
call fcn.00433e80
test eax, eax
je 0x447322
push ebx
push 0x800
call fcn.0053d788
mov esi, eax
pop ecx
mov dword [ebp - 0xdc], esi
test esi, esi
mov byte [ebp - 4], 4
je 0x4455c4
push 0
mov ecx, esi
call fcn.00414f7c
or dword [esi + 0x7f8], 0xffffffff
mov dword [esi], 0x569ff0
jmp 0x4455c6
xor esi, esi
push dword [esi + 8]
lea eax, [ebp - 0x1a4]
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 3
push str.Task
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 8], eax
mov ebx, str.State
lea eax, [ebp - 0x20]
push ebx
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp - 0x20]
call fcn.004342d9
test al, al
jne 0x4457c9
push dword [esi + 0x14]
lea eax, [ebp - 0x29c]
lea ecx, [ebp - 0x20]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [esi + 0x14], eax
push dword [esi + 0x18]
lea eax, [ebp - 0xfc]
lea ecx, [ebp - 0x20]
push ebx
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x18], eax
push dword [esi + 0x1c]
lea eax, [ebp - 0x214]
lea ecx, [ebp - 0x20]
push str.Step
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x1c], eax
push dword [esi + 0x20]
lea eax, [ebp - 0x104]
lea ecx, [ebp - 0x20]
push str.Result
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x20], eax
push dword [esi + 0x24]
lea eax, [ebp - 0x2e4]
lea ecx, [ebp - 0x20]
push str.Reason
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x24], eax
push dword [esi + 0x28]
lea eax, [ebp - 0x10c]
lea ecx, [ebp - 0x20]
push str.Error
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x28], eax
push dword [esi + 0x40]
lea eax, [ebp - 0x21c]
lea ecx, [ebp - 0x20]
push str.MiscFlags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [esi + 0x40], eax
push dword [esi + 0x34]
lea eax, [ebp - 0x114]
lea ecx, [ebp - 0x20]
push dword [esi + 0x30]
push str.CompletedSize
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [esi + 0x30], eax
mov dword [esi + 0x34], edx
push dword [esi + 0x3c]
lea eax, [ebp - 0x2a4]
lea ecx, [ebp - 0x20]
push dword [esi + 0x38]
push str.CompletedDurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
lea ebx, [esi + 0x88]
mov dword [esi + 0x38], eax
mov dword [esi + 0x3c], edx
lea eax, [ebp - 0x11c]
push dword [ebx]
lea ecx, [ebp - 0x20]
push str.ProgressType
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x9c]
lea eax, [ebp - 0x224]
lea ecx, [ebp - 0x20]
push dword [esi + 0x98]
push str.ProgressPos
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [esi + 0x98], eax
mov dword [esi + 0x9c], edx
push dword [esi + 0x94]
lea eax, [ebp - 0x124]
lea ecx, [ebp - 0x20]
push dword [esi + 0x90]
push str.ProgressLength
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
lea eax, [ebp + 8]
push 0x69b7bc
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp + 8]
call fcn.004342d9
test al, al
jne 0x445dda
push dword [esi + 0xc8]
lea eax, [ebp - 0x324]
lea ecx, [ebp + 8]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [esi + 0xc8], eax
lea eax, [ebp - 0x64]
push str.TermType
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
lea ecx, [ebp - 0x64]
call fcn.004342d9
test al, al
je 0x445847
lea eax, [ebp - 0x12c]
push str.PhraseType
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
push dword [esi + 0xd0]
lea ebx, [esi + 0xd0]
lea ecx, [ebp - 0x64]
call fcn.00433c9d
mov dword [ebx], eax
push edi
lea eax, [ebp - 0x22c]
push str.Site
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0xdc]
call fcn.0053dbe6
push dword [esi + 0xd4]
lea ebx, [esi + 0xd4]
lea eax, [ebp - 0x134]
lea ecx, [ebp + 8]
push str.MediaType
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0xd8]
lea ebx, [esi + 0xd8]
lea eax, [ebp - 0x2ac]
push str.SourceType
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0xe0]
lea ebx, [esi + 0xe0]
lea eax, [ebp - 0x13c]
push str.VideoQuality
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push ecx
fld qword [esi + 0xe8]
push ecx
lea eax, [ebp - 0x234]
lea ecx, [ebp + 8]
fstp qword [esp]
push str.VideoFrameRate
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cd7
fstp qword [esi + 0xe8]
push dword [esi + 0xf0]
lea ebx, [esi + 0xf0]
lea eax, [ebp - 0x144]
lea ecx, [ebp + 8]
push str.AudioQuality
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x100]
lea ebx, [esi + 0x100]
lea eax, [ebp - 0x2ec]
push str.AutoGenerateFileName
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push edi
push str.SubtitleLanguage
lea eax, [ebp - 0x14c]
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x104]
call fcn.0053dbe6
push 0
lea eax, [ebp - 0x23c]
push str.SubtitleFormat
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [esi + 0x108], eax
push edi
lea eax, [ebp - 0x154]
push str.SelectedMediaID
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x14c]
call fcn.0053dbe6
push dword [esi + 0x150]
lea ebx, [esi + 0x150]
lea eax, [ebp - 0x2b4]
lea ecx, [ebp + 8]
push str.SelectedMediaIndex
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push edi
lea eax, [ebp - 0x15c]
push str.SelectedStreamID
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x154]
call fcn.0053dbe6
push dword [esi + 0x158]
lea ebx, [esi + 0x158]
lea eax, [ebp - 0x244]
lea ecx, [ebp + 8]
push str.SelectedStreamIndex
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
test byte [esi + 0xca], 1
je 0x445a9f
push 0
push 0
lea eax, [ebp - 0x164]
push str.ScheduleTime
push eax
lea ecx, [ebp + 8]
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [ebp - 0xdc], edx
mov dword [esi + 0x148], eax
lea eax, [ebp - 0x5c]
push str.Term
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
lea ecx, [ebp - 0x5c]
call fcn.004342d9
test al, al
je 0x445ad5
lea eax, [ebp - 0x30c]
push 0x5ac9f0
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
lea ecx, [ebp - 0x5c]
call fcn.004342d9
test al, al
jne 0x445b28
lea eax, [ebp - 0x16c]
push edi
push eax
lea ecx, [ebp - 0x5c]
lea ebx, [esi + 0xcc]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
mov ecx, ebx
call fcn.0053dbe6
push 0x5ac9ec
push 0x5ac9e4
mov ecx, ebx
call fcn.00536471
push 0x5a1c68
push 0x5aadd0
mov ecx, ebx
call fcn.00536471
lea eax, [ebp - 0x24]
push str.Conversion
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
lea ecx, [ebp - 0x24]
call fcn.004342d9
test al, al
jne 0x445d1a
push edi
lea eax, [ebp - 0x24c]
push str.MediaFormatID
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x10c]
call fcn.0053dbe6
push edi
lea eax, [ebp - 0x174]
push str.MediaFormatPreset
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x110]
call fcn.0053dbe6
push dword [esi + 0x11c]
lea eax, [ebp - 0x2bc]
lea ecx, [ebp - 0x24]
push dword [esi + 0x118]
push str.StartTimeInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [esi + 0x118], eax
mov dword [esi + 0x11c], edx
push dword [esi + 0x124]
lea eax, [ebp - 0x17c]
lea ecx, [ebp - 0x24]
push dword [esi + 0x120]
push str.EndTimeInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
lea ebx, [esi + 0x140]
mov dword [esi + 0x120], eax
mov dword [esi + 0x124], edx
lea eax, [ebp - 0x254]
push dword [ebx]
lea ecx, [ebp - 0x24]
push str.Volume
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x128]
lea ebx, [esi + 0x128]
lea eax, [ebp - 0x184]
push str.Rotate
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x130]
lea ebx, [esi + 0x130]
lea eax, [ebp - 0x2f4]
push str.FlipH
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x12c]
lea ebx, [esi + 0x12c]
lea eax, [ebp - 0x18c]
push str.FlipV
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x134]
lea ebx, [esi + 0x134]
lea eax, [ebp - 0x25c]
push str.Grayscale
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x138]
lea ebx, [esi + 0x138]
lea eax, [ebp - 0x194]
push str.Negate
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push dword [esi + 0x144]
lea ebx, [esi + 0x144]
lea eax, [ebp - 0x2c4]
push str.Loop
push eax
lea ecx, [ebp - 0x24]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
lea eax, [ebp - 0x78]
push 0x59f510
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
lea ecx, [ebp - 0x78]
call fcn.004342d9
test al, al
jne 0x445d5a
lea eax, [ebp - 0x19c]
push edi
push eax
lea ecx, [ebp - 0x78]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0xf4]
call fcn.0053dbe6
lea eax, [ebp - 0x70]
push str.SubFolder
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
lea ecx, [ebp - 0x70]
call fcn.004342d9
test al, al
jne 0x445d9a
lea eax, [ebp - 0x264]
push edi
push eax
lea ecx, [ebp - 0x70]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0xf8]
call fcn.0053dbe6
lea eax, [ebp - 0x80]
push str.FileName
push eax
lea ecx, [ebp + 8]
call fcn.00433e9d
lea ecx, [ebp - 0x80]
call fcn.004342d9
test al, al
jne 0x445dda
lea eax, [ebp - 0xf0]
push edi
push eax
lea ecx, [ebp - 0x80]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0xfc]
call fcn.0053dbe6
lea eax, [ebp - 0x10]
push 0x69b8e4
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp - 0x10]
call fcn.004342d9
test al, al
jne 0x4463bf
push dword [esi + 0x170]
lea ebx, [esi + 0x170]
lea eax, [ebp - 0x31c]
lea ecx, [ebp - 0x10]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [ebx], eax
push edi
lea eax, [ebp - 0x1ac]
push str.Site
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x174]
call fcn.0053dbe6
push edi
lea eax, [ebp - 0x26c]
push str.MediaID
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x178]
call fcn.0053dbe6
push dword [esi + 0x188]
lea ebx, [esi + 0x188]
lea eax, [ebp - 0x1b4]
lea ecx, [ebp - 0x10]
push str.MediaType
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
push edi
lea eax, [ebp - 0x2cc]
push str.Format
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [esi + 0x18c]
call fcn.0053dbe6
push dword [esi + 0x1a0]
lea ebx, [esi + 0x1a0]
lea eax, [ebp - 0x1bc]
lea ecx, [ebp - 0x10]
push str.VideoCodec
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
mov ecx, ebx
call fcn.0053dbe6
push dword [esi + 0x1a4]
lea ebx, [esi + 0x1a4]
lea eax, [ebp - 0x274]
lea ecx, [ebp - 0x10]
push str.VideoQuality
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x1a8]
mov dword [ebx], eax
lea ebx, [esi + 0x1a8]
lea eax, [ebp - 0x1c4]
push str.VideoDefinition
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x1ac]
mov dword [ebx], eax
lea ebx, [esi + 0x1ac]
lea eax, [ebp - 0x2fc]
push str.VideoWidth
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x1b0]
mov dword [ebx], eax
lea ebx, [esi + 0x1b0]
lea eax, [ebp - 0x1cc]
push str.VideoHeight
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x1b4]
mov dword [ebx], eax
lea ebx, [esi + 0x1b4]
lea eax, [ebp - 0x27c]
push str.AudioCodec
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
mov ecx, ebx
call fcn.0053dbe6
push dword [esi + 0x1b8]
lea ebx, [esi + 0x1b8]
lea eax, [ebp - 0x1d4]
lea ecx, [ebp - 0x10]
push str.AudioQuality
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x1bc]
mov dword [ebx], eax
lea ebx, [esi + 0x1bc]
lea eax, [ebp - 0x2d4]
push str.AudioDefinition
push eax
lea ecx, [ebp - 0x10]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x194]
mov dword [ebx], eax
lea eax, [ebp - 0x1dc]
lea ecx, [ebp - 0x10]
push dword [esi + 0x190]
push 0x69b8b8
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [esi + 0x19c]
mov dword [esi + 0x190], eax
lea eax, [ebp - 0x284]
lea ecx, [ebp - 0x10]
push dword [esi + 0x198]
mov dword [esi + 0x194], edx
push str.DurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [esi + 0x1c0]
lea ebx, [esi + 0x1c0]
mov dword [esi + 0x198], eax
mov dword [esi + 0x19c], edx
push str.MaxConnections
lea eax, [ebp - 0x1e4]
lea ecx, [ebp - 0x10]
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
lea eax, [ebp - 0xb8]
push str.Title
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0xb8]
call fcn.004342d9
test al, al
jne 0x4460f1
lea eax, [ebp - 0x314]
push edi
push eax
lea ecx, [ebp - 0xb8]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x17c]
call fcn.0053dbe6
lea eax, [ebp - 0x88]
push str.PlayURL
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0x88]
call fcn.004342d9
test al, al
jne 0x44613a
lea eax, [ebp - 0x1ec]
push edi
push eax
lea ecx, [ebp - 0x88]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x180]
call fcn.0053dbe6
cmp dword [esi + 8], 2
je 0x446189
lea eax, [ebp - 0xd4]
push str.ThumbnailURL
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0xd4]
call fcn.004342d9
test al, al
jne 0x446189
lea eax, [ebp - 0x28c]
push edi
push eax
lea ecx, [ebp - 0xd4]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x184]
call fcn.0053dbe6
lea eax, [ebp - 0x54]
push str.HttpHeaders
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0x54]
call fcn.004342d9
test al, al
jne 0x4462e1
lea eax, [ebp - 0x90]
push str.UserAgent
push eax
lea ecx, [ebp - 0x54]
call fcn.00433e9d
lea ecx, [ebp - 0x90]
call fcn.004342d9
test al, al
jne 0x4461f3
lea eax, [ebp - 0x1f4]
push edi
push eax
lea ecx, [ebp - 0x90]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x1c4]
call fcn.0053dbe6
lea eax, [ebp - 0xbc]
push 0x5ac758
push eax
lea ecx, [ebp - 0x54]
call fcn.00433e9d
lea ecx, [ebp - 0xbc]
call fcn.004342d9
test al, al
jne 0x44623c
lea eax, [ebp - 0x2dc]
push edi
push eax
lea ecx, [ebp - 0xbc]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x1c8]
call fcn.0053dbe6
lea eax, [ebp - 0x98]
push 0x5ac748
push eax
lea ecx, [ebp - 0x54]
call fcn.00433e9d
lea ecx, [ebp - 0x98]
call fcn.004342d9
test al, al
jne 0x446285
lea eax, [ebp - 0x1fc]
push edi
push eax
lea ecx, [ebp - 0x98]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x1cc]
call fcn.0053dbe6
lea eax, [ebp - 0xcc]
push str.MoreHeaders
push eax
lea ecx, [ebp - 0x54]
call fcn.00433e9d
lea ecx, [ebp - 0xcc]
call fcn.004342d9
test al, al
jne 0x4462e1
lea eax, [ebp - 0x294]
push edi
push eax
lea ecx, [ebp - 0xcc]
lea ebx, [esi + 0x1d0]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
mov ecx, ebx
call fcn.0053dbe6
push 0x59f774
push str._r_n
mov ecx, ebx
call fcn.00536471
cmp dword [esi + 8], 2
jne 0x4463bf
lea eax, [ebp - 0xa0]
push str.ThumbnailImage
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0xa0]
call fcn.004342d9
test al, al
jne 0x446361
lea eax, [ebp - 0x204]
push edi
push eax
lea ecx, [ebp - 0xa0]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x68]
call fcn.0053dac3
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 5
cmp dword [eax - 8], 0
je 0x446353
lea eax, [esi + 0x29c]
push 3
push eax
lea eax, [ebp - 0x68]
push eax
call fcn.00439b0d
add esp, 0xc
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 3
call fcn.0053da4f
jmp 0x4463bf
lea eax, [ebp - 0xc4]
push str.ThumbnailCacheFile
push eax
lea ecx, [ebp - 0x10]
call fcn.00433e9d
lea ecx, [ebp - 0xc4]
call fcn.004342d9
test al, al
jne 0x4463bf
lea eax, [ebp - 0x304]
push edi
push eax
lea ecx, [ebp - 0xc4]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
mov eax, dword [ebp - 0x18]
cmp dword [eax - 8], 0
je 0x4463bf
lea eax, [ebp - 0x18]
lea ecx, [esi + 0x298]
push eax
call fcn.0053db96
lea eax, [ebp - 0x14]
push 0x5a1688
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp - 0x14]
call fcn.004342d9
test al, al
jne 0x4466f7
push dword [esi + 0x470]
lea ebx, [esi + 0x470]
lea eax, [ebp - 0x20c]
lea ecx, [ebp - 0x14]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [esi + 0x478]
mov dword [ebx], eax
lea ebx, [esi + 0x478]
lea eax, [ebp - 0xf4]
push str.MediaType
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x484]
mov dword [ebx], eax
lea eax, [ebp - 0xf8]
lea ecx, [ebp - 0x14]
push dword [esi + 0x480]
push 0x69b8b8
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [esi + 0x48c]
mov dword [esi + 0x480], eax
lea eax, [ebp - 0x100]
lea ecx, [ebp - 0x14]
push dword [esi + 0x488]
mov dword [esi + 0x484], edx
push str.DurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [esi + 0x490]
lea ebx, [esi + 0x490]
mov dword [esi + 0x488], eax
lea eax, [ebp - 0x108]
push str.VideoQuality
push eax
lea ecx, [ebp - 0x14]
mov dword [esi + 0x48c], edx
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x494]
mov dword [ebx], eax
lea ebx, [esi + 0x494]
lea eax, [ebp - 0x110]
push str.VideoDefinition
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x498]
mov dword [ebx], eax
lea ebx, [esi + 0x498]
lea eax, [ebp - 0x118]
push str.VideoWidth
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x49c]
mov dword [ebx], eax
lea ebx, [esi + 0x49c]
lea eax, [ebp - 0x120]
push str.VideoHeight
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x4a0]
mov dword [ebx], eax
lea ebx, [esi + 0x4a0]
lea eax, [ebp - 0x128]
push str.AudioQuality
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x4a4]
mov dword [ebx], eax
lea ebx, [esi + 0x4a4]
lea eax, [ebp - 0x130]
push str.AudioDefinition
push eax
lea ecx, [ebp - 0x14]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
lea eax, [ebp - 0xa8]
push 0x59f520
push eax
lea ecx, [ebp - 0x14]
call fcn.00433e9d
lea ecx, [ebp - 0xa8]
call fcn.004342d9
test al, al
jne 0x4465d7
lea eax, [ebp - 0x138]
push edi
push eax
lea ecx, [ebp - 0xa8]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x474]
call fcn.0053dbe6
lea eax, [ebp - 0xb0]
push str.ThumbnailFile
push eax
lea ecx, [ebp - 0x14]
call fcn.00433e9d
lea ecx, [ebp - 0xb0]
call fcn.004342d9
test al, al
jne 0x446635
lea eax, [ebp - 0x140]
push edi
push eax
lea ecx, [ebp - 0xb0]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
mov eax, dword [ebp - 0x18]
cmp dword [eax - 8], 0
je 0x446635
lea eax, [ebp - 0x18]
lea ecx, [esi + 0x568]
push eax
call fcn.0053db96
lea eax, [ebp - 0x74]
push str.ThumbnailImage
push eax
lea ecx, [ebp - 0x14]
call fcn.00433e9d
lea ecx, [ebp - 0x74]
call fcn.004342d9
test al, al
jne 0x4466a2
lea eax, [ebp - 0x148]
push edi
push eax
lea ecx, [ebp - 0x74]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x6c]
call fcn.0053dac3
mov eax, dword [ebp - 0x6c]
mov byte [ebp - 4], 6
cmp dword [eax - 8], 0
je 0x446694
lea eax, [esi + 0x570]
push 3
push eax
lea eax, [ebp - 0x6c]
push eax
call fcn.00439b0d
add esp, 0xc
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 3
call fcn.0053da4f
jmp 0x4466f7
lea eax, [ebp - 0x7c]
push str.ThumbnailCacheFile
push eax
lea ecx, [ebp - 0x14]
call fcn.00433e9d
lea ecx, [ebp - 0x7c]
call fcn.004342d9
test al, al
jne 0x4466f7
lea eax, [ebp - 0x150]
push edi
push eax
lea ecx, [ebp - 0x7c]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
mov eax, dword [ebp - 0x18]
cmp dword [eax - 8], 0
je 0x4466f7
lea eax, [ebp - 0x18]
lea ecx, [esi + 0x56c]
push eax
call fcn.0053db96
lea eax, [ebp - 0x50]
push str.Intermediates
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp - 0x50]
call fcn.004342d9
test al, al
jne 0x447121
push dword [esi + 0x73c]
lea ebx, [esi + 0x73c]
lea eax, [ebp - 0x158]
lea ecx, [ebp - 0x50]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [ebx], eax
lea eax, [ebp - 0x84]
push str.CacheFile
push eax
lea ecx, [ebp - 0x50]
call fcn.00433e9d
lea ecx, [ebp - 0x84]
call fcn.004342d9
test al, al
jne 0x44679f
lea eax, [ebp - 0x160]
push edi
push eax
lea ecx, [ebp - 0x84]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebp - 0x18]
call fcn.0053dbe6
mov eax, dword [ebp - 0x18]
cmp dword [eax - 8], 0
je 0x44679f
lea eax, [ebp - 0x18]
lea ecx, [esi + 0x740]
push eax
call fcn.0053db96
push dword [esi + 0x748]
lea ebx, [esi + 0x748]
lea eax, [ebp - 0x168]
lea ecx, [ebp - 0x50]
push str.StreamsType
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
lea eax, [ebp - 0x8c]
push str.Streams
push eax
lea ecx, [ebp - 0x50]
call fcn.00433e9d
lea ecx, [ebp - 0x8c]
call fcn.004342d9
test al, al
jne 0x447121
lea eax, [ebp - 0x2c]
push str.Stream
push eax
lea ecx, [ebp - 0x8c]
call fcn.00433e9d
lea ecx, [ebp - 0x2c]
call fcn.00433e80
test eax, eax
je 0x447121
push 0x80
call fcn.0053d788
pop ecx
mov dword [ebp - 0xdc], eax
test eax, eax
mov byte [ebp - 4], 7
je 0x446837
mov ecx, eax
call fcn.0043c932
mov ebx, eax
jmp 0x446839
xor ebx, ebx
push dword [ebx]
lea eax, [ebp - 0x170]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0xdc], ebx
push str.Flags
push eax
mov byte [ebp - 4], 3
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [ebx], eax
lea eax, [ebp - 0x3c]
push str.State
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433e9d
lea ecx, [ebp - 0x3c]
call fcn.004342d9
test al, al
jne 0x446949
push dword [ebx + 0x54]
lea eax, [ebp - 0x178]
lea ecx, [ebp - 0x3c]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [ebx + 0x58]
mov dword [ebx + 0x54], eax
lea eax, [ebp - 0x180]
lea ecx, [ebp - 0x3c]
push str.State
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x5c]
mov dword [ebx + 0x58], eax
lea eax, [ebp - 0x188]
lea ecx, [ebp - 0x3c]
push str.Step
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x60]
mov dword [ebx + 0x5c], eax
lea eax, [ebp - 0x190]
lea ecx, [ebp - 0x3c]
push str.Result
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x64]
mov dword [ebx + 0x60], eax
lea eax, [ebp - 0x198]
lea ecx, [ebp - 0x3c]
push str.Reason
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x68]
mov dword [ebx + 0x64], eax
lea eax, [ebp - 0x1a0]
lea ecx, [ebp - 0x3c]
push str.Error
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx + 0x68], eax
lea eax, [ebp - 0x34]
push str.SourceInfo
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433e9d
lea ecx, [ebp - 0x34]
call fcn.004342d9
test al, al
jne 0x446a8e
push dword [ebx + 8]
lea eax, [ebp - 0x1a8]
lea ecx, [ebp - 0x34]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
mov dword [ebx + 8], eax
push edi
lea eax, [ebp - 0x1b0]
push str.StreamID
push eax
lea ecx, [ebp - 0x34]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [ebx + 0xc]
call fcn.0053dbe6
push edi
lea eax, [ebp - 0x1b8]
push str.Format
push eax
lea ecx, [ebp - 0x34]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [ebx + 0x10]
call fcn.0053dbe6
push dword [ebx + 0x1c]
lea eax, [ebp - 0x1c0]
lea ecx, [ebp - 0x34]
push dword [ebx + 0x18]
push 0x69b8b8
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [ebx + 0x24]
mov dword [ebx + 0x18], eax
lea eax, [ebp - 0x1c8]
lea ecx, [ebp - 0x34]
push dword [ebx + 0x20]
mov dword [ebx + 0x1c], edx
push str.DurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [ebx + 0x20], eax
push edi
lea eax, [ebp - 0x1d0]
push str.AudioCodec
push eax
lea ecx, [ebp - 0x34]
mov dword [ebx + 0x24], edx
call fcn.00433ee4
mov ecx, eax
call fcn.00433c89
push eax
lea ecx, [ebx + 0x28]
call fcn.0053dbe6
lea eax, [ebp - 0x94]
push str.BaseURL
push eax
lea ecx, [ebp - 0x34]
call fcn.00433e9d
lea ecx, [ebp - 0x94]
call fcn.004342d9
test al, al
jne 0x446a8e
lea eax, [ebp - 0x1d8]
push edi
push eax
lea ecx, [ebp - 0x94]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebx + 0x2c]
call fcn.0053dbe6
lea eax, [ebp - 0x9c]
push str.CacheFile
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433e9d
lea ecx, [ebp - 0x9c]
call fcn.004342d9
test al, al
jne 0x446ad4
lea eax, [ebp - 0x1e0]
push edi
push eax
lea ecx, [ebp - 0x9c]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebx + 0x30]
call fcn.0053dbe6
lea eax, [ebp - 0xa4]
push str.CacheFolder
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433e9d
lea ecx, [ebp - 0xa4]
call fcn.004342d9
test al, al
jne 0x446b1a
lea eax, [ebp - 0x1e8]
push edi
push eax
lea ecx, [ebp - 0xa4]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebx + 0x34]
call fcn.0053dbe6
push dword [ebx + 0x38]
lea eax, [ebp - 0x1f0]
lea ecx, [ebp - 0x2c]
push str.SubstreamsType
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx + 0x38], eax
lea eax, [ebp - 0xac]
push str.Substreams
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433e9d
lea ecx, [ebp - 0xac]
call fcn.004342d9
test al, al
jne 0x4470f0
lea eax, [ebp - 0x28]
push str.Substream
push eax
lea ecx, [ebp - 0xac]
call fcn.00433e9d
lea ecx, [ebp - 0x28]
call fcn.00433e80
test eax, eax
je 0x4470f0
push 0xa0
call fcn.0053d788
pop ecx
mov dword [ebp - 0x1c], eax
test eax, eax
mov byte [ebp - 4], 8
je 0x446ba7
mov ecx, eax
call fcn.0043c4cb
mov ebx, eax
jmp 0x446ba9
xor ebx, ebx
push dword [ebx + 0x88]
lea eax, [ebp - 0x1f8]
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [ebx + 0x8c]
mov dword [ebx + 0x88], eax
lea eax, [ebp - 0x200]
lea ecx, [ebp - 0x28]
push str.HttpIOModule
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx + 0x8c], eax
lea eax, [ebp - 0x38]
push str.State
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea ecx, [ebp - 0x38]
call fcn.004342d9
test al, al
jne 0x446d0f
push dword [ebx + 0x34]
lea eax, [ebp - 0x208]
lea ecx, [ebp - 0x38]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [ebx + 0x38]
mov dword [ebx + 0x34], eax
lea eax, [ebp - 0x210]
lea ecx, [ebp - 0x38]
push str.State
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x3c]
mov dword [ebx + 0x38], eax
lea eax, [ebp - 0x218]
lea ecx, [ebp - 0x38]
push str.Step
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x40]
mov dword [ebx + 0x3c], eax
lea eax, [ebp - 0x220]
lea ecx, [ebp - 0x38]
push str.Result
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x48]
mov dword [ebx + 0x40], eax
lea eax, [ebp - 0x228]
lea ecx, [ebp - 0x38]
push str.Error
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x54]
mov dword [ebx + 0x48], eax
lea eax, [ebp - 0x230]
lea ecx, [ebp - 0x38]
push dword [ebx + 0x50]
push str.CompletedSize
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [ebx + 0x5c]
mov dword [ebx + 0x50], eax
lea eax, [ebp - 0x238]
lea ecx, [ebp - 0x38]
push dword [ebx + 0x58]
mov dword [ebx + 0x54], edx
push str.CompletedDurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov dword [ebx + 0x58], eax
mov dword [ebx + 0x5c], edx
lea eax, [ebp - 0x48]
push str.SourceInfo
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea ecx, [ebp - 0x48]
call fcn.004342d9
test al, al
jne 0x446e02
push dword [ebx + 0x10]
lea eax, [ebp - 0x240]
lea ecx, [ebp - 0x48]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [ebx + 0x14]
mov dword [ebx + 0x10], eax
lea eax, [ebp - 0x248]
lea ecx, [ebp - 0x48]
push str.Protocol
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x24]
mov dword [ebx + 0x14], eax
lea eax, [ebp - 0x250]
lea ecx, [ebp - 0x48]
push dword [ebx + 0x20]
push 0x69b8b8
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [ebx + 0x2c]
mov dword [ebx + 0x20], eax
lea eax, [ebp - 0x258]
lea ecx, [ebp - 0x48]
push dword [ebx + 0x28]
mov dword [ebx + 0x24], edx
push str.DurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
push dword [ebx + 0x1c]
mov dword [ebx + 0x28], eax
lea eax, [ebp - 0x260]
lea ecx, [ebp - 0x48]
push str.Resumable
push eax
mov dword [ebx + 0x2c], edx
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [ebx + 0x18]
mov dword [ebx + 0x1c], eax
lea eax, [ebp - 0x268]
lea ecx, [ebp - 0x48]
push str.MaxConnections
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx + 0x18], eax
lea eax, [ebp - 0xc0]
push str.SourceURL
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea ecx, [ebp - 0xc0]
call fcn.004342d9
test al, al
jne 0x446e4b
lea eax, [ebp - 0x270]
push edi
push eax
lea ecx, [ebp - 0xc0]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebx + 0x90]
call fcn.0053dbe6
lea eax, [ebp - 0x278]
push str.FinalURL
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea eax, [ebp - 0xc8]
push str.CacheFile
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea ecx, [ebp - 0xc8]
call fcn.004342d9
test al, al
jne 0x446ea8
lea eax, [ebp - 0x280]
push edi
push eax
lea ecx, [ebp - 0xc8]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [ebx + 0x94]
call fcn.0053dbe6
lea eax, [ebp - 0xd0]
push str.Segments
push eax
lea ecx, [ebp - 0x28]
call fcn.00433e9d
lea ecx, [ebp - 0xd0]
call fcn.004342d9
test al, al
jne 0x4470ae
lea eax, [ebp - 0x44]
push str.Segment
push eax
lea ecx, [ebp - 0xd0]
call fcn.00433e9d
lea ecx, [ebp - 0x44]
call fcn.00433e80
test eax, eax
je 0x4470ae
push 0x58
call fcn.0053d788
pop ecx
mov ecx, eax
mov dword [ebp - 0x1c], ecx
test ecx, ecx
mov byte [ebp - 4], 9
je 0x446f1a
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
push 0
call fcn.0044736f
mov dword [ebp - 0x1c], eax
jmp 0x446f1e
and dword [ebp - 0x1c], 0
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 3
push dword [eax + 0xc]
push dword [eax + 8]
lea eax, [ebp - 0x288]
push str.Position
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x14]
mov dword [ecx + 8], eax
lea eax, [ebp - 0x290]
mov dword [ecx + 0xc], edx
push dword [ecx + 0x10]
lea ecx, [ebp - 0x44]
push 0x69b8c8
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov ecx, dword [ebp - 0x1c]
push str.State
mov dword [ecx + 0x10], eax
lea eax, [ebp - 0x40]
mov dword [ecx + 0x14], edx
push eax
lea ecx, [ebp - 0x44]
call fcn.00433e9d
lea ecx, [ebp - 0x40]
call fcn.004342d9
test al, al
jne 0x447081
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x40]
push dword [eax + 0x20]
lea eax, [ebp - 0x298]
push str.State
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x24]
mov dword [ecx + 0x20], eax
lea eax, [ebp - 0x2a0]
lea ecx, [ebp - 0x40]
push str.Step
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x28]
mov dword [ecx + 0x24], eax
lea eax, [ebp - 0x2a8]
lea ecx, [ebp - 0x40]
push str.Result
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x30]
mov dword [ecx + 0x28], eax
lea eax, [ebp - 0x2b0]
lea ecx, [ebp - 0x40]
push str.Error
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x3c]
mov dword [ecx + 0x30], eax
lea eax, [ebp - 0x2b8]
push dword [ecx + 0x38]
lea ecx, [ebp - 0x40]
push str.CompletedSize
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov ecx, dword [ebp - 0x1c]
push dword [ecx + 0x44]
mov dword [ecx + 0x38], eax
lea eax, [ebp - 0x2c0]
mov dword [ecx + 0x3c], edx
push dword [ecx + 0x40]
lea ecx, [ebp - 0x40]
push str.CompletedDurationInMs
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cf4
mov ecx, dword [ebp - 0x1c]
mov dword [ecx + 0x40], eax
mov dword [ecx + 0x44], edx
push dword [ebp - 0x1c]
mov eax, dword [ebx + 0x78]
lea ecx, [ebx + 0x70]
push eax
call fcn.00538c93
lea eax, [ebp - 0x2c8]
push str.Segment
push eax
lea ecx, [ebp - 0x44]
call fcn.00433f2b
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
jmp 0x446ee3
mov eax, dword [ebp - 0xdc]
push ebx
lea ecx, [eax + 0x3c]
mov eax, dword [eax + 0x44]
push eax
call fcn.00538c93
lea eax, [ebp - 0x2d0]
push str.Substream
push eax
lea ecx, [ebp - 0x28]
call fcn.00433f2b
mov eax, dword [eax]
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x28], eax
call fcn.00433e80
test eax, eax
jne 0x446b86
mov ebx, dword [ebp - 0xdc]
mov eax, dword [esi + 0x754]
lea ecx, [esi + 0x74c]
push ebx
push eax
call fcn.00538c93
lea eax, [ebp - 0x2d8]
push str.Stream
push eax
lea ecx, [ebp - 0x2c]
call fcn.00433f2b
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
jmp 0x446803
lea eax, [ebp - 0x58]
push 0x5ac500
push eax
lea ecx, [ebp - 0x30]
call fcn.00433e9d
lea ecx, [ebp - 0x58]
call fcn.004342d9
test al, al
jne 0x4472eb
lea eax, [ebp - 0x4c]
push str.State
push eax
lea ecx, [ebp - 0x58]
call fcn.00433e9d
lea ecx, [ebp - 0x4c]
call fcn.004342d9
test al, al
jne 0x447259
push dword [esi + 0x76c]
lea ebx, [esi + 0x76c]
lea eax, [ebp - 0x2e0]
lea ecx, [ebp - 0x4c]
push str.Flags
push eax
call fcn.00433ee4
mov ecx, eax
call fcn.00433cba
push dword [esi + 0x770]
mov dword [ebx], eax
lea ebx, [esi + 0x770]
lea eax, [ebp - 0x2e8]
push str.State
push eax
lea ecx, [ebp - 0x4c]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x774]
mov dword [ebx], eax
lea ebx, [esi + 0x774]
lea eax, [ebp - 0x2f0]
push str.Step
push eax
lea ecx, [ebp - 0x4c]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x778]
mov dword [ebx], eax
lea ebx, [esi + 0x778]
lea eax, [ebp - 0x2f8]
push str.Result
push eax
lea ecx, [ebp - 0x4c]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x77c]
mov dword [ebx], eax
lea ebx, [esi + 0x77c]
lea eax, [ebp - 0x300]
push str.Reason
push eax
lea ecx, [ebp - 0x4c]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
push dword [esi + 0x780]
mov dword [ebx], eax
lea ebx, [esi + 0x780]
lea eax, [ebp - 0x308]
push str.Error
push eax
lea ecx, [ebp - 0x4c]
call fcn.00433ee4
mov ecx, eax
call fcn.00433c9d
mov dword [ebx], eax
lea eax, [ebp - 0xd8]
push str.SourceURL
push eax
lea ecx, [ebp - 0x58]
call fcn.00433e9d
lea ecx, [ebp - 0xd8]
call fcn.004342d9
test al, al
jne 0x4472a2
lea eax, [ebp - 0x310]
push edi
push eax
lea ecx, [ebp - 0xd8]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x784]
call fcn.0053dbe6
lea eax, [ebp - 0xb4]
push str.DestinationFile
push eax
lea ecx, [ebp - 0x58]
call fcn.00433e9d
lea ecx, [ebp - 0xb4]
call fcn.004342d9
test al, al
jne 0x4472eb
lea eax, [ebp - 0x318]
push edi
push eax
lea ecx, [ebp - 0xb4]
call fcn.00433f72
mov ecx, eax
call fcn.0043426e
push eax
lea ecx, [esi + 0x788]
call fcn.0053dbe6
mov ecx, dword [ebp + 0xc]
push esi
mov eax, dword [ecx + 8]
push eax
call fcn.00538c93
lea eax, [ebp - 0x320]
push str.Download
push eax
lea ecx, [ebp - 0x30]
call fcn.00433f2b
mov eax, dword [eax]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x30], eax
call fcn.00433e80
test eax, eax
jne 0x445591
pop ebx
lea ecx, [ebp - 0xe8]
mov byte [ebp - 4], 2
call fcn.0053da4f
lea ecx, [ebp - 0xec]
mov byte [ebp - 4], 1
call fcn.0053da4f
and byte [ebp - 4], 0
lea ecx, [ebp - 0x18]
call fcn.0053da4f
xor esi, esi
pop edi
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3ec]
call fcn.004342f8
mov eax, esi
pop esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
leave
ret 8