Function at 0x490295
Capabilities:
Check for time delay via gettickcount

Disassembly:
push 0x54
mov eax, 0x564fa1
call fcn.0054f7b0
mov ebx, ecx
mov dword [ebp - 0x2c], ebx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
cmp dword [ebx + 0x440], 0
jne 0x4902c3
xor ecx, ecx
inc ecx
test eax, eax
cmovne ecx, eax
mov dword [ebx + 0x440], ecx
lea esi, [ebx + 0x500]
mov ecx, esi
mov dword [ebp - 0x24], esi
call fcn.00529310
and dword [ebp - 4], 0
mov eax, dword [ebx + 0x360]
or eax, dword [ebx + 0x364]
jne 0x4902f6
call fcn.0051f180
mov dword [ebx + 0x360], eax
mov dword [ebx + 0x364], edx
or dword [ebp - 4], 0xffffffff
mov ecx, esi
call fcn.00529320
mov eax, dword [ebx + 0x290]
push 0x14
mov ecx, dword [eax + 4]
sub ecx, dword [eax]
mov edi, dword [eax + 0x10]
sub edi, dword [eax + 0xc]
mov eax, dword [ebx + 0x51c]
sar ecx, 2
sar edi, 2
mov dword [ebp - 0x28], ecx
mov esi, dword [eax + 0xb8]
mov eax, dword [ebx + 0x2e4]
mov dword [ebp - 0x1c], edi
pop ecx
cmp eax, 0x10
je 0x49033c
cmp eax, ecx
jne 0x49033f
push 8
pop esi
lea eax, [ebx + 0x154]
cmp dword [eax], 0
jne 0x490399
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490393
mov eax, dword [ebx + 0x2e4]
cmp eax, 3
je 0x490384
cmp eax, 0x10
je 0x490384
push 0x14
pop ecx
cmp eax, ecx
je 0x490384
test eax, eax
je 0x490384
cmp eax, 0x15
je 0x490384
mov dword [ebx + 0x158], 0x9c4
jmp 0x4904ff
mov dword [ebx + 0x158], 0x258
jmp 0x4904ff
lea eax, [ebx + 0x154]
mov ecx, eax
call fcn.00448525
test al, al
je 0x490524
xor ecx, ecx
cmp dword [ebx + 0x140], ecx
je 0x4904a5
mov eax, dword [ebx + 0x2d8]
mov dword [ebx + 0x140], ecx
sub eax, ecx
je 0x4903e5
dec eax
je 0x4903d8
dec eax
je 0x4903d1
push 0xfffffffffffffffe
pop eax
jmp 0x4903e8
mov eax, 0xffff
jmp 0x4903e8
lea ecx, [ebx + 0x138]
call fcn.0048d346
jmp 0x4903e8
or eax, 0xffffffff
push eax
push dword [ebx + 0x144]
push 0x5824ec
push ebx
call fcn.0048ff45
add esp, 0x10
cmp dword [ebx + 0x148], 7
jg 0x490524
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490524
cmp byte [ebx + 0x173], al
jne 0x490524
mov edx, dword [ebx + 0x148]
mov ecx, 0x9c4
cmp edx, 2
jne 0x49045a
mov eax, dword [ebx + 0x2e4]
cmp eax, 3
je 0x490453
cmp eax, 0x10
je 0x490453
cmp eax, 0x14
je 0x490453
test eax, eax
je 0x490453
cmp eax, 0x15
jne 0x49045a
mov ecx, 0x3e8
jmp 0x490483
cmp edx, 3
jne 0x490483
mov eax, dword [ebx + 0x2e4]
cmp eax, edx
je 0x49047e
cmp eax, 0x10
je 0x49047e
push 0x14
pop edx
cmp eax, edx
je 0x49047e
test eax, eax
je 0x49047e
cmp eax, 0x15
jne 0x490483
mov ecx, 0x960
mov dword [ebx + 0x158], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebx + 0x154]
mov dword [ecx], eax
test eax, eax
jne 0x4904a1
mov dword [ecx], 1
push 1
jmp 0x490519
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490524
mov ecx, dword [ebx + 0x290]
push 0x14
mov eax, dword [ecx + 0x1c]
sub eax, dword [ecx + 0x18]
cdq
pop ecx
idiv ecx
test eax, eax
jne 0x490524
cmp edi, esi
jge 0x490524
cmp byte [ebx + 0x173], al
jne 0x490524
mov edx, dword [ebx + 0x148]
cmp edx, 7
jge 0x490524
mov eax, dword [ebx + 0x51c]
mov ecx, dword [eax + 0xbc]
mov eax, dword [ebx + 0x144]
sub eax, edx
cmp eax, ecx
jge 0x490524
mov dword [ebx + 0x158], 0x1388
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebx + 0x154]
mov dword [ecx], eax
test eax, eax
jne 0x490517
mov dword [ecx], 1
push 0
lea ecx, [ebx + 0x138]
call fcn.0048ccc1
mov eax, dword [ebx + 0x2ec]
cmp eax, 2
je 0x490538
cmp eax, 3
jne 0x490810
cmp edi, esi
jge 0x490810
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490810
and dword [ebp - 0x24], 0
mov edi, esi
sub edi, dword [ebp - 0x1c]
imul eax, edi, 5
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x14], eax
test edi, edi
jle 0x490599
cmp dword [ebp - 0x28], 0
jle 0x490599
mov ecx, dword [ebx + 0x290]
lea eax, [ebp - 0x18]
push eax
call fcn.0049a741
mov edi, dword [ebp - 0x18]
sub esi, edi
sub esi, dword [ebp - 0x1c]
add dword [ebx + 0x4d8], esi
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], edi
test edi, edi
je 0x490c92
lea esi, [ebx + 0x294]
mov eax, dword [esi]
cmp eax, dword [esi + 4]
je 0x490675
mov ecx, dword [ebx + 0x290]
call fcn.0049a7cd
test eax, eax
setg dl
xor ecx, ecx
mov byte [ebp - 0xd], dl
mov dword [ebp - 0x18], ecx
cmp dword [ebp - 0x14], ecx
jle 0x490645
mov edi, dword [ebp - 0x14]
mov eax, dword [esi + 4]
sub eax, dword [esi]
sar eax, 2
cmp ecx, eax
jae 0x49063f
mov eax, dword [esi]
mov eax, dword [eax + ecx*4]
mov dword [ebp - 0x14], eax
test eax, eax
je 0x490637
test dl, dl
je 0x4905f8
lea ecx, [eax + 0x254]
call fcn.00467635
test al, al
je 0x490631
mov eax, dword [ebp - 0x14]
dec edi
inc dword [ebx + 0x4c4]
mov cl, byte [eax + 0xe]
cmp cl, 1
jbe 0x490614
cmp cl, 4
ja 0x49061a
inc dword [ebx + 0x4cc]
jmp 0x49061a
inc dword [ebx + 0x4c8]
mov ecx, dword [ebx + 0x290]
push eax
call fcn.0049a3b1
mov eax, dword [esi]
mov ecx, dword [ebp - 0x18]
and dword [eax + ecx*4], 0
jmp 0x490634
mov ecx, dword [ebp - 0x18]
mov dl, byte [ebp - 0xd]
inc ecx
mov dword [ebp - 0x18], ecx
test edi, edi
jg 0x4905ca
mov dword [ebp - 0x14], edi
mov edi, dword [ebp - 0x20]
mov esi, dword [ebx + 0x298]
lea edx, [ebp - 0x20]
and dword [ebp - 0x20], 0
lea ecx, [ebp - 0x30]
push esi
push dword [ebx + 0x294]
call fcn.0047cc54
pop ecx
pop ecx
push esi
push dword [eax]
lea eax, [ebp - 0x34]
push eax
lea ecx, [ebx + 0x294]
call fcn.004123e9
imul eax, edi, 3
cmp dword [ebp - 0x24], eax
jge 0x490810
mov ecx, dword [ebx + 0x290]
push 0x14
pop esi
mov eax, dword [ecx + 0x1c]
sub eax, dword [ecx + 0x18]
cdq
idiv esi
test eax, eax
jle 0x490810
mov eax, dword [ebx + 0x520]
mov edx, 0x71004001
mov esi, 0x70000003
mov al, byte [eax + 0x3a5]
test al, al
cmovne edx, esi
mov dword [ebp - 0x18], edx
jmp 0x4907a3
cmp dword [ebp - 0x14], 0
jle 0x4907b7
mov ecx, dword [ebx + 0x290]
push 0x14
pop esi
mov dword [ebp - 0x24], ecx
mov eax, dword [ecx + 0x1c]
sub eax, dword [ecx + 0x18]
cdq
idiv esi
test eax, eax
je 0x49079d
mov eax, dword [ecx + 0x18]
lea edi, [ebp - 0x58]
mov ecx, dword [eax]
lea esi, [eax + 4]
mov dword [ebp - 0x5c], ecx
lea edx, [eax + 0x14]
mov ecx, dword [ebp - 0x24]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ecx + 0x1c]
movsd dword es:[edi], dword [esi]
mov dword [ebp - 0x20], ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp edx, ecx
je 0x490729
mov ebx, dword [ebp - 0x20]
lea ecx, [edx + 4]
mov eax, dword [edx]
lea edi, [ecx - 0x14]
mov dword [ecx - 0x18], eax
mov esi, ecx
push 0x14
pop eax
add edx, eax
add ecx, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
cmp edx, ebx
jne 0x49070d
mov ebx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x24]
lea esi, [ebp - 0x58]
sub esp, 0x10
mov edi, esp
add dword [eax + 0x1c], 0xffffffec
mov ecx, dword [ebx + 0x290]
movsd dword es:[edi], dword [esi]
push 0
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.0049a326
test al, al
je 0x49079d
mov esi, dword [ebx + 0x290]
mov ecx, esi
push dword [ebp - 0x58]
call fcn.0049a407
push eax
mov ecx, esi
call fcn.0049a43a
test eax, eax
je 0x49077b
mov ecx, dword [ebp - 0x18]
mov dword [eax + 0x248], ecx
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 0x260], ecx
dec dword [ebp - 0x14]
inc dword [ebx + 0x4c4]
mov al, byte [eax + 0xe]
cmp al, 1
jbe 0x490797
cmp al, 4
ja 0x49079d
inc dword [ebx + 0x4cc]
jmp 0x49079d
inc dword [ebx + 0x4c8]
mov ecx, dword [ebx + 0x290]
mov eax, dword [ecx + 0x1c]
sub eax, dword [ecx + 0x18]
push 0x14
cdq
pop ecx
idiv ecx
test eax, eax
jg 0x4906be
cmp dword [ebx + 0x59c], 0
je 0x490810
lea esi, [ebx + 0x5b0]
mov ecx, esi
mov dword [ebp - 0x38], esi
call fcn.00529310
mov dword [ebp - 4], 1
mov edi, dword [ebx + 0x59c]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebp - 0x1c]
sub eax, dword [edi + 4]
push dword [ebp - 0x28]
push eax
push 0x581dd0
push str.check_source_count
push dword [ebx + 0x59c]
call fcn.0051f43e
or dword [ebp - 4], 0xffffffff
add esp, 0x18
mov ecx, esi
call fcn.00529320
mov ecx, dword [ebx + 0x290]
call fcn.0049a7cd
test eax, eax
jne 0x490974
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490974
mov ecx, dword [ebx + 0x51c]
mov al, byte [ecx + 0x10d]
test al, al
jne 0x49084a
cmp byte [0x5bb750], al
je 0x490851
mov al, byte [ebx + 4]
test al, al
jne 0x49085e
cmp byte [ebx + 0x1f8], 0
je 0x490974
cmp dword [ebx + 0x148], 5
jg 0x490883
mov eax, dword [ecx + 0xbc]
cmp dword [ebx + 0x144], eax
jge 0x490883
mov al, byte [ebx + 0x13c]
test al, al
je 0x490974
cmp byte [ebx + 0x2a0], 0
jne 0x490974
mov edx, dword [ebx + 0x2e4]
cmp edx, 0xd
jne 0x4908a5
mov al, byte [ecx + 0x10e]
test al, al
jne 0x4908f5
test edx, edx
je 0x4908b7
cmp edx, 3
je 0x4908b7
cmp edx, 0x15
jne 0x490974
cmp byte [ebx + 0x624], 0
movzx eax, word [ebx + 0x5ea]
je 0x4908d9
mov edx, 0x140
cmp ax, dx
jb 0x4908d9
mov al, byte [ecx + 0x18e]
jmp 0x4908f1
mov edx, 0x80
cmp ax, dx
ja 0x4908eb
mov al, byte [ecx + 0x18c]
jmp 0x4908f1
mov al, byte [ecx + 0x18d]
test al, al
je 0x490974
cmp dword [ebx + 0x604], 0xffffffff
jne 0x490908
mov dword [ebx + 0x604], 1
mov ecx, ebx
call fcn.004922e5
cmp dword [ebx + 0x59c], 0
je 0x490974
lea esi, [ebx + 0x5b0]
mov ecx, esi
mov dword [ebp - 0x3c], esi
call fcn.00529310
mov dword [ebp - 4], 2
mov edi, dword [ebx + 0x59c]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebx + 0x144]
sub eax, dword [edi + 4]
push dword [ebx + 0x4b4]
push dword [ebx + 0x148]
push eax
push 0x581e38
push str.checksourcecount_add_clouddown
push dword [ebx + 0x59c]
call fcn.0051f43e
or dword [ebp - 4], 0xffffffff
add esp, 0x1c
mov ecx, esi
call fcn.00529320
cmp byte [ebx + 0x2a0], 0
mov esi, 0xb8
jne 0x490ae8
mov eax, dword [ebx + 0x2e4]
push 3
pop edi
test eax, eax
je 0x4909a0
cmp eax, edi
je 0x4909a0
cmp eax, 0x15
jne 0x490a28
movzx eax, byte [ebx + 0x624]
mov ecx, dword [ebx + 0x51c]
push eax
movzx eax, word [ebx + 0x5ea]
add ecx, esi
push eax
call fcn.0047f251
test al, al
je 0x490a28
cmp dword [ebx + 0x604], 0xffffffff
jne 0x4909d0
mov dword [ebx + 0x604], edi
mov ecx, ebx
call fcn.004922e5
cmp dword [ebx + 0x59c], 0
je 0x490ae8
lea esi, [ebx + 0x5b0]
mov ecx, esi
mov dword [ebp - 0x40], esi
call fcn.00529310
mov dword [ebp - 4], edi
mov edi, dword [ebx + 0x59c]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebx + 0x144]
sub eax, dword [edi + 4]
push dword [ebx + 0x4b4]
push dword [ebx + 0x148]
push eax
push 0x581e38
push str.checksourcecount_add_clouddown_idletime_song
jmp 0x490acf
cmp byte [ebx + 0x2a0], 0
jne 0x490ae8
mov eax, dword [ebx + 0x2e4]
push 0x14
pop ecx
cmp eax, ecx
je 0x490a4b
cmp eax, 0x10
jne 0x490ae8
mov ecx, dword [ebx + 0x51c]
add ecx, esi
cmp byte [ecx + 0x10f], 0
je 0x490ae8
call fcn.0047f298
test al, al
je 0x490ae8
cmp dword [ebx + 0x604], 0xffffffff
jne 0x490a7c
mov dword [ebx + 0x604], 3
mov ecx, ebx
call fcn.004922e5
cmp dword [ebx + 0x59c], 0
je 0x490ae8
lea esi, [ebx + 0x5b0]
mov ecx, esi
mov dword [ebp - 0x44], esi
call fcn.00529310
mov dword [ebp - 4], 4
mov edi, dword [ebx + 0x59c]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
push dword [ebx + 0x144]
sub eax, dword [edi + 4]
push dword [ebx + 0x4b4]
push dword [ebx + 0x148]
push eax
push 0x581e38
push str.checksourcecount_add_clouddown_idletime_mv
push dword [ebx + 0x59c]
call fcn.0051f43e
or dword [ebp - 4], 0xffffffff
add esp, 0x1c
mov ecx, esi
call fcn.00529320
mov ecx, dword [ebx + 0x290]
call fcn.0049a7cd
test eax, eax
je 0x490b06
mov ecx, ebx
call fcn.0049424b
test al, al
je 0x490c92
mov eax, dword [ebx + 0x51c]
mov esi, dword [ebx + 0x144]
mov edx, dword [ebx + 0x148]
mov ecx, dword [eax + 0xbc]
mov eax, esi
sub eax, edx
cmp eax, ecx
jge 0x490b50
cmp edx, 7
jg 0x490b50
test esi, esi
jle 0x490b39
mov al, byte [ebx + 0x185]
test al, al
je 0x490b50
mov ecx, ebx
call fcn.0049424b
test al, al
jne 0x490b50
cmp byte [ebx + 0x173], al
je 0x490c92
cmp dword [ebx + 0x140], 0
jne 0x490c92
mov ecx, ebx
call fcn.0049424b
test al, al
je 0x490b74
mov dword [ebx + 0x2f0], 0xc
jmp 0x490bb3
mov eax, dword [ebx + 0x51c]
mov eax, dword [eax + 0xbc]
cmp dword [ebx + 0x144], eax
jl 0x490b94
mov dword [ebx + 0x2f0], 1
jmp 0x490bb3
cmp dword [ebx + 0x148], 4
jl 0x490ba9
mov dword [ebx + 0x2f0], 2
jmp 0x490bb3
mov dword [ebx + 0x2f0], 3
cmp byte [ebx + 0x2a0], 0
jne 0x490c23
cmp dword [ebx + 0x59c], 0
je 0x490c23
lea esi, [ebx + 0x5b0]
mov ecx, esi
mov dword [ebp - 0x48], esi
call fcn.00529310
mov dword [ebp - 4], 5
mov eax, dword [ebx + 0x51c]
mov dl, byte [eax + 0x10d]
movzx eax, byte [ebx + 0x13c]
push eax
push dword [ebx + 0x144]
movzx eax, dl
push dword [ebx + 0x148]
push eax
push str.IsCloudDownEnabled:_d__seafileManager_.GetSeafile__.timeOutCount:_d__seafileManager_.GetSeafile__.count:_d__seafileManager_.GetSeaFileLessThan50__:_d
push 0x5827cc
push dword [ebx + 0x59c]
call fcn.0051f43e
or dword [ebp - 4], 0xffffffff
add esp, 0x1c
mov ecx, esi
call fcn.00529320
push dword [ebx + 0x2f0]
mov byte [ebx + 0x2e0], 1
push 0x5827e8
push ebx
mov dword [ebx + 0x2ec], 5
call fcn.0048ff45
add esp, 0xc
mov ecx, ebx
call fcn.00493a96
mov dword [ebx + 0x158], 0x493e0
call dword [sym.imp.KERNEL32.dll_GetTickCount]
lea ecx, [ebx + 0x154]
mov dword [ecx], eax
test eax, eax
jne 0x490c71
mov dword [ecx], 1
cmp byte [ebx + 0x339], 0
je 0x490c81
mov byte [ebx + 0x339], 0
mov eax, dword [ebx + 0x2f4]
test eax, eax
jle 0x490c92
dec eax
mov dword [ebx + 0x2f4], eax
call fcn.0054f77e
ret