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

Disassembly:
sub esp, 0x98
or dword [esp + 0x3c], 0xffffffff
xorps xmm0, xmm0
or dword [esp + 0x40], 0xffffffff
or dword [esp + 0xc], 0xffffffff
or dword [esp + 0x10], 0xffffffff
push ebx
mov ebx, dword [esp + 0xa0]
push ebp
push esi
xor esi, esi
movlpd qword [esp + 0x40], xmm0
mov ebp, esi
mov dword [esp + 0xc], esi
push edi
mov dword [esp + 0x3c], esi
movlpd qword [esp + 0x2c], xmm0
mov dword [esp + 0x38], esi
mov dword [esp + 0x28], esi
mov dword [esp + 0x18], esi
cmp dword [ebx + 0x190], esi
je 0x10049fab
push ebx
call fcn.1004768d
pop ecx
test eax, eax
je 0x10049fab
mov dword [ebx + 0x190], esi
mov ecx, dword [ebx + 0xd0]
or edx, 0xffffffff
or dword [esp + 0x24], 0xffffffff
mov esi, dword [ecx + 4]
test esi, esi
je 0x1004a560
mov edi, dword [ecx]
mov ebx, dword [esp + 0x24]
mov eax, dword [edi]
mov ecx, dword [edi]
mov eax, dword [eax + 0xc0]
and eax, dword [ecx + 0xc4]
cmp eax, 0xffffffff
je 0x10049ffd
mov eax, dword [ecx + 0xc4]
cmp eax, ebx
ja 0x10049ffd
jb 0x10049ff3
cmp dword [ecx + 0xc0], edx
jae 0x10049ffd
mov ebp, ecx
mov ebx, eax
mov edx, dword [ebp + 0xc0]
add edi, 4
sub esi, 1
jne 0x10049fca
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0xac]
mov dword [esp + 0x34], edx
mov ecx, dword [ebx + 0xd0]
test ebp, ebp
je 0x1004a560
mov eax, dword [ebx + 0x150]
mov esi, dword [ebx + 0x154]
and eax, esi
cmp eax, 0xffffffff
je 0x1004a089
movsd xmm0, qword [ebx + 0x120]
xorps xmm1, xmm1
comisd xmm0, xmm1
mov eax, dword [esp + 0x24]
jb 0x1004a058
cmp esi, eax
jb 0x1004a070
ja 0x1004a058
cmp dword [ebx + 0x150], edx
jbe 0x1004a070
comisd xmm1, xmm0
jbe 0x1004a089
cmp dword [ebx + 0x14c], eax
jb 0x1004a089
ja 0x1004a070
cmp dword [ebx + 0x148], edx
jbe 0x1004a089
cmp dword [ebp + 0x24], 0
je 0x1004a089
or dword [ebp + 0xc0], 0xffffffff
or dword [ebp + 0xc4], 0xffffffff
jmp 0x1004a1a5
mov edi, dword [esp + 0x24]
xor edx, edx
mov dword [esp + 0x14], edx
mov eax, dword [ecx]
mov esi, dword [eax + edx*4]
cmp dword [esi], 0
je 0x1004a15c
cmp dword [esi + 0x18], 0x70627573
je 0x1004a0c0
cmp dword [esi + 0x18], 0x74786574
je 0x1004a0c0
cmp dword [esi + 0x18], 0x6c746273
jne 0x1004a15c
mov eax, dword [esi + 0x108]
and eax, dword [esi + 0x10c]
cmp eax, 0xffffffff
je 0x1004a15c
mov ecx, dword [esi + 0x118]
mov edx, dword [esi + 0x11c]
mov ebx, dword [esp + 0x34]
mov eax, ecx
and eax, edx
cmp eax, 0xffffffff
je 0x1004a151
mov eax, ecx
add eax, 0x3b9aca00
mov dword [esp + 0x40], eax
mov eax, edx
adc eax, 0
cmp eax, edi
ja 0x1004a151
jb 0x1004a10a
cmp dword [esp + 0x40], ebx
jae 0x1004a151
push 0
push 0x3b9aca00
push edx
push ecx
call fcn.100025ab
push eax
push dword [esi]
call sym.gstreamer_lite.dll_Ordinal_115
add esp, 0x18
add dword [esi + 0x118], 0x3b9aca00
mov ecx, dword [esi + 0x118]
adc dword [esi + 0x11c], 0
mov eax, dword [esi + 0x108]
and eax, dword [esi + 0x10c]
mov edx, dword [esi + 0x11c]
cmp eax, 0xffffffff
jne 0x1004a0e5
mov ebx, dword [esp + 0xac]
mov edx, dword [esp + 0x14]
mov ecx, dword [ebx + 0xd0]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [ecx + 4]
jb 0x1004a093
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x30]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x30]
push eax
push ebp
push ebx
call fcn.1004a976
mov edi, dword [esp + 0x34]
add esp, 0x24
test eax, eax
jne 0x1004a1ac
xor edi, edi
jmp 0x1004a563
push ebp
push ebx
call fcn.1004ce89
xor esi, esi
pop ecx
pop ecx
cmp dword [ebp + 0x1c], esi
je 0x1004a1c5
push ebp
push ebx
call fcn.10046d8b
pop ecx
pop ecx
test byte [ebx + 0x118], 0x80
je 0x1004a1e1
cmp dword [ebp + 0x18], 0x65646976
jne 0x1004a1e1
cmp dword [esp + 0x38], esi
je 0x1004a555
cmp dword [esp + 0x18], esi
je 0x1004a24d
mov esi, dword [esp + 0x2c]
mov edx, esi
sub edx, dword [ebp + 0x118]
mov ecx, dword [esp + 0x30]
mov eax, ecx
sbb eax, dword [ebp + 0x11c]
add edx, dword [esp + 0x1c]
adc eax, dword [esp + 0x20]
mov dword [esp + 0x50], eax
jne 0x1004a215
cmp edx, 0x3b9aca00
jb 0x1004a234
push ecx
push esi
push dword [esp + 0x28]
push dword [esp + 0x28]
call fcn.100025ab
push eax
push dword [ebp]
call sym.gstreamer_lite.dll_Ordinal_115
mov ecx, dword [esp + 0x48]
add esp, 0x18
add esi, dword [esp + 0x1c]
mov dword [ebp + 0x118], esi
adc ecx, dword [esp + 0x20]
mov dword [ebp + 0x11c], ecx
jmp 0x1004a555
mov ecx, dword [esp + 0x28]
test ecx, ecx
je 0x1004a555
mov eax, dword [ebp]
cmp dword [eax + 0x11c], 0xfffffffd
je 0x1004a555
mov edx, dword [ebp + 0x6c]
test edx, edx
je 0x1004a284
cmp ecx, edx
jbe 0x1004a284
mov eax, ecx
sub eax, dword [ebp + 0x68]
cmp eax, edx
cmovae eax, edx
mov dword [esp + 0x14], eax
jmp 0x1004a288
mov dword [esp + 0x14], ecx
cmp dword [ebx + 0x1c4], esi
ja 0x1004a29c
cmp dword [ebx + 0x1c0], esi
jbe 0x1004a359
mov ecx, dword [ebp + 0x68]
lea eax, [esp + 0x10]
mov edx, dword [ebx + 0x20c]
push eax
xor eax, eax
mov dword [esp + 0x14], esi
mov esi, dword [ebx + 0x208]
sub ecx, esi
sbb eax, edx
add ecx, dword [esp + 0x48]
adc eax, dword [esp + 0x4c]
push eax
push ecx
push edx
push esi
push ebx
call fcn.1004bb85
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x1004a563
push 1
lea eax, [esp + 0x78]
push eax
push dword [esp + 0x18]
call sym.gstreamer_lite.dll_Ordinal_23
mov eax, dword [esp + 0x88]
xor esi, esi
push dword [ebx + 0x1cc]
add eax, 8
mov dword [esp + 0x70], esi
push dword [ebx + 0x1c8]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x94]
mov dword [esp + 0x70], eax
lea eax, [esp + 0x6c]
push eax
push ebp
push ebx
call fcn.1004ed52
add esp, 0x20
test eax, eax
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x14]
jne 0x1004a348
call sym.gstreamer_lite.dll_Ordinal_28
push dword [esp + 0x18]
call sym.gstreamer_lite.dll_Ordinal_94
add esp, 0xc
push 0xfffffffffffffffb
jmp 0x1004a562
call sym.gstreamer_lite.dll_Ordinal_28
push dword [esp + 0x18]
call sym.gstreamer_lite.dll_Ordinal_94
add esp, 0xc
cmp dword [ebp + 0x78], esi
mov esi, dword [esp + 0x14]
je 0x1004a379
lea eax, [ebp + 0x80]
push eax
push esi
push dword [ebp + 0x7c]
call sym.gstreamer_lite.dll_Ordinal_24
add esp, 0xc
mov dword [esp + 0x3c], eax
mov ecx, dword [ebp + 0x68]
lea eax, [esp + 0x3c]
push eax
xor eax, eax
add ecx, dword [esp + 0x48]
push 0
adc eax, dword [esp + 0x50]
push esi
push eax
push ecx
push ebx
call fcn.1004bb85
mov edi, eax
add esp, 0x18
test edi, edi
jne 0x1004a563
mov edi, dword [esp + 0x14]
cmp edi, dword [esp + 0x28]
je 0x1004a458
imul esi, dword [ebp + 0x14], 0x78
xor edx, edx
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x68]
push dword [ebp + 0x40]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012a5a
mov ecx, dword [esp + 0x2c]
add ecx, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x50], ecx
mov ecx, dword [ebp + 0xc]
adc eax, edx
imul esi, dword [ebp + 0x14], 0x78
xor edx, edx
mov dword [esp + 0x64], eax
mov eax, dword [ebp + 0x68]
push dword [ebp + 0x40]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012a5a
mov ecx, dword [esp + 0x6c]
add ecx, eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x4c], ecx
mov ecx, dword [ebp + 0xc]
adc eax, edx
imul esi, dword [ebp + 0x14], 0x78
xor edx, edx
mov dword [esp + 0x3c], eax
mov eax, edi
push dword [ebp + 0x40]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012a5a
mov ecx, dword [esp + 0x84]
add esp, 0x30
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x2c]
jmp 0x1004a47f
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0xac]
push dword [esp + 0x48]
push dword [esp + 0x48]
push dword [esp + 0x2c]
push dword [esp + 0x40]
push dword [esp + 0x48]
push dword [esp + 0x2c]
push dword [esp + 0x28]
push ecx
push eax
push esi
push edx
push dword [esp + 0x68]
push ebp
push ebx
call fcn.100473d9
add esp, 0x38
mov dword [esp + 0x18], eax
cmp edi, dword [esp + 0x28]
je 0x1004a530
imul esi, dword [ebp + 0x14], 0x78
xor edx, edx
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x68]
mov edi, dword [ebp + 0xbc]
imul ebx, dword [ebp + 0xb8], 0x38
shl edi, 5
add edi, dword [ebp + 0x4c]
push 0
div dword [esi + ecx + 0x64]
push dword [ebp + 0x40]
add ebx, dword [ebp + 0x13c]
xor ecx, ecx
add eax, dword [edi + 0x10]
push 0
adc ecx, dword [edi + 0x14]
push 0x3b9aca00
push ecx
push eax
call fcn.10005963
mov ecx, dword [ebx]
add esp, 0x18
mov esi, dword [ebx + 4]
cmp edx, dword [ebx + 0x1c]
jb 0x1004a519
ja 0x1004a50f
cmp eax, dword [ebx + 0x18]
jb 0x1004a519
sub ecx, dword [ebx + 0x18]
sbb esi, dword [ebx + 0x1c]
add ecx, eax
adc esi, edx
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0xac]
mov dword [ebp + 0xc4], esi
mov dword [ebp + 0xc0], ecx
push eax
push ebp
push ebx
call fcn.10046c79
mov esi, dword [esp + 0x20]
mov edi, eax
xor eax, eax
add esp, 0xc
cmp edi, 0xfffffffd
cmove edi, eax
add dword [ebp + 0x68], esi
mov eax, dword [esp + 0x28]
cmp dword [ebp + 0x68], eax
jb 0x1004a563
push ebp
push ebx
call fcn.1004630e
pop ecx
pop ecx
jmp 0x1004a563
push 0xfffffffffffffffd
pop edi
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x98
ret