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

Disassembly:
sub esp, 0xf0
push ebx
push ebp
mov ebp, dword [esp + 0x100]
xor ebx, ebx
push esi
push edi
or eax, 0xffffffff
mov dword [esp + 0x48], ebx
or edx, 0xffffffff
mov dword [esp + 0x4c], ebx
push ebp
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
call sub.glib_lite.dll_Ordinal_217
push dword [esp + 0x110]
mov edi, dword [esp + 0x10c]
mov esi, eax
push ebp
push esi
push edi
mov dword [esp + 0x2c], esi
call fcn.1004f722
push esi
push edi
call fcn.1000d317
lea eax, [esp + 0x74]
push eax
push 0x6468666d
push esi
call fcn.100559d1
add esp, 0x28
test eax, eax
je 0x1004f585
lea eax, [esp + 0x58]
push 4
push eax
call fcn.1004589d
pop ecx
pop ecx
test eax, eax
je 0x1004f585
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.10045804
pop ecx
pop ecx
test eax, eax
je 0x1004f585
or eax, 0xffffffff
push 0x66617274
push esi
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
call fcn.100559a6
mov ebp, eax
mov dword [esp + 0x30], ebp
pop ecx
pop ecx
test ebp, ebp
je 0x1004f556
lea eax, [esp + 0xac]
xorps xmm0, xmm0
push eax
push 0x64686674
push ebp
movlpd qword [esp + 0x40], xmm0
call fcn.100559d1
add esp, 0xc
test eax, eax
je 0x1004f581
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x128]
push eax
lea eax, [esp + 0xc0]
push eax
push edi
call fcn.10050ef1
add esp, 0x1c
test eax, eax
je 0x1004f581
lea eax, [esp + 0xc8]
push eax
push 0x7a696173
push ebp
call fcn.100559d1
mov esi, dword [esp + 0x124]
add esp, 0xc
test eax, eax
je 0x1004f321
push dword [edi + 0x1c8]
mov dword [esp + 0x18], ebx
movlpd qword [esp + 0x54], xmm0
mov dword [esp + 0x14], ebx
call sub.glib_lite.dll_Ordinal_109
lea eax, [edi + 0x1cc]
push eax
lea eax, [esp + 0xd0]
push eax
push esi
push edi
call fcn.1005f33d
add esp, 0x14
mov dword [esp + 0x1c], eax
mov dword [edi + 0x1c8], eax
test eax, eax
je 0x1004f581
lea eax, [esp + 0xe4]
push eax
push 0x6f696173
push ebp
call fcn.100559d1
add esp, 0xc
test eax, eax
je 0x1004f571
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x1c]
push eax
lea eax, [esp + 0xf0]
push eax
push esi
push edi
call fcn.1005f33d
add esp, 0x18
test eax, eax
je 0x1004f571
cmp dword [esp + 0x24], 0xffffffff
jl 0x1004f2a7
jg 0x1004f273
cmp dword [esp + 0x20], 0xffffffff
jbe 0x1004f2a7
mov edx, dword [edi + 0x19c]
mov ecx, dword [edi + 0x198]
cmp dword [esp + 0x24], edx
jb 0x1004f2a7
ja 0x1004f28d
cmp dword [esp + 0x20], ecx
jbe 0x1004f2a7
mov eax, dword [esp + 0x20]
sub eax, ecx
mov ecx, dword [esp + 0x24]
sbb ecx, edx
mov edx, dword [esp + 0x50]
add edx, eax
mov eax, dword [esp + 0x54]
adc eax, ecx
jmp 0x1004f2af
mov eax, dword [esp + 0x54]
mov edx, dword [esp + 0x50]
cmp dword [esp + 0x14], 0x636e6563
jne 0x1004f321
cmp dword [esp + 0x10], ebx
jne 0x1004f321
cmp eax, ebx
jb 0x1004f2dc
ja 0x1004f2ce
cmp edx, dword [esp + 0x10c]
jbe 0x1004f2dc
mov dword [edi + 0x1c0], edx
mov dword [edi + 0x1c4], eax
jmp 0x1004f321
mov eax, dword [esp + 0x108]
push dword [edi + 0x1cc]
add eax, edx
mov dword [esp + 0x80], ebx
push dword [esp + 0x20]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x114]
sub eax, edx
mov dword [esp + 0x80], eax
lea eax, [esp + 0x7c]
push eax
push esi
push edi
call fcn.1004ed52
add esp, 0x14
test eax, eax
je 0x1004f569
lea eax, [esp + 0x58]
push eax
push 0x74646674
push ebp
call fcn.100559d1
add esp, 0xc
mov dword [esp + 0x1c], eax
test eax, eax
je 0x1004f3af
lea eax, [esp + 0x10]
mov dword [esp + 0x10], ebx
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.10045804
pop ecx
pop ecx
test eax, eax
je 0x1004f376
mov eax, dword [esp + 0x10]
and eax, 0xff000000
cmp eax, 0x1000000
jne 0x1004f38e
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.10045838
pop ecx
pop ecx
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x38]
or dword [edi + 0x258], 0xffffffff
or dword [edi + 0x25c], 0xffffffff
jmp 0x1004f3b7
lea eax, [esp + 0x10]
mov dword [esp + 0x10], ebx
push eax
lea eax, [esp + 0x5c]
push eax
call fcn.10045804
pop ecx
pop ecx
test eax, eax
je 0x1004f376
mov eax, dword [esp + 0x10]
mov ebp, ebx
jmp 0x1004f37e
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
mov dword [esp + 0x14], eax
test esi, esi
jne 0x1004f3d1
or dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x20], 0xfffffffe
jmp 0x1004f532
cmp dword [esp + 0x24], 0xffffffff
jl 0x1004f581
jg 0x1004f3e9
cmp dword [esp + 0x20], 0xffffffff
jb 0x1004f581
push ebx
push dword [esi + 0x40]
push ebx
push 0x3b9aca00
push ebp
push eax
call fcn.1005f33d
add esp, 0x18
cmp dword [esp + 0x30], edx
jb 0x1004f42a
ja 0x1004f40b
cmp dword [esp + 0x2c], eax
jb 0x1004f42a
push ebx
push dword [esi + 0x40]
push ebx
push 0x3b9aca00
push ebp
push dword [esp + 0x28]
call fcn.1005f33d
add esp, 0x18
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], edx
cmp dword [edi + 0xc0], ebx
jne 0x1004f439
push esi
call fcn.1004d09e
pop ecx
mov dword [esi + 0x54], ebx
mov eax, dword [esi + 0x58]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x64], eax
lea eax, [esp + 0x90]
push eax
push 0x6e757274
push dword [esp + 0x30]
mov dword [esi + 0x58], ebx
mov dword [esi + 0x5c], ebx
call fcn.100559d1
add esp, 0xc
mov dword [esp + 0x10], eax
test eax, eax
je 0x1004f4e2
xor eax, eax
cmp dword [esp + 0x1c], eax
setne al
mov dword [esp + 0x1c], eax
push eax
push ebp
push dword [esp + 0x1c]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x30]
push eax
push ebx
push dword [esp + 0x124]
lea eax, [esp + 0xac]
push dword [esp + 0x130]
push dword [esp + 0x130]
push dword [esp + 0x68]
push dword [esp + 0x70]
push dword [esp + 0x78]
push esi
push eax
push edi
call fcn.100543b5
lea eax, [esp + 0xcc]
push eax
push 0x6e757274
push dword [esp + 0x54]
call fcn.10055a22
add esp, 0x48
mov dword [esp + 0x10], eax
test eax, eax
mov eax, dword [esp + 0x1c]
jne 0x1004f47c
push 0x64697575
push dword [esp + 0x2c]
call fcn.100559a6
pop ecx
pop ecx
test eax, eax
je 0x1004f504
push dword [eax]
call fcn.100334ce
add dword [edi + 0x110], eax
pop ecx
mov eax, dword [esp + 0x3c]
or dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x40]
or dword [esp + 0x40], 0xffffffff
mov dword [esp + 0x24], eax
cmp dword [esi + 0x54], ebx
je 0x1004f532
mov eax, dword [esi + 0x58]
or eax, dword [esi + 0x5c]
je 0x1004f532
mov dword [esi + 0x1c], 1
push ebx
push 0x66617274
push dword [esp + 0x30]
call fcn.10055a22
mov ebp, eax
mov dword [esp + 0x34], eax
add esp, 0xc
test ebp, ebp
jne 0x1004f157
mov esi, dword [esp + 0x18]
mov ebp, 0x68737370
push ebp
push esi
call fcn.100559a6
pop ecx
pop ecx
jmp 0x1004f5f2
push dword [edi + 0x1c8]
jmp 0x1004f575
push dword [esp + 0x1c]
call sub.glib_lite.dll_Ordinal_109
pop ecx
mov dword [edi + 0x1c8], ebx
mov esi, dword [esp + 0x18]
push esi
call sub.glib_lite.dll_Ordinal_215
mov dword [esp], str.This_file_is_corrupt_and_cannot_be_played.
call fcn.1005f33d
push ebx
mov esi, eax
call fcn.1005f33d
pop ecx
pop ecx
push 0x10f8
push str.qtdemux_parse_moof
push str..._.._.._gstreamer_lite_gst_plugins_good_gst_isomp4_qtdemux.c
push eax
push esi
push 9
call sym.gstreamer_lite.dll_Ordinal_154
push eax
push 2
call sym.gstreamer_lite.dll_Ordinal_47
push eax
push edi
call sub.glib_lite.dll_Ordinal_413
pop ecx
pop ecx
push eax
call fcn.1005f33d
add esp, 0x24
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xf0
ret
push esi
push edi
call fcn.1004fc84
push ebx
push ebp
push esi
call fcn.10055a22
add esp, 0x14
mov esi, eax
test esi, esi
jne 0x1004f5e0
cmp dword [edi + 0x228], ebx
jne 0x1004f687
cmp dword [edi + 0x26c], ebx
jne 0x1004f687
cmp dword [edi + 0x268], ebx
jne 0x1004f687
mov ecx, dword [esp + 0x2c]
mov eax, ecx
mov edx, dword [esp + 0x30]
and eax, edx
cmp eax, 0xffffffff
je 0x1004f687
mov eax, ecx
or eax, edx
je 0x1004f687
mov eax, dword [edi + 0xd0]
mov dword [edi + 0x148], ecx
mov dword [edi + 0x14c], edx
mov dword [edi + 0x160], ecx
mov dword [edi + 0x164], edx
mov dword [edi + 0x158], ecx
mov dword [edi + 0x15c], edx
cmp dword [eax + 4], ebx
jbe 0x1004f67d
mov eax, dword [edi + 0xd0]
mov eax, dword [eax]
mov eax, dword [eax + ebx*4]
inc ebx
mov dword [eax + 0xc0], ecx
mov dword [eax + 0xc4], edx
mov eax, dword [edi + 0xd0]
cmp ebx, dword [eax + 4]
jb 0x1004f65a
mov dword [edi + 0x180], 1
push dword [esp + 0x18]
mov dword [edi + 0x26c], 1
call sub.glib_lite.dll_Ordinal_215
xor eax, eax
pop ecx
inc eax
jmp 0x1004f5d5