Function at 0x1017c740
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x5b0
mov eax, dword [0x10305014]
xor eax, ebp
mov dword [esp + 0x5a8], eax
mov eax, dword [ecx + 0x108]
mov ebx, 0xbebbb1b7
cmp eax, 2
jle 0x1017c785
mov ecx, dword [esp + 0x5a8]
xor ecx, ebp
call fcn.10130483
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov edi, ecx
lea esi, [ecx + 0x5d0]
cmp eax, 1
je 0x1017c834
xor ebx, ebx
dec ebx
test eax, eax
je 0x1017c7e4
cmp eax, 2
jne 0x1017c76d
mov ecx, edi
mov edx, 0x102ca8a0
push esi
call fcn.1017b220
add esp, 4
mov ebx, eax
test eax, eax
js 0x1017c9be
mov ecx, dword [edi + 0x5f0]
test ecx, ecx
jle 0x1017c9be
mov eax, dword [edi + 0x5e8]
or eax, dword [edi + 0x5ec]
mov dword [esp + 4], ecx
jne 0x1017c85b
xor eax, eax
dec eax
jmp 0x1017c867
mov eax, dword [edi + 4]
push dword [eax + 0x10]
call fcn.10043a50
add esp, 4
test eax, eax
je 0x1017c80a
mov dword [edi + 0x1ac], 1
mov ebx, 0xdfb9b0bb
jmp 0x1017c76d
mov eax, dword [edi + 4]
push dword [eax + 0x10]
call fcn.10043a80
add esp, 4
mov eax, dword [edi + 4]
push dword [eax + 0x10]
call fcn.10043a50
add esp, 4
mov ebx, 0xbebbb1b7
test eax, eax
jne 0x1017c7f6
jmp 0x1017c76d
mov ecx, edi
mov edx, 0x102c94c8
push 0
call fcn.1017b220
add esp, 4
mov ebx, eax
cmp eax, 1
je 0x1017ca37
mov eax, dword [edi + 0x108]
jmp 0x1017c799
xor eax, eax
cmp dword [edi + 0x5e0], 0
sete al
mov dword [esp + 0x40], eax
mov dword [esp + 0xac], esi
mov eax, dword [edi + 0x610]
xor ecx, ecx
mov dword [esp + 0x6c], eax
test eax, eax
jle 0x1017c888
mov ecx, dword [edi + 0x618]
mov dword [esp + 0xa4], ecx
mov eax, dword [edi + 0x62c]
mov dword [esp + 0x94], eax
mov eax, dword [edi + 0x628]
mov dword [esp + 0x90], eax
mov eax, dword [edi + 0x63c]
mov dword [esp + 0x38], eax
mov eax, dword [edi + 0x638]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 0x60c]
mov dword [esp + 0x7c], eax
mov eax, dword [edi + 0x608]
mov dword [esp + 0x78], eax
mov eax, dword [edi + 0x5d0]
mov dword [esp + 0x50], eax
mov eax, dword [edi + 0x5d4]
mov dword [esp + 0x3c], eax
mov eax, dword [edi + 0x634]
mov dword [esp + 8], eax
mov eax, dword [edi + 0x630]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x604]
mov dword [esp + 0x88], eax
mov eax, dword [edi + 0x600]
mov dword [esp + 0x84], eax
mov esi, dword [edi + 0x5f8]
mov eax, dword [edi + 0x5f4]
mov dword [esp + 0x54], eax
mov eax, 0xff
lea ebx, [esp + 0xc0]
push 0xd8
push eax
push ebx
call fcn.10132b90
add esp, 0xc
lea eax, [esp + 0x1a8]
push 0x400
mov ecx, 0xff
push ecx
push eax
call fcn.10132b90
add esp, 0xc
xor eax, eax
dec eax
lea ecx, [esp + 0xb8]
mov dword [ecx + 4], eax
mov dword [ecx], eax
sub esp, 0x20
xorpd xmm0, xmm0
movupd xmmword [esp + 0xc], xmm0
mov eax, dword [esp + 0x24]
mov dword [esp + 8], eax
mov dword [esp + 0x38], esi
mov dword [esp + 4], esi
mov dword [esp], ebx
mov dword [esp + 0x1c], 0
call fcn.101738b0
add esp, 0x20
mov ecx, ebx
mov edx, 8
push 1
lea eax, [esp + 0xbc]
push eax
call fcn.1017c0b0
add esp, 8
mov ebx, eax
test eax, eax
jns 0x1017c9f0
mov esi, dword [esp + 0xac]
mov ecx, 0x102ca960
mov edx, esi
call fcn.1017bcc0
xorpd xmm0, xmm0
movupd xmmword [esi + 0x50], xmm0
movupd xmmword [esi + 0x40], xmm0
movupd xmmword [esi + 0x30], xmm0
movupd xmmword [esi + 0x20], xmm0
movupd xmmword [esi + 0x10], xmm0
movupd xmmword [esi], xmm0
jmp 0x1017c76d
mov eax, dword [edi + 0x150]
test eax, eax
jle 0x1017ca30
add dword [esp + 0x18], ebx
sub dword [esp + 4], ebx
mov ecx, dword [esp + 0xb8]
mov edx, dword [esp + 0xbc]
mov dword [esp + 0x34], edi
mov edi, dword [edi + 0x158]
mov esi, dword [edi]
xor esi, ecx
mov ebx, dword [edi + 4]
xor ebx, edx
or ebx, esi
je 0x1017ca7c
add edi, 0x5e8
dec eax
jne 0x1017ca1a
mov ebx, 0xbebbb1b7
jmp 0x1017c9b7
mov eax, dword [edi + 4]
xor ecx, ecx
push 1
push ecx
push ecx
push dword [eax + 0x10]
call fcn.100433e0
add esp, 0x10
add eax, 0xfffffffc
adc edx, 0xffffffff
mov dword [edi + 0x638], eax
mov dword [edi + 0x63c], edx
mov ecx, edi
mov edx, 0x102ca870
push esi
call fcn.1017b220
add esp, 4
mov ebx, eax
test eax, eax
jns 0x1017c850
jmp 0x1017c76d
test edi, edi
je 0x1017ca30
cmp dword [esp + 4], 3
jl 0x1017ca30
mov dword [esp + 0x10], edi
mov eax, dword [edi + 0x1b8]
xor ebx, ebx
test eax, eax
je 0x1017c9b7
mov dword [esp + 0x20], eax
cmp dword [eax + 0x34], 0x2f
mov eax, dword [esp + 0x18]
jg 0x1017c9b7
mov dword [esp + 0x28], 0
mov esi, dword [esp + 0x3c]
test esi, esi
mov ecx, dword [esp + 0x50]
mov edx, 0xffffffff
cmovs ecx, edx
mov dword [esp + 0x50], ecx
mov ecx, 0x7fffffff
cmp esi, ecx
cmovb ecx, esi
mov dword [esp + 0x60], ecx
movzx ecx, word [eax]
rol cx, 8
movzx edi, byte [eax + 2]
mov eax, edi
shr eax, 7
mov edx, dword [esp + 0x40]
cmp edx, 0xffffffff
cmovne eax, edx
mov dword [esp + 0x48], eax
mov edx, dword [esp + 0x44]
and edx, dword [esp + 8]
mov word [esp + 0x40], cx
movsx eax, cx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x80], edx
cmp edx, 0xffffffff
jne 0x1017d790
mov dword [esp + 0x24], 0x80000000
mov eax, dword [esp + 0x34]
cmp dword [eax + 0x1b0], 0
je 0x1017cb43
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x10]
xor eax, 0x11
or eax, dword [ecx + 0x14]
jne 0x1017d981
add dword [esp + 0x18], 3
shr edi, 1
and edi, 3
jne 0x1017d8ae
mov eax, dword [esp + 4]
add eax, 0xfffffffd
mov dword [esp + 0x1a8], eax
xor eax, eax
inc eax
mov dword [esp + 0x5c], eax
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x4c]
mov edx, eax
or edx, ecx
setne dl
movsd xmm0, qword [esi + 0x148]
ucomisd xmm0, qword [0x102c90e8]
jne 0x1017cbb7
jp 0x1017cbb7
mov esi, eax
or esi, ecx
je 0x1017cbb7
mov edx, dword [esp + 0x20]
mov esi, dword [edx + 0xb4]
mov dl, 1
cmp dword [esi + 4], 0x15003
jne 0x1017cbb7
cmp dword [esi + 0x6c], 0x1f40
jne 0x1017cbef
cmp dword [esi + 0x74], 0
je 0x1017cbef
mov esi, dword [esp + 0x50]
or esi, dword [esp + 0x60]
jne 0x1017cbef
test dl, dl
je 0x1017cbef
mov esi, dword [esp + 0x5c]
mul esi
imul ecx, esi
add ecx, edx
mov edx, dword [esp + 0x34]
push dword [edx + 0x124]
push dword [edx + 0x120]
push ecx
push eax
call fcn.1014b940
mov dword [esp + 0x50], eax
mov dword [esp + 0x60], edx
cmp dword [esp + 0x80], 0xffffffff
jne 0x1017d921
mov eax, dword [esp + 0x34]
add eax, 0x1a4
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x6c]
add eax, 8
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x78]
bswap eax
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x7c]
bswap eax
mov dword [esp + 0x7c], eax
xor eax, eax
mov esi, dword [esp + 0x18]
mov ebx, eax
lea edi, [eax + 1]
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x50]
mul edi
mov dword [esp + 0x80], edi
imul ecx, edi
add edx, ecx
xor ecx, ecx
push ecx
mov edi, dword [esp + 0x60]
push edi
push edx
push eax
call fcn.1014b940
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], edx
mov eax, dword [esp + 0x50]
mul ebx
mov ecx, dword [esp + 0x60]
imul ecx, ebx
add ecx, edx
xor edx, edx
push edx
push edi
push ecx
push eax
call fcn.1014b940
mov edi, dword [esp + 0x40]
mov dword [esp + 0x70], eax
sub edi, eax
mov dword [esp + 0x1c], edi
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x58], edx
sbb eax, edx
mov edx, ebx
mov dword [esp + 0x38], eax
mov dword [esp + 0x18], esi
mov dword [esp + 0xb4], esi
mov eax, dword [esp + ebx*4 + 0x1a8]
mov dword [esp + 0x74], eax
mov dword [esp + 0xb0], eax
mov esi, dword [esp + 0x10]
xor eax, eax
cmp dword [esi + 0x1cc], eax
jne 0x1017d21d
mov eax, dword [esi + 0x188]
test eax, eax
je 0x1017cdeb
mov ebx, esi
mov dword [esp + 0xc], eax
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 0xb4]
mov ecx, dword [edx + 0x70]
mov edi, dword [esi + 0x16c]
mov esi, dword [esi + 0x170]
cmp dword [ebx + 0x17c], 0
je 0x1017ce5b
imul esi, edi
mov dword [esp + 8], esi
cmp dword [ebx + 0x17c], 0
je 0x1017cf9f
mov eax, dword [esp + 0x34]
mov esi, dword [eax + 0x1a0]
push ecx
push esi
mov edi, ecx
call sym.ffmpeg.dll_av_new_packet
add esp, 8
test eax, eax
js 0x1017cfa3
mov eax, dword [esi + 0x18]
mov dword [esp + 4], eax
mov eax, dword [esp + 8]
cdq
mov ecx, edi
idiv edi
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x17c]
lea ebx, [edx - 1]
mov dword [edi + 0x17c], ebx
mov ebx, edi
sub eax, edx
imul eax, ecx
add eax, dword [edi + 0x188]
push ecx
mov edi, ecx
push eax
push dword [esp + 0xc]
call fcn.10132610
add esp, 0xc
movsd xmm0, qword [ebx + 0x180]
movsd qword [esi + 8], xmm0
xor ecx, ecx
mov dword [ebx + 0x180], ecx
mov eax, 0x80000000
mov dword [ebx + 0x184], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x38], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x3c], eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [esi + 0x20], eax
push ecx
push ecx
push esi
push dword [esp + 0x50]
call fcn.1003b4d0
add esp, 0x10
test eax, eax
mov ecx, edi
jns 0x1017cd17
push esi
call sym.ffmpeg.dll_av_packet_unref
add esp, 4
mov ebx, 0xfffffff4
jmp 0x1017cfa5
mov ecx, dword [esp + 0x20]
mov eax, dword [ecx + 0xb4]
mov eax, dword [eax + 4]
cmp eax, 0x17012
jne 0x1017cf38
mov esi, dword [esp + 0xb0]
mov eax, dword [esp + 0xb4]
mov dword [esp + 4], eax
mov ebx, 0xbebbb1b7
test esi, esi
jle 0x1017d6b3
mov eax, dword [esp + 0x34]
mov eax, dword [eax + 0x1a0]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 4]
add esi, eax
xor edx, edx
movzx ecx, byte [eax]
cmp ecx, 0xd
je 0x1017d072
cmp ecx, 0xa
je 0x1017d072
inc eax
inc edx
cmp eax, esi
jb 0x1017ce38
xor ecx, ecx
dec ecx
jmp 0x1017d084
mov dword [esp + 0x2c], edi
mov dword [esp + 8], esi
mov dword [esp + 0x68], ecx
mov ecx, dword [ebx + 0x178]
mov dword [esp + 4], ecx
test ecx, ecx
jne 0x1017ce93
mov ecx, dword [esp + 0x28]
mov dword [ebx + 0x180], ecx
mov ecx, dword [esp + 0x24]
mov dword [ebx + 0x184], ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 0xb4]
mov ecx, dword [esp + 0xb0]
mov edx, dword [edx + 4]
cmp edx, 0x15029
mov esi, dword [esp + 0x2c]
je 0x1017d0f0
cmp edx, 0x13001
jne 0x1017d188
mov edx, dword [ebx + 0x168]
mov eax, esi
mov dword [esp + 0xc], edx
imul eax, edx
mov edx, eax
shr edx, 0x1f
add edx, eax
sar edx, 1
mov ebx, 0xbebbb1b7
cmp edx, ecx
jg 0x1017cfa5
cmp dword [esp + 0x2c], 2
mov edi, dword [esp + 4]
mov edx, dword [esp + 0xc]
jl 0x1017d11e
mov eax, dword [esp + 0x2c]
mov esi, eax
shr esi, 0x1f
add esi, eax
sar esi, 1
mov eax, dword [esp + 8]
add eax, eax
mov dword [esp + 0x30], eax
imul edi, edx
mov ebx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x188]
add eax, edi
push edx
push ebx
push eax
call fcn.10132610
mov edx, dword [esp + 0x18]
add esp, 0xc
add ebx, edx
add edi, dword [esp + 0x30]
dec esi
jne 0x1017cf0f
jmp 0x1017d11e
test edx, edx
mov esi, 0
cmove esi, dword [esp + 0x48]
mov ebx, dword [esp + 0xb0]
mov edx, dword [esp + 0xb4]
mov dword [esp + 0x4c], edx
mov dword [esp + 0x198], edx
mov edx, dword [esp + 0x34]
mov edx, dword [edx + 0x1a0]
cmp eax, 0x15019
jne 0x1017d035
mov dword [esp + 0x1a0], 0
mov ecx, ebx
mov ebx, 0xbebbb1b7
cmp ecx, 0xc
jge 0x1017d3aa
mov edi, dword [esp + 0x54]
mov eax, dword [esp + 0x4c]
test edi, edi
jne 0x1017cfac
push eax
jmp 0x1017d028
xor ebx, ebx
jmp 0x1017cfa5
mov ebx, eax
cmp dword [esp + 0x54], 0
je 0x1017d024
test ebx, ebx
jne 0x1017c9b7
mov edi, dword [esp + 0x24]
mov eax, edi
mov ecx, 0x80000000
xor eax, ecx
mov esi, dword [esp + 0x28]
or eax, esi
sete byte [esp + 4]
mov ecx, dword [esp + 0x40]
xor ecx, dword [esp + 0x70]
mov ebx, dword [esp + 0x3c]
xor ebx, dword [esp + 0x58]
or ebx, ecx
sete cl
mov eax, dword [esp + 0x1c]
add eax, esi
mov edx, dword [esp + 0x38]
adc edx, edi
xor ebx, ebx
or cl, byte [esp + 4]
mov ecx, 0x80000000
cmovne edx, ecx
cmovne eax, ebx
mov esi, dword [esp + 0x18]
add esi, dword [esp + 0x74]
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], edx
mov eax, dword [esp + 0x80]
cmp eax, dword [esp + 0x5c]
jne 0x1017cc32
jmp 0x1017c9b7
push dword [esp + 0x14]
call sym.ffmpeg.dll_av_free
add esp, 4
jmp 0x1017cfac
mov dword [esp + 4], ebx
mov edi, dword [esp + 0x54]
mov eax, dword [ecx + 0xb4]
cmp dword [eax + 4], 0x93
mov dword [esp + 0x64], edx
jne 0x1017d24d
mov eax, dword [esp + 0x4c]
cmp dword [eax + 4], 0x66706369
jne 0x1017d546
mov ecx, edi
mov edi, dword [esp + 4]
mov edx, eax
jmp 0x1017d259
mov dword [esp + 0x14], edx
xor edx, edx
cmp cl, 0xd
sete dl
add eax, edx
mov ecx, dword [esp + 0x14]
cmp eax, esi
jae 0x1017d6b3
cmp byte [eax], 0xa
jne 0x1017d6b3
mov dword [esp + 0x14], ecx
lea edx, [eax + 1]
xor ecx, ecx
dec ecx
mov dword [esp + 8], ecx
mov ecx, edx
mov edi, esi
mov dword [esp + 0x30], edx
cmp edx, esi
jae 0x1017d687
not eax
add eax, edi
xor edx, edx
mov ecx, dword [esp + 0x30]
mov dword [esp + 8], edx
movzx edx, byte [ecx + edx]
cmp edx, 0xd
je 0x1017d675
cmp edx, 0xa
je 0x1017d675
mov edx, dword [esp + 8]
inc edx
cmp eax, edx
jne 0x1017d0bd
xor eax, eax
dec eax
mov dword [esp + 8], eax
mov edi, esi
mov ecx, esi
jmp 0x1017d687
mov ebx, 0xbebbb1b7
mov edx, dword [esp + 8]
cmp edx, ecx
jg 0x1017cfa5
mov ecx, edx
mov edx, dword [esp + 4]
imul edx, ecx
mov eax, dword [esp + 0xc]
add eax, edx
push ecx
push dword [esp + 0x18]
push eax
call fcn.10132610
add esp, 0xc
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x178]
inc eax
mov dword [ebx + 0x178], eax
mov edi, dword [esp + 0x2c]
cmp eax, edi
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 8]
jl 0x1017cd10
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xb4]
mov ebx, 0xbebbb1b7
cmp dword [eax + 4], 0x15029
je 0x1017cfa5
mov ebx, dword [esp + 0x10]
mov dword [ebx + 0x178], 0
mov eax, esi
mov edi, dword [esp + 0x2c]
imul eax, edi
cdq
mov ecx, dword [esp + 0x68]
idiv ecx
mov dword [ebx + 0x17c], eax
jmp 0x1017cd10
mov ebx, 0xbebbb1b7
mov eax, dword [esp + 8]
cmp eax, ecx
jg 0x1017cfa5
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0x174]
cdq
mov dword [esp + 0xc], ecx
idiv ecx
test eax, eax
jle 0x1017d11e
mov ebx, eax
mov edx, dword [esp + 0x2c]
lea eax, [edx + 1]
shr eax, 0x1f
add eax, edx
inc eax
sar eax, 1
mov ecx, dword [esp + 4]
and ecx, 1
neg ecx
and ecx, eax
sar dword [esp + 4], 1
add dword [esp + 4], ecx
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0xc]
imul ecx, eax
imul edx, eax
mov dword [esp + 0x30], edx
mov esi, dword [esp + 0x14]
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x188]
add eax, ecx
mov edi, dword [esp + 0xc]
push edi
push esi
push eax
call fcn.10132610
mov ecx, dword [esp + 0x10]
add esp, 0xc
add esi, edi
add ecx, dword [esp + 0x30]
dec ebx
jne 0x1017d1ec
jmp 0x1017d11e
lea ecx, [esp + 0xb4]
mov edi, edx
lea edx, [esp + 0xb0]
push esi
call fcn.1017c400
mov edx, edi
add esp, 4
mov dword [esp + 0x54], 0
test eax, eax
jns 0x1017cccb
jmp 0x1017dc32
mov eax, edi
mov edi, dword [esp + 4]
mov edx, dword [esp + 0x4c]
mov ecx, eax
mov eax, edi
or eax, dword [esp + 0x6c]
je 0x1017d53b
test ecx, ecx
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
je 0x1017d5d1
push ecx
call fcn.10059ef0
add esp, 4
mov ecx, dword [esp + 0x64]
mov dword [ecx], eax
test eax, eax
je 0x1017d5e8
mov eax, dword [esp + 8]
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edi
mov dword [ecx + 0x24], esi
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [ecx + 0x20], eax
cmp dword [esp + 0x6c], 0
mov edi, ecx
jle 0x1017d2e9
push dword [esp + 0xa0]
push 0xf
push edi
call fcn.1003b090
add esp, 0xc
test eax, eax
je 0x1017dc1f
mov ecx, dword [esp + 0x7c]
mov dword [eax], ecx
mov ecx, dword [esp + 0x78]
mov dword [eax + 4], ecx
add eax, 8
push dword [esp + 0x6c]
push dword [esp + 0xa8]
push eax
call fcn.10132610
add esp, 0xc
mov eax, dword [esp + 0x90]
or eax, dword [esp + 0x94]
je 0x1017d34b
push 0xa
push 0xb
push edi
call fcn.1003b090
add esp, 0xc
test eax, eax
je 0x1017dc1f
mov ebx, eax
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0xb4]
push dword [eax + 0x6c]
xor esi, esi
inc esi
push esi
push 0x3b9aca00
push esi
push dword [esp + 0xa4]
push dword [esp + 0xa4]
call sym.ffmpeg.dll_av_rescale_q
add esp, 0x18
cmp eax, esi
sbb edx, 0
jl 0x1017d6c7
mov dword [ebx + 4], eax
xor eax, eax
mov ecx, dword [esp + 0x10]
xor edx, edx
cmp dword [ecx + 0x1c8], edx
setne al
mov ecx, dword [esp + 0x24]
mov dword [edi + eax*8 + 0xc], ecx
mov ecx, dword [esp + 0x28]
mov dword [edi + eax*8 + 8], ecx
mov eax, dword [esp + 0x88]
mov dword [edi + 0x3c], eax
mov eax, dword [esp + 0x84]
mov dword [edi + 0x38], eax
mov eax, dword [esp + 0x38]
mov dword [edi + 0x34], eax
mov eax, dword [esp + 0x1c]
mov dword [edi + 0x30], eax
push edx
push edx
push edi
push dword [esp + 0x50]
call fcn.1003b4d0
add esp, 0x10
test eax, eax
jns 0x1017cfb4
jmp 0x1017dc1f
mov dword [esp + 0x8c], esi
mov dword [esp + 0x64], edx
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x1b8]
mov eax, dword [eax + 0xb4]
mov eax, dword [eax + 0xc]
movzx eax, word [eax]
mov word [esp + 0x68], ax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax]
mov dword [esp + 0xa8], edx
add ecx, 0xfffffffc
lea edi, [eax + 4]
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov eax, dword [edi]
mov edx, dword [edi + 4]
mov dword [esp + 0xc], eax
not eax
test eax, 0x1800
mov dword [esp + 0x14], edx
jne 0x1017d507
add edi, 8
mov dword [esp + 0x2c], edi
add ecx, 0xfffffff8
mov dword [esp + 0x30], ecx
mov ebx, ecx
mov edi, dword [esp + 4]
lea eax, [edi + ebx]
add eax, 0x60
push eax
push dword [esp + 0x1a4]
call fcn.100601b0
add esp, 8
test eax, eax
je 0x1017d5fa
mov dword [esp + 0x1a0], eax
mov esi, dword [esp + 8]
mov dword [eax + esi], 0x6b707677
lea eax, [ebx + 0x18]
mov ecx, dword [esp + 0x1a0]
mov dword [ecx + esi + 4], eax
mov eax, dword [esp + 0x1a0]
movzx ecx, word [esp + 0x68]
mov word [eax + esi + 8], cx
mov eax, dword [esp + 0x1a0]
mov word [eax + esi + 0xa], 0
mov eax, dword [esp + 0x1a0]
xor ecx, ecx
mov dword [eax + esi + 0xc], ecx
mov eax, dword [esp + 0x1a0]
mov dword [eax + esi + 0x10], ecx
mov eax, dword [esp + 0x1a0]
mov ecx, dword [esp + 0xa8]
mov dword [eax + esi + 0x14], ecx
mov eax, dword [esp + 0x1a0]
mov ecx, dword [esp + 0xc]
mov dword [eax + esi + 0x18], ecx
mov eax, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x14]
mov dword [eax + esi + 0x1c], ecx
lea edi, [ebx + edi + 0x20]
mov dword [esp + 4], edi
mov eax, dword [esp + 0x1a0]
lea eax, [eax + esi + 0x20]
push ebx
mov edi, dword [esp + 0x30]
push edi
push eax
call fcn.10132610
add esp, 0xc
add edi, ebx
mov ecx, dword [esp + 0x30]
sub ecx, ebx
add esi, ebx
add esi, 0x20
mov dword [esp + 8], esi
cmp ecx, 7
jg 0x1017d3f3
jmp 0x1017d614
mov ebx, 0xbebbb1b7
cmp ecx, 0xc
jb 0x1017d5ff
mov esi, dword [edi + 8]
add ecx, 0xfffffff4
cmp ecx, esi
jb 0x1017d5ff
mov edx, esi
mov dword [esp + 0x30], ecx
add edi, 0xc
mov dword [esp + 0x2c], edi
mov edi, dword [esp + 4]
mov ebx, esi
jmp 0x1017d421
xor ebx, ebx
mov eax, edx
mov edi, ecx
jmp 0x1017cf95
mov ebx, dword [esp + 4]
lea eax, [ebx + 0x48]
push eax
call sym.ffmpeg.dll_av_malloc
add esp, 4
test eax, eax
je 0x1017d66b
mov dword [esp + 0x14], edi
lea edi, [ebx + 8]
mov ecx, edi
bswap ecx
mov dword [eax], ecx
mov dword [eax + 4], 0x66706369
mov ecx, eax
add ecx, 8
push ebx
push dword [esp + 0x50]
push ecx
mov dword [esp + 0x14], eax
call fcn.10132610
mov edx, dword [esp + 0x14]
add esp, 0xc
xorpd xmm0, xmm0
movupd xmmword [edx + ebx + 8], xmm0
movupd xmmword [edx + ebx + 0x18], xmm0
movupd xmmword [edx + ebx + 0x28], xmm0
movupd xmmword [edx + ebx + 0x38], xmm0
xor ecx, ecx
cmp dword [esp + 0x14], 0
jne 0x1017d259
lea eax, [esp + 0x198]
push eax
call fcn.10127460
xor ecx, ecx
mov edx, dword [esp + 0xc]
add esp, 4
jmp 0x1017d259
lea eax, [edi + 0x40]
xor ecx, ecx
push ecx
push ecx
push ecx
push eax
push edx
call sym.ffmpeg.dll_av_buffer_create
add esp, 0x14
jmp 0x1017d27e
mov ebx, 0xfffffff4
mov eax, dword [esp + 8]
mov edi, dword [esp + 4]
jmp 0x1017cf95
mov ebx, 0xfffffff4
lea eax, [esp + 0x1a0]
push eax
call fcn.10127460
add esp, 4
jmp 0x1017cf8d
mov eax, dword [esp + 0x1a0]
xorpd xmm0, xmm0
mov ecx, dword [esp + 4]
movupd xmmword [eax + ecx + 0x30], xmm0
movupd xmmword [eax + ecx + 0x20], xmm0
movupd xmmword [eax + ecx + 0x10], xmm0
mov dword [esp + 0x4c], eax
movupd xmmword [eax + ecx], xmm0
xor edi, edi
cmp dword [esp + 0x54], 0
jne 0x1017d657
lea eax, [esp + 0x198]
push eax
call fcn.10127460
add esp, 4
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x64]
mov esi, dword [esp + 0x8c]
jmp 0x1017d03d
mov ebx, 0xfffffff4
jmp 0x1017cf91
mov eax, ecx
xor ecx, ecx
cmp dl, 0xd
sete cl
add ecx, eax
add ecx, dword [esp + 8]
mov edi, esi
cmp ecx, edi
jae 0x1017d6b3
cmp byte [ecx], 0xa
jne 0x1017d6b3
lea edi, [ecx + 1]
sub esi, edi
test esi, esi
jle 0x1017d6b3
mov edx, esi
movzx eax, byte [ecx + edx]
cmp eax, 0xd
je 0x1017d6a9
cmp eax, 0xa
jne 0x1017d6d0
lea eax, [edx - 1]
cmp edx, 1
mov edx, eax
jg 0x1017d69b
cmp dword [esp + 0x54], 0
jne 0x1017cfac
push dword [esp + 4]
jmp 0x1017d028
neg eax
mov dword [ebx], eax
jmp 0x1017d34b
mov esi, edx
push edx
push dword [esp + 0x10]
call sym.ffmpeg.dll_av_new_packet
add esp, 8
test eax, eax
js 0x1017da1b
push esi
push edi
mov eax, dword [esp + 0x14]
push dword [eax + 0x18]
call fcn.10132610
add esp, 0xc
cmp dword [esp + 0x14], 0
jg 0x1017d9d9
cmp dword [esp + 8], 0
jle 0x1017d735
push dword [esp + 8]
push 0x11
push dword [esp + 0x14]
call fcn.1003b090
add esp, 0xc
test eax, eax
je 0x1017da05
push dword [esp + 8]
push dword [esp + 0x34]
push eax
call fcn.10132610
add esp, 0xc
mov eax, dword [esp + 0x20]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
mov dword [ecx + 0x20], eax
mov eax, dword [esp + 0x24]
mov dword [ecx + 0xc], eax
mov eax, dword [esp + 0x28]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x38]
mov dword [ecx + 0x34], eax
mov eax, dword [esp + 0x1c]
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x88]
mov dword [ecx + 0x3c], eax
mov eax, dword [esp + 0x84]
mov dword [ecx + 0x38], eax
xor ebx, ebx
push ebx
push ebx
push ecx
push dword [esp + 0x50]
call fcn.1003b4d0
add esp, 0x10
test eax, eax
jns 0x1017d6b3
jmp 0x1017da05
cmp word [esp + 0x40], 0
jns 0x1017d7af
mov eax, dword [esp + 0x3c]
neg eax
cmp dword [esp + 0x44], eax
mov eax, dword [esp + 8]
sbb eax, 0
jb 0x1017cb1b
movss xmm0, dword [esp + 0x44]
movss xmm1, dword [esp + 8]
unpcklps xmm0, xmm1
unpcklps xmm0, xmmword [0x102c4500]
subpd xmm0, xmmword [0x102c4510]
haddpd xmm0, xmm0
mov eax, dword [esp + 0x10]
divsd xmm0, qword [eax + 0x40]
movsd xmm1, qword [0x10299278]
ucomisd xmm0, xmm1
jae 0x1017d7ec
xorpd xmm1, xmm1
subsd xmm0, xmm1
movsd qword [esp + 0x98], xmm0
fld qword [esp + 0x98]
fisttp qword [esp + 0x98]
setae al
movzx eax, al
shl eax, 0x1f
xor eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x3c]
mov esi, edx
sar esi, 0x1f
mov ecx, dword [esp + 0x10]
sub edx, dword [ecx + 0x1b0]
sbb esi, dword [ecx + 0x1b4]
add edx, dword [esp + 0x98]
mov dword [esp + 0x28], edx
adc esi, eax
mov dword [esp + 0x24], esi
mov eax, dword [ecx + 0x10]
xor eax, 0x11
or eax, dword [ecx + 0x14]
jne 0x1017d86a
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
cmp eax, dword [ecx + 0x1c0]
mov eax, dword [esp + 0x24]
sbb eax, dword [ecx + 0x1c4]
jb 0x1017d9cc
cmp dword [esp + 0x48], 0
je 0x1017d9cc
mov esi, dword [esp + 0x20]
push dword [esi]
mov eax, dword [esp + 0x38]
push dword [eax + 4]
call fcn.1018b6e0
add esp, 8
xor eax, eax
push 1
push eax
push eax
push dword [esp + 0x30]
push dword [esp + 0x38]
push dword [esp + 0x4c]
push dword [esp + 0x34]
push esi
call fcn.1018b900
add esp, 0x20
jmp 0x1017cb23
cmp dword [esp + 4], 4
jb 0x1017ca30
mov eax, dword [esp + 0x18]
movzx ecx, byte [eax]
mov dword [esp + 0x1c], ecx
inc ecx
mov dword [esp + 0x5c], ecx
inc eax
mov dword [esp + 0x18], eax
add dword [esp + 4], 0xfffffffc
cmp edi, 3
je 0x1017da22
cmp edi, 2
je 0x1017da68
cmp edi, 1
jne 0x1017cb68
xor eax, eax
cmp dword [esp + 0x1c], 0
jne 0x1017da9c
mov dword [esp + 0x1c], 0
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 4]
sub ecx, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + eax*4 + 0x1a8], ecx
jmp 0x1017cb68
cmp word [esp + 0x40], 0
jns 0x1017d93e
mov eax, dword [esp + 0x3c]
neg eax
cmp dword [esp + 0x44], eax
sbb dword [esp + 8], 0
jb 0x1017cbfd
mov ecx, dword [esp + 0x10]
mov edx, dword [ecx + 0x1c0]
mov edi, dword [ecx + 0x1c4]
mov eax, dword [esp + 0x50]
add eax, dword [esp + 0x28]
mov esi, dword [esp + 0x60]
adc esi, dword [esp + 0x24]
cmp edx, eax
mov ebx, eax
cmova ebx, edx
cmp edi, esi
cmova eax, edx
cmova esi, edi
cmove eax, ebx
mov dword [ecx + 0x1c4], esi
mov dword [ecx + 0x1c0], eax
jmp 0x1017cbfd
xor ebx, ebx
mov ecx, dword [esp + 0x34]
mov eax, dword [esp + 0x28]
cmp eax, dword [ecx + 0x1b8]
mov eax, dword [esp + 0x24]
sbb eax, dword [ecx + 0x1bc]
jl 0x1017c9b7
cmp dword [esp + 0x48], 0
jne 0x1017d9b9
mov eax, dword [esp + 0x20]
cmp dword [eax + 0x10c], 0
jne 0x1017cb43
mov eax, dword [esp + 0x34]
mov dword [eax + 0x1b0], 0
jmp 0x1017cb43
mov dword [esp + 0x48], 0
jmp 0x1017cb23
push dword [esp + 0x14]
push 0x10
push dword [esp + 0x14]
call fcn.1003b090
add esp, 0xc
test eax, eax
je 0x1017da05
push dword [esp + 0x14]
push dword [esp + 8]
push eax
call fcn.10132610
add esp, 0xc
jmp 0x1017d703
push dword [esp + 0xc]
call sym.ffmpeg.dll_av_packet_unref
add esp, 4
mov ebx, 0xfffffff4
jmp 0x1017d6b3
mov ebx, eax
jmp 0x1017d6b3
lea esi, [esp + 0x198]
xor eax, eax
dec eax
mov dword [esi + 4], eax
mov dword [esi], eax
push 0
push 4
lea edi, [esp + 0xc8]
push edi
call fcn.10043970
add esp, 0xc
mov ecx, edi
mov edx, 8
push 1
push esi
call fcn.1017c0b0
add esp, 8
mov edi, eax
test eax, eax
jns 0x1017dafc
mov ebx, edi
jmp 0x1017c9b7
xor ecx, ecx
mov eax, dword [esp + 4]
xor edx, edx
mov esi, dword [esp + 0x5c]
div esi
mov ebx, 0xbebbb1b7
test edx, edx
jne 0x1017c9b7
mov eax, dword [esp + 4]
xor edx, edx
div esi
mov dword [esp + ecx*4 + 0x1a8], eax
inc ecx
cmp esi, ecx
jne 0x1017da8b
jmp 0x1017cb68
xor eax, eax
xor ecx, ecx
mov dword [esp + ecx*4 + 0x1a8], 0
xor edx, edx
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 4]
cmp edi, eax
jbe 0x1017ca30
movzx esi, byte [ebx]
add eax, esi
add edx, esi
inc ebx
dec edi
mov dword [esp + ecx*4 + 0x1a8], edx
cmp esi, 0xff
je 0x1017dab5
mov dword [esp + 4], edi
mov dword [esp + 0x18], ebx
inc ecx
cmp ecx, dword [esp + 0x1c]
jne 0x1017daa0
mov ebx, 0xbebbb1b7
cmp dword [esp + 4], eax
mov ecx, dword [esp + 0x18]
jb 0x1017c9b7
jmp 0x1017d907
mov esi, dword [esp + 0x198]
mov edx, dword [esp + 0x19c]
mov ebx, 0xbebbb1b7
xor eax, eax
mov ecx, 0x7fffffff
mov dword [esp + 0x58], esi
cmp ecx, esi
mov dword [esp + 0x70], edx
sbb eax, edx
jb 0x1017c9b7
mov eax, dword [esp + 0x58]
mov dword [esp + 0x1a8], eax
cmp byte [esp + 0x1c], 2
jb 0x1017dbfd
xor eax, eax
inc eax
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x38], eax
xor eax, eax
dec eax
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a0], eax
lea ecx, [esp + 0xc0]
mov edx, 8
push 1
lea eax, [esp + 0x1a4]
push eax
call fcn.1017c0b0
add esp, 8
test eax, eax
js 0x1017dc32
lea ecx, [eax*8]
sub ecx, eax
dec cl
xor esi, esi
dec esi
mov edx, esi
shl edx, cl
test cl, 0x20
mov ecx, esi
cmovne ecx, edx
mov esi, 0
cmovne edx, esi
add edx, dword [esp + 0x1a0]
adc ecx, dword [esp + 0x1a4]
add edx, dword [esp + 0x38]
adc ecx, 0
add edx, 1
adc ecx, 0
mov esi, 0x7fffffff
cmp esi, edx
mov esi, 0
sbb esi, ecx
jb 0x1017c9b7
add dword [esp + 0x58], edx
adc dword [esp + 0x70], ecx
add edi, eax
mov eax, dword [esp + 0x74]
mov dword [esp + eax*4 + 0x1a8], edx
inc eax
mov dword [esp + 0x38], edx
mov dword [esp + 0x74], eax
cmp dword [esp + 0x1c], eax
jne 0x1017db4d
mov ecx, dword [esp + 4]
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
sub ecx, dword [esp + 0x58]
sbb eax, dword [esp + 0x70]
jb 0x1017c9b7
add dword [esp + 0x18], edi
jmp 0x1017d911
push edi
call sym.ffmpeg.dll_av_packet_unref
add esp, 4
mov ebx, 0xfffffff4
jmp 0x1017c9b7
mov ebx, eax
jmp 0x1017c9b7