Function at 0x60da90
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x889c
call fcn.006ab750
push ebx
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx]
mov ecx, dword [eax + 0x4b20]
add ecx, 0xffffffff
cmp ecx, 0xf
push esi
push edi
ja case.0x60dac1.7
movzx ecx, byte [ecx + 0x60e0ec]
jmp dword [ecx*4 + 0x60e0e0]
mov eax, dword [ebp + 8]
mov dword [eax], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
mov byte [ebx + 4], 0
cmp dword [eax + 0x4b20], 5
mov edi, 2
jne 0x60dc93
lea ecx, [eax + 0x820]
mov edx, 0x6bc0cc
xor esi, esi
mov dword [esp + 0x86c], ecx
lea ecx, [eax + 0xa2c]
mov dword [esp + 0x874], edx
mov dword [esp + 0x868], edx
mov dword [esp + 0x878], edx
mov dword [esp + 0x87c], edx
mov dword [esp + 0x880], esi
mov word [esp + 0x884], si
mov dword [esp + 0x870], ecx
mov ecx, dword [eax + 0xe3c]
cmp ecx, esi
mov dword [esp + 0x874], ecx
jne 0x60db54
mov dword [esp + 0x874], edx
lea edx, [eax + 0x244a]
lea ecx, [eax + 0x2062]
push str.https:__www.googleapis.com_auth_youtube.readonlyhttps:__www.googleapis.com_auth_youtube.upload
mov dword [esp + 0x880], ecx
mov dword [esp + 0x87c], edx
mov edx, dword [eax + 0x2654]
mov eax, dword [ebp + 0xc]
push str.YouTubeAuthCache
push eax
lea ecx, [esp + 0x18]
push ecx
mov dword [esp + 0x890], edx
call fcn.00539550
mov ecx, dword [esp + 0xc]
cmp ecx, 1
jne 0x60dbaa
mov eax, dword [ebp + 8]
mov dword [eax], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp ecx, esi
je 0x60dbbc
mov eax, dword [ebp + 8]
mov dword [eax], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
xor ecx, ecx
mov eax, 0x800
mov edx, edi
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.0069c0de
xor edi, edi
add esp, 4
cmp eax, edi
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edi
jne 0x60dbeb
mov dword [esp + 0x18], edi
jmp 0x60dbf6
mov word [eax], di
mov dword [esp + 0x18], 0x800
lea eax, [esp + 0x10]
push eax
mov eax, str.YouTubeAuthCache
call fcn.005399c0
mov esi, dword [esp + 0x10]
cmp esi, edi
mov dword [esp + 0x868], esi
jne 0x60dc1f
mov dword [esp + 0x868], 0x6bc0cc
mov edx, dword [ebp + 0xc]
lea ecx, [esp + 0x868]
push ecx
push edx
lea eax, [esp + 0x14]
push eax
call fcn.00544ca0
mov edi, dword [eax]
cmp edi, 1
jne 0x60dc59
mov edi, dword [ebp + 8]
push esi
mov dword [edi], 1
call fcn.0069c8fa
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
test edi, edi
je 0x60dc76
mov ebx, dword [ebp + 8]
push esi
mov dword [ebx], edi
call fcn.0069c8fa
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
lea ecx, [esp + 0x884]
push ecx
lea esi, [ebx + 5]
call fcn.00480880
mov edx, dword [esp + 0x10]
push edx
call fcn.0069c8fa
add esp, 4
mov ecx, dword [ebx]
mov eax, dword [ecx + 0x4b20]
cmp eax, 0xf
jne 0x60dd86
lea eax, [esp + 0x250]
push eax
lea ecx, [esp + 0x664]
push ecx
call fcn.00546f30
cmp word [esp + 0x250], 0
mov ecx, dword [ebp + 0xc]
jne 0x60dce5
mov edx, dword [ecx]
mov eax, dword [edx + 0x1c]
push str.User_was_not_logged_into_Vimeo
call eax
mov eax, dword [ebp + 8]
mov dword [eax], 2
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
push ecx
lea ecx, [esp + 0x254]
lea edi, [esp + 0x10]
call fcn.00546dc0
mov eax, dword [ebx]
lea ecx, [eax + 0x820]
lea edx, [esp + 0x250]
mov dword [esp + 0x14], ecx
mov ecx, dword [eax + 0x36a4]
test ecx, ecx
mov dword [esp + 0x10], edx
lea edx, [eax + 0x3294]
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], ecx
jne 0x60dd2d
mov dword [esp + 0x1c], 0x6bc0cc
mov ecx, dword [eax + 0x36c8]
add eax, 0x36ce
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0xc]
lea edx, [esp + 0x458]
push edx
mov dword [esp + 0x24], ecx
push eax
lea ecx, [esp + 0x14]
push ecx
lea eax, [esp + 0x1c]
call fcn.00547de0
mov ecx, dword [eax]
test ecx, ecx
jne 0x60dbae
lea edx, [esp + 0x458]
push edx
lea esi, [ebx + 5]
call fcn.00480880
mov eax, dword [ebp + 8]
mov dword [eax], 0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc
cmp eax, 9
jne 0x60df77
lea edx, [ecx + 0x820]
lea esi, [esp + 0x250]
call fcn.004ad160
xor eax, eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov byte [esp + 0x3c], al
mov byte [esp + 0x3d], al
mov byte [esp + 0x3e], al
mov eax, 1
mov edx, esi
lea esi, [esp + 0x48]
mov byte [esp + 0x3f], 1
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
call fcn.004011d0
lea esi, [esp + 0x250]
lea edi, [esp + 0x458]
call fcn.004ad1c0
mov eax, edi
push 0x6ca7e8
push eax
call fcn.006b227b
add esp, 8
test eax, eax
je 0x60de1b
mov ecx, edi
push 0x6ca7dc
push ecx
call fcn.006b227b
add esp, 8
test eax, eax
mov dword [esp + 0x44], 3
jne 0x60de23
mov dword [esp + 0x44], 1
mov eax, dword [ebx]
movzx edx, word [eax + 0x2c74]
neg dx
lea ecx, [eax + 0x2c74]
lea esi, [esp + 0x868]
sbb edx, edx
and edx, ecx
mov dword [esp + 0x30], edx
movzx edx, word [eax + 0x2e7c]
lea ecx, [eax + 0x2e7c]
neg dx
sbb edx, edx
and edx, ecx
mov dword [esp + 0x34], edx
movzx edx, word [eax + 0x3084]
lea ecx, [eax + 0x3084]
neg dx
sbb edx, edx
and edx, ecx
mov dword [esp + 0x38], edx
mov ecx, dword [eax + 0x328c]
mov dword [esp + 0x40], ecx
movzx edx, byte [eax + 0x3290]
mov byte [esp + 0x3c], dl
mov cl, byte [eax + 0x3291]
mov byte [esp + 0x3d], cl
movzx edx, byte [eax + 0x3292]
mov byte [esp + 0x3e], dl
mov al, byte [eax + 0x3293]
mov byte [esp + 0x3f], al
call fcn.00408b90
mov ecx, dword [ebx]
push 0x1388
add ecx, 0x820
push ecx
lea esi, [esp + 0x880]
call fcn.00482bd0
mov eax, dword [ebx]
lea edi, [eax + 0x2a6c]
add eax, 0x2864
lea esi, [esp + 0x660]
call fcn.00496cb0
mov dword [esp + 0xc], eax
mov eax, dword [ebx]
add eax, 0x265c
lea esi, [esp + 0x250]
call fcn.00496cb0
mov edx, dword [esp + 0xc]
mov dword [esp + 0x4890], eax
mov dword [esp + 0x4894], edx
lea eax, [esp + 0x30]
lea edx, [esp + 0x4888]
mov dword [esp + 0x489c], eax
mov eax, dword [ebp + 0xc]
lea ecx, [esp + 0x868]
push edx
mov dword [esp + 0x48a4], ecx
push eax
lea ecx, [esp + 0x14]
push ecx
mov dword [esp + 0x4894], 0x717dcc
mov dword [esp + 0x4898], 0x717db8
mov dword [esp + 0x48a4], edi
call fcn.00687bc0
mov edi, dword [eax]
test edi, edi
jne 0x60df6b
lea edx, [esp + 0x48a4]
push edx
lea esi, [ebx + 5]
call fcn.00480880
lea eax, [esp + 0x868]
call fcn.00408bd0
mov eax, dword [ebx]
mov ecx, dword [eax + 0x4b20]
cmp ecx, 0xc
jl 0x60e0b3
cmp ecx, 0xd
jle 0x60df96
cmp ecx, 0x10
jne 0x60e0b3
mov eax, ecx
sub eax, 0xc
je 0x60dff7
sub eax, 1
jne case.0x60dac1.7
push 0x14
call fcn.004aefd0
xor edi, edi
add esp, 4
cmp eax, edi
je 0x60dfce
mov dword [eax + 4], edi
mov dword [eax + 8], edi
mov dword [eax + 0xc], edi
mov dword [eax + 0x10], 3
mov dword [eax], 0x70c078
jmp 0x60dfd0
xor eax, eax
mov esi, eax
mov eax, dword [ebx]
push 0x6bc0cc
add eax, 0x4300
push eax
lea ecx, [esp + 0x460]
push ecx
mov eax, 0x6bc140
mov dword [esp + 0x18], esi
call fcn.004ad3a0
jmp 0x60e031
push 0x119
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x60e011
mov esi, eax
call fcn.00427700
jmp 0x60e013
xor eax, eax
mov edx, dword [ebx]
add edx, 0x3ce8
lea esi, [esp + 0x458]
mov dword [esp + 0xc], eax
call fcn.004011d0
mov esi, dword [esp + 0xc]
xor edi, edi
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi]
mov edx, dword [edx + 4]
push edi
lea eax, [esp + 0x30]
push eax
push ecx
lea eax, [esp + 0x34]
push eax
mov ecx, esi
call edx
mov edi, dword [eax]
cmp edi, 2
je 0x60e0a9
lea eax, [esp + 0x458]
lea esi, [esp + 0x250]
call fcn.00402040
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x10]
push 0
push 1
lea edx, [esp + 0x870]
push edx
mov edx, dword [ebx]
add edx, 0x820
push edx
mov edx, esi
push edx
mov edx, dword [ebp + 0xc]
push edx
lea edx, [esp + 0x40]
push edx
call eax
mov edi, dword [eax]
test edi, edi
jne 0x60e0a5
lea ecx, [esp + 0x868]
push ecx
lea esi, [ebx + 5]
call fcn.00480880
mov esi, dword [esp + 0xc]
mov edx, dword [esi]
mov eax, dword [edx]
push 1
mov ecx, esi
call eax
mov ebx, dword [ebx]
cmp byte [ebx + 0xa28], 0
je 0x60e0cf
test edi, edi
jne 0x60e0cf
add ebx, 0x820
push ebx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp + 8]
mov dword [eax], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0xc