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

Disassembly:
sub esp, 0x28
push ebx
mov ebx, dword [esp + 0x30]
push ebp
push esi
mov ecx, dword [ebx + 0x1428]
mov eax, dword [ebx + 0x2b8]
test ecx, ecx
push edi
mov dword [esp + 0x14], eax
mov byte [ebx + 0x2bc], 0
je 0x41fb4b
test eax, eax
je 0x41fb4b
xor ebp, ebp
test ebp, ebp
jne 0x41f6e6
mov eax, dword [ebx + 0x1428]
push 0x68cb08
push eax
jmp 0x41f6f2
mov ecx, dword [ebx + 0x1428]
push str.SVCD
push ecx
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f79f
test byte [eax + 0xdd], 2
je 0x41f79f
push eax
call fcn.00422320
add esp, 4
mov esi, eax
test ebp, ebp
jne 0x41f732
push str.INFO.VCD
push esi
call fcn.00429b40
mov edi, eax
push str.ENTRIES.VCD
jmp 0x41f744
push str.INFO.SVD
push esi
call fcn.00429b40
mov edi, eax
push str.ENTRIES.SVD
push esi
call fcn.00429b40
add esp, 0x10
test edi, edi
je 0x41f79f
cmp dword [edi + 0x78], 0x96
jne 0x41f79f
mov ecx, dword [edi + 0x7c]
test ecx, ecx
jne 0x41f79f
mov edx, dword [edi + 0x20]
lea ecx, [edi + 0x20]
cmp edx, 0x800
jne 0x41f79f
mov edx, dword [ecx + 4]
test edx, edx
jne 0x41f79f
test eax, eax
je 0x41f79f
cmp dword [eax + 0x78], 0x97
jne 0x41f79f
mov ecx, dword [eax + 0x7c]
test ecx, ecx
jne 0x41f79f
mov ecx, dword [eax + 0x20]
add eax, 0x20
cmp ecx, 0x800
jne 0x41f79f
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x41f7b1
inc ebp
cmp ebp, 2
jl 0x41f6d4
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret
test ebp, ebp
mov edi, 1
jne 0x41f7cd
mov edx, dword [ebx + 0x1428]
push str.MPEGAV
mov byte [esp + 0x17], 1
push edx
jmp 0x41f7ff
mov eax, dword [ebx + 0x1428]
push str.MPEG2
push eax
mov byte [esp + 0x1b], 2
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f7f3
test byte [eax + 0xdd], 2
jne 0x41f807
mov ecx, dword [ebx + 0x1428]
push str.MPEGAV
push ecx
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fb4b
test byte [eax + 0xdd], 2
je 0x41fb4b
mov ebp, 0xffffff00
push eax
mov dword [eax + 0x18], ebp
call fcn.00422320
mov edx, dword [esp + 0x18]
mov ebx, eax
add esp, 4
cmp dword [edx + 0xc], edi
jle 0x41f902
mov eax, edx
lea ebp, [eax + 0xa60]
mov al, byte [esp + 0x13]
push edi
cmp al, 1
jne 0x41f859
lea ecx, [esp + 0x1c]
push str.AVSEQ_02d.DAT
push ecx
jmp 0x41f863
lea edx, [esp + 0x1c]
push str.AVSEQ_02d.MPG
push edx
call fcn.00526ec2
add esp, 0xc
lea eax, [esp + 0x18]
push eax
push ebx
call fcn.00429b40
mov esi, eax
add esp, 8
test esi, esi
je 0x41f888
test byte [esi + 0xdd], 2
je 0x41f8c8
cmp byte [esp + 0x13], 1
jne 0x41fb4b
push edi
lea ecx, [esp + 0x1c]
push str.MUSIC_02d.DAT
push ecx
call fcn.00526ec2
lea edx, [esp + 0x24]
push edx
push ebx
call fcn.00429b40
mov esi, eax
add esp, 0x14
test esi, esi
je 0x41fb4b
test byte [esi + 0xdd], 2
jne 0x41fb4b
lea eax, [esp + 0x18]
push eax
push ebp
call fcn.00526ec2
mov edx, dword [esp + 0x1c]
mov ecx, edi
or ecx, 0xffffff00
add esp, 8
mov dword [esi + 0x18], ecx
mov eax, dword [edx + 0xc]
inc edi
add ebp, 0x9a0
cmp edi, eax
jl 0x41f844
mov edi, dword [esp + 0x3c]
mov ebp, 0xffffff00
jmp 0x41f906
mov edi, dword [esp + 0x3c]
mov eax, dword [edi + 0x1428]
push 0x68ca2c
push eax
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f99a
test byte [eax + 0xdd], 2
je 0x41f99a
push eax
mov dword [eax + 0x18], ebp
call fcn.00422320
mov bl, byte [esp + 0x17]
add esp, 4
cmp bl, 1
mov esi, eax
jne 0x41f97a
push str.LOT_X.VCD
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f95c
test byte [eax + 0xdd], 2
jne 0x41f95c
mov dword [eax + 0x18], ebp
push str.PSD_X.VCD
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f97a
test byte [eax + 0xdd], 2
jne 0x41f97a
mov dword [eax + 0x18], ebp
push str.SCANDATA.DAT
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f99e
test byte [eax + 0xdd], 2
jne 0x41f99e
mov dword [eax + 0x18], ebp
jmp 0x41f99e
mov bl, byte [esp + 0x13]
mov ecx, dword [edi + 0x1428]
push str.SEGMENT
push ecx
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41f9c2
test byte [eax + 0xdd], 2
je 0x41f9c2
mov dword [eax + 0x18], ebp
cmp bl, 1
mov eax, 0x68cb08
je 0x41f9d1
mov eax, str.SVCD
mov edx, dword [edi + 0x1428]
push eax
push edx
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fb02
test byte [eax + 0xdd], 2
je 0x41fb02
push eax
mov dword [eax + 0x18], ebp
call fcn.00422320
add esp, 4
mov esi, eax
cmp bl, 1
mov eax, str.INFO.VCD
je 0x41fa13
mov eax, str.INFO.SVD
push eax
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fa31
test byte [eax + 0xdd], 2
jne 0x41fa31
mov dword [eax + 0x18], 0x96
cmp bl, 1
mov eax, str.ENTRIES.VCD
je 0x41fa40
mov eax, str.ENTRIES.SVD
push eax
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fa5e
test byte [eax + 0xdd], 2
jne 0x41fa5e
mov dword [eax + 0x18], 0x97
cmp bl, 1
mov eax, str.LOT.VCD
je 0x41fa6d
mov eax, str.LOT.SVD
push eax
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fa8b
test byte [eax + 0xdd], 2
jne 0x41fa8b
mov dword [eax + 0x18], 0x98
cmp bl, 1
mov eax, str.PSD.VCD
je 0x41fa9a
mov eax, str.PSD.SVD
push eax
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fab8
test byte [eax + 0xdd], 2
jne 0x41fab8
mov dword [eax + 0x18], 0xb8
cmp bl, 2
jne 0x41fb02
push str.TRACKS.SVD
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fade
test byte [eax + 0xdd], bl
jne 0x41fade
mov dword [eax + 0x18], 0xb9
push str.SEARCH.DAT
push esi
call fcn.00429b40
add esp, 8
test eax, eax
je 0x41fb06
test byte [eax + 0xdd], 2
jne 0x41fb06
mov dword [eax + 0x18], 0xba
jmp 0x41fb06
test bl, bl
je 0x41fb4b
mov edx, dword [esp + 0x14]
mov eax, 1
mov ecx, dword [edx + 0xc]
mov byte [edx + 0x28], 5
cmp ecx, eax
jle 0x41fb31
lea ecx, [edx + 0x9c8]
mov byte [ecx], 6
mov esi, dword [edx + 0xc]
inc eax
add ecx, 0x9a0
cmp eax, esi
jl 0x41fb20
mov byte [edi + 0x2bc], bl
mov dword [edi + 0x3c68], 0x1e
mov dword [edi + 0x3c6c], 0x6e
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x28
ret