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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [esp + 0x64]
mov ebp, dword [esp + 0x60]
mov edx, dword [esp + 0x70]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x68]
mov ecx, dword [ebp + 0x1f8]
mov dword [esp + 0x24], edx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x20], eax
mov eax, dword [ebp + 0x18c]
add eax, 1
test ecx, ecx
je 0x4720b0
mov ebx, dword [ebp + 0x1f4]
mov edi, dword [ebp + 0x1f0]
lea edx, [ebx - 0x80000000]
or edx, edi
je 0x4720b0
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
add esi, 0x80000000
or esi, edx
je 0x472370
cmp ecx, 1
lea edx, [ebp + 0x190]
je 0x4722c0
cmp ecx, 0xffffffff
jne 0x472350
cmp dword [esp + 0x24], ebx
jle 0x472343
movzx ecx, byte [ebp + 0xb8]
mov edi, ecx
shr edi, 5
and edi, 1
mov esi, edi
shl edi, cl
xor esi, 1
shl esi, cl
sub dword [esp + 0x20], esi
sbb dword [esp + 0x24], edi
jmp 0x4720b6
lea edx, [ebp + 0x190]
cmp eax, 0xaaaaaa9
ja 0x4721b0
mov edi, dword [esp + 0x24]
mov esi, dword [esp + 0x20]
lea ebx, [edi - 0x80000000]
mov ecx, esi
or ebx, ecx
je 0x47237b
cmp dword [esp + 0x74], 0x3fffffff
ja 0x47237b
cmp dword [esp + 0x24], 0x7ffdffff
jg 0x4721c0
lea eax, [eax + eax*2]
mov dword [esp + 4], edx
shl eax, 3
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x188]
mov dword [esp], eax
call fcn.0056ebf0
test eax, eax
je 0x4721b0
mov ecx, dword [ebp + 0x18c]
mov esi, dword [esp + 0x20]
mov edi, dword [esp + 0x24]
mov dword [ebp + 0x188], eax
mov dword [esp + 0x10], 4
mov dword [esp], eax
mov dword [esp + 8], esi
mov dword [esp + 4], ecx
mov dword [esp + 0xc], edi
mov dword [esp + 0x38], ecx
mov dword [esp + 0x34], eax
call fcn.00470ce0
test eax, eax
mov esi, eax
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x38]
js 0x472242
lea eax, [eax + eax*2]
shl eax, 3
lea ebx, [edx + eax]
mov dword [esp + 0x38], eax
mov edi, dword [ebx + 0xc]
mov eax, dword [ebx + 8]
mov dword [esp + 0x34], edi
mov dword [esp + 0x3c], eax
mov edi, dword [esp + 0x24]
xor eax, dword [esp + 0x20]
xor edi, dword [esp + 0x34]
or edi, eax
je 0x4721d2
mov eax, dword [esp + 0x34]
cmp dword [esp + 0x24], eax
jg 0x4721b0
jl 0x472315
mov eax, dword [esp + 0x3c]
cmp dword [esp + 0x20], eax
jb 0x472315
lea esi, [esi]
mov esi, 0xffffffff
jmp 0x472238
add dword [esp + 0x20], 1
adc dword [esp + 0x24], 0x80010000
jmp 0x4720f5
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x30]
xor eax, dword [ebx]
xor edx, dword [ebx + 4]
or edx, eax
je 0x472300
mov esi, esi
lea edi, [edi]
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
mov dword [ebx], eax
mov eax, dword [esp + 0x30]
mov dword [ebx + 0xc], edx
mov dword [ebx + 4], eax
mov eax, dword [esp + 0x20]
mov dword [ebx + 8], eax
mov eax, dword [esp + 0x78]
mov dword [ebx + 0x14], eax
mov eax, dword [esp + 0x74]
lea edx, [eax*4]
mov eax, dword [ebx + 0x10]
and eax, 3
or eax, edx
movzx edx, byte [esp + 0x7c]
mov dword [ebx + 0x10], eax
and eax, 0xfffffffc
and edx, 3
or eax, edx
mov byte [ebx + 0x10], al
add esp, 0x4c
mov eax, esi
pop ebx
pop esi
pop edi
pop ebp
lea eax, [ecx + 1]
test ecx, ecx
mov dword [ebp + 0x18c], eax
lea eax, [ecx + ecx*2]
lea ebx, [edx + eax*8]
je 0x4722b0
mov edx, dword [esp + 0x24]
cmp edx, dword [ebx - 0xc]
mov eax, dword [esp + 0x20]
jg 0x472360
jl 0x472271
cmp eax, dword [ebx - 0x10]
ja 0x472360
mov dword [esp + 0x14], 0x7e0
mov dword [esp + 0x10], str.libavformat_utils.c
mov dword [esp + 0xc], str.index__0__ie__1_.timestamp___timestamp
mov dword [esp + 8], 0x685396
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.0056b9c0
call sub.msvcrt.dll_abort
lea esi, [esi]
xor esi, esi
jmp 0x4721f0
cmp dword [esp + 0x24], ebx
jg 0x472350
jl 0x4722d2
cmp dword [esp + 0x20], edi
jae 0x472350
movzx ecx, byte [ebp + 0xb8]
mov edi, ecx
shr edi, 5
and edi, 1
mov esi, edi
shl edi, cl
xor esi, 1
shl esi, cl
add dword [esp + 0x20], esi
adc dword [esp + 0x24], edi
jmp 0x4720b6
mov eax, dword [ebx + 0x14]
cmp dword [esp + 0x78], eax
cmovge eax, dword [esp + 0x78]
mov dword [esp + 0x78], eax
jmp 0x4721f0
mov eax, ecx
mov dword [esp + 4], ebx
sub eax, esi
lea eax, [eax + eax*2]
shl eax, 3
mov dword [esp + 8], eax
mov eax, dword [esp + 0x38]
lea eax, [edx + eax + 0x18]
mov dword [esp], eax
call sub.msvcrt.dll_memmove
add dword [ebp + 0x18c], 1
jmp 0x4721f0
jl 0x472350
cmp dword [esp + 0x20], edi
jae 0x47208c
nop
cmp eax, 0xaaaaaa9
jbe 0x4720d9
jmp 0x4721b0
mov esi, ecx
jmp 0x4721f0
cmp eax, 0xaaaaaa9
ja 0x4721b0
add esp, 0x4c
mov esi, 0xffffffea
pop ebx
mov eax, esi
pop esi
pop edi
pop ebp
ret