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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global VFipdm_mbr_get_table
VFipdm_mbr_get_table:
/* 803087F0 00304450 2C 03 00 00 */ cmpwi r3, 0
/* 803087F4 00304454 41 82 00 0C */ beq lbl_80308800
/* 803087F8 00304458 2C 05 00 00 */ cmpwi r5, 0
/* 803087FC 0030445C 40 82 00 0C */ bne lbl_80308808
lbl_80308800:
/* 80308800 00304460 38 60 00 01 */ li r3, 1
/* 80308804 00304464 4E 80 00 20 */ blr
lbl_80308808:
/* 80308808 00304468 2C 04 00 00 */ cmpwi r4, 0
/* 8030880C 0030446C 40 82 00 14 */ bne lbl_80308820
/* 80308810 00304470 38 00 00 00 */ li r0, 0
/* 80308814 00304474 90 05 00 04 */ stw r0, 4(r5)
/* 80308818 00304478 90 05 00 00 */ stw r0, 0(r5)
/* 8030881C 0030447C 48 00 00 18 */ b lbl_80308834
lbl_80308820:
/* 80308820 00304480 80 05 00 04 */ lwz r0, 4(r5)
/* 80308824 00304484 2C 00 00 00 */ cmpwi r0, 0
/* 80308828 00304488 40 82 00 08 */ bne lbl_80308830
/* 8030882C 0030448C 90 85 00 04 */ stw r4, 4(r5)
lbl_80308830:
/* 80308830 00304490 90 85 00 00 */ stw r4, 0(r5)
lbl_80308834:
/* 80308834 00304494 38 00 00 04 */ li r0, 4
/* 80308838 00304498 38 63 01 BE */ addi r3, r3, 0x1be
/* 8030883C 0030449C 7C 09 03 A6 */ mtctr r0
lbl_80308840:
/* 80308840 003044A0 88 03 00 00 */ lbz r0, 0(r3)
/* 80308844 003044A4 98 05 00 08 */ stb r0, 8(r5)
/* 80308848 003044A8 88 03 00 04 */ lbz r0, 4(r3)
/* 8030884C 003044AC 98 05 00 09 */ stb r0, 9(r5)
/* 80308850 003044B0 88 03 00 01 */ lbz r0, 1(r3)
/* 80308854 003044B4 98 05 00 0C */ stb r0, 0xc(r5)
/* 80308858 003044B8 88 83 00 03 */ lbz r4, 3(r3)
/* 8030885C 003044BC 88 03 00 02 */ lbz r0, 2(r3)
/* 80308860 003044C0 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
/* 80308864 003044C4 54 06 15 AE */ rlwinm r6, r0, 2, 0x16, 0x17
/* 80308868 003044C8 7C 04 46 70 */ srawi r4, r0, 8
/* 8030886C 003044CC 54 00 06 BE */ clrlwi r0, r0, 0x1a
/* 80308870 003044D0 7C 86 22 14 */ add r4, r6, r4
/* 80308874 003044D4 B0 85 00 0A */ sth r4, 0xa(r5)
/* 80308878 003044D8 98 05 00 0D */ stb r0, 0xd(r5)
/* 8030887C 003044DC 88 83 00 06 */ lbz r4, 6(r3)
/* 80308880 003044E0 88 03 00 05 */ lbz r0, 5(r3)
/* 80308884 003044E4 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
/* 80308888 003044E8 98 05 00 10 */ stb r0, 0x10(r5)
/* 8030888C 003044EC 88 83 00 07 */ lbz r4, 7(r3)
/* 80308890 003044F0 88 03 00 06 */ lbz r0, 6(r3)
/* 80308894 003044F4 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
/* 80308898 003044F8 54 06 15 AE */ rlwinm r6, r0, 2, 0x16, 0x17
/* 8030889C 003044FC 7C 04 46 70 */ srawi r4, r0, 8
/* 803088A0 00304500 54 00 06 BE */ clrlwi r0, r0, 0x1a
/* 803088A4 00304504 7C 86 22 14 */ add r4, r6, r4
/* 803088A8 00304508 B0 85 00 0E */ sth r4, 0xe(r5)
/* 803088AC 0030450C 98 05 00 11 */ stb r0, 0x11(r5)
/* 803088B0 00304510 88 83 00 09 */ lbz r4, 9(r3)
/* 803088B4 00304514 88 03 00 08 */ lbz r0, 8(r3)
/* 803088B8 00304518 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
/* 803088BC 0030451C 88 C3 00 0A */ lbz r6, 0xa(r3)
/* 803088C0 00304520 88 83 00 0B */ lbz r4, 0xb(r3)
/* 803088C4 00304524 50 C0 82 1E */ rlwimi r0, r6, 0x10, 8, 0xf
/* 803088C8 00304528 50 80 C0 0E */ rlwimi r0, r4, 0x18, 0, 7
/* 803088CC 0030452C 90 05 00 14 */ stw r0, 0x14(r5)
/* 803088D0 00304530 88 C3 00 0E */ lbz r6, 0xe(r3)
/* 803088D4 00304534 88 83 00 0D */ lbz r4, 0xd(r3)
/* 803088D8 00304538 88 03 00 0C */ lbz r0, 0xc(r3)
/* 803088DC 0030453C 88 E3 00 0F */ lbz r7, 0xf(r3)
/* 803088E0 00304540 50 80 44 2E */ rlwimi r0, r4, 8, 0x10, 0x17
/* 803088E4 00304544 50 C0 82 1E */ rlwimi r0, r6, 0x10, 8, 0xf
/* 803088E8 00304548 38 63 00 10 */ addi r3, r3, 0x10
/* 803088EC 0030454C 50 E0 C0 0E */ rlwimi r0, r7, 0x18, 0, 7
/* 803088F0 00304550 90 05 00 18 */ stw r0, 0x18(r5)
/* 803088F4 00304554 38 A5 00 14 */ addi r5, r5, 0x14
/* 803088F8 00304558 42 00 FF 48 */ bdnz lbl_80308840
/* 803088FC 0030455C 38 60 00 00 */ li r3, 0
/* 80308900 00304560 4E 80 00 20 */ blr
.global VFipdm_mbr_get_mbr_part_table
VFipdm_mbr_get_mbr_part_table:
/* 80308904 00304564 94 21 FD E0 */ stwu r1, -0x220(r1)
/* 80308908 00304568 7C 08 02 A6 */ mflr r0
/* 8030890C 0030456C 2C 03 00 00 */ cmpwi r3, 0
/* 80308910 00304570 90 01 02 24 */ stw r0, 0x224(r1)
/* 80308914 00304574 93 E1 02 1C */ stw r31, 0x21c(r1)
/* 80308918 00304578 7C 9F 23 78 */ mr r31, r4
/* 8030891C 0030457C 93 C1 02 18 */ stw r30, 0x218(r1)
/* 80308920 00304580 7C 7E 1B 78 */ mr r30, r3
/* 80308924 00304584 41 82 00 0C */ beq lbl_80308930
/* 80308928 00304588 2C 04 00 00 */ cmpwi r4, 0
/* 8030892C 0030458C 40 82 00 0C */ bne lbl_80308938
lbl_80308930:
/* 80308930 00304590 38 60 00 01 */ li r3, 1
/* 80308934 00304594 48 00 00 78 */ b lbl_803089AC
lbl_80308938:
/* 80308938 00304598 4B FF E4 65 */ bl VFipdm_disk_check_disk_handle
/* 8030893C 0030459C 2C 03 00 00 */ cmpwi r3, 0
/* 80308940 003045A0 41 82 00 08 */ beq lbl_80308948
/* 80308944 003045A4 48 00 00 68 */ b lbl_803089AC
lbl_80308948:
/* 80308948 003045A8 7F C3 F3 78 */ mr r3, r30
/* 8030894C 003045AC 38 81 00 10 */ addi r4, r1, 0x10
/* 80308950 003045B0 39 01 00 0C */ addi r8, r1, 0xc
/* 80308954 003045B4 38 A0 00 00 */ li r5, 0
/* 80308958 003045B8 38 C0 00 01 */ li r6, 1
/* 8030895C 003045BC 38 E0 02 00 */ li r7, 0x200
/* 80308960 003045C0 4B FF E7 89 */ bl VFipdm_disk_physical_read
/* 80308964 003045C4 2C 03 00 00 */ cmpwi r3, 0
/* 80308968 003045C8 41 82 00 08 */ beq lbl_80308970
/* 8030896C 003045CC 48 00 00 40 */ b lbl_803089AC
lbl_80308970:
/* 80308970 003045D0 7F C3 F3 78 */ mr r3, r30
/* 80308974 003045D4 38 81 00 10 */ addi r4, r1, 0x10
/* 80308978 003045D8 38 A1 00 08 */ addi r5, r1, 8
/* 8030897C 003045DC 48 00 02 19 */ bl VFipdm_mbr_check_master_boot_record
/* 80308980 003045E0 80 01 00 08 */ lwz r0, 8(r1)
/* 80308984 003045E4 2C 00 00 00 */ cmpwi r0, 0
/* 80308988 003045E8 41 82 00 18 */ beq lbl_803089A0
/* 8030898C 003045EC 7F E5 FB 78 */ mr r5, r31
/* 80308990 003045F0 38 61 00 10 */ addi r3, r1, 0x10
/* 80308994 003045F4 38 80 00 00 */ li r4, 0
/* 80308998 003045F8 4B FF FE 59 */ bl VFipdm_mbr_get_table
/* 8030899C 003045FC 48 00 00 0C */ b lbl_803089A8
lbl_803089A0:
/* 803089A0 00304600 38 60 00 05 */ li r3, 5
/* 803089A4 00304604 48 00 00 08 */ b lbl_803089AC
lbl_803089A8:
/* 803089A8 00304608 38 60 00 00 */ li r3, 0
lbl_803089AC:
/* 803089AC 0030460C 80 01 02 24 */ lwz r0, 0x224(r1)
/* 803089B0 00304610 83 E1 02 1C */ lwz r31, 0x21c(r1)
/* 803089B4 00304614 83 C1 02 18 */ lwz r30, 0x218(r1)
/* 803089B8 00304618 7C 08 03 A6 */ mtlr r0
/* 803089BC 0030461C 38 21 02 20 */ addi r1, r1, 0x220
/* 803089C0 00304620 4E 80 00 20 */ blr
.global VFipdm_mbr_get_epbr_part_table
VFipdm_mbr_get_epbr_part_table:
/* 803089C4 00304624 94 21 FD C0 */ stwu r1, -0x240(r1)
/* 803089C8 00304628 7C 08 02 A6 */ mflr r0
/* 803089CC 0030462C 2C 03 00 00 */ cmpwi r3, 0
/* 803089D0 00304630 90 01 02 44 */ stw r0, 0x244(r1)
/* 803089D4 00304634 93 E1 02 3C */ stw r31, 0x23c(r1)
/* 803089D8 00304638 93 C1 02 38 */ stw r30, 0x238(r1)
/* 803089DC 0030463C 7C 9E 23 78 */ mr r30, r4
/* 803089E0 00304640 93 A1 02 34 */ stw r29, 0x234(r1)
/* 803089E4 00304644 7C 7D 1B 78 */ mr r29, r3
/* 803089E8 00304648 41 82 00 0C */ beq lbl_803089F4
/* 803089EC 0030464C 2C 04 00 00 */ cmpwi r4, 0
/* 803089F0 00304650 40 82 00 0C */ bne lbl_803089FC
lbl_803089F4:
/* 803089F4 00304654 38 60 00 01 */ li r3, 1
/* 803089F8 00304658 48 00 01 80 */ b lbl_80308B78
lbl_803089FC:
/* 803089FC 0030465C 4B FF E3 A1 */ bl VFipdm_disk_check_disk_handle
/* 80308A00 00304660 2C 03 00 00 */ cmpwi r3, 0
/* 80308A04 00304664 41 82 00 08 */ beq lbl_80308A0C
/* 80308A08 00304668 48 00 01 70 */ b lbl_80308B78
lbl_80308A0C:
/* 80308A0C 0030466C 3B E0 00 00 */ li r31, 0
/* 80308A10 00304670 38 A0 00 00 */ li r5, 0
/* 80308A14 00304674 1C 1F 00 14 */ mulli r0, r31, 0x14
/* 80308A18 00304678 7C 7E 02 14 */ add r3, r30, r0
/* 80308A1C 0030467C 88 63 00 09 */ lbz r3, 9(r3)
/* 80308A20 00304680 28 03 00 05 */ cmplwi r3, 5
/* 80308A24 00304684 41 82 00 0C */ beq lbl_80308A30
/* 80308A28 00304688 28 03 00 0F */ cmplwi r3, 0xf
/* 80308A2C 0030468C 40 82 00 18 */ bne lbl_80308A44
lbl_80308A30:
/* 80308A30 00304690 7C 7E 02 14 */ add r3, r30, r0
/* 80308A34 00304694 80 9E 00 04 */ lwz r4, 4(r30)
/* 80308A38 00304698 80 03 00 14 */ lwz r0, 0x14(r3)
/* 80308A3C 0030469C 7F E4 02 14 */ add r31, r4, r0
/* 80308A40 003046A0 48 00 00 A4 */ b lbl_80308AE4
lbl_80308A44:
/* 80308A44 003046A4 38 A0 00 01 */ li r5, 1
/* 80308A48 003046A8 1C 05 00 14 */ mulli r0, r5, 0x14
/* 80308A4C 003046AC 7C 7E 02 14 */ add r3, r30, r0
/* 80308A50 003046B0 88 63 00 09 */ lbz r3, 9(r3)
/* 80308A54 003046B4 28 03 00 05 */ cmplwi r3, 5
/* 80308A58 003046B8 41 82 00 0C */ beq lbl_80308A64
/* 80308A5C 003046BC 28 03 00 0F */ cmplwi r3, 0xf
/* 80308A60 003046C0 40 82 00 18 */ bne lbl_80308A78
lbl_80308A64:
/* 80308A64 003046C4 7C 7E 02 14 */ add r3, r30, r0
/* 80308A68 003046C8 80 9E 00 04 */ lwz r4, 4(r30)
/* 80308A6C 003046CC 80 03 00 14 */ lwz r0, 0x14(r3)
/* 80308A70 003046D0 7F E4 02 14 */ add r31, r4, r0
/* 80308A74 003046D4 48 00 00 70 */ b lbl_80308AE4
lbl_80308A78:
/* 80308A78 003046D8 38 A0 00 02 */ li r5, 2
/* 80308A7C 003046DC 1C 05 00 14 */ mulli r0, r5, 0x14
/* 80308A80 003046E0 7C 7E 02 14 */ add r3, r30, r0
/* 80308A84 003046E4 88 63 00 09 */ lbz r3, 9(r3)
/* 80308A88 003046E8 28 03 00 05 */ cmplwi r3, 5
/* 80308A8C 003046EC 41 82 00 0C */ beq lbl_80308A98
/* 80308A90 003046F0 28 03 00 0F */ cmplwi r3, 0xf
/* 80308A94 003046F4 40 82 00 18 */ bne lbl_80308AAC
lbl_80308A98:
/* 80308A98 003046F8 7C 7E 02 14 */ add r3, r30, r0
/* 80308A9C 003046FC 80 9E 00 04 */ lwz r4, 4(r30)
/* 80308AA0 00304700 80 03 00 14 */ lwz r0, 0x14(r3)
/* 80308AA4 00304704 7F E4 02 14 */ add r31, r4, r0
/* 80308AA8 00304708 48 00 00 3C */ b lbl_80308AE4
lbl_80308AAC:
/* 80308AAC 0030470C 38 A0 00 03 */ li r5, 3
/* 80308AB0 00304710 1C 05 00 14 */ mulli r0, r5, 0x14
/* 80308AB4 00304714 7C 7E 02 14 */ add r3, r30, r0
/* 80308AB8 00304718 88 63 00 09 */ lbz r3, 9(r3)
/* 80308ABC 0030471C 28 03 00 05 */ cmplwi r3, 5
/* 80308AC0 00304720 41 82 00 0C */ beq lbl_80308ACC
/* 80308AC4 00304724 28 03 00 0F */ cmplwi r3, 0xf
/* 80308AC8 00304728 40 82 00 18 */ bne lbl_80308AE0
lbl_80308ACC:
/* 80308ACC 0030472C 7C 7E 02 14 */ add r3, r30, r0
/* 80308AD0 00304730 80 9E 00 04 */ lwz r4, 4(r30)
/* 80308AD4 00304734 80 03 00 14 */ lwz r0, 0x14(r3)
/* 80308AD8 00304738 7F E4 02 14 */ add r31, r4, r0
/* 80308ADC 0030473C 48 00 00 08 */ b lbl_80308AE4
lbl_80308AE0:
/* 80308AE0 00304740 38 A0 00 04 */ li r5, 4
lbl_80308AE4:
/* 80308AE4 00304744 28 05 00 04 */ cmplwi r5, 4
/* 80308AE8 00304748 40 82 00 0C */ bne lbl_80308AF4
/* 80308AEC 0030474C 38 60 00 07 */ li r3, 7
/* 80308AF0 00304750 48 00 00 88 */ b lbl_80308B78
lbl_80308AF4:
/* 80308AF4 00304754 7F A3 EB 78 */ mr r3, r29
/* 80308AF8 00304758 38 81 00 10 */ addi r4, r1, 0x10
/* 80308AFC 0030475C 4B FF EB D9 */ bl VFipdm_disk_get_media_information
/* 80308B00 00304760 2C 03 00 00 */ cmpwi r3, 0
/* 80308B04 00304764 41 82 00 08 */ beq lbl_80308B0C
/* 80308B08 00304768 48 00 00 70 */ b lbl_80308B78
lbl_80308B0C:
/* 80308B0C 0030476C A0 01 00 18 */ lhz r0, 0x18(r1)
/* 80308B10 00304770 7F A3 EB 78 */ mr r3, r29
/* 80308B14 00304774 38 81 00 28 */ addi r4, r1, 0x28
/* 80308B18 00304778 39 01 00 0C */ addi r8, r1, 0xc
/* 80308B1C 0030477C 7C 00 4E 70 */ srawi r0, r0, 9
/* 80308B20 00304780 38 C0 00 01 */ li r6, 1
/* 80308B24 00304784 7C BF 01 D6 */ mullw r5, r31, r0
/* 80308B28 00304788 38 E0 02 00 */ li r7, 0x200
/* 80308B2C 0030478C 4B FF E5 BD */ bl VFipdm_disk_physical_read
/* 80308B30 00304790 2C 03 00 00 */ cmpwi r3, 0
/* 80308B34 00304794 41 82 00 08 */ beq lbl_80308B3C
/* 80308B38 00304798 48 00 00 40 */ b lbl_80308B78
lbl_80308B3C:
/* 80308B3C 0030479C 7F A3 EB 78 */ mr r3, r29
/* 80308B40 003047A0 38 81 00 28 */ addi r4, r1, 0x28
/* 80308B44 003047A4 38 A1 00 08 */ addi r5, r1, 8
/* 80308B48 003047A8 48 00 00 4D */ bl VFipdm_mbr_check_master_boot_record
/* 80308B4C 003047AC 80 01 00 08 */ lwz r0, 8(r1)
/* 80308B50 003047B0 2C 00 00 00 */ cmpwi r0, 0
/* 80308B54 003047B4 41 82 00 18 */ beq lbl_80308B6C
/* 80308B58 003047B8 7F E4 FB 78 */ mr r4, r31
/* 80308B5C 003047BC 7F C5 F3 78 */ mr r5, r30
/* 80308B60 003047C0 38 61 00 28 */ addi r3, r1, 0x28
/* 80308B64 003047C4 4B FF FC 8D */ bl VFipdm_mbr_get_table
/* 80308B68 003047C8 48 00 00 0C */ b lbl_80308B74
lbl_80308B6C:
/* 80308B6C 003047CC 38 60 00 06 */ li r3, 6
/* 80308B70 003047D0 48 00 00 08 */ b lbl_80308B78
lbl_80308B74:
/* 80308B74 003047D4 38 60 00 00 */ li r3, 0
lbl_80308B78:
/* 80308B78 003047D8 80 01 02 44 */ lwz r0, 0x244(r1)
/* 80308B7C 003047DC 83 E1 02 3C */ lwz r31, 0x23c(r1)
/* 80308B80 003047E0 83 C1 02 38 */ lwz r30, 0x238(r1)
/* 80308B84 003047E4 83 A1 02 34 */ lwz r29, 0x234(r1)
/* 80308B88 003047E8 7C 08 03 A6 */ mtlr r0
/* 80308B8C 003047EC 38 21 02 40 */ addi r1, r1, 0x240
/* 80308B90 003047F0 4E 80 00 20 */ blr
.global VFipdm_mbr_check_master_boot_record
VFipdm_mbr_check_master_boot_record:
/* 80308B94 003047F4 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80308B98 003047F8 7C 08 02 A6 */ mflr r0
/* 80308B9C 003047FC 2C 03 00 00 */ cmpwi r3, 0
/* 80308BA0 00304800 90 01 00 84 */ stw r0, 0x84(r1)
/* 80308BA4 00304804 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 80308BA8 00304808 7C BF 2B 78 */ mr r31, r5
/* 80308BAC 0030480C 93 C1 00 78 */ stw r30, 0x78(r1)
/* 80308BB0 00304810 7C 9E 23 78 */ mr r30, r4
/* 80308BB4 00304814 93 A1 00 74 */ stw r29, 0x74(r1)
/* 80308BB8 00304818 7C 7D 1B 78 */ mr r29, r3
/* 80308BBC 0030481C 41 82 00 14 */ beq lbl_80308BD0
/* 80308BC0 00304820 2C 04 00 00 */ cmpwi r4, 0
/* 80308BC4 00304824 41 82 00 0C */ beq lbl_80308BD0
/* 80308BC8 00304828 2C 05 00 00 */ cmpwi r5, 0
/* 80308BCC 0030482C 40 82 00 0C */ bne lbl_80308BD8
lbl_80308BD0:
/* 80308BD0 00304830 38 60 00 01 */ li r3, 1
/* 80308BD4 00304834 48 00 01 C0 */ b lbl_80308D94
lbl_80308BD8:
/* 80308BD8 00304838 4B FF E1 C5 */ bl VFipdm_disk_check_disk_handle
/* 80308BDC 0030483C 2C 03 00 00 */ cmpwi r3, 0
/* 80308BE0 00304840 41 82 00 08 */ beq lbl_80308BE8
/* 80308BE4 00304844 48 00 01 B0 */ b lbl_80308D94
lbl_80308BE8:
/* 80308BE8 00304848 38 00 00 00 */ li r0, 0
/* 80308BEC 0030484C 90 1F 00 00 */ stw r0, 0(r31)
/* 80308BF0 00304850 88 1E 01 FE */ lbz r0, 0x1fe(r30)
/* 80308BF4 00304854 28 00 00 55 */ cmplwi r0, 0x55
/* 80308BF8 00304858 40 82 00 10 */ bne lbl_80308C08
/* 80308BFC 0030485C 88 1E 01 FF */ lbz r0, 0x1ff(r30)
/* 80308C00 00304860 28 00 00 AA */ cmplwi r0, 0xaa
/* 80308C04 00304864 41 82 00 0C */ beq lbl_80308C10
lbl_80308C08:
/* 80308C08 00304868 38 60 00 00 */ li r3, 0
/* 80308C0C 0030486C 48 00 01 88 */ b lbl_80308D94
lbl_80308C10:
/* 80308C10 00304870 7F C3 F3 78 */ mr r3, r30
/* 80308C14 00304874 38 A1 00 10 */ addi r5, r1, 0x10
/* 80308C18 00304878 38 80 00 00 */ li r4, 0
/* 80308C1C 0030487C 4B FF FB D5 */ bl VFipdm_mbr_get_table
/* 80308C20 00304880 80 E1 00 24 */ lwz r7, 0x24(r1)
/* 80308C24 00304884 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 80308C28 00304888 80 C1 00 28 */ lwz r6, 0x28(r1)
/* 80308C2C 0030488C 3C A0 80 58 */ lis r5, lbl_8057EA60@ha
/* 80308C30 00304890 20 67 FF FF */ subfic r3, r7, -1
/* 80308C34 00304894 38 00 00 01 */ li r0, 1
/* 80308C38 00304898 1C 84 00 34 */ mulli r4, r4, 0x34
/* 80308C3C 0030489C 38 A5 EA 60 */ addi r5, r5, lbl_8057EA60@l
/* 80308C40 003048A0 7C 06 18 40 */ cmplw r6, r3
/* 80308C44 003048A4 7C A5 22 14 */ add r5, r5, r4
/* 80308C48 003048A8 41 81 00 14 */ bgt lbl_80308C5C
/* 80308C4C 003048AC 80 65 01 BC */ lwz r3, 0x1bc(r5)
/* 80308C50 003048B0 7C 87 32 14 */ add r4, r7, r6
/* 80308C54 003048B4 7C 04 18 40 */ cmplw r4, r3
/* 80308C58 003048B8 40 81 00 10 */ ble lbl_80308C68
lbl_80308C5C:
/* 80308C5C 003048BC 38 00 00 00 */ li r0, 0
/* 80308C60 003048C0 90 1F 00 00 */ stw r0, 0(r31)
/* 80308C64 003048C4 48 00 00 C4 */ b lbl_80308D28
lbl_80308C68:
/* 80308C68 003048C8 2C 07 00 00 */ cmpwi r7, 0
/* 80308C6C 003048CC 41 82 00 08 */ beq lbl_80308C74
/* 80308C70 003048D0 90 1F 00 00 */ stw r0, 0(r31)
lbl_80308C74:
/* 80308C74 003048D4 80 E1 00 38 */ lwz r7, 0x38(r1)
/* 80308C78 003048D8 80 C1 00 3C */ lwz r6, 0x3c(r1)
/* 80308C7C 003048DC 20 67 FF FF */ subfic r3, r7, -1
/* 80308C80 003048E0 7C 06 18 40 */ cmplw r6, r3
/* 80308C84 003048E4 41 81 00 14 */ bgt lbl_80308C98
/* 80308C88 003048E8 80 65 01 BC */ lwz r3, 0x1bc(r5)
/* 80308C8C 003048EC 7C 87 32 14 */ add r4, r7, r6
/* 80308C90 003048F0 7C 04 18 40 */ cmplw r4, r3
/* 80308C94 003048F4 40 81 00 10 */ ble lbl_80308CA4
lbl_80308C98:
/* 80308C98 003048F8 38 00 00 00 */ li r0, 0
/* 80308C9C 003048FC 90 1F 00 00 */ stw r0, 0(r31)
/* 80308CA0 00304900 48 00 00 88 */ b lbl_80308D28
lbl_80308CA4:
/* 80308CA4 00304904 2C 07 00 00 */ cmpwi r7, 0
/* 80308CA8 00304908 41 82 00 08 */ beq lbl_80308CB0
/* 80308CAC 0030490C 90 1F 00 00 */ stw r0, 0(r31)
lbl_80308CB0:
/* 80308CB0 00304910 80 E1 00 4C */ lwz r7, 0x4c(r1)
/* 80308CB4 00304914 80 C1 00 50 */ lwz r6, 0x50(r1)
/* 80308CB8 00304918 20 67 FF FF */ subfic r3, r7, -1
/* 80308CBC 0030491C 7C 06 18 40 */ cmplw r6, r3
/* 80308CC0 00304920 41 81 00 14 */ bgt lbl_80308CD4
/* 80308CC4 00304924 80 65 01 BC */ lwz r3, 0x1bc(r5)
/* 80308CC8 00304928 7C 87 32 14 */ add r4, r7, r6
/* 80308CCC 0030492C 7C 04 18 40 */ cmplw r4, r3
/* 80308CD0 00304930 40 81 00 10 */ ble lbl_80308CE0
lbl_80308CD4:
/* 80308CD4 00304934 38 00 00 00 */ li r0, 0
/* 80308CD8 00304938 90 1F 00 00 */ stw r0, 0(r31)
/* 80308CDC 0030493C 48 00 00 4C */ b lbl_80308D28
lbl_80308CE0:
/* 80308CE0 00304940 2C 07 00 00 */ cmpwi r7, 0
/* 80308CE4 00304944 41 82 00 08 */ beq lbl_80308CEC
/* 80308CE8 00304948 90 1F 00 00 */ stw r0, 0(r31)
lbl_80308CEC:
/* 80308CEC 0030494C 80 E1 00 60 */ lwz r7, 0x60(r1)
/* 80308CF0 00304950 80 C1 00 64 */ lwz r6, 0x64(r1)
/* 80308CF4 00304954 20 67 FF FF */ subfic r3, r7, -1
/* 80308CF8 00304958 7C 06 18 40 */ cmplw r6, r3
/* 80308CFC 0030495C 41 81 00 14 */ bgt lbl_80308D10
/* 80308D00 00304960 80 65 01 BC */ lwz r3, 0x1bc(r5)
/* 80308D04 00304964 7C 87 32 14 */ add r4, r7, r6
/* 80308D08 00304968 7C 04 18 40 */ cmplw r4, r3
/* 80308D0C 0030496C 40 81 00 10 */ ble lbl_80308D1C
lbl_80308D10:
/* 80308D10 00304970 38 00 00 00 */ li r0, 0
/* 80308D14 00304974 90 1F 00 00 */ stw r0, 0(r31)
/* 80308D18 00304978 48 00 00 10 */ b lbl_80308D28
lbl_80308D1C:
/* 80308D1C 0030497C 2C 07 00 00 */ cmpwi r7, 0
/* 80308D20 00304980 41 82 00 08 */ beq lbl_80308D28
/* 80308D24 00304984 90 1F 00 00 */ stw r0, 0(r31)
lbl_80308D28:
/* 80308D28 00304988 80 1F 00 00 */ lwz r0, 0(r31)
/* 80308D2C 0030498C 2C 00 00 00 */ cmpwi r0, 0
/* 80308D30 00304990 40 82 00 60 */ bne lbl_80308D90
/* 80308D34 00304994 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80308D38 00304998 2C 00 00 00 */ cmpwi r0, 0
/* 80308D3C 0030499C 40 82 00 54 */ bne lbl_80308D90
/* 80308D40 003049A0 80 01 00 38 */ lwz r0, 0x38(r1)
/* 80308D44 003049A4 2C 00 00 00 */ cmpwi r0, 0
/* 80308D48 003049A8 40 82 00 48 */ bne lbl_80308D90
/* 80308D4C 003049AC 80 01 00 4C */ lwz r0, 0x4c(r1)
/* 80308D50 003049B0 2C 00 00 00 */ cmpwi r0, 0
/* 80308D54 003049B4 40 82 00 3C */ bne lbl_80308D90
/* 80308D58 003049B8 80 01 00 60 */ lwz r0, 0x60(r1)
/* 80308D5C 003049BC 2C 00 00 00 */ cmpwi r0, 0
/* 80308D60 003049C0 40 82 00 30 */ bne lbl_80308D90
/* 80308D64 003049C4 7F C3 F3 78 */ mr r3, r30
/* 80308D68 003049C8 38 81 00 08 */ addi r4, r1, 8
/* 80308D6C 003049CC 4B FF DB C1 */ bl VFipdm_bpb_check_boot_sector
/* 80308D70 003049D0 80 01 00 08 */ lwz r0, 8(r1)
/* 80308D74 003049D4 2C 00 00 00 */ cmpwi r0, 0
/* 80308D78 003049D8 40 82 00 10 */ bne lbl_80308D88
/* 80308D7C 003049DC 38 00 00 01 */ li r0, 1
/* 80308D80 003049E0 90 1F 00 00 */ stw r0, 0(r31)
/* 80308D84 003049E4 48 00 00 0C */ b lbl_80308D90
lbl_80308D88:
/* 80308D88 003049E8 38 00 00 00 */ li r0, 0
/* 80308D8C 003049EC 90 1F 00 00 */ stw r0, 0(r31)
lbl_80308D90:
/* 80308D90 003049F0 38 60 00 00 */ li r3, 0
lbl_80308D94:
/* 80308D94 003049F4 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80308D98 003049F8 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 80308D9C 003049FC 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 80308DA0 00304A00 83 A1 00 74 */ lwz r29, 0x74(r1)
/* 80308DA4 00304A04 7C 08 03 A6 */ mtlr r0
/* 80308DA8 00304A08 38 21 00 80 */ addi r1, r1, 0x80
/* 80308DAC 00304A0C 4E 80 00 20 */ blr
|