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

Disassembly:
sub esp, 0x98
push ebx
mov ebx, dword [esp + 0xa0]
xorps xmm0, xmm0
push ebp
push esi
or ebp, 0xffffffff
movlpd qword [esp + 0x44], xmm0
push edi
xor edi, edi
mov dword [esp + 0x50], ebp
push ebx
mov dword [esp + 0x34], edi
mov dword [esp + 0x48], edi
mov dword [esp + 0x58], ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x24], ebp
movlpd qword [esp + 0x38], xmm0
mov dword [esp + 0x44], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x30], edi
call fcn.1004a819
pop ecx
cmp dword [ebx + 0x208], edi
je 0x10048b3f
push ebx
call fcn.10046481
pop ecx
test eax, eax
je 0x10048b3f
mov dword [ebx + 0x208], edi
mov eax, dword [ebx + 0x148]
mov edx, ebp
or dword [esp + 0x10], 0xffffffff
mov ecx, edi
mov dword [esp + 0x18], eax
test eax, eax
jle 0x10049106
mov esi, dword [esp + 0x10]
lea eax, [ebx + 0xc8]
mov dword [esp + 0x28], eax
mov edi, eax
mov eax, dword [edi]
mov ebx, dword [eax + 0xc0]
mov dword [esp + 0x14], ebx
mov ebx, dword [eax + 0xc4]
mov eax, dword [eax + 0xc0]
and eax, ebx
cmp eax, 0xffffffff
je 0x10048b9d
cmp ebx, ebp
ja 0x10048b9d
mov eax, dword [esp + 0x14]
jb 0x10048b97
cmp eax, edx
jae 0x10048b9d
mov edx, eax
mov ebp, ebx
mov esi, ecx
inc ecx
add edi, 4
cmp ecx, dword [esp + 0x18]
jl 0x10048b6a
mov ebx, dword [esp + 0xac]
cmp esi, 0xffffffff
mov dword [esp + 0x10], esi
mov esi, dword [esp + 0x30]
mov dword [esp + 0x18], ebp
mov dword [esp + 0x3c], edx
je 0x10049106
mov edi, dword [ebx + 0x1c8]
mov eax, edi
mov ecx, dword [ebx + 0x1cc]
and eax, ecx
cmp eax, 0xffffffff
je 0x10048c32
movsd xmm0, qword [ebx + 0x198]
xorps xmm1, xmm1
comisd xmm0, xmm1
jb 0x10048bf7
cmp ecx, ebp
jb 0x10048c0f
ja 0x10048bf7
cmp edi, edx
jbe 0x10048c0f
comisd xmm1, xmm0
jbe 0x10048c32
cmp dword [ebx + 0x1c4], ebp
jb 0x10048c32
ja 0x10048c0f
cmp dword [ebx + 0x1c0], edx
jbe 0x10048c32
mov eax, dword [esp + 0x10]
mov eax, dword [ebx + eax*4 + 0xc8]
cmp dword [eax + 0x1c], esi
je 0x10048c32
or dword [eax + 0xc0], 0xffffffff
or dword [eax + 0xc4], 0xffffffff
jmp 0x10048d5a
xor edx, edx
lea ecx, [ebx + 0xc8]
mov dword [esp + 0x14], edx
mov edi, dword [ecx]
cmp dword [edi], esi
je 0x10048d06
cmp dword [edi + 0x10], 0x70627573
je 0x10048c67
cmp dword [edi + 0x10], 0x74786574
je 0x10048c67
cmp dword [edi + 0x10], 0x6c746273
jne 0x10048d06
mov eax, dword [edi + 0x108]
and eax, dword [edi + 0x10c]
cmp eax, 0xffffffff
je 0x10048d06
mov ecx, dword [edi + 0x118]
mov edx, dword [edi + 0x11c]
mov ebx, dword [esp + 0x3c]
mov eax, ecx
and eax, edx
cmp eax, 0xffffffff
je 0x10048cf7
mov eax, ecx
add eax, 0x3b9aca00
mov dword [esp + 0x30], eax
mov eax, edx
adc eax, 0
cmp eax, ebp
ja 0x10048cf7
jb 0x10048cb1
cmp dword [esp + 0x30], ebx
jae 0x10048cf7
push 0
push 0x3b9aca00
push edx
push ecx
call fcn.10002422
push eax
push dword [edi]
call sym.gstreamer_lite.dll_Ordinal_115
add esp, 0x18
add dword [edi + 0x118], 0x3b9aca00
mov ecx, dword [edi + 0x118]
adc dword [edi + 0x11c], esi
mov eax, dword [edi + 0x108]
and eax, dword [edi + 0x10c]
mov edx, dword [edi + 0x11c]
cmp eax, 0xffffffff
jne 0x10048c8c
mov ebx, dword [esp + 0xac]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x14]
inc edx
add ecx, 4
mov dword [esp + 0x14], edx
mov dword [esp + 0x28], ecx
cmp edx, dword [ebx + 0x148]
jl 0x10048c3e
mov eax, dword [esp + 0x10]
mov ebp, dword [ebx + eax*4 + 0xc8]
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x38]
push eax
lea eax, [esp + 0x24]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x44]
push eax
push ebp
push ebx
call fcn.10049440
add esp, 0x24
test eax, eax
jne 0x10048d61
xor esi, esi
jmp 0x10049109
push ebp
push ebx
call fcn.1004b2b1
pop ecx
pop ecx
cmp dword [ebp + 0x14], esi
je 0x10048d78
push ebp
push ebx
call fcn.10045ae8
pop ecx
pop ecx
test byte [ebx + 0x190], 0x80
je 0x10048d94
cmp dword [ebp + 0x10], 0x65646976
jne 0x10048d94
cmp dword [esp + 0x40], esi
je 0x100490fb
cmp dword [esp + 0x2c], esi
je 0x10048e00
mov edi, dword [esp + 0x34]
mov edx, edi
sub edx, dword [ebp + 0x118]
mov ecx, dword [esp + 0x38]
mov eax, ecx
sbb eax, dword [ebp + 0x11c]
add edx, dword [esp + 0x1c]
adc eax, dword [esp + 0x20]
mov dword [esp + 0x54], eax
jne 0x10048dc8
cmp edx, 0x3b9aca00
jb 0x10048de7
push ecx
push edi
push dword [esp + 0x28]
push dword [esp + 0x28]
call fcn.10002422
push eax
push dword [ebp]
call sym.gstreamer_lite.dll_Ordinal_115
mov ecx, dword [esp + 0x50]
add esp, 0x18
add edi, dword [esp + 0x1c]
mov dword [ebp + 0x118], edi
adc ecx, dword [esp + 0x20]
mov dword [ebp + 0x11c], ecx
jmp 0x100490fb
mov ecx, dword [esp + 0x24]
test ecx, ecx
je 0x100490fb
mov eax, dword [ebp]
cmp dword [eax + 0x11c], 0xfffffffd
je 0x100490fb
mov eax, dword [ebp + 0x6c]
test eax, eax
je 0x10048e37
cmp ecx, eax
jbe 0x10048e37
mov edi, ecx
sub edi, dword [ebp + 0x68]
cmp edi, eax
cmovae edi, eax
mov dword [esp + 0x14], edi
jmp 0x10048e3d
mov edi, ecx
mov dword [esp + 0x14], ecx
cmp dword [ebx + 0x23c], esi
ja 0x10048e51
cmp dword [ebx + 0x238], esi
jbe 0x10048f0c
and dword [esp + 0x10], esi
lea eax, [esp + 0x10]
mov esi, dword [ebx + 0x278]
mov ecx, dword [ebp + 0x68]
mov edx, dword [ebx + 0x27c]
push eax
xor eax, eax
sub ecx, esi
sbb eax, edx
add ecx, dword [esp + 0x4c]
adc eax, dword [esp + 0x50]
push eax
push ecx
push edx
push esi
push ebx
call fcn.1004a647
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x10049109
push 1
lea eax, [esp + 0x78]
push eax
push dword [esp + 0x18]
call sym.gstreamer_lite.dll_Ordinal_23
mov eax, dword [esp + 0x88]
push dword [ebx + 0x244]
and dword [esp + 0x70], esi
add eax, 8
push dword [ebx + 0x240]
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.1004d005
add esp, 0x20
test eax, eax
lea eax, [esp + 0x74]
push eax
push dword [esp + 0x14]
jne 0x10048efb
call sym.gstreamer_lite.dll_Ordinal_28
push dword [esp + 0x18]
call sym.gstreamer_lite.dll_Ordinal_94
add esp, 0xc
push 0xfffffffffffffffb
jmp 0x10049108
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], 0
je 0x10048f29
lea eax, [ebp + 0x80]
push eax
push edi
push dword [ebp + 0x7c]
call sym.gstreamer_lite.dll_Ordinal_24
add esp, 0xc
mov dword [esp + 0x44], eax
mov ecx, dword [ebp + 0x68]
lea eax, [esp + 0x44]
push eax
xor eax, eax
add ecx, dword [esp + 0x4c]
push 0
adc eax, dword [esp + 0x54]
push edi
push eax
push ecx
push ebx
call fcn.1004a647
mov esi, eax
add esp, 0x18
test esi, esi
jne 0x10049109
cmp edi, dword [esp + 0x24]
je 0x10048ffd
imul esi, dword [ebp + 0xc], 0x78
xor edx, edx
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 0x68]
push dword [ebp + 0x38]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012af5
mov ecx, dword [esp + 0x2c]
add ecx, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x40], ecx
mov ecx, dword [ebp + 4]
adc eax, edx
imul esi, dword [ebp + 0xc], 0x78
xor edx, edx
mov dword [esp + 0x44], eax
mov eax, dword [ebp + 0x68]
push dword [ebp + 0x38]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012af5
mov ecx, dword [esp + 0x70]
add ecx, eax
mov eax, dword [esp + 0x74]
mov dword [esp + 0x3c], ecx
mov ecx, dword [ebp + 4]
adc eax, edx
imul esi, dword [ebp + 0xc], 0x78
xor edx, edx
mov dword [esp + 0x30], eax
mov eax, edi
push dword [ebp + 0x38]
div dword [esi + ecx + 0x64]
push eax
push 0
push 0x3b9aca00
call fcn.10012af5
mov ecx, dword [esp + 0x64]
add esp, 0x30
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x2c], edx
jmp 0x10049021
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], edx
mov edx, dword [esp + 0x34]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x28], edx
push dword [esp + 0x4c]
mov edx, dword [esp + 0x40]
push dword [esp + 0x4c]
push dword [esp + 0x20]
push edx
push dword [esp + 0x50]
push dword [esp + 0x40]
push dword [esp + 0x40]
push ecx
push eax
push dword [esp + 0x34]
push esi
push dword [esp + 0x70]
push ebp
push ebx
call fcn.100460e7
add esp, 0x38
mov dword [esp + 0x18], eax
cmp edi, dword [esp + 0x24]
je 0x100490da
imul esi, dword [ebp + 0xc], 0x78
xor edx, edx
mov ecx, dword [ebp + 4]
mov eax, dword [ebp + 0x68]
mov edi, dword [ebp + 0xb8]
imul ebx, dword [ebp + 0xb4], 0x38
shl edi, 5
add edi, dword [ebp + 0x44]
push 0
div dword [esi + ecx + 0x64]
push dword [ebp + 0x38]
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.1005810d
mov ecx, dword [ebx]
add esp, 0x18
mov esi, dword [ebx + 4]
cmp edx, dword [ebx + 0x1c]
jb 0x100490bf
ja 0x100490b5
cmp eax, dword [ebx + 0x18]
jb 0x100490bf
sub ecx, dword [ebx + 0x18]
sbb esi, dword [ebx + 0x1c]
add ecx, eax
adc esi, edx
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0xac]
mov dword [ebp + 0xc4], esi
mov dword [ebp + 0xc0], ecx
push eax
push ebp
push ebx
call fcn.10045a0b
mov esi, eax
add esp, 0xc
xor eax, eax
cmp esi, 0xfffffffd
cmove esi, eax
add dword [ebp + 0x68], edi
mov eax, dword [esp + 0x24]
cmp dword [ebp + 0x68], eax
jb 0x10049109
push ebp
push ebx
call fcn.100450c9
pop ecx
pop ecx
jmp 0x10049109
push 0xfffffffffffffffd
pop esi
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x98
ret