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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x15c
mov ebx, dword [esp + 0x174]
mov ebp, dword [esp + 0x170]
test ebx, ebx
je 0x502f10
mov eax, dword [ebx + 0x20]
test eax, eax
js 0x502dd0
cmp eax, dword [ebp + 0x18]
jae 0x502dd0
mov edx, dword [ebp + 0x1c]
mov edi, dword [edx + eax*4]
mov eax, dword [edi + 0x2c4]
cmp dword [eax], 4
je 0x50315f
mov edx, ebx
mov eax, ebp
call fcn.004fdad0
test eax, eax
mov esi, eax
je 0x5027bd
js 0x502df1
test byte [ebp + 0x4a0], 1
jne 0x502f90
mov edx, edi
mov ecx, ebx
mov eax, ebp
call fcn.004fec40
test eax, eax
mov esi, eax
mov edx, dword [ebp + 8]
js 0x503064
mov eax, dword [ebx + 0x14]
add eax, 0x80000000
or eax, dword [ebx + 0x10]
je 0x503073
mov eax, dword [edx + 0x3c]
test eax, eax
je 0x502a6e
lea edi, [esp + 0x108]
mov dword [esp + 0xc], 0
mov dword [esp + 8], ebx
mov dword [esp], ebp
mov dword [esp + 4], edi
call eax
mov dword [esp], ebx
mov esi, eax
call fcn.005d23b0
lea edi, [ebx + 4]
mov ecx, ebx
xor eax, eax
mov dword [ebx], 0
mov dword [ebx + 0x44], 0
and edi, 0xfffffffc
sub ecx, edi
add ecx, 0x48
shr ecx, 2
rep stosd dword es:[edi], eax
mov dword [esp], ebx
call fcn.005d0e60
mov dword [esp + 0x58], 0
test esi, esi
jle 0x5027bd
lea eax, [esp + 0x108]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x110]
mov edx, dword [esp + 0x114]
mov esi, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x118]
mov edi, edx
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x11c]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0x52c]
mov dword [esp + 0x4c], edx
mov edx, dword [ebp + 0x528]
mov ebx, eax
or ebx, edx
je 0x502536
mov ecx, dword [ebp + 0x1c]
mov ebx, dword [esp + 0x128]
mov ecx, dword [ecx + ebx*4]
mov ebx, dword [ecx + 0x2c]
mov ecx, dword [ecx + 0x28]
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0xf4240
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], ecx
call fcn.00892710
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
mov ebx, edi
add ebx, 0x80000000
or ebx, esi
je 0x502504
mov ecx, esi
mov ebx, edi
add ecx, eax
adc ebx, edx
mov dword [esp + 0x118], ecx
mov dword [esp + 0x11c], ebx
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x30]
mov ebx, edi
add ebx, 0x80000000
or ebx, esi
je 0x502536
mov ebx, eax
add ebx, dword [esp + 0x30]
mov esi, edx
adc esi, dword [esp + 0x34]
mov dword [esp + 0x110], ebx
mov edi, esi
mov esi, ebx
mov dword [esp + 0x114], edi
mov eax, dword [ebp + 0x4bc]
test eax, eax
mov dword [esp + 0x74], eax
jle 0x502690
mov eax, dword [esp + 0x128]
mov edx, eax
mov dword [esp + 0x7c], eax
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + edx*4]
mov edx, dword [eax + 0x1ec]
mov dword [esp + 0x78], eax
mov eax, dword [eax + 0x1e8]
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x11c]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0x504]
mov dword [esp + 0x50], eax
mov eax, dword [eax + 0x48]
test eax, eax
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x118]
je 0x502a20
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], edi
mov eax, dword [esp + 0x50]
mov edx, dword [eax + 0x34]
mov eax, dword [eax + 0x30]
lea ebx, [edx - 0x80000000]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
or eax, ebx
jne 0x502889
mov edx, dword [esp + 0x6c]
mov eax, dword [esp + 0x68]
mov ecx, edx
add ecx, 0x80000000
or ecx, eax
je 0x502889
mov ebx, edx
shr ebx, 0x1f
test bl, bl
jne 0x502860
cmp dword [esp + 0x74], 2
je 0x502860
lea esi, [esi]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x28]
lea ebx, [edx - 0x80000000]
mov ecx, eax
or ebx, ecx
je 0x50263a
mov eax, dword [esp + 0x38]
add dword [esp + 0x28], eax
mov edx, dword [esp + 0x3c]
adc dword [esp + 0x2c], edx
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x118], eax
mov dword [esp + 0x11c], edx
lea ebx, [edi - 0x80000000]
or ebx, esi
je 0x502970
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x60]
add eax, esi
adc edx, edi
test ebx, ebx
mov dword [esp + 0x110], eax
mov dword [esp + 0x114], edx
je 0x50297c
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp edx, 0x7fffffff
ja 0x502690
jb 0x5027d0
cmp eax, 0xfffffffe
jbe 0x5027d0
nop
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.005d1e10
mov ebx, eax
mov eax, dword [ebp + 0x504]
mov edx, dword [eax + 0x4c]
test edx, edx
jne 0x5026be
mov esi, dword [eax + 0x50]
test esi, esi
je 0x502a60
test esi, esi
js 0x502912
test byte [esp + 0x12d], 0x20
je 0x502a35
cmp dword [esp + 0x124], 0xaaaaac2c
mov eax, dword [esp + 0x120]
mov dword [esp + 0x84], eax
jne 0x50318b
mov eax, dword [ebp + 8]
mov edx, dword [esp + 0x128]
lea edi, [esp + 0x84]
mov dword [esp + 0xc], 0
mov dword [esp], ebp
mov dword [esp + 8], edi
mov dword [esp + 4], edx
call dword [eax + 0x4c]
mov dword [esp], edi
mov esi, eax
call fcn.0088bc50
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x502a53
test esi, esi
js 0x502912
mov edi, dword [ebp + 0x4f0]
test edi, edi
je 0x502746
test byte [ebp + 0x441], 2
jne 0x502dc0
mov eax, dword [eax + 0x4c]
test eax, eax
js 0x502910
test ebx, ebx
jne 0x502916
mov eax, dword [ebp + 0x1c]
mov edx, dword [esp + 0x128]
mov eax, dword [eax + edx*4]
add dword [eax + 0x40], 1
adc dword [eax + 0x44], 0
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.005d23b0
mov eax, dword [ebp + 0x10]
test eax, eax
je 0x502788
mov esi, dword [eax + 0x4c]
test esi, esi
jne 0x5027bd
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
test eax, eax
je 0x502f74
mov edi, dword [esp + 0x58]
mov dword [esp + 8], 0
mov dword [esp], ebp
mov dword [esp + 0xc], edi
mov edi, dword [esp + 0x70]
mov dword [esp + 4], edi
call eax
test eax, eax
mov esi, eax
jg 0x50245d
add esp, 0x15c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
xor eax, eax
mov dword [esp + eax + 0xc8], 0
add eax, 4
cmp eax, 0x20
jb 0x5027d2
mov edi, dword [esp + 0x2c]
mov esi, dword [esp + 0x28]
lea edx, [edi - 0x80000000]
or edx, esi
je 0x502ec1
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 8], 0xc4fff9
mov dword [esp + 4], 0x20
mov dword [esp + 0xc], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x10], edx
mov dword [esp], eax
call fcn.00bd2660
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], str.failed_to_avoid_negative_pts__s_in_stream__d._nTry__avoid_negative_ts_1_as_a_possible_workaround._n
mov dword [esp + 4], 0x18
mov dword [esp], ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0xc], eax
call fcn.00891920
jmp 0x502690
mov ecx, dword [esp + 0x50]
neg eax
mov dword [esp + 0x40], eax
adc edx, 0
neg edx
mov dword [ecx + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x44], edx
mov dword [ecx + 0x34], edx
mov edx, dword [eax + 0x2c]
mov eax, dword [eax + 0x28]
mov dword [ecx + 0x3c], edx
mov dword [ecx + 0x38], eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
add edx, 0x80000000
or edx, eax
je 0x502600
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x3c]
mov ecx, eax
or ecx, edx
jne 0x502600
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x18], 3
mov eax, dword [ebx + 0x28]
mov edx, dword [ebx + 0x2c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x14], edx
mov edx, dword [eax + 0x3c]
mov eax, dword [eax + 0x38]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
mov dword [esp + 4], edx
mov dword [esp], eax
call fcn.008926e0
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov dword [ebx + 0x1e8], eax
mov dword [ebx + 0x1ec], edx
jmp 0x502600
mov esi, eax
test ebx, ebx
je 0x50292a
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.005d1bb0
test esi, esi
jns 0x502759
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x110], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x114], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x118], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x11c], edx
mov dword [esp], eax
call fcn.005d23b0
add esp, 0x15c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
ret
mov edx, dword [esp + 0x60]
test edx, edx
jne 0x502690
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
add eax, 0xffffffff
adc edx, 0x7fffffff
cmp edx, 0x7fffffff
ja 0x502690
jb 0x5029a4
cmp eax, 0xfffffffe
ja 0x502690
xor eax, eax
mov dword [esp + eax + 0xe8], 0
add eax, 4
cmp eax, 0x20
jb 0x5029a6
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov dword [esp + 8], 0xc4fff9
mov dword [esp + 4], 0x20
mov dword [esp + 0xc], eax
lea eax, [esp + 0xe8]
mov dword [esp + 0x10], edx
mov dword [esp], eax
call fcn.00bd2660
mov eax, dword [esp + 0x7c]
mov dword [esp + 8], str.Packets_poorly_interleaved__failed_to_avoid_negative_timestamp__s_in_stream__d._nTry__max_interleave_delta_0_as_a_possible_workaround._n
mov dword [esp + 4], 0x18
mov dword [esp], ebp
mov dword [esp + 0x10], eax
lea eax, [esp + 0xe8]
mov dword [esp + 0xc], eax
call fcn.00891920
jmp 0x502690
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], edx
jmp 0x5025aa
mov eax, dword [ebp + 8]
mov edi, dword [esp + 0x70]
mov dword [esp], ebp
mov dword [esp + 4], edi
call dword [eax + 0x34]
mov esi, eax
mov eax, dword [ebp + 0x10]
test eax, eax
jne 0x502727
test ebx, ebx
je 0x502922
jmp 0x502916
mov eax, ebp
call fcn.004fd9a0
mov esi, eax
jmp 0x5026b6
mov edx, dword [ebx + 0x20]
mov eax, dword [ebp + 0x1c]
mov byte [esp + 0x38], 1
mov eax, dword [eax + edx*4]
mov dword [esp + 0x30], eax
mov eax, dword [ebp + 0x4cc]
test eax, eax
jne 0x502a97
mov eax, dword [ebp + 0x4c8]
test eax, eax
setne byte [esp + 0x38]
mov dword [esp], 0x50
call fcn.00894240
test eax, eax
mov dword [esp + 0x28], eax
je 0x503181
test byte [ebx + 0x25], 0x20
je 0x502ee0
cmp dword [ebx + 0x1c], 0xaaaaac2c
jne 0x5031c4
cmp dword [ebx + 0x18], 0xffffff08
je 0x5031de
mov edi, eax
mov ecx, 0x12
mov esi, ebx
rep movsd dword es:[edi], dword [esi]
mov dword [ebx], 0
mov dword [ebx + 0x28], 0
mov dword [ebx + 0x2c], 0
mov edx, dword [ebx + 0x20]
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + edx*4]
mov edi, dword [eax + 0xf4]
mov dword [esp + 0x40], eax
test edi, edi
je 0x503090
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0xf4]
add eax, 0x48
mov dword [esp + 0x70], eax
cmp byte [esp + 0x38], 0
je 0x502e00
mov esi, dword [esp + 0x30]
mov dword [esp + 0x18], 3
mov eax, dword [esi + 0x28]
mov edx, dword [esi + 0x2c]
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0xf4240
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, dword [ebp + 0x4c8]
mov dword [esp], eax
sar eax, 0x1f
mov dword [esp + 4], eax
call fcn.008926e0
mov dword [esp + 0x48], eax
mov eax, dword [ebx + 0x1c]
mov ecx, esi
mov dword [esp + 0x4c], edx
cdq
add eax, dword [esi + 0x1a8]
adc edx, dword [esi + 0x1ac]
mov dword [ecx + 0x1a8], eax
mov esi, eax
mov eax, dword [ecx + 0x1b0]
add eax, dword [ebx + 0x30]
mov dword [ecx + 0x1ac], edx
mov edi, edx
mov edx, dword [ecx + 0x1b4]
adc edx, dword [ebx + 0x34]
mov dword [ecx + 0x1b0], eax
mov dword [esp + 0x50], eax
mov dword [ecx + 0x1b4], edx
mov ecx, dword [ebp + 0x4cc]
mov dword [esp + 0x54], edx
test ecx, ecx
je 0x502bd3
mov eax, ecx
cdq
cmp edi, edx
jg 0x5030aa
jge 0x5030a2
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov eax, edx
mov edi, ecx
or edi, eax
je 0x502d10
mov edi, dword [esp + 0x54]
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
mov eax, dword [esp + 0x48]
cmp edx, edi
jb 0x502c09
ja 0x502d10
cmp eax, esi
jae 0x502d10
mov eax, dword [esp + 0x30]
mov dword [eax + 0x1a8], 0
mov dword [eax + 0x1ac], 0
mov eax, dword [esp + 0x28]
or dword [eax + 0x24], 0x1000
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x4c]
mov eax, dword [eax + 0x2c4]
mov ecx, edi
mov esi, dword [eax]
xor eax, eax
test esi, esi
mov esi, dword [esp + 0x48]
sete al
imul ecx, eax
mul esi
add edx, ecx
mov ecx, dword [ebx + 0x14]
shrd eax, edx, 1
shr edx, 1
mov dword [esp + 0x5c], edx
mov edx, dword [ebx + 0x10]
mov dword [esp + 0x58], eax
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x5c]
mov dword [esp + 0x10], esi
mov dword [esp + 0x60], edx
mov edx, dword [esp + 0x58]
add edx, dword [esp + 0x60]
mov dword [esp + 0x14], edi
adc ecx, dword [esp + 0x64]
mov dword [esp + 8], 1
mov dword [esp + 0xc], 0
mov eax, edx
mov dword [esp + 4], ecx
mov dword [esp], eax
call fcn.00892690
mov ecx, edi
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edi
imul edx, esi
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x64]
imul ecx, eax
add ecx, edx
mul dword [esp + 0x48]
add edx, ecx
sub eax, dword [esp + 0x58]
sbb edx, dword [esp + 0x5c]
sub esi, eax
sbb edi, edx
xor edx, edx
mov ecx, edi
sar ecx, 0x1f
and ecx, 7
add esi, ecx
adc edi, edx
mov eax, esi
mov esi, dword [esp + 0x50]
mov edx, edi
mov edi, dword [esp + 0x54]
shrd eax, edx, 3
sar edx, 3
sub esi, dword [esp + 0x48]
sbb edi, dword [esp + 0x4c]
add eax, esi
adc edx, edi
mov edi, dword [esp + 0x30]
mov dword [edi + 0x1b0], eax
mov dword [edi + 0x1b4], edx
nop
lea esi, [esi]
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
test eax, eax
je 0x502e0e
mov edi, dword [esp + 0x28]
test byte [edi + 0x25], 0x10
je 0x502e8b
mov dword [esp + 8], ebx
mov eax, dword [ebp + 0x504]
mov eax, dword [eax + 8]
mov dword [esp], ebp
mov dword [esp + 4], eax
call fcn.004fdca0
test eax, eax
je 0x502e61
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
test eax, eax
je 0x502d9e
cmp byte [esp + 0x38], 0
mov esi, dword [esp + 0x70]
je 0x502e30
lea esi, [esi]
lea edi, [edi]
test byte [eax + 0x25], 0x10
je 0x502d90
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.004fdca0
test eax, eax
jne 0x502e44
mov eax, dword [esi]
lea esi, [eax + 0x48]
mov eax, dword [eax + 0x48]
test eax, eax
jne 0x502d70
mov dword [esp + 0x70], esi
mov ecx, dword [ebx + 0x20]
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x504]
mov edi, dword [edx + ecx*4]
mov dword [esp + 0x40], edi
jmp 0x502e7e
mov dword [esp], eax
call fcn.00457930
mov eax, dword [ebp + 0x10]
jmp 0x502746
mov dword [esp + 0xc], eax
mov dword [esp + 8], str.Invalid_packet_stream_index:__d_n
mov esi, 0xffffffea
mov dword [esp + 4], 0x10
mov dword [esp], ebp
call fcn.00891920
mov dword [esp], ebx
call fcn.005d23b0
jmp 0x5027bd
mov eax, dword [esp + 0x70]
mov ecx, dword [eax]
test ecx, ecx
jne 0x502d2c
mov eax, dword [ebp + 0x504]
jmp 0x502e7e
mov eax, dword [esi]
lea esi, [eax + 0x48]
mov eax, dword [eax + 0x48]
test eax, eax
je 0x502d9a
mov dword [esp + 8], ebx
mov dword [esp + 4], eax
mov dword [esp], ebp
call fcn.004fdca0
test eax, eax
je 0x502e20
mov eax, dword [esi]
mov dword [esp + 0x70], esi
test eax, eax
je 0x502d9e
mov ecx, dword [ebx + 0x20]
mov edx, dword [ebp + 0x1c]
mov edi, dword [edx + ecx*4]
mov dword [esp + 0x40], edi
jmp 0x502e8b
mov eax, dword [ebp + 0x504]
mov ecx, dword [ebx + 0x20]
mov edx, dword [ebp + 0x1c]
mov edi, dword [eax + 8]
add edi, 0x48
mov dword [esp + 0x70], edi
mov edi, dword [edx + ecx*4]
mov dword [esp + 0x40], edi
mov edi, dword [esp + 0x28]
mov dword [eax + 8], edi
mov eax, dword [esp + 0x70]
mov eax, dword [eax]
mov ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x70]
mov dword [ecx + 0x48], eax
mov dword [edi], ecx
mov edi, dword [esp + 0x40]
mov dword [edi + 0xf4], ecx
mov dword [esp], ebx
call fcn.005d23b0
lea edx, [esp + 0x108]
xor ecx, ecx
mov eax, ebp
call fcn.004fe200
mov esi, eax
jmp 0x502419
mov ecx, 0x53
mov dword [esp + 0xc8], 0x54504f4e
mov word [esp + 0xcc], cx
jmp 0x50282a
mov dword [esp + 4], ebx
mov dword [esp], eax
call fcn.005d2480
test eax, eax
mov esi, eax
jns 0x502af2
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.008940b0
jmp 0x502419
mov dword [esp + 8], str.av_interleaved_write_frame_FLUSH_n
mov dword [esp + 4], 0x38
mov dword [esp], ebp
call fcn.00891920
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x3c]
test eax, eax
je 0x502f61
lea edi, [esp + 0x108]
mov dword [esp + 0xc], 1
mov dword [esp + 8], 0
mov dword [esp], ebp
mov dword [esp + 4], edi
call eax
mov dword [esp + 0x58], 1
mov esi, eax
jmp 0x50244a
lea eax, [esp + 0x108]
mov dword [esp + 0x58], 1
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x70]
mov eax, ebp
call fcn.004fe200
mov esi, eax
jmp 0x50244a
mov ecx, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
xor eax, eax
mov dword [esp + eax + 0xa8], 0
add eax, 4
cmp eax, 0x20
jb 0x502f98
lea eax, [edx - 0x80000000]
or eax, ecx
je 0x5030f8
lea esi, [esp + 0xa8]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], edx
mov dword [esp + 8], 0xc4fff9
mov dword [esp + 4], 0x20
mov dword [esp], esi
call fcn.00bd2660
mov ecx, dword [ebx + 0x10]
mov edx, dword [ebx + 0x14]
xor eax, eax
mov dword [esp + eax + 0x88], 0
add eax, 4
cmp eax, 0x20
jb 0x502fe8
lea eax, [edx - 0x80000000]
or eax, ecx
je 0x50311c
mov dword [esp + 0x10], edx
lea edx, [esp + 0x88]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0xc4fff9
mov dword [esp + 4], 0x20
mov dword [esp], edx
mov dword [esp + 0x70], edx
call fcn.00bd2660
mov edx, dword [esp + 0x70]
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], edx
mov eax, dword [ebx + 0x1c]
mov dword [esp + 8], str.av_interleaved_write_frame_size:_d_dts:_s_pts:_s_n
mov dword [esp + 4], 0x38
mov dword [esp], ebp
mov dword [esp + 0xc], eax
call fcn.00891920
jmp 0x5023bf
test byte [edx + 0x1c], 0x80
je 0x502df1
jmp 0x5023d7
test byte [edx + 0x1c], 0x80
jne 0x5023e8
mov esi, 0xffffffea
jmp 0x502df1
mov eax, dword [ebp + 0x504]
add eax, 4
mov dword [esp + 0x70], eax
jmp 0x502b1e
cmp esi, ecx
jbe 0x502bd3
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x48]
mov dword [eax + 0x1a8], 0
mov dword [eax + 0x1ac], 0
mov edx, edi
mov eax, dword [esp + 0x28]
or dword [eax + 0x24], 0x1000
or edx, esi
jne 0x503140
mov eax, dword [esp + 0x30]
mov dword [eax + 0x1b0], 0
mov dword [eax + 0x1b4], 0
jmp 0x502d10
mov eax, 0x53
mov dword [esp + 0xa8], 0x54504f4e
lea esi, [esp + 0xa8]
mov word [esp + 0xac], ax
jmp 0x502fe0
mov eax, 0x53
mov dword [esp + 0x88], 0x54504f4e
lea edx, [esp + 0x88]
mov word [esp + 0x8c], ax
jmp 0x503038
mov edx, edi
mov edi, dword [esp + 0x54]
mov eax, esi
mov esi, dword [esp + 0x50]
cmp edx, edi
ja 0x5030db
jb 0x502c2c
cmp eax, esi
jae 0x5030db
jmp 0x502c2c
mov dword [esp + 8], str.Received_a_packet_for_an_attachment_stream._n
mov dword [esp + 4], 0x10
mov esi, 0xffffffea
mov dword [esp], ebp
call fcn.00891920
jmp 0x502df1
mov esi, 0xfffffff4
jmp 0x502419
mov dword [esp + 0x14], 0x300
mov dword [esp + 0x10], str.libavformat_mux.c
mov dword [esp + 0xc], str.pkt__size_____2147483647_1____3__2___int_sizeof_AVFrame__
mov dword [esp + 8], 0xc5013e
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.00891920
call sub.msvcrt.dll_abort
mov dword [esp + 0x14], 0x3d2
mov dword [esp + 0x10], str.libavformat_mux.c
mov dword [esp + 0xc], str.pkt__size_____2147483647_1____3__2___int_sizeof_AVFrame__
jmp 0x5031a3
mov dword [esp + 0x14], 0x3d3
mov dword [esp + 0x10], str.libavformat_mux.c
mov dword [esp + 0xc], str.__AVFrame__pkt__data___buf
jmp 0x5031a3