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

Disassembly:
mov eax, 0x1054
call fcn.004b7240
push ebx
push ebp
push esi
mov esi, dword [esp + 0x1068]
push edi
push 0x401
lea eax, [esp + 0x864]
push esi
push eax
call fcn.004b7b5f
push esi
mov esi, dword [esp + 0x1078]
push esi
mov word [esp + 0x1074], 0
call fcn.0047cc90
mov edi, eax
add esp, 0x14
test edi, edi
mov dword [esp + 0x4c], edi
je 0x47bb58
mov ebx, dword [esp + 0x1070]
push ebx
push 0
push edi
push esi
call fcn.0047d6b0
add esp, 0x10
mov dword [esp + 0x38], eax
test eax, eax
jne 0x47b963
push edi
call fcn.0047cce0
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1054
ret
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
lea edx, [esp + 0x5c]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x860]
push ecx
push str._s_VIDEO_TS_VIDEO_TS.IFO
push 0x400
push edx
stosw word es:[edi], ax
call fcn.004b8939
push str.VIDEO_TS.IFO
push ebx
push esi
call fcn.0047cd20
mov ecx, dword [esi + 0x11f8]
lea eax, [esp + 0x78]
push eax
push ecx
push esi
call fcn.004130b0
add esp, 0x28
mov dword [esp + 0x14], eax
test eax, eax
je 0x47bb58
test byte [eax + 0xa1], 2
jne 0x47bb58
mov eax, dword [esp + 0x38]
xor edi, edi
xor ebp, ebp
mov edx, dword [eax]
mov eax, dword [eax + 4]
mov di, word [eax]
mov bp, word [edx + 8]
mov dword [esp + 0x54], ebp
lea ebx, [edi*4]
push ebx
call fcn.00487e70
push ebx
mov dword [esp + 0x20], eax
call fcn.00487e70
lea ebx, [ebp*4]
mov dword [esp + 0x24], eax
push ebx
call fcn.00487e70
push ebx
mov dword [esp + 0x3c], eax
call fcn.00487e70
push 8
mov dword [esp + 0x34], eax
call fcn.00487e70
lea ecx, [ebp + ebp*4 + 5]
mov ebx, eax
mov dword [esp + 0x24], ebx
lea edx, [ebp + ecx*2 + 1]
shl edx, 3
push edx
call fcn.00487e70
add esp, 0x18
cmp edi, 1
mov dword [ebx + 4], eax
mov dword [ebx], ebp
jl 0x47ba72
xor eax, eax
test edi, edi
jle 0x47ba72
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
sub edx, ecx
mov ebp, dword [esp + 0x38]
inc eax
add ecx, 4
cmp eax, edi
mov ebp, dword [ebp + 4]
mov ebp, dword [ebp + 4]
mov ebp, dword [ebp + eax*4 - 4]
mov dword [edx + ecx - 4], ebp
mov dword [ecx - 4], eax
jl 0x47ba51
mov ebp, dword [esp + 0x54]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
push edi
push eax
push ecx
call fcn.0047b7c0
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x28]
push edi
push edx
mov edx, dword [esp + 0x2c]
push eax
push ecx
push edx
call fcn.0047b820
mov edi, dword [esp + 0x1090]
mov eax, dword [esp + 0x6c]
push edi
push 2
push 0
push eax
push esi
call fcn.0047cb10
mov ecx, dword [esp + 0x80]
push edi
push 0
push 0
push ecx
push esi
mov dword [esp + 0x7c], eax
call fcn.0047cb10
mov edi, eax
mov eax, dword [esp + 0x7c]
add esp, 0x48
mov dword [esp + 0x28], edi
test eax, eax
jne 0x47bb09
push edi
call fcn.0047cd10
mov edx, dword [esp + 0x3c]
add esp, 4
shl eax, 1
mov ecx, dword [edx]
mov edx, dword [ecx]
inc edx
cmp edx, eax
jae 0x47bb65
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push ecx
push edx
push eax
jmp 0x47bb4a
mov ecx, dword [esp + 0x38]
push edi
mov edx, dword [ecx]
mov dword [esp + 0x40], edx
call fcn.0047cd10
mov edi, eax
mov eax, dword [esp + 0x38]
push eax
call fcn.0047cd10
mov ecx, dword [esp + 0x44]
lea edx, [eax + edi*2]
add esp, 8
mov eax, dword [ecx]
inc eax
cmp eax, edx
jae 0x47bba5
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
push eax
push ecx
call fcn.0047b890
push ebx
call fcn.0047b8c0
add esp, 0x14
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1054
ret
mov edx, dword [esp + 0x38]
push edi
mov eax, dword [edx]
mov dword [esp + 0x40], eax
call fcn.0047cd10
mov ecx, dword [esp + 0x40]
add esp, 4
shl eax, 1
mov edx, dword [ecx]
inc edx
cmp edx, eax
jbe 0x47bb9b
push edi
call fcn.0047cd10
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edx, dword [ecx]
mov edi, dword [edx]
sub edi, eax
inc edi
jmp 0x47bbb2
mov eax, dword [esp + 0x3c]
mov edi, dword [eax + 4]
inc edi
jmp 0x47bbb2
mov eax, dword [ecx + 4]
mov edi, dword [ecx + 0xc]
inc eax
cmp eax, edi
jb 0x47bbb2
mov edi, eax
mov edx, dword [ebx + 4]
mov ecx, edi
shl ecx, 0xb
mov dword [edx + 0xc], ecx
mov ecx, dword [esp + 0x14]
mov eax, dword [ebx + 4]
mov dword [esp + 0x24], edi
mov edx, dword [ecx + 0x18]
mov dword [eax], edx
mov eax, dword [esp + 0x28]
push eax
call fcn.0047cd10
mov ecx, dword [ebx + 4]
sub edi, eax
xor eax, eax
add esp, 4
mov dword [ecx + 0x1c], edi
mov edi, dword [esp + 0x34]
cmp edi, eax
je 0x47bcfd
mov edx, dword [esp + 0x28]
push edx
call fcn.0047cd10
mov edx, eax
push edi
mov dword [esp + 0x58], edx
call fcn.0047cd10
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x58]
mov ecx, edi
add esp, 8
add ecx, edx
lea eax, [eax + ecx - 1]
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx]
cmp eax, dword [edx]
jae 0x47bc40
mov eax, dword [esp + 0x28]
push eax
call fcn.0047cd10
mov edx, dword [esp + 0x3c]
mov ecx, eax
add esp, 4
mov eax, dword [edx]
mov eax, dword [eax]
sub eax, edi
sub eax, ecx
jmp 0x47bc5b
mov ecx, dword [esp + 0x28]
push ecx
call fcn.0047cd10
mov edx, eax
mov eax, dword [esp + 0x3c]
add esp, 4
mov ecx, dword [eax]
mov eax, dword [ecx]
sub eax, edi
sub eax, edx
inc eax
mov ecx, 0x200
mov dword [esp + 0x14], eax
xor eax, eax
lea edi, [esp + 0x5c]
lea edx, [esp + 0x860]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push edx
push str._s_VIDEO_TS_VIDEO_TS.VOB
lea eax, [esp + 0x64]
push 0x400
push eax
call fcn.004b8939
mov ecx, dword [esp + 0x1080]
push str.VIDEO_TS.VOB
push ecx
push esi
call fcn.0047cd20
mov eax, dword [esi + 0x11f8]
lea edx, [esp + 0x78]
push edx
push eax
push esi
call fcn.004130b0
add esp, 0x28
test eax, eax
je 0x47baf3
test byte [eax + 0xa1], 2
jne 0x47baf3
mov ecx, dword [ebx + 4]
mov edi, dword [esp + 0x34]
mov edx, dword [eax + 0x18]
push edi
mov dword [ecx + 4], edx
call fcn.0047cd10
mov ecx, dword [esp + 0x18]
push edi
mov edx, ecx
sub edx, eax
mov eax, dword [ebx + 4]
shl ecx, 0xb
mov dword [eax + 0x20], edx
mov edx, dword [ebx + 4]
mov dword [edx + 0x10], ecx
call fcn.0047c7c0
add esp, 8
jmp 0x47bd13
mov ecx, dword [ebx + 4]
mov dword [esp + 0x14], eax
mov dword [ecx + 0x10], eax
mov edx, dword [ebx + 4]
mov dword [edx + 4], eax
mov ecx, dword [ebx + 4]
mov dword [ecx + 0x20], eax
cmp ebp, 1
jl 0x47bd2c
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x24]
mov ebp, dword [edx]
sub ebp, ecx
sub ebp, eax
jmp 0x47bd41
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x14]
mov ecx, dword [eax]
mov ebp, dword [ecx]
mov ecx, dword [esp + 0x24]
sub ebp, edx
sub ebp, ecx
inc ebp
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
lea edx, [esp + 0x860]
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push edx
push str._s_VIDEO_TS_VIDEO_TS.IFO
lea eax, [esp + 0x64]
push 0x400
push eax
call fcn.004b8939
mov ecx, dword [esp + 0x1080]
push str.VIDEO_TS.IFO
push ecx
push esi
call fcn.0047cd20
mov eax, dword [esi + 0x11f8]
lea edx, [esp + 0x78]
push edx
push eax
push esi
call fcn.004130b0
add esp, 0x28
test eax, eax
je 0x47bb36
test byte [eax + 0xa1], 2
jne 0x47bb36
mov ecx, dword [ebx + 4]
mov edx, dword [eax + 0x18]
mov edi, dword [esp + 0x28]
mov eax, ebp
mov dword [ecx + 8], edx
mov ecx, dword [ebx + 4]
shl eax, 0xb
push edi
mov dword [ecx + 0x18], eax
call fcn.0047cd10
mov edx, dword [ebx + 4]
sub ebp, eax
push edi
mov dword [edx + 0x28], ebp
mov eax, dword [ebx + 4]
xor ebp, ebp
mov dword [eax + 0x2c], ebp
mov ecx, dword [ebx + 4]
mov dword [ecx + 0x30], ebp
mov edx, dword [ebx + 4]
mov dword [edx + 0x24], ebp
call fcn.0047c7c0
mov eax, dword [esp + 0x5c]
add esp, 8
cmp eax, 1
jl 0x47c576
cmp eax, ebp
jle 0x47c576
mov eax, dword [esp + 0x20]
mov dword [esp + 0x28], ebp
mov ebx, 1
mov dword [esp + 0x50], eax
mov dword [esp + 0x58], 0x22
mov ebp, dword [esp + 0x1070]
mov ecx, dword [esp + 0x4c]
push ebp
push ebx
push ecx
push esi
call fcn.0047d6b0
add esp, 0x10
mov dword [esp + 0x30], eax
test eax, eax
je 0x47c5b3
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
push ebx
rep stosd dword es:[edi], eax
push str.VTS__02i_0.IFO
lea edx, [esp + 0x64]
push 0x400
push edx
stosw word es:[edi], ax
call fcn.004b8939
lea eax, [esp + 0x6c]
push eax
push ebp
push esi
call fcn.0047cd20
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x78]
push ebx
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x880]
lea edx, [esp + 0x7c]
push ecx
push str._s_VIDEO_TS_VTS__02i_0.IFO
push 0x400
push edx
stosw word es:[edi], ax
call fcn.004b8939
mov ecx, dword [esi + 0x11f8]
lea eax, [esp + 0x8c]
push eax
push ecx
push esi
call fcn.004130b0
add esp, 0x3c
mov dword [esp + 0x14], eax
test eax, eax
je 0x47c5d6
mov edx, eax
test byte [edx + 0xa1], 2
jne 0x47c5d6
mov edi, dword [esp + 0x4c]
push ebp
push 2
push ebx
push edi
push esi
call fcn.0047cb10
push ebp
push 3
push ebx
push edi
push esi
mov dword [esp + 0x68], eax
call fcn.0047cb10
push ebp
push 0
push ebx
push edi
push esi
mov dword [esp + 0x80], eax
call fcn.0047cb10
mov ebp, eax
mov eax, dword [esp + 0x6c]
push ebp
mov dword [esp + 0x74], ebp
mov edi, dword [eax + 8]
call fcn.0047cd10
mov ecx, dword [edi]
add esp, 0x40
shl eax, 1
inc ecx
cmp ecx, eax
jb 0x47c5d6
mov eax, dword [esp + 0x44]
test eax, eax
mov eax, dword [esp + 0x40]
je 0x47bfe5
test eax, eax
je 0x47bf6d
mov edx, dword [esp + 0x30]
push ebp
mov edi, dword [edx + 8]
call fcn.0047cd10
mov ebp, eax
mov eax, dword [esp + 0x48]
push eax
call fcn.0047cd10
mov ecx, dword [esp + 0x48]
lea ebp, [eax + ebp*2]
push ecx
call fcn.0047cd10
mov edx, dword [edi]
add esp, 0xc
add ebp, eax
inc edx
cmp edx, ebp
jb 0x47c5f9
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x47bfe9
mov eax, dword [esp + 0x30]
push ebp
mov edi, dword [eax + 8]
call fcn.0047cd10
mov ecx, dword [esp + 0x48]
mov ebp, eax
push ecx
call fcn.0047cd10
lea edx, [eax + ebp*2]
mov eax, dword [edi]
add esp, 8
inc eax
cmp eax, edx
jb 0x47c5b3
mov ebp, dword [esp + 0x34]
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x47c044
mov eax, dword [esp + 0x40]
test eax, eax
jne 0x47c021
push ebp
call fcn.0047cd10
mov edx, dword [esp + 0x34]
add esp, 4
shl eax, 1
mov ecx, dword [edx + 8]
push ebp
mov edx, dword [ecx]
inc edx
cmp edx, eax
call fcn.0047cd10
mov ecx, dword [esp + 0x34]
add esp, 4
mov edx, dword [ecx + 8]
mov edi, dword [edx]
sub edi, eax
inc edi
jmp 0x47c051
test eax, eax
je 0x47bfa3
mov eax, dword [esp + 0x44]
test eax, eax
jne 0x47c044
mov ecx, dword [esp + 0x30]
push ebp
mov edi, dword [ecx + 8]
call fcn.0047cd10
mov edx, dword [esp + 0x44]
mov ebp, eax
push edx
call fcn.0047cd10
mov ecx, dword [edi]
add esp, 8
lea eax, [eax + ebp*2]
inc ecx
cmp ecx, eax
jb 0x47c5d6
mov ebp, dword [esp + 0x34]
jmp 0x47bfaf
mov eax, dword [edi + 4]
mov ecx, dword [edi + 0xc]
inc eax
cmp eax, ecx
jae 0x47c038
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + 8]
mov edi, dword [edx + 0xc]
jmp 0x47c051
mov eax, dword [esp + 0x38]
mov ecx, dword [eax + 8]
mov edi, dword [ecx + 0xc]
jmp 0x47c051
mov eax, dword [edi + 4]
mov edi, dword [edi + 8]
inc eax
cmp eax, edi
jb 0x47c051
mov edi, eax
mov eax, dword [esp + 0x10]
mov edx, edi
shl edx, 0xb
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x28]
push ebp
mov dword [esp + 0x28], edi
mov dword [ecx + eax + 0x64], edx
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 4]
mov edx, dword [esp + 0x18]
mov edx, dword [edx + 0x18]
mov dword [ecx + eax + 0x58], edx
call fcn.0047cd10
mov edx, dword [esp + 0x2c]
sub edi, eax
mov eax, dword [esp + 0x14]
add esp, 4
mov ecx, dword [eax + 4]
mov eax, dword [esp + 0x40]
test eax, eax
mov dword [ecx + edx + 0x74], edi
je 0x47c226
mov eax, dword [esp + 0x30]
mov ecx, dword [eax + 8]
mov edx, dword [ecx + 8]
test edx, edx
jne 0x47c0cf
mov edx, dword [esp + 0x40]
xor ebp, ebp
push edx
mov dword [esp + 0x18], ebp
call fcn.0047cd10
add esp, 4
test eax, eax
jne 0x47bb58
jmp 0x47c15a
mov ecx, dword [esp + 0x44]
mov edi, dword [eax + 8]
test ecx, ecx
je 0x47c0f9
mov eax, dword [edi + 8]
mov ebp, dword [edi + 0xc]
mov dword [esp + 0x48], eax
sub ebp, eax
mov eax, dword [esp + 0x40]
push eax
call fcn.0047cd10
add esp, 4
cmp ebp, eax
jbe 0x47c14d
jmp 0x47c156
mov edx, dword [esp + 0x40]
mov ecx, dword [edi + 8]
push edx
mov dword [esp + 0x4c], ecx
call fcn.0047cd10
mov edx, eax
push ebp
mov dword [esp + 0x44], edx
call fcn.0047cd10
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x44]
add ecx, edx
add esp, 8
lea eax, [eax + ecx - 1]
mov ecx, dword [edi]
cmp eax, ecx
jae 0x47c14d
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
push edx
mov edi, dword [ecx + 8]
call fcn.0047cd10
mov ebp, dword [edi]
mov edx, dword [edi + 8]
sub ebp, edx
add esp, 4
sub ebp, eax
inc ebp
jmp 0x47c156
mov ebp, dword [edi + 0xc]
mov eax, dword [esp + 0x48]
sub ebp, eax
mov dword [esp + 0x14], ebp
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
push ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
push str.VTS__02i_0.VOB
lea eax, [esp + 0x64]
push 0x400
push eax
call fcn.004b8939
mov edx, dword [esp + 0x1080]
lea ecx, [esp + 0x6c]
push ecx
push edx
push esi
call fcn.0047cd20
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x78]
push ebx
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x880]
lea ecx, [esp + 0x7c]
push eax
push str._s_VIDEO_TS_VTS__02i_0.VOB
push 0x400
push ecx
call fcn.004b8939
mov eax, dword [esi + 0x11f8]
lea edx, [esp + 0x8c]
push edx
push eax
push esi
call fcn.004130b0
add esp, 0x3c
test eax, eax
je 0x47c5f9
test byte [eax + 0xa1], 2
jne 0x47c5f9
mov ecx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov eax, dword [eax + 0x18]
mov edx, dword [ecx + 4]
mov dword [edx + edi + 0x5c], eax
mov eax, dword [ecx + 4]
mov ecx, dword [esp + 0x40]
mov edx, ebp
shl edx, 0xb
push ecx
mov dword [eax + edi + 0x68], edx
call fcn.0047cd10
mov edx, ebp
add esp, 4
sub edx, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
mov dword [ecx + edi + 0x78], edx
jmp 0x47c24f
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
xor ebp, ebp
mov edi, eax
mov edx, dword [ecx + 4]
mov dword [esp + 0x14], ebp
mov dword [edx + eax + 0x68], ebp
mov edx, dword [ecx + 4]
mov dword [edx + eax + 0x5c], ebp
mov ecx, dword [ecx + 4]
mov dword [ecx + eax + 0x78], ebp
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x44]
xor ecx, ecx
cmp edx, ecx
je 0x47c3c6
mov edx, dword [esp + 0x34]
push edx
call fcn.0047cd10
mov ecx, dword [esp + 0x34]
mov edi, dword [esp + 0x28]
add eax, ebp
add esp, 4
mov edx, dword [ecx + 8]
lea eax, [eax + edi - 1]
cmp eax, dword [edx]
jae 0x47c29f
mov eax, dword [esp + 0x34]
push eax
call fcn.0047cd10
mov edx, dword [esp + 0x34]
mov ecx, eax
add esp, 4
mov eax, dword [edx + 8]
mov eax, dword [eax]
sub eax, ebp
sub eax, edi
sub eax, ecx
jmp 0x47c2bd
mov ecx, dword [esp + 0x34]
push ecx
call fcn.0047cd10
mov edx, eax
mov eax, dword [esp + 0x34]
add esp, 4
mov ecx, dword [eax + 8]
mov eax, dword [ecx]
sub eax, ebp
sub eax, edi
sub eax, edx
inc eax
mov dword [esp + 0x48], 0
mov dword [esp + 0x3c], eax
mov edx, dword [esp + 0x48]
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
rep stosd dword es:[edi], eax
lea ebp, [edx + 1]
push ebp
push ebx
stosw word es:[edi], ax
push str.VTS__02i__i.VOB
lea eax, [esp + 0x68]
push 0x400
push eax
call fcn.004b8939
mov edx, dword [esp + 0x1084]
lea ecx, [esp + 0x70]
push ecx
push edx
push esi
call fcn.0047cd20
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x7c]
push ebp
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea eax, [esp + 0x884]
push ebx
push eax
push 0x5294f8
lea ecx, [esp + 0x8c]
push 0x400
push ecx
call fcn.004b8939
mov eax, dword [esi + 0x11f8]
lea edx, [esp + 0x94]
push edx
push eax
push esi
call fcn.004130b0
add esp, 0x44
test eax, eax
je 0x47c384
test byte [eax + 0xa1], 2
jne 0x47c384
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x48]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
add ecx, edx
cmp ebp, 9
mov edx, dword [edi + 4]
mov dword [esp + 0x48], ebp
mov dword [edx + ecx*4], eax
jl 0x47c2ca
jmp 0x47c38c
mov edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x48]
mov ecx, dword [edi + 4]
mov eax, dword [esp + 0x28]
mov dword [ecx + eax + 0x84], ebp
mov ebp, dword [esp + 0x3c]
mov ecx, dword [edi + 4]
mov edx, ebp
shl edx, 0xb
mov dword [ecx + eax + 0x6c], edx
mov edx, dword [esp + 0x44]
push edx
call fcn.0047cd10
mov ecx, dword [esp + 0x2c]
add esp, 4
sub ebp, eax
mov eax, dword [edi + 4]
mov dword [eax + ecx + 0x7c], ebp
jmp 0x47c3ec
mov edx, dword [eax + 4]
mov dword [esp + 0x3c], ecx
mov dword [edx + edi + 0x84], ecx
mov edx, dword [eax + 4]
mov dword [edx + edi + 0x88], ecx
mov edx, dword [eax + 4]
mov dword [edx + edi + 0x6c], ecx
mov eax, dword [eax + 4]
mov dword [eax + edi + 0x7c], ecx
mov edx, dword [esp + 0x54]
lea ecx, [ebx - 1]
dec edx
cmp edx, ecx
jle 0x47c417
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x3c]
mov ecx, dword [esp + 0x14]
mov ebp, dword [eax + 4]
mov edi, dword [eax]
mov eax, dword [esp + 0x24]
sub ebp, edi
sub ebp, edx
sub ebp, ecx
sub ebp, eax
jmp 0x47c433
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x14]
mov ecx, dword [eax + 8]
mov ebp, dword [ecx]
mov ecx, dword [esp + 0x24]
sub ebp, edi
sub ebp, edx
sub ebp, ecx
inc ebp
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x5c]
push ebx
rep stosd dword es:[edi], eax
push str.VTS__02i_0.IFO
lea edx, [esp + 0x64]
push 0x400
push edx
stosw word es:[edi], ax
call fcn.004b8939
mov ecx, dword [esp + 0x1080]
lea eax, [esp + 0x6c]
push eax
push ecx
push esi
call fcn.0047cd20
mov ecx, 0x200
xor eax, eax
lea edi, [esp + 0x78]
lea edx, [esp + 0x87c]
rep stosd dword es:[edi], eax
push ebx
push edx
stosw word es:[edi], ax
push str._s_VIDEO_TS_VTS__02i_0.IFO
lea eax, [esp + 0x84]
push 0x400
push eax
call fcn.004b8939
mov edx, dword [esi + 0x11f8]
lea ecx, [esp + 0x8c]
push ecx
push edx
push esi
call fcn.004130b0
add esp, 0x3c
test eax, eax
je 0x47c5b3
test byte [eax + 0xa1], 2
jne 0x47c5b3
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov ecx, ebp
mov edx, dword [edx + 4]
shl ecx, 0xb
mov dword [edx + edi + 0x70], ecx
mov ecx, dword [esp + 0x10]
mov eax, dword [eax + 0x18]
mov edx, dword [ecx + 4]
mov ecx, dword [esp + 0x34]
push ecx
mov dword [edx + edi + 0x60], eax
call fcn.0047cd10
mov edx, dword [esp + 0x14]
sub ebp, eax
add esp, 4
mov eax, dword [edx + 4]
mov dword [eax + edi + 0x80], ebp
mov eax, dword [esp + 0x40]
test eax, eax
je 0x47c516
push eax
call fcn.0047c7c0
add esp, 4
mov eax, dword [esp + 0x44]
test eax, eax
je 0x47c527
push eax
call fcn.0047c7c0
add esp, 4
mov eax, dword [esp + 0x34]
test eax, eax
je 0x47c538
push eax
call fcn.0047c7c0
add esp, 4
mov ecx, dword [esp + 0x30]
push ecx
call fcn.0047d940
mov ebp, dword [esp + 0x5c]
mov edx, dword [esp + 0x54]
mov eax, dword [esp + 0x58]
add esp, 4
add ebp, 0x16
add edx, 4
inc ebx
mov dword [esp + 0x50], edx
add edi, 0x58
mov dword [esp + 0x58], ebp
lea edx, [ebx - 1]
mov dword [esp + 0x28], edi
cmp edx, eax
jl 0x47be1a
mov ebx, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
push eax
push ecx
call fcn.0047b890
mov edx, dword [esp + 0x48]
push edx
call fcn.0047d940
mov eax, dword [esp + 0x60]
push eax
call fcn.0047cce0
add esp, 0x18
mov eax, ebx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1054
ret
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
push eax
mov eax, dword [esp + 0x1c]
push ecx
push edx
push eax
call fcn.0047b890
mov ecx, dword [esp + 0x20]
push ecx
jmp 0x47bb50
mov edx, dword [esp + 0x20]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x1c]
push edx
mov edx, dword [esp + 0x1c]
push eax
push ecx
push edx
call fcn.0047b890
mov eax, dword [esp + 0x20]
push eax
jmp 0x47bb50
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x1c]
push ecx
mov ecx, dword [esp + 0x1c]
push edx
push eax
push ecx
call fcn.0047b890
mov edx, dword [esp + 0x20]
push edx
jmp 0x47bb50