1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo
DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo:
/* 80363618 0035F278 80 84 00 3C */ lwz r4, 0x3c(r4)
/* 8036361C 0035F27C 38 00 00 00 */ li r0, 0
/* 80363620 0035F280 98 04 00 6C */ stb r0, 0x6c(r4)
/* 80363624 0035F284 90 64 00 08 */ stw r3, 8(r4)
/* 80363628 0035F288 81 84 00 0C */ lwz r12, 0xc(r4)
/* 8036362C 0035F28C 2C 0C 00 00 */ cmpwi r12, 0
/* 80363630 0035F290 4D 82 00 20 */ beqlr
/* 80363634 0035F294 80 A4 00 10 */ lwz r5, 0x10(r4)
/* 80363638 0035F298 7D 89 03 A6 */ mtctr r12
/* 8036363C 0035F29C 4E 80 04 20 */ bctr
/* 80363640 0035F2A0 4E 80 00 20 */ blr
.global DvdCBAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP15DVDCommandBlock
DvdCBAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP15DVDCommandBlock:
/* 80363644 0035F2A4 80 84 00 3C */ lwz r4, 0x3c(r4)
/* 80363648 0035F2A8 38 00 00 00 */ li r0, 0
/* 8036364C 0035F2AC 98 04 00 24 */ stb r0, 0x24(r4)
/* 80363650 0035F2B0 81 84 00 1C */ lwz r12, 0x1c(r4)
/* 80363654 0035F2B4 2C 0C 00 00 */ cmpwi r12, 0
/* 80363658 0035F2B8 4D 82 00 20 */ beqlr
/* 8036365C 0035F2BC 80 A4 00 20 */ lwz r5, 0x20(r4)
/* 80363660 0035F2C0 7D 89 03 A6 */ mtctr r12
/* 80363664 0035F2C4 4E 80 04 20 */ bctr
/* 80363668 0035F2C8 4E 80 00 20 */ blr
.global __ct__Q34nw4r2ut13DvdFileStreamFl
__ct__Q34nw4r2ut13DvdFileStreamFl:
/* 8036366C 0035F2CC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363670 0035F2D0 7C 08 02 A6 */ mflr r0
/* 80363674 0035F2D4 3C A0 80 45 */ lis r5, lbl_8044C6F0@ha
/* 80363678 0035F2D8 38 C0 00 00 */ li r6, 0
/* 8036367C 0035F2DC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363680 0035F2E0 38 A5 C6 F0 */ addi r5, r5, lbl_8044C6F0@l
/* 80363684 0035F2E4 38 00 00 02 */ li r0, 2
/* 80363688 0035F2E8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036368C 0035F2EC 7C 7F 1B 78 */ mr r31, r3
/* 80363690 0035F2F0 98 C3 00 6C */ stb r6, 0x6c(r3)
/* 80363694 0035F2F4 90 A3 00 00 */ stw r5, 0(r3)
/* 80363698 0035F2F8 90 C3 00 14 */ stw r6, 0x14(r3)
/* 8036369C 0035F2FC 90 C3 00 18 */ stw r6, 0x18(r3)
/* 803636A0 0035F300 98 C3 00 6D */ stb r6, 0x6d(r3)
/* 803636A4 0035F304 98 C3 00 6E */ stb r6, 0x6e(r3)
/* 803636A8 0035F308 98 C3 00 04 */ stb r6, 4(r3)
/* 803636AC 0035F30C 90 03 00 68 */ stw r0, 0x68(r3)
/* 803636B0 0035F310 90 C3 00 0C */ stw r6, 0xc(r3)
/* 803636B4 0035F314 90 C3 00 10 */ stw r6, 0x10(r3)
/* 803636B8 0035F318 90 C3 00 08 */ stw r6, 8(r3)
/* 803636BC 0035F31C 90 C3 00 1C */ stw r6, 0x1c(r3)
/* 803636C0 0035F320 98 C3 00 24 */ stb r6, 0x24(r3)
/* 803636C4 0035F324 90 C3 00 20 */ stw r6, 0x20(r3)
/* 803636C8 0035F328 90 63 00 64 */ stw r3, 0x64(r3)
/* 803636CC 0035F32C 48 00 00 08 */ b lbl_803636D4
/* 803636D0 0035F330 4E 80 04 21 */ bctrl
lbl_803636D4:
/* 803636D4 0035F334 7C 83 23 78 */ mr r3, r4
/* 803636D8 0035F338 38 9F 00 28 */ addi r4, r31, 0x28
/* 803636DC 0035F33C 4B F2 42 E9 */ bl DVDFastOpen
/* 803636E0 0035F340 2C 03 00 00 */ cmpwi r3, 0
/* 803636E4 0035F344 41 82 00 2C */ beq lbl_80363710
/* 803636E8 0035F348 80 1F 00 5C */ lwz r0, 0x5c(r31)
/* 803636EC 0035F34C 38 7F 00 14 */ addi r3, r31, 0x14
/* 803636F0 0035F350 38 80 00 00 */ li r4, 0
/* 803636F4 0035F354 38 A0 00 00 */ li r5, 0
/* 803636F8 0035F358 90 1F 00 14 */ stw r0, 0x14(r31)
/* 803636FC 0035F35C 4B FF FE 79 */ bl Seek__Q44nw4r2ut10FileStream12FilePositionFlUl
/* 80363700 0035F360 38 00 00 01 */ li r0, 1
/* 80363704 0035F364 98 1F 00 6D */ stb r0, 0x6d(r31)
/* 80363708 0035F368 98 1F 00 6E */ stb r0, 0x6e(r31)
/* 8036370C 0035F36C 98 1F 00 04 */ stb r0, 4(r31)
lbl_80363710:
/* 80363710 0035F370 7F E3 FB 78 */ mr r3, r31
/* 80363714 0035F374 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80363718 0035F378 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036371C 0035F37C 7C 08 03 A6 */ mtlr r0
/* 80363720 0035F380 38 21 00 10 */ addi r1, r1, 0x10
/* 80363724 0035F384 4E 80 00 20 */ blr
.global __ct__Q34nw4r2ut13DvdFileStreamFPC11DVDFileInfob
__ct__Q34nw4r2ut13DvdFileStreamFPC11DVDFileInfob:
/* 80363728 0035F388 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8036372C 0035F38C 7C 08 02 A6 */ mflr r0
/* 80363730 0035F390 90 01 00 34 */ stw r0, 0x34(r1)
/* 80363734 0035F394 39 61 00 30 */ addi r11, r1, 0x30
/* 80363738 0035F398 4B E6 39 DD */ bl _savegpr_22
/* 8036373C 0035F39C 3C C0 80 45 */ lis r6, lbl_8044C6F0@ha
/* 80363740 0035F3A0 38 E0 00 00 */ li r7, 0
/* 80363744 0035F3A4 38 C6 C6 F0 */ addi r6, r6, lbl_8044C6F0@l
/* 80363748 0035F3A8 38 00 00 02 */ li r0, 2
/* 8036374C 0035F3AC 98 E3 00 6C */ stb r7, 0x6c(r3)
/* 80363750 0035F3B0 7C 7E 1B 78 */ mr r30, r3
/* 80363754 0035F3B4 7C 96 23 78 */ mr r22, r4
/* 80363758 0035F3B8 7C BF 2B 78 */ mr r31, r5
/* 8036375C 0035F3BC 90 C3 00 00 */ stw r6, 0(r3)
/* 80363760 0035F3C0 90 E3 00 14 */ stw r7, 0x14(r3)
/* 80363764 0035F3C4 90 E3 00 18 */ stw r7, 0x18(r3)
/* 80363768 0035F3C8 98 E3 00 6D */ stb r7, 0x6d(r3)
/* 8036376C 0035F3CC 98 E3 00 6E */ stb r7, 0x6e(r3)
/* 80363770 0035F3D0 98 E3 00 04 */ stb r7, 4(r3)
/* 80363774 0035F3D4 90 03 00 68 */ stw r0, 0x68(r3)
/* 80363778 0035F3D8 90 E3 00 0C */ stw r7, 0xc(r3)
/* 8036377C 0035F3DC 90 E3 00 10 */ stw r7, 0x10(r3)
/* 80363780 0035F3E0 90 E3 00 08 */ stw r7, 8(r3)
/* 80363784 0035F3E4 90 E3 00 1C */ stw r7, 0x1c(r3)
/* 80363788 0035F3E8 98 E3 00 24 */ stb r7, 0x24(r3)
/* 8036378C 0035F3EC 90 E3 00 20 */ stw r7, 0x20(r3)
/* 80363790 0035F3F0 90 63 00 64 */ stw r3, 0x64(r3)
/* 80363794 0035F3F4 48 00 00 08 */ b lbl_8036379C
/* 80363798 0035F3F8 4E 80 04 21 */ bctrl
lbl_8036379C:
/* 8036379C 0035F3FC 80 D6 00 34 */ lwz r6, 0x34(r22)
/* 803637A0 0035F400 38 7E 00 14 */ addi r3, r30, 0x14
/* 803637A4 0035F404 82 F6 00 00 */ lwz r23, 0(r22)
/* 803637A8 0035F408 38 80 00 00 */ li r4, 0
/* 803637AC 0035F40C 83 16 00 04 */ lwz r24, 4(r22)
/* 803637B0 0035F410 38 A0 00 00 */ li r5, 0
/* 803637B4 0035F414 83 36 00 08 */ lwz r25, 8(r22)
/* 803637B8 0035F418 83 56 00 0C */ lwz r26, 0xc(r22)
/* 803637BC 0035F41C 83 76 00 10 */ lwz r27, 0x10(r22)
/* 803637C0 0035F420 83 96 00 14 */ lwz r28, 0x14(r22)
/* 803637C4 0035F424 83 B6 00 18 */ lwz r29, 0x18(r22)
/* 803637C8 0035F428 81 96 00 1C */ lwz r12, 0x1c(r22)
/* 803637CC 0035F42C 81 76 00 20 */ lwz r11, 0x20(r22)
/* 803637D0 0035F430 81 56 00 24 */ lwz r10, 0x24(r22)
/* 803637D4 0035F434 81 36 00 28 */ lwz r9, 0x28(r22)
/* 803637D8 0035F438 81 16 00 2C */ lwz r8, 0x2c(r22)
/* 803637DC 0035F43C 80 F6 00 30 */ lwz r7, 0x30(r22)
/* 803637E0 0035F440 80 16 00 38 */ lwz r0, 0x38(r22)
/* 803637E4 0035F444 92 FE 00 28 */ stw r23, 0x28(r30)
/* 803637E8 0035F448 93 1E 00 2C */ stw r24, 0x2c(r30)
/* 803637EC 0035F44C 93 3E 00 30 */ stw r25, 0x30(r30)
/* 803637F0 0035F450 93 5E 00 34 */ stw r26, 0x34(r30)
/* 803637F4 0035F454 93 7E 00 38 */ stw r27, 0x38(r30)
/* 803637F8 0035F458 93 9E 00 3C */ stw r28, 0x3c(r30)
/* 803637FC 0035F45C 93 BE 00 40 */ stw r29, 0x40(r30)
/* 80363800 0035F460 91 9E 00 44 */ stw r12, 0x44(r30)
/* 80363804 0035F464 91 7E 00 48 */ stw r11, 0x48(r30)
/* 80363808 0035F468 91 5E 00 4C */ stw r10, 0x4c(r30)
/* 8036380C 0035F46C 91 3E 00 50 */ stw r9, 0x50(r30)
/* 80363810 0035F470 91 1E 00 54 */ stw r8, 0x54(r30)
/* 80363814 0035F474 90 FE 00 58 */ stw r7, 0x58(r30)
/* 80363818 0035F478 90 DE 00 5C */ stw r6, 0x5c(r30)
/* 8036381C 0035F47C 90 1E 00 60 */ stw r0, 0x60(r30)
/* 80363820 0035F480 90 DE 00 14 */ stw r6, 0x14(r30)
/* 80363824 0035F484 4B FF FD 51 */ bl Seek__Q44nw4r2ut10FileStream12FilePositionFlUl
/* 80363828 0035F488 38 60 00 00 */ li r3, 0
/* 8036382C 0035F48C 38 00 00 01 */ li r0, 1
/* 80363830 0035F490 98 7E 00 6D */ stb r3, 0x6d(r30)
/* 80363834 0035F494 39 61 00 30 */ addi r11, r1, 0x30
/* 80363838 0035F498 7F C3 F3 78 */ mr r3, r30
/* 8036383C 0035F49C 9B FE 00 6E */ stb r31, 0x6e(r30)
/* 80363840 0035F4A0 98 1E 00 04 */ stb r0, 4(r30)
/* 80363844 0035F4A4 4B E6 39 1D */ bl _restgpr_22
/* 80363848 0035F4A8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8036384C 0035F4AC 7C 08 03 A6 */ mtlr r0
/* 80363850 0035F4B0 38 21 00 30 */ addi r1, r1, 0x30
/* 80363854 0035F4B4 4E 80 00 20 */ blr
.global __dt__Q34nw4r2ut13DvdFileStreamFv
__dt__Q34nw4r2ut13DvdFileStreamFv:
/* 80363858 0035F4B8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8036385C 0035F4BC 7C 08 02 A6 */ mflr r0
/* 80363860 0035F4C0 2C 03 00 00 */ cmpwi r3, 0
/* 80363864 0035F4C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363868 0035F4C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8036386C 0035F4CC 7C 9F 23 78 */ mr r31, r4
/* 80363870 0035F4D0 93 C1 00 08 */ stw r30, 8(r1)
/* 80363874 0035F4D4 7C 7E 1B 78 */ mr r30, r3
/* 80363878 0035F4D8 41 82 00 3C */ beq lbl_803638B4
/* 8036387C 0035F4DC 88 03 00 6D */ lbz r0, 0x6d(r3)
/* 80363880 0035F4E0 3C 80 80 45 */ lis r4, lbl_8044C6F0@ha
/* 80363884 0035F4E4 38 84 C6 F0 */ addi r4, r4, lbl_8044C6F0@l
/* 80363888 0035F4E8 2C 00 00 00 */ cmpwi r0, 0
/* 8036388C 0035F4EC 90 83 00 00 */ stw r4, 0(r3)
/* 80363890 0035F4F0 41 82 00 14 */ beq lbl_803638A4
/* 80363894 0035F4F4 81 83 00 00 */ lwz r12, 0(r3)
/* 80363898 0035F4F8 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 8036389C 0035F4FC 7D 89 03 A6 */ mtctr r12
/* 803638A0 0035F500 4E 80 04 21 */ bctrl
lbl_803638A4:
/* 803638A4 0035F504 2C 1F 00 00 */ cmpwi r31, 0
/* 803638A8 0035F508 40 81 00 0C */ ble lbl_803638B4
/* 803638AC 0035F50C 7F C3 F3 78 */ mr r3, r30
/* 803638B0 0035F510 4B E7 72 09 */ bl __dl__FPv
lbl_803638B4:
/* 803638B4 0035F514 7F C3 F3 78 */ mr r3, r30
/* 803638B8 0035F518 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 803638BC 0035F51C 83 C1 00 08 */ lwz r30, 8(r1)
/* 803638C0 0035F520 80 01 00 14 */ lwz r0, 0x14(r1)
/* 803638C4 0035F524 7C 08 03 A6 */ mtlr r0
/* 803638C8 0035F528 38 21 00 10 */ addi r1, r1, 0x10
/* 803638CC 0035F52C 4E 80 00 20 */ blr
.global Close__Q34nw4r2ut13DvdFileStreamFv
Close__Q34nw4r2ut13DvdFileStreamFv:
/* 803638D0 0035F530 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803638D4 0035F534 7C 08 02 A6 */ mflr r0
/* 803638D8 0035F538 90 01 00 14 */ stw r0, 0x14(r1)
/* 803638DC 0035F53C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803638E0 0035F540 7C 7F 1B 78 */ mr r31, r3
/* 803638E4 0035F544 88 03 00 6E */ lbz r0, 0x6e(r3)
/* 803638E8 0035F548 2C 00 00 00 */ cmpwi r0, 0
/* 803638EC 0035F54C 41 82 00 20 */ beq lbl_8036390C
/* 803638F0 0035F550 88 03 00 04 */ lbz r0, 4(r3)
/* 803638F4 0035F554 2C 00 00 00 */ cmpwi r0, 0
/* 803638F8 0035F558 41 82 00 14 */ beq lbl_8036390C
/* 803638FC 0035F55C 38 63 00 28 */ addi r3, r3, 0x28
/* 80363900 0035F560 4B F2 43 D9 */ bl DVDClose
/* 80363904 0035F564 38 00 00 00 */ li r0, 0
/* 80363908 0035F568 98 1F 00 04 */ stb r0, 4(r31)
lbl_8036390C:
/* 8036390C 0035F56C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363910 0035F570 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80363914 0035F574 7C 08 03 A6 */ mtlr r0
/* 80363918 0035F578 38 21 00 10 */ addi r1, r1, 0x10
/* 8036391C 0035F57C 4E 80 00 20 */ blr
.global Read__Q34nw4r2ut13DvdFileStreamFPvUl
Read__Q34nw4r2ut13DvdFileStreamFPvUl:
/* 80363920 0035F580 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363924 0035F584 7C 08 02 A6 */ mflr r0
/* 80363928 0035F588 90 01 00 14 */ stw r0, 0x14(r1)
/* 8036392C 0035F58C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80363930 0035F590 93 C1 00 08 */ stw r30, 8(r1)
/* 80363934 0035F594 7C 7E 1B 78 */ mr r30, r3
/* 80363938 0035F598 80 C3 00 18 */ lwz r6, 0x18(r3)
/* 8036393C 0035F59C 81 03 00 14 */ lwz r8, 0x14(r3)
/* 80363940 0035F5A0 7C E6 2A 14 */ add r7, r6, r5
/* 80363944 0035F5A4 38 E7 00 1F */ addi r7, r7, 0x1f
/* 80363948 0035F5A8 38 08 00 1F */ addi r0, r8, 0x1f
/* 8036394C 0035F5AC 54 E7 00 34 */ rlwinm r7, r7, 0, 0, 0x1a
/* 80363950 0035F5B0 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 80363954 0035F5B4 7C 07 00 40 */ cmplw r7, r0
/* 80363958 0035F5B8 40 81 00 10 */ ble lbl_80363968
/* 8036395C 0035F5BC 7C A6 40 50 */ subf r5, r6, r8
/* 80363960 0035F5C0 38 05 00 1F */ addi r0, r5, 0x1f
/* 80363964 0035F5C4 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
lbl_80363968:
/* 80363968 0035F5C8 80 E3 00 68 */ lwz r7, 0x68(r3)
/* 8036396C 0035F5CC 38 63 00 28 */ addi r3, r3, 0x28
/* 80363970 0035F5D0 4B F2 46 35 */ bl DVDReadPrio
/* 80363974 0035F5D4 2C 03 00 00 */ cmpwi r3, 0
/* 80363978 0035F5D8 7C 7F 1B 78 */ mr r31, r3
/* 8036397C 0035F5DC 40 81 00 10 */ ble lbl_8036398C
/* 80363980 0035F5E0 7F E4 FB 78 */ mr r4, r31
/* 80363984 0035F5E4 38 7E 00 14 */ addi r3, r30, 0x14
/* 80363988 0035F5E8 4B FF FB 89 */ bl Skip__Q44nw4r2ut10FileStream12FilePositionFl
lbl_8036398C:
/* 8036398C 0035F5EC 7F E3 FB 78 */ mr r3, r31
/* 80363990 0035F5F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80363994 0035F5F4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80363998 0035F5F8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8036399C 0035F5FC 7C 08 03 A6 */ mtlr r0
/* 803639A0 0035F600 38 21 00 10 */ addi r1, r1, 0x10
/* 803639A4 0035F604 4E 80 00 20 */ blr
.global ReadAsync__Q34nw4r2ut13DvdFileStreamFPvUlPFlPQ34nw4r2ut8IOStreamPv_vPv
ReadAsync__Q34nw4r2ut13DvdFileStreamFPvUlPFlPQ34nw4r2ut8IOStreamPv_vPv:
/* 803639A8 0035F608 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 803639AC 0035F60C 7C 08 02 A6 */ mflr r0
/* 803639B0 0035F610 90 01 00 24 */ stw r0, 0x24(r1)
/* 803639B4 0035F614 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 803639B8 0035F618 7C 7F 1B 78 */ mr r31, r3
/* 803639BC 0035F61C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 803639C0 0035F620 7C BE 2B 78 */ mr r30, r5
/* 803639C4 0035F624 93 A1 00 14 */ stw r29, 0x14(r1)
/* 803639C8 0035F628 81 03 00 18 */ lwz r8, 0x18(r3)
/* 803639CC 0035F62C 81 23 00 14 */ lwz r9, 0x14(r3)
/* 803639D0 0035F630 7C A8 2A 14 */ add r5, r8, r5
/* 803639D4 0035F634 38 A5 00 1F */ addi r5, r5, 0x1f
/* 803639D8 0035F638 38 09 00 1F */ addi r0, r9, 0x1f
/* 803639DC 0035F63C 54 A5 00 34 */ rlwinm r5, r5, 0, 0, 0x1a
/* 803639E0 0035F640 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 803639E4 0035F644 7C 05 00 40 */ cmplw r5, r0
/* 803639E8 0035F648 40 81 00 10 */ ble lbl_803639F8
/* 803639EC 0035F64C 7C A8 48 50 */ subf r5, r8, r9
/* 803639F0 0035F650 38 05 00 1F */ addi r0, r5, 0x1f
/* 803639F4 0035F654 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a
lbl_803639F8:
/* 803639F8 0035F658 81 63 00 18 */ lwz r11, 0x18(r3)
/* 803639FC 0035F65C 39 20 00 01 */ li r9, 1
/* 80363A00 0035F660 81 43 00 14 */ lwz r10, 0x14(r3)
/* 80363A04 0035F664 7F C5 F3 78 */ mr r5, r30
/* 80363A08 0035F668 7D 0B F2 14 */ add r8, r11, r30
/* 80363A0C 0035F66C 90 C3 00 0C */ stw r6, 0xc(r3)
/* 80363A10 0035F670 38 C8 00 1F */ addi r6, r8, 0x1f
/* 80363A14 0035F674 38 0A 00 1F */ addi r0, r10, 0x1f
/* 80363A18 0035F678 54 C6 00 34 */ rlwinm r6, r6, 0, 0, 0x1a
/* 80363A1C 0035F67C 90 E3 00 10 */ stw r7, 0x10(r3)
/* 80363A20 0035F680 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 80363A24 0035F684 7C 06 00 40 */ cmplw r6, r0
/* 80363A28 0035F688 99 23 00 6C */ stb r9, 0x6c(r3)
/* 80363A2C 0035F68C 40 81 00 10 */ ble lbl_80363A3C
/* 80363A30 0035F690 7C AB 50 50 */ subf r5, r11, r10
/* 80363A34 0035F694 38 05 00 1F */ addi r0, r5, 0x1f
/* 80363A38 0035F698 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
lbl_80363A3C:
/* 80363A3C 0035F69C 81 03 00 68 */ lwz r8, 0x68(r3)
/* 80363A40 0035F6A0 3C E0 80 36 */ lis r7, DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo@ha
/* 80363A44 0035F6A4 7D 66 5B 78 */ mr r6, r11
/* 80363A48 0035F6A8 38 63 00 28 */ addi r3, r3, 0x28
/* 80363A4C 0035F6AC 38 E7 36 18 */ addi r7, r7, DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo@l
/* 80363A50 0035F6B0 4B F2 44 6D */ bl DVDReadAsyncPrio
/* 80363A54 0035F6B4 7C 03 00 D0 */ neg r0, r3
/* 80363A58 0035F6B8 7C 00 1B 78 */ or r0, r0, r3
/* 80363A5C 0035F6BC 54 1D 0F FF */ rlwinm. r29, r0, 1, 0x1f, 0x1f
/* 80363A60 0035F6C0 41 82 00 14 */ beq lbl_80363A74
/* 80363A64 0035F6C4 7F C4 F3 78 */ mr r4, r30
/* 80363A68 0035F6C8 38 7F 00 14 */ addi r3, r31, 0x14
/* 80363A6C 0035F6CC 4B FF FA A5 */ bl Skip__Q44nw4r2ut10FileStream12FilePositionFl
/* 80363A70 0035F6D0 48 00 00 0C */ b lbl_80363A7C
lbl_80363A74:
/* 80363A74 0035F6D4 38 00 00 00 */ li r0, 0
/* 80363A78 0035F6D8 98 1F 00 6C */ stb r0, 0x6c(r31)
lbl_80363A7C:
/* 80363A7C 0035F6DC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80363A80 0035F6E0 7F A3 EB 78 */ mr r3, r29
/* 80363A84 0035F6E4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80363A88 0035F6E8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80363A8C 0035F6EC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80363A90 0035F6F0 7C 08 03 A6 */ mtlr r0
/* 80363A94 0035F6F4 38 21 00 20 */ addi r1, r1, 0x20
/* 80363A98 0035F6F8 4E 80 00 20 */ blr
.global Peek__Q34nw4r2ut13DvdFileStreamFPvUl
Peek__Q34nw4r2ut13DvdFileStreamFPvUl:
/* 80363A9C 0035F6FC 80 C3 00 18 */ lwz r6, 0x18(r3)
/* 80363AA0 0035F700 81 03 00 14 */ lwz r8, 0x14(r3)
/* 80363AA4 0035F704 7C E6 2A 14 */ add r7, r6, r5
/* 80363AA8 0035F708 38 E7 00 1F */ addi r7, r7, 0x1f
/* 80363AAC 0035F70C 38 08 00 1F */ addi r0, r8, 0x1f
/* 80363AB0 0035F710 54 E7 00 34 */ rlwinm r7, r7, 0, 0, 0x1a
/* 80363AB4 0035F714 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 80363AB8 0035F718 7C 07 00 40 */ cmplw r7, r0
/* 80363ABC 0035F71C 40 81 00 10 */ ble lbl_80363ACC
/* 80363AC0 0035F720 7C A6 40 50 */ subf r5, r6, r8
/* 80363AC4 0035F724 38 05 00 1F */ addi r0, r5, 0x1f
/* 80363AC8 0035F728 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
lbl_80363ACC:
/* 80363ACC 0035F72C 80 E3 00 68 */ lwz r7, 0x68(r3)
/* 80363AD0 0035F730 38 63 00 28 */ addi r3, r3, 0x28
/* 80363AD4 0035F734 4B F2 44 D0 */ b DVDReadPrio
.global PeekAsync__Q34nw4r2ut13DvdFileStreamFPvUlPFlPQ34nw4r2ut8IOStreamPv_vPv
PeekAsync__Q34nw4r2ut13DvdFileStreamFPvUlPFlPQ34nw4r2ut8IOStreamPv_vPv:
/* 80363AD8 0035F738 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363ADC 0035F73C 7C 08 02 A6 */ mflr r0
/* 80363AE0 0035F740 39 20 00 01 */ li r9, 1
/* 80363AE4 0035F744 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363AE8 0035F748 81 63 00 18 */ lwz r11, 0x18(r3)
/* 80363AEC 0035F74C 81 43 00 14 */ lwz r10, 0x14(r3)
/* 80363AF0 0035F750 7D 0B 2A 14 */ add r8, r11, r5
/* 80363AF4 0035F754 90 C3 00 0C */ stw r6, 0xc(r3)
/* 80363AF8 0035F758 38 C8 00 1F */ addi r6, r8, 0x1f
/* 80363AFC 0035F75C 38 0A 00 1F */ addi r0, r10, 0x1f
/* 80363B00 0035F760 54 C6 00 34 */ rlwinm r6, r6, 0, 0, 0x1a
/* 80363B04 0035F764 90 E3 00 10 */ stw r7, 0x10(r3)
/* 80363B08 0035F768 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 80363B0C 0035F76C 7C 06 00 40 */ cmplw r6, r0
/* 80363B10 0035F770 99 23 00 6C */ stb r9, 0x6c(r3)
/* 80363B14 0035F774 40 81 00 10 */ ble lbl_80363B24
/* 80363B18 0035F778 7C AB 50 50 */ subf r5, r11, r10
/* 80363B1C 0035F77C 38 05 00 1F */ addi r0, r5, 0x1f
/* 80363B20 0035F780 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a
lbl_80363B24:
/* 80363B24 0035F784 81 03 00 68 */ lwz r8, 0x68(r3)
/* 80363B28 0035F788 3C E0 80 36 */ lis r7, DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo@ha
/* 80363B2C 0035F78C 7D 66 5B 78 */ mr r6, r11
/* 80363B30 0035F790 38 63 00 28 */ addi r3, r3, 0x28
/* 80363B34 0035F794 38 E7 36 18 */ addi r7, r7, DvdAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP11DVDFileInfo@l
/* 80363B38 0035F798 4B F2 43 85 */ bl DVDReadAsyncPrio
/* 80363B3C 0035F79C 7C 03 00 D0 */ neg r0, r3
/* 80363B40 0035F7A0 7C 00 1B 78 */ or r0, r0, r3
/* 80363B44 0035F7A4 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80363B48 0035F7A8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363B4C 0035F7AC 7C 08 03 A6 */ mtlr r0
/* 80363B50 0035F7B0 38 21 00 10 */ addi r1, r1, 0x10
/* 80363B54 0035F7B4 4E 80 00 20 */ blr
.global Seek__Q34nw4r2ut13DvdFileStreamFlUl
Seek__Q34nw4r2ut13DvdFileStreamFlUl:
/* 80363B58 0035F7B8 38 63 00 14 */ addi r3, r3, 0x14
/* 80363B5C 0035F7BC 4B FF FA 18 */ b Seek__Q44nw4r2ut10FileStream12FilePositionFlUl
.global Cancel__Q34nw4r2ut13DvdFileStreamFv
Cancel__Q34nw4r2ut13DvdFileStreamFv:
/* 80363B60 0035F7C0 38 63 00 28 */ addi r3, r3, 0x28
/* 80363B64 0035F7C4 4B F2 87 B8 */ b DVDCancel
.global CancelAsync__Q34nw4r2ut13DvdFileStreamFPFlPQ34nw4r2ut8IOStreamPv_vPv
CancelAsync__Q34nw4r2ut13DvdFileStreamFPFlPQ34nw4r2ut8IOStreamPv_vPv:
/* 80363B68 0035F7C8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80363B6C 0035F7CC 7C 08 02 A6 */ mflr r0
/* 80363B70 0035F7D0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80363B74 0035F7D4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80363B78 0035F7D8 7C 7F 1B 78 */ mr r31, r3
/* 80363B7C 0035F7DC 90 83 00 1C */ stw r4, 0x1c(r3)
/* 80363B80 0035F7E0 3C 80 80 36 */ lis r4, DvdCBAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP15DVDCommandBlock@ha
/* 80363B84 0035F7E4 38 84 36 44 */ addi r4, r4, DvdCBAsyncCallback___Q34nw4r2ut13DvdFileStreamFlP15DVDCommandBlock@l
/* 80363B88 0035F7E8 90 A3 00 20 */ stw r5, 0x20(r3)
/* 80363B8C 0035F7EC 38 63 00 28 */ addi r3, r3, 0x28
/* 80363B90 0035F7F0 4B F2 84 39 */ bl DVDCancelAsync
/* 80363B94 0035F7F4 2C 03 00 00 */ cmpwi r3, 0
/* 80363B98 0035F7F8 41 82 00 0C */ beq lbl_80363BA4
/* 80363B9C 0035F7FC 38 00 00 01 */ li r0, 1
/* 80363BA0 0035F800 98 1F 00 24 */ stb r0, 0x24(r31)
lbl_80363BA4:
/* 80363BA4 0035F804 7C 03 00 D0 */ neg r0, r3
/* 80363BA8 0035F808 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80363BAC 0035F80C 7C 00 1B 78 */ or r0, r0, r3
/* 80363BB0 0035F810 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80363BB4 0035F814 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80363BB8 0035F818 7C 08 03 A6 */ mtlr r0
/* 80363BBC 0035F81C 38 21 00 10 */ addi r1, r1, 0x10
/* 80363BC0 0035F820 4E 80 00 20 */ blr
.global GetBufferAlign__Q34nw4r2ut13DvdFileStreamCFv
GetBufferAlign__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BC4 0035F824 38 60 00 20 */ li r3, 0x20
/* 80363BC8 0035F828 4E 80 00 20 */ blr
.global GetSizeAlign__Q34nw4r2ut13DvdFileStreamCFv
GetSizeAlign__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BCC 0035F82C 38 60 00 20 */ li r3, 0x20
/* 80363BD0 0035F830 4E 80 00 20 */ blr
.global GetOffsetAlign__Q34nw4r2ut13DvdFileStreamCFv
GetOffsetAlign__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BD4 0035F834 38 60 00 04 */ li r3, 4
/* 80363BD8 0035F838 4E 80 00 20 */ blr
.global CanCancel__Q34nw4r2ut13DvdFileStreamCFv
CanCancel__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BDC 0035F83C 38 60 00 01 */ li r3, 1
/* 80363BE0 0035F840 4E 80 00 20 */ blr
.global CanWrite__Q34nw4r2ut13DvdFileStreamCFv
CanWrite__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BE4 0035F844 38 60 00 00 */ li r3, 0
/* 80363BE8 0035F848 4E 80 00 20 */ blr
.global CanRead__Q34nw4r2ut13DvdFileStreamCFv
CanRead__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BEC 0035F84C 38 60 00 01 */ li r3, 1
/* 80363BF0 0035F850 4E 80 00 20 */ blr
.global CanSeek__Q34nw4r2ut13DvdFileStreamCFv
CanSeek__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BF4 0035F854 38 60 00 01 */ li r3, 1
/* 80363BF8 0035F858 4E 80 00 20 */ blr
.global CanAsync__Q34nw4r2ut13DvdFileStreamCFv
CanAsync__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363BFC 0035F85C 38 60 00 01 */ li r3, 1
/* 80363C00 0035F860 4E 80 00 20 */ blr
.global GetSize__Q34nw4r2ut13DvdFileStreamCFv
GetSize__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363C04 0035F864 80 63 00 14 */ lwz r3, 0x14(r3)
/* 80363C08 0035F868 4E 80 00 20 */ blr
.global Tell__Q34nw4r2ut13DvdFileStreamCFv
Tell__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363C0C 0035F86C 80 63 00 18 */ lwz r3, 0x18(r3)
/* 80363C10 0035F870 4E 80 00 20 */ blr
.global IsBusy__Q34nw4r2ut13DvdFileStreamCFv
IsBusy__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363C14 0035F874 88 63 00 6C */ lbz r3, 0x6c(r3)
/* 80363C18 0035F878 4E 80 00 20 */ blr
.global GetRuntimeTypeInfo__Q34nw4r2ut13DvdFileStreamCFv
GetRuntimeTypeInfo__Q34nw4r2ut13DvdFileStreamCFv:
/* 80363C1C 0035F87C 38 6D B1 B0 */ addi r3, r13, lbl_80640470-_SDA_BASE_
/* 80363C20 0035F880 4E 80 00 20 */ blr
.global __sinit_$3ut_DvdFileStream_cpp
__sinit_$3ut_DvdFileStream_cpp:
/* 80363C24 0035F884 38 0D B1 A8 */ addi r0, r13, lbl_80640468-_SDA_BASE_
/* 80363C28 0035F888 90 0D B1 B0 */ stw r0, lbl_80640470-_SDA_BASE_(r13)
/* 80363C2C 0035F88C 4E 80 00 20 */ blr
|