Function at 0x419010
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4a4337
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x43c
mov eax, dword [0x4cbba0]
push ebx
xor eax, ebp
push esi
mov esi, dword [ebp + 8]
push edi
mov ebx, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x28c]
xor edi, edi
cmp eax, edi
mov dword [ebp - 0x10], esp
mov dword [ebp - 4], edi
jne 0x41906a
call fcn.004391f0
push str.LoadLastDownloadItem_:_step1__n
mov dword [ebx + 0x28c], eax
call fcn.0049aab0
add esp, 4
mov ecx, esi
lea edx, [ebx + 0x290]
mov al, byte [ecx]
inc ecx
mov byte [edx], al
inc edx
test al, al
jne 0x419072
push esi
lea eax, [ebp - 0x428]
push str._s.sav
push eax
call dword [sym.imp.MSVCR71.dll_sprintf]
mov ecx, dword [ebx + 0x28c]
add esp, 0xc
push edi
push esi
call fcn.00439810
push str.LoadLastDownloadItem_:_step2__n
movzx esi, al
call fcn.0049aab0
add esp, 4
cmp esi, edi
jne 0x419162
push edi
lea ecx, [ebp - 0x428]
push ecx
mov ecx, dword [ebx + 0x28c]
call fcn.00439810
push str.LoadLastDownloadItem_:_step3__n
movzx esi, al
call fcn.0049aab0
add esp, 4
cmp esi, edi
jne 0x419162
lea ecx, [ebp - 0x42c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT_1]
mov edx, dword [0x4cc904]
push edx
lea eax, [ebp - 0x42c]
push str.__xml_version1.0_encodinggb2312___t_t_t_t_t_t_t_Transmit__t_t_t_t_t_t_t_DownloadPath__s__DownloadPath__t_t_t_t_t_t_t__Transmit_
push eax
mov byte [ebp - 4], 1
call dword [sym.imp.MFC71.DLL_ATL::CStringT::Format]
add esp, 0xc
lea ecx, [ebp - 0x42c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::GetBuffer]
mov ecx, dword [ebx + 0x28c]
push eax
call fcn.004396e0
push 0xffffffffffffffff
lea ecx, [ebp - 0x42c]
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::ReleaseBuffer]
push str.LoadLastDownloadItem_:_step4__n
call fcn.0049aab0
add esp, 4
push edi
lea ecx, [ebx + 0x290]
push ecx
mov ecx, dword [ebx + 0x28c]
call fcn.00439070
lea ecx, [ebp - 0x42c]
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
jmp 0x419191
mov ecx, dword [ebx + 0x28c]
mov edx, dword [ecx]
push edi
push edi
push str.Transmit
push edi
lea eax, [ebp - 0x434]
push eax
call dword [edx + 0x14]
cmp dword [ebp - 0x434], edi
jne 0x4191ae
push str.LoadLastDownloadItem_:_step5__n
call fcn.0049aab0
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov ecx, dword [ebp - 0x14]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004a17d1
mov esp, ebp
pop ebp
ret 4
lea ecx, [ebp - 0x440]
call fcn.0044c250
mov dword [ebp - 0x43c], eax
mov dword [ebp - 0x438], edi
mov ecx, dword [ebp - 0x434]
mov edx, dword [ecx]
push 1
push edi
push edi
push str.DownloadItem
push 1
lea eax, [ebp - 0x440]
push eax
mov byte [ebp - 4], 2
call dword [edx + 0x10]
push str.configconfig.ini
lea ecx, [ebp - 0x430]
push 0x4cbdc0
push ecx
mov dword [ebp - 0x42c], edi
call fcn.004010a0
add esp, 0xc
mov ecx, eax
call dword [sym.imp.MFC71.DLL_ATL::CSimpleStringT::operator_char_const_]
push eax
push 0xf
push str.NoEndSaveDays
push 0x4ac6b4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
lea ecx, [ebp - 0x430]
mov dword [ebp - 0x448], eax
call dword [sym.imp.MFC71.DLL_ATL::CStringT::CStringT]
mov eax, dword [ebp - 0x43c]
mov ecx, dword [eax]
mov dword [ebp - 0x430], ecx
cmp ecx, eax
je 0x41964b
mov esi, dword [ecx + 8]
push 0x524
call sub.MFC71.DLL_operator_new_1
mov edx, eax
add esp, 4
cmp edx, edi
je 0x4192a0
xor eax, eax
mov ecx, 0x149
mov edi, edx
rep stosd dword es:[edi], eax
mov ecx, 1
mov dword [edx + 0x240], eax
mov dword [edx + 0x27c], eax
mov dword [edx + 0x280], ecx
mov dword [edx + 0x270], eax
mov dword [edx + 0x3a0], 0xffffffff
mov dword [edx + 0x3a8], ecx
mov dword [edx + 0x3ac], ecx
mov edi, edx
jmp 0x4192a2
xor edi, edi
lea eax, [edi + 0x28]
push eax
push str.fileName
mov ecx, esi
call fcn.00439cf0
mov edx, dword [esi]
push edi
push str.HashID
mov ecx, esi
call dword [edx + 0xc]
mov eax, dword [esi]
lea ecx, [edi + 0x244]
push ecx
push str.CinemaID
mov ecx, esi
call dword [eax + 0xc]
mov edx, dword [esi]
lea eax, [edi + 0x3b0]
push eax
push 0x4ae830
mov ecx, esi
call dword [edx + 0xc]
mov edx, dword [esi]
lea eax, [ebp - 0x28]
push eax
push str.FileType
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x230], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.FileSize
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atol]
add esp, 4
test eax, eax
mov dword [edi + 0x22c], eax
ja 0x41933e
mov edx, dword [ebp - 0x430]
mov eax, dword [edx + 8]
push eax
jmp 0x41954b
mov edx, dword [esi]
lea eax, [ebp - 0x28]
push eax
push str.ZZid
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x39c], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.PrePlayTime
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x3a4], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.StartDownloadTime
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x414], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.AudioTrack
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x3a8], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.LanTrack
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x3ac], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.PushFile
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x274], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.FilmID
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x418], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.CurChap
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x41c], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.Total
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atoi]
mov dword [edi + 0x520], eax
mov edx, dword [esi]
add esp, 4
lea eax, [edi + 0x420]
push eax
push str.FilmName
mov ecx, esi
call dword [edx + 0xc]
mov edx, dword [esi]
lea eax, [ebp - 0x28]
push eax
push str.PlayAdInterval
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atol]
mov dword [edi + 0x26c], eax
mov edx, dword [esi]
add esp, 4
lea eax, [ebp - 0x28]
push eax
push str.NotPause
mov ecx, esi
call dword [edx + 0xc]
lea ecx, [ebp - 0x28]
push ecx
call dword [sym.imp.MSVCR71.dll_atol]
add esp, 4
lea edx, [edi + 0x128]
push edx
push str.filePath
mov ecx, esi
mov dword [edi + 0x278], eax
call fcn.00439cf0
mov eax, dword [esi]
lea ecx, [edi + 0x298]
push ecx
push str.SourceUrl
mov ecx, esi
call dword [eax + 0xc]
lea edx, [ebp - 0x444]
push edx
mov dword [edi + 0x24], 2
call dword [sym.imp.MSVCR71.dll_time]
mov ecx, dword [edi + 0x414]
mov eax, dword [ebp - 0x444]
add esp, 4
push 0
sub eax, ecx
cdq
push 0x15180
push edx
push eax
call fcn.004a18c0
mov esi, eax
mov eax, dword [ebp - 0x448]
mov ecx, edx
cdq
cmp ecx, edx
jl 0x4195a8
jg 0x419541
cmp esi, eax
jb 0x4195a8
mov eax, dword [ebp - 0x430]
mov ecx, dword [eax + 8]
push ecx
mov ecx, dword [ebp - 0x434]
call fcn.00439d60
mov ecx, dword [ebx + 0x160]
test ecx, ecx
mov eax, dword [edi + 0x230]
je 0x419585
push 0x4ade80
push edi
push eax
call fcn.00403b70
test eax, eax
je 0x419585
mov ecx, dword [ebx + 0x160]
test ecx, ecx
je 0x419585
call fcn.00403b90
lea eax, [edi + 0x28]
push eax
mov ecx, ebx
call fcn.00418470
push edi
call sub.MFC71.DLL_operator_delete_1
mov eax, dword [ebp - 0x42c]
add esp, 4
inc eax
mov dword [ebp - 0x42c], eax
jmp 0x41961f
xor esi, esi
lea ebx, [ebx]
cmp esi, dword [ebx + 0x3a4]
jge 0x4195ed
test esi, esi
lea ecx, [ebx + 0x39c]
jl 0x419646
cmp esi, dword [ecx + 8]
jge 0x419646
mov edx, dword [ecx + 4]
mov eax, dword [edx + esi*4]
test eax, eax
je 0x419640
mov edx, dword [eax + 0x24]
test edx, edx
jne 0x419640
push 1
push edi
push esi
call sub.MFC71.DLL_CPtrArray::InsertAt
cmp esi, dword [ebx + 0x3a4]
jl 0x419600
mov eax, dword [ebx + 0x3a4]
lea ecx, [ebx + 0x39c]
push edi
push eax
call sub.MFC71.DLL_CPtrArray::SetAtGrow
lea eax, [edi + 0x28]
push eax
mov ecx, ebx
mov dword [edi + 0x24], 6
call fcn.0040c590
xor ecx, ecx
test eax, eax
setne cl
mov dword [edi + 0x234], ecx
mov edx, dword [ebp - 0x430]
mov eax, dword [edx]
mov dword [ebp - 0x430], eax
mov eax, dword [ebp - 0x43c]
mov ecx, dword [ebp - 0x430]
xor edi, edi
jmp 0x419240
inc esi
jmp 0x4195b0
call fcn.004a11bc
lea ecx, [ebx + 0x290]
cmp ecx, edi
je 0x419677
cmp dword [ebp - 0x42c], edi
jle 0x419677
push edi
push ecx
mov ecx, dword [ebx + 0x28c]
call fcn.00439070
mov ecx, ebx
call fcn.0040d6e0
mov eax, dword [ebp - 0x43c]
mov ecx, dword [eax]
mov dword [eax], eax
mov eax, dword [ebp - 0x43c]
mov dword [eax + 4], eax
mov dword [ebp - 0x438], edi
lea ebx, [ebx]
mov eax, dword [ebp - 0x43c]
cmp ecx, eax
je 0x4196a9
mov esi, dword [ecx]
push ecx
call sub.MFC71.DLL_operator_delete_1
add esp, 4
mov ecx, esi
jmp 0x419690
push eax
call sub.MFC71.DLL_operator_delete_1
jmp 0x41918e