00139bec - 0013aed8

From Final Fantasy Hacktics Wiki
Revision as of 04:57, 24 May 2024 by Talcall (talk | contribs)
Jump to navigation Jump to search

00139bec: 3c028016 lui r2,0x8016
00139bf0: 8c426018 lw r2,0x6018(r2)			incremented? 
00139bf4: 27bdfed0 addiu r29,r29,0xfed0
00139bf8: afbf012c sw r31,0x012c(r29)
00139bfc: afbe0128 sw r30,0x0128(r29)
00139c00: afb70124 sw r23,0x0124(r29)
00139c04: afb60120 sw r22,0x0120(r29)
00139c08: afb5011c sw r21,0x011c(r29)
00139c0c: afb40118 sw r20,0x0118(r29)
00139c10: afb30114 sw r19,0x0114(r29)
00139c14: afb20110 sw r18,0x0110(r29)
00139c18: afb1010c sw r17,0x010c(r29)
00139c1c: afb00108 sw r16,0x0108(r29)
00139c20: afa00100 sw r0,0x0100(r29)
00139c24: 10400005 beq r2,r0,0x00139c3c              Branch if 0x80166018 = 0
00139c28: afa000f0 sw r0,0x00f0(r29)
00139c2c: 3c028001 lui r2,0x8001
00139c30: 8c420008 lw r2,0x0008(r2)
00139c34: 0804e713 j 0x00139c4c
00139c38: 24531000 addiu r19,r2,0x1000
00139c3c: 3c028017 lui r2,0x8017
00139c40: 8c424048 lw r2,0x4048(r2)                  pointer to start skillset data
00139c44: 00000000 nop
00139c48: 24530388 addiu r19,r2,0x0388			ability data + 0x388 (...?)
00139c4c: afb300d0 sw r19,0x00d0(r29)			store to stack
00139c50: 3c028016 lui r2,0x8016
00139c54: 8c426018 lw r2,0x6018(r2)			incremented?
00139c58: a7a000c0 sh r0,0x00c0(r29)			store 0 to stack
00139c5c: 24420001 addiu r2,r2,0x0001			add 1
00139c60: 3c018016 lui r1,0x8016
00139c64: ac226018 sw r2,0x6018(r1)			store incremented value
00139c68: 0c0532f0 jal 0x0014cbc0                    Get menu address? (of ability data?)
00139c6c: 00000000 nop
00139c70: 0040b821 addu r23,r2,r0			r23 = ability menu address
00139c74: 8ee90030 lw r9,0x0030(r23)			pointer to scroll + menu offset data
00139c78: 00000000 nop
00139c7c: afa900d8 sw r9,0x00d8(r29)			store in stack
00139c80: 85220000 lh r2,0x0000(r9)			load No. abilities shown at once
00139c84: 00000000 nop
00139c88: 00021100 sll r2,r2,0x04			No. abilities shown at once * 0x10
00139c8c: 2442001c addiu r2,r2,0x001c			+ 1c
00139c90: a6e2000e sh r2,0x000e(r23)			store in menu height?
00139c94: 85220000 lh r2,0x0000(r9)			load No. abilities shown at once
00139c98: 00000000 nop
00139c9c: 00021100 sll r2,r2,0x04
00139ca0: 2442001c addiu r2,r2,0x001c			No. abilities shown at once * 0x10 + 0x1c
00139ca4: a6e20006 sh r2,0x0006(r23)			inner height of window? (wat)
00139ca8: 85220000 lh r2,0x0000(r9)
00139cac: 00000000 nop
00139cb0: 00021100 sll r2,r2,0x04
00139cb4: 2442001c addiu r2,r2,0x001c
00139cb8: a6e20016 sh r2,0x0016(r23)			store outer height of window, same math
00139cbc: 96e20004 lhu r2,0x0004(r23)			load width of window
00139cc0: 34030108 ori r3,r0,0x0108			r3 = 0x108
00139cc4: 00621823 subu r3,r3,r2			108 - width
00139cc8: 340200fe ori r2,r0,0x00fe
00139ccc: a7a2001a sh r2,0x001a(r29)			store 0xfe in stack
00139cd0: 34020008 ori r2,r0,0x0008
00139cd4: a7a20020 sh r2,0x0020(r29)			store 0x08 in stack
00139cd8: 3402000c ori r2,r0,0x000c
00139cdc: a7a30018 sh r3,0x0018(r29)			store 0x108 - width to stack
00139ce0: a7a20022 sh r2,0x0022(r29)			store 0x0c in stack
00139ce4: 96e20004 lhu r2,0x0004(r23)			load width of window again
00139ce8: 00031c00 sll r3,r3,0x10
00139cec: 2445fff8 addiu r5,r2,0xfff8			width - 8
00139cf0: a7a5001c sh r5,0x001c(r29)			store width - 8 to stack
00139cf4: 96e2000e lhu r2,0x000e(r23)			load the weird menu height
00139cf8: 00032403 sra r4,r3,0x10			0x108 - width
00139cfc: 2442ffe6 addiu r2,r2,0xffe6			height - 0x1a
00139d00: 04810002 bgez r4,0x00139d0c			branch if 0x108 - width > 0
00139d04: a7a2001e sh r2,0x001e(r29)			store height - 0x1a to stack
00139d08: 24840003 addiu r4,r4,0x0003			add 3 to 0x108 - width
00139d0c: 96e30000 lhu r3,0x0000(r23)			load weird graphical glitch prevention number!~
00139d10: 00041083 sra r2,r4,0x02			(0x108 - width) / 4
00139d14: 00431021 addu r2,r2,r3			add graphic glitch prevention
00139d18: 00051c00 sll r3,r5,0x10			
00139d1c: a7a200b0 sh r2,0x00b0(r29)			store math conglomerate to stack
00139d20: 96e20002 lhu r2,0x0002(r23)			load another number
00139d24: 00031c03 sra r3,r3,0x10			width - 8
00139d28: 3042ff00 andi r2,r2,0xff00			bitmask 0xff00
00139d2c: 244200fe addiu r2,r2,0x00fe			add 0xfe
00139d30: 04610002 bgez r3,0x00139d3c			branch if width - 8 is > 0
00139d34: a7a200b2 sh r2,0x00b2(r29)			store value to stack
00139d38: 24630003 addiu r3,r3,0x0003
00139d3c: 27a400b0 addiu r4,r29,0x00b0			r4 = stack + 0xb0
00139d40: 00002821 addu r5,r0,r0			0
00139d44: 00003021 addu r6,r0,r0
00139d48: 00003821 addu r7,r0,r0
00139d4c: 00031083 sra r2,r3,0x02			r2 = width - 8 / 4
00139d50: a7a200b4 sh r2,0x00b4(r29)			store width / 4 to  stack
00139d54: 34020002 ori r2,r0,0x0002
00139d58: 0c00921a jal 0x00024868                   SYS ClearImage (RECT *rect, u_char r, u_char g, u_char b)
00139d5c: a7a200b6 sh r2,0x00b6(r29)			store 2 in stack
00139d60: 0000b021 addu r22,r0,r0			clear r22
00139d64: 27b20038 addiu r18,r29,0x0038		r18 = stack + 0x38
00139d68: 00008821 addu r17,r0,r0			clear r17
00139d6c: 34030080 ori r3,r0,0x0080			r3 = 0x80
00139d70: 8fb000d0 lw r16,0x00d0(r29)			load ability data pointer + 0x338
00139d74: 34020100 ori r2,r0,0x0100			r2 = 0x100
00139d78: a7a00030 sh r0,0x0030(r29)			0x0
00139d7c: a7a30032 sh r3,0x0032(r29)			0x80
00139d80: a7a20034 sh r2,0x0034(r29)			0x100
00139d84: a7a30036 sh r3,0x0036(r29)			0x80
00139d88: 27a40028 addiu r4,r29,0x0028			r4 = stack + 0x28
00139d8c: 02e02821 addu r5,r23,r0			r5 = menu info pointer?
00139d90: 26060090 addiu r6,r16,0x0090			r16 + 0x90
00139d94: 27a20060 addiu r2,r29,0x0060			r2 = stack + 0x60
00139d98: 00511021 addu r2,r2,r17			r2 = stack + 0x60
00139d9c: ae0200fc sw r2,0x00fc(r16)			store stack + 0x60 + r17 to ability list pointer + 0x434
00139da0: 27a20088 addiu r2,r29,0x0088			r2 = stack + 0x88
00139da4: 00511021 addu r2,r2,r17			r2 = stack + 0x88 + r17
00139da8: ae1200f8 sw r18,0x00f8(r16)			store stack + 0x38 to ability list pointer + 0x430
00139dac: 0c04e05d jal 0x00138174			appears to be some kind of image loading routine
00139db0: ae020100 sw r2,0x0100(r16)			store stack + 0x88 + r17 to ability list pointer + 0x438	
00139db4: 26520014 addiu r18,r18,0x0014		r18 + 0x14
00139db8: 26100134 addiu r16,r16,0x0134		r16 + 0x134
00139dbc: 26d60001 addiu r22,r22,0x0001		r22 + 1
00139dc0: 2ac20002 slti r2,r22,0x0002			repeat twice?
00139dc4: 1440fff0 bne r2,r0,0x00139d88
00139dc8: 26310014 addiu r17,r17,0x0014		r17 + 0x14
00139dcc: 00002021 addu r4,r0,r0			clear r4
00139dd0: 34050002 ori r5,r0,0x0002			r5 = 2
00139dd4: 340603c0 ori r6,r0,0x03c0			r6 = 0x03c0
00139dd8: 0c008e63 jal 0x0002398c
00139ddc: 34070100 ori r7,r0,0x0100			r7 = 0x0100
00139de0: 26640084 addiu r4,r19,0x0084			r4 = ability data + 0x0338
00139de4: 00002821 addu r5,r0,r0
00139de8: 00003021 addu r6,r0,r0
00139dec: 3047ffff andi r7,r2,0xffff			r7 = result?
00139df0: 3c028016 lui r2,0x8016
00139df4: 24425ecc addiu r2,r2,0x5ecc			menu selection?
00139df8: 0c009533 jal 0x000254cc
00139dfc: afa20010 sw r2,0x0010(r29)			store to stack 
00139e00: 00002021 addu r4,r0,r0			clear r4
00139e04: 34050001 ori r5,r0,0x0001			r5 = 1
00139e08: 0000b021 addu r22,r0,r0			clear r22
00139e0c: 341200d8 ori r18,r0,0x00d8			r18 = 0x00d8
00139e10: 02608021 addu r16,r19,r0			r16 = ability data + 0x0338
00139e14: 34110014 ori r17,r0,0x0014			r17 = 0x0014
00139e18: 86e60000 lh r6,0x0000(r23)			r6 = Value 1
00139e1c: 86e70002 lh r7,0x0002(r23)			r7 = Value 2
00139e20: 30c6ffc0 andi r6,r6,0xffc0			bitmask
00139e24: 0c008e63 jal 0x0002398c
00139e28: 30e7ff00 andi r7,r7,0xff00			bitmask
00139e2c: 26640078 addiu r4,r19,0x0078			r4 = ability data + 0x3b0
00139e30: 34050001 ori r5,r0,0x0001			r5 = 1
00139e34: 00003021 addu r6,r0,r0			0
00139e38: 3047ffff andi r7,r2,0xffff			return value
00139e3c: 27a20030 addiu r2,r29,0x0030			stack + 0x30
00139e40: 0c009533 jal 0x000254cc
00139e44: afa20010 sw r2,0x0010(r29)			store in stack + 0x10
00139e48: 0c04b891 jal 0x0012e244			
00139e4c: 02712021 addu r4,r19,r17			r4 = ability data + 0x034c
00139e50: 34157d7c ori r21,r0,0x7d7c			r21 = 0x7d7c
00139e54: 34140008 ori r20,r0,0x0008			r20 = 8
00139e58: 34020010 ori r2,r0,0x0010			r2 = 10
00139e5c: a6150022 sh r21,0x0022(r16)			store 0x7d7c in ability data + 0x35a
00139e60: a6140024 sh r20,0x0024(r16)			store 0x08 in ability data + 0x35c
00139e64: a6020026 sh r2,0x0026(r16)			store 0x10 in ability data + 0x35e
00139e68: a2120020 sb r18,0x0020(r16)			store 0xd8 in ability data + 0x358
00139e6c: a2000021 sb r0,0x0021(r16)			store 0x00 in ability data + 0x359
00139e70: 96e20008 lhu r2,0x0008(r23)			load X location of window on screen
00139e74: 96e3000c lhu r3,0x000c(r23)			load... ?
00139e78: 00000000 nop
00139e7c: 00431021 addu r2,r2,r3			X location of window + ?
00139e80: 2442fff1 addiu r2,r2,0xfff1			- 0xe
00139e84: a602001c sh r2,0x001c(r16)			store in ability data + 0x354
00139e88: 86e2000e lh r2,0x000e(r23)			?
00139e8c: 00000000 nop
00139e90: 2442ffce addiu r2,r2,0xffce			? - 32
00139e94: 02c20018 mult r22,r2				? - 32 * r22 counter (screen position thing?)
00139e98: 26520008 addiu r18,r18,0x0008		r18 + 8
00139e9c: 26310014 addiu r17,r17,0x0014		r17 + 0x14
00139ea0: 96e3000a lhu r3,0x000a(r23)
00139ea4: 26d60001 addiu r22,r22,0x0001		r22 + 1
00139ea8: 00001012 mflo r2
00139eac: 24420010 addiu r2,r2,0x0010			add 10 to multiplication
00139eb0: 00621821 addu r3,r3,r2			add Y location to that
00139eb4: a603001e sh r3,0x001e(r16)			store new "Y" location?
00139eb8: 2ac20002 slti r2,r22,0x0002
00139ebc: 1440ffe2 bne r2,r0,0x00139e48		repeat twice?
00139ec0: 26100014 addiu r16,r16,0x0014		ability list + 0x14
00139ec4: 0c04b891 jal 0x0012e244
00139ec8: 26640064 addiu r4,r19,0x0064			r4 = ability list + 0x338 + 0x64
00139ecc: 02602021 addu r4,r19,r0			again, but without the 0x64
00139ed0: 34020010 ori r2,r0,0x0010			r2 = 0x10
00139ed4: a2620070 sb r2,0x0070(r19)			0x10
00139ed8: a2620071 sb r2,0x0071(r19)			0x10
00139edc: a6740074 sh r20,0x0074(r19)			0x08
00139ee0: a6740076 sh r20,0x0076(r19)			0x08
00139ee4: 0c04b891 jal 0x0012e244
00139ee8: a6750072 sh r21,0x0072(r19)			0x7d7c
00139eec: 02602021 addu r4,r19,r0			destination: ability list + 0x338
00139ef0: 02e02821 addu r5,r23,r0			points to halfwords (X location, Y location)
00139ef4: 26e60008 addiu r6,r23,0x0008			points to halfwords (X Location, Y Location)
00139ef8: 0c052a0d jal 0x0014a834			Image loading setup? (0x14a834)
00139efc: 27a70018 addiu r7,r29,0x0018			Stack + 0x18 for list of parameters (X Load Location, Y Load Location, Image Width, Image Height, X Screen Location Offset, Y Screen Location Offset)
00139f00: 2664003c addiu r4,r19,0x003c
00139f04: 34050002 ori r5,r0,0x0002
00139f08: 0c04b8ae jal 0x0012e2b8
00139f0c: 34067c3c ori r6,r0,0x7c3c
00139f10: 34020006 ori r2,r0,0x0006
00139f14: a662004c sh r2,0x004c(r19)			0x6
00139f18: 3402000c ori r2,r0,0x000c
00139f1c: a662004e sh r2,0x004e(r19)			0xc
00139f20: 34020004 ori r2,r0,0x0004
00139f24: a6620060 sh r2,0x0060(r19)			0x4
00139f28: a6620062 sh r2,0x0062(r19)			0x4
00139f2c: 340200e8 ori r2,r0,0x00e8
00139f30: a2620048 sb r2,0x0048(r19)			0xe8
00139f34: a262005c sb r2,0x005c(r19)			0xe8
00139f38: 9662001c lhu r2,0x001c(r19)			load X Location of window + ? - 0xe
00139f3c: 96640030 lhu r4,0x0030(r19)			?
00139f40: 3403000c ori r3,r0,0x000c
00139f44: a263005d sb r3,0x005d(r19)			0xc
00139f48: 96630032 lhu r3,0x0032(r19)			0x80
00139f4c: 27a60028 addiu r6,r29,0x0028			stack + 0x28
00139f50: a2600049 sb r0,0x0049(r19)			0x0
00139f54: 2442ffff addiu r2,r2,0xffff			X - ? - 0xf
00139f58: a6620044 sh r2,0x0044(r19)			store
00139f5c: 9662001e lhu r2,0x001e(r19)			"Y" location?
00139f60: 2463000e addiu r3,r3,0x000e			0x72?
00139f64: a6640058 sh r4,0x0058(r19)			? here
00139f68: a663005a sh r3,0x005a(r19)			0x72? here
00139f6c: 24420003 addiu r2,r2,0x0003			"Y" location + 3?
00139f70: a6620046 sh r2,0x0046(r19)			store here
00139f74: 86e40004 lh r4,0x0004(r23)			inner width of window?
00139f78: 86e50006 lh r5,0x0006(r23)			inner height of window?
00139f7c: 0c05312a jal 0x0014c4a8			? 0x14c4a8
00139f80: 34070002 ori r7,r0,0x0002			r7 = 2
00139f84: 3c038016 lui r3,0x8016
00139f88: 8c636018 lw r3,0x6018(r3)
00139f8c: 34020002 ori r2,r0,0x0002
00139f90: 14620005 bne r3,r2,0x00139fa8
00139f94: 00000000 nop
00139f98: 3c028001 lui r2,0x8001
00139f9c: 8c420008 lw r2,0x0008(r2)
00139fa0: 0804e7fa j 0x00139fe8
00139fa4: 245e2000 addiu r30,r2,0x2000
00139fa8: 3c048017 lui r4,0x8017
00139fac: 24848eec addiu r4,r4,0x8eec
00139fb0: 3c05801d lui r5,0x801d
00139fb4: 24a5c074 addiu r5,r5,0xc074
00139fb8: 0c009258 jal 0x00024960                      SYS StoreImage
00139fbc: 00000000 nop
00139fc0: 86e30004 lh r3,0x0004(r23)
00139fc4: 86e20006 lh r2,0x0006(r23)
00139fc8: 00000000 nop
00139fcc: 00620018 mult r3,r2
00139fd0: 00002012 mflo r4
00139fd4: 000417c2 srl r2,r4,0x1f
00139fd8: 00822021 addu r4,r4,r2
00139fdc: 0c04bbac jal 0x0012eeb0                      0012eeb0 - 0012f028
00139fe0: 00042043 sra r4,r4,0x01
00139fe4: 0040f021 addu r30,r2,r0
00139fe8: 87a3001c lh r3,0x001c(r29)
00139fec: 87a2001e lh r2,0x001e(r29)
00139ff0: 00000000 nop
00139ff4: 00620018 mult r3,r2
00139ff8: 03c02021 addu r4,r30,r0
00139ffc: 00002812 mflo r5
0013a000: 000517c2 srl r2,r5,0x1f
0013a004: 00a22821 addu r5,r5,r2
0013a008: 0c052fb6 jal 0x0014bed8                      0014bed8 - 0014bf50
0013a00c: 00052843 sra r5,r5,0x01
0013a010: 8fa900d8 lw r9,0x00d8(r29)
0013a014: 00000000 nop
0013a018: 85220028 lh r2,0x0028(r9)
0013a01c: 85230002 lh r3,0x0002(r9)
0013a020: afa200b8 sw r2,0x00b8(r29)
0013a024: 0062102a slt r2,r3,r2
0013a028: 10400002 beq r2,r0,0x0013a034
0013a02c: 00000000 nop
0013a030: afa300b8 sw r3,0x00b8(r29)
0013a034: 86e20038 lh r2,0x0038(r23)
0013a038: 8fa900d8 lw r9,0x00d8(r29)
0013a03c: 8fa300b8 lw r3,0x00b8(r29)
0013a040: 85240000 lh r4,0x0000(r9)
0013a044: 00431023 subu r2,r2,r3
0013a048: afa200c8 sw r2,0x00c8(r29)
0013a04c: 0044102a slt r2,r2,r4
0013a050: 14400003 bne r2,r0,0x0013a060
0013a054: 02e02021 addu r4,r23,r0
0013a058: afa000b8 sw r0,0x00b8(r29)
0013a05c: afa000c8 sw r0,0x00c8(r29)
0013a060: 27a500b8 addiu r5,r29,0x00b8
0013a064: 0c04e56b jal 0x001395ac                       001395ac - 001398f8
0013a068: 03c03021 addu r6,r30,r0
0013a06c: 87a40018 lh r4,0x0018(r29)
0013a070: 34090001 ori r9,r0,0x0001
0013a074: afa900f8 sw r9,0x00f8(r29)
0013a078: 04810002 bgez r4,0x0013a084
0013a07c: afa000c4 sw r0,0x00c4(r29)
0013a080: 24840003 addiu r4,r4,0x0003
0013a084: 96e30000 lhu r3,0x0000(r23)
0013a088: 34020080 ori r2,r0,0x0080
0013a08c: a7a2002a sh r2,0x002a(r29)
0013a090: 00041083 sra r2,r4,0x02
0013a094: 87a6001c lh r6,0x001c(r29)
0013a098: 00431021 addu r2,r2,r3
0013a09c: 04c10002 bgez r6,0x0013a0a8
0013a0a0: a7a20028 sh r2,0x0028(r29)
0013a0a4: 24c60003 addiu r6,r6,0x0003
0013a0a8: 27a40028 addiu r4,r29,0x0028
0013a0ac: 03c02821 addu r5,r30,r0
0013a0b0: 0000b021 addu r22,r0,r0
0013a0b4: 97a3001e lhu r3,0x001e(r29)
0013a0b8: 00061083 sra r2,r6,0x02
0013a0bc: a7a2002c sh r2,0x002c(r29)
0013a0c0: 0c00923f jal 0x000248fc                        SYS LoadImage
0013a0c4: a7a3002e sh r3,0x002e(r29)
0013a0c8: 34060134 ori r6,r0,0x0134
0013a0cc: 8fa900d0 lw r9,0x00d0(r29)
0013a0d0: 8fa500d0 lw r5,0x00d0(r29)
0013a0d4: 0c052fd5 jal 0x0014bf54                        Copy Bytes (0x14bf54)
0013a0d8: 25240134 addiu r4,r9,0x0134
0013a0dc: 27a60088 addiu r6,r29,0x0088
0013a0e0: 27a50060 addiu r5,r29,0x0060
0013a0e4: 27a40038 addiu r4,r29,0x0038
0013a0e8: 8fa300d0 lw r3,0x00d0(r29)
0013a0ec: 00000000 nop
0013a0f0: ac660100 sw r6,0x0100(r3)
0013a0f4: 24c60014 addiu r6,r6,0x0014
0013a0f8: ac6500fc sw r5,0x00fc(r3)
0013a0fc: 24a50014 addiu r5,r5,0x0014
0013a100: ac6400f8 sw r4,0x00f8(r3)
0013a104: 24840014 addiu r4,r4,0x0014
0013a108: 26d60001 addiu r22,r22,0x0001
0013a10c: 2ac20002 slti r2,r22,0x0002
0013a110: 1440fff6 bne r2,r0,0x0013a0ec
0013a114: 24630134 addiu r3,r3,0x0134
0013a118: 0000b021 addu r22,r0,r0
0013a11c: afa000e0 sw r0,0x00e0(r29)
0013a120: afa000e8 sw r0,0x00e8(r29)
0013a124: 32c30001 andi r3,r22,0x0001
0013a128: 00031080 sll r2,r3,0x02
0013a12c: 00431021 addu r2,r2,r3
0013a130: 00021080 sll r2,r2,0x02
0013a134: 00431023 subu r2,r2,r3
0013a138: 00021080 sll r2,r2,0x02
0013a13c: 00431021 addu r2,r2,r3
0013a140: 00021080 sll r2,r2,0x02
0013a144: 27a400bc addiu r4,r29,0x00bc
0013a148: 8fa900d0 lw r9,0x00d0(r29)
0013a14c: 34050001 ori r5,r0,0x0001                       set semi transparent
0013a150: 01229821 addu r19,r9,r2
0013a154: 0c008f1a jal 0x00023c68                         P10 SetSemiTrans
0013a158: afb300bc sw r19,0x00bc(r29)
0013a15c: 8fa900e8 lw r9,0x00e8(r29)
0013a160: 00000000 nop
0013a164: 152001b5 bne r9,r0,0x0013a83c
0013a168: 00000000 nop
0013a16c: 0c04dee6 jal 0x00137b98                          00137b90 - 00137c0c <-- incorrect start address
0013a170: 00000000 nop
0013a174: 104001b1 beq r2,r0,0x0013a83c
0013a178: 00000000 nop
0013a17c: 12c001af beq r22,r0,0x0013a83c
0013a180: 00000000 nop
0013a184: 8fa900d8 lw r9,0x00d8(r29)
0013a188: 00000000 nop
0013a18c: 8522000a lh r2,0x000a(r9)
0013a190: 00000000 nop
0013a194: 1440001b bne r2,r0,0x0013a204
0013a198: 00000000 nop
0013a19c: 8522000c lh r2,0x000c(r9)
0013a1a0: 00000000 nop
0013a1a4: 14400017 bne r2,r0,0x0013a204
0013a1a8: 00000000 nop
0013a1ac: 3c028017 lui r2,0x8017
0013a1b0: 8c4297d0 lw r2,-0x6830(r2)
0013a1b4: 00000000 nop
0013a1b8: 3042a000 andi r2,r2,0xa000
0013a1bc: 10400007 beq r2,r0,0x0013a1dc
0013a1c0: 27a200c0 addiu r2,r29,0x00c0
0013a1c4: 97a200c0 lhu r2,0x00c0(r29)
0013a1c8: 00000000 nop
0013a1cc: 38420001 xori r2,r2,0x0001
0013a1d0: a7a200c0 sh r2,0x00c0(r29)
0013a1d4: 8fa900d8 lw r9,0x00d8(r29)
0013a1d8: 27a200c0 addiu r2,r29,0x00c0
0013a1dc: 0804e8d5 j 0x0013a354
0013a1e0: ad220018 sw r2,0x0018(r9)
0013a1e4: 3c048017 lui r4,0x8017
0013a1e8: 24848eec addiu r4,r4,0x8eec
0013a1ec: 3c09801d lui r9,0x801d
0013a1f0: 2529c074 addiu r9,r9,0xc074
0013a1f4: 0c00923f jal 0x000248fc                          SYS LoadImage
0013a1f8: 25250060 addiu r5,r9,0x0060
0013a1fc: 0804e8d5 j 0x0013a354
0013a200: 00000000 nop
0013a204: 3c028017 lui r2,0x8017
0013a208: 8c4297d0 lw r2,-0x6830(r2)
0013a20c: 00000000 nop
0013a210: 3042a000 andi r2,r2,0xa000
0013a214: 1040004f beq r2,r0,0x0013a354
0013a218: 34090001 ori r9,r0,0x0001
0013a21c: 3c028016 lui r2,0x8016
0013a220: 8c426018 lw r2,0x6018(r2)
0013a224: 00000000 nop
0013a228: 1449004a bne r2,r9,0x0013a354
0013a22c: 00000000 nop
0013a230: 8fa900d8 lw r9,0x00d8(r29)
0013a234: 00000000 nop
0013a238: 8522000c lh r2,0x000c(r9)
0013a23c: 34090002 ori r9,r0,0x0002
0013a240: 10490044 beq r2,r9,0x0013a354
0013a244: 00000000 nop
0013a248: 12c00042 beq r22,r0,0x0013a354
0013a24c: 00000000 nop
0013a250: 8fa900d8 lw r9,0x00d8(r29)
0013a254: 86e20038 lh r2,0x0038(r23)
0013a258: 8d230010 lw r3,0x0010(r9)
0013a25c: 00021040 sll r2,r2,0x01
0013a260: 00431021 addu r2,r2,r3
0013a264: 84430000 lh r3,0x0000(r2)
0013a268: 34027000 ori r2,r0,0x7000
0013a26c: 10620039 beq r3,r2,0x0013a354
0013a270: 00000000 nop
0013a274: 0c0532a0 jal 0x0014ca80                      Switch To Next Thread
0013a278: 00009021 addu r18,r0,r0
0013a27c: 0c04b751 jal 0x0012dd44                      0012dd44 - 0012dd54
0013a280: 00000000 nop
0013a284: 3c058014 lui r5,0x8014
0013a288: 24a5957c addiu r5,r5,0x957c
0013a28c: 3c048017 lui r4,0x8017
0013a290: 8c844038 lw r4,0x4038(r4)
0013a294: 0c053228 jal 0x0014c8a0                      Initialize Thread
0013a298: 2484ffff addiu r4,r4,0xffff
0013a29c: 00003021 addu r6,r0,r0
0013a2a0: 00003821 addu r7,r0,r0
0013a2a4: 3c048017 lui r4,0x8017
0013a2a8: 8c844038 lw r4,0x4038(r4)
0013a2ac: 3c058017 lui r5,0x8017
0013a2b0: 8ca53cb8 lw r5,0x3cb8(r5)
0013a2b4: 2484ffff addiu r4,r4,0xffff
0013a2b8: 0c05328e jal 0x0014ca38                      Store Thread Function Parameters
0013a2bc: 24a50c30 addiu r5,r5,0x0c30 
0013a2c0: 3c048017 lui r4,0x8017
0013a2c4: 8c844038 lw r4,0x4038(r4)
0013a2c8: 0c053325 jal 0x0014cc94                      Check Thread Running Status
0013a2cc: 2484ffff addiu r4,r4,0xffff
0013a2d0: 1040ffc4 beq r2,r0,0x0013a1e4
0013a2d4: 3c028888 lui r2,0x8888
0013a2d8: 34428889 ori r2,r2,0x8889
0013a2dc: 02420018 mult r18,r2
0013a2e0: 001217c3 sra r2,r18,0x1f
0013a2e4: 00001810 mfhi r3
0013a2e8: 00721821 addu r3,r3,r18
0013a2ec: 00031903 sra r3,r3,0x04
0013a2f0: 00621823 subu r3,r3,r2
0013a2f4: 00031100 sll r2,r3,0x04
0013a2f8: 00431023 subu r2,r2,r3
0013a2fc: 00021040 sll r2,r2,0x01
0013a300: 02421023 subu r2,r18,r2
0013a304: 28420018 slti r2,r2,0x0018
0013a308: 10400007 beq r2,r0,0x0013a328
0013a30c: 00000000 nop
0013a310: 3c048017 lui r4,0x8017
0013a314: 24848eec addiu r4,r4,0x8eec
0013a318: 3c09801d lui r9,0x801d
0013a31c: 2529c074 addiu r9,r9,0xc074
0013a320: 0804e8cf j 0x0013a33c
0013a324: 25250020 addiu r5,r9,0x0020
0013a328: 3c048017 lui r4,0x8017
0013a32c: 24848eec addiu r4,r4,0x8eec
0013a330: 3c09801d lui r9,0x801d
0013a334: 2529c074 addiu r9,r9,0xc074
0013a338: 25250040 addiu r5,r9,0x0040
0013a33c: 0c00923f jal 0x000248fc
0013a340: 26520001 addiu r18,r18,0x0001
0013a344: 0c0532a0 jal 0x0014ca80
0013a348: 00000000 nop
0013a34c: 0804e8b0 j 0x0013a2c0
0013a350: 00000000 nop
0013a354: 3c028017 lui r2,0x8017
0013a358: 8c4297d0 lw r2,-0x6830(r2)
0013a35c: 00000000 nop
0013a360: 30421000 andi r2,r2,0x1000
0013a364: 1040001d beq r2,r0,0x0013a3dc
0013a368: 00000000 nop
0013a36c: 3c028017 lui r2,0x8017
0013a370: 8c42d9a0 lw r2,-0x2660(r2)
0013a374: 00000000 nop
0013a378: 30420080 andi r2,r2,0x0080
0013a37c: 10400006 beq r2,r0,0x0013a398
0013a380: 00000000 nop
0013a384: 3c028016 lui r2,0x8016
0013a388: 94425ff6 lhu r2,0x5ff6(r2)
0013a38c: 00000000 nop
0013a390: 10400012 beq r2,r0,0x0013a3dc
0013a394: 00000000 nop
0013a398: 8fa200c8 lw r2,0x00c8(r29)
0013a39c: 00000000 nop
0013a3a0: 14400026 bne r2,r0,0x0013a43c
0013a3a4: 2442ffff addiu r2,r2,0xffff
0013a3a8: 8fa200b8 lw r2,0x00b8(r29)
0013a3ac: 00000000 nop
0013a3b0: 1440002e bne r2,r0,0x0013a46c
0013a3b4: 2409ffff addiu r9,r0,0xffff
0013a3b8: 8fa900d8 lw r9,0x00d8(r29)
0013a3bc: 00000000 nop
0013a3c0: 85220002 lh r2,0x0002(r9)
0013a3c4: 00000000 nop
0013a3c8: 14400033 bne r2,r0,0x0013a498
0013a3cc: 00000000 nop
0013a3d0: 85220000 lh r2,0x0000(r9)
0013a3d4: 0804e90f j 0x0013a43c
0013a3d8: 2442ffff addiu r2,r2,0xffff
0013a3dc: 3c028017 lui r2,0x8017
0013a3e0: 8c4297d0 lw r2,-0x6830(r2)
0013a3e4: 00000000 nop
0013a3e8: 30424000 andi r2,r2,0x4000
0013a3ec: 10400029 beq r2,r0,0x0013a494
0013a3f0: 00000000 nop
0013a3f4: 3c028017 lui r2,0x8017
0013a3f8: 8c42d9a0 lw r2,-0x2660(r2)
0013a3fc: 00000000 nop
0013a400: 30420080 andi r2,r2,0x0080
0013a404: 10400006 beq r2,r0,0x0013a420
0013a408: 00000000 nop
0013a40c: 3c028016 lui r2,0x8016
0013a410: 94425ff6 lhu r2,0x5ff6(r2)
0013a414: 00000000 nop
0013a418: 1040001e beq r2,r0,0x0013a494
0013a41c: 00000000 nop
0013a420: 8fa900d8 lw r9,0x00d8(r29)
0013a424: 00000000 nop
0013a428: 85220000 lh r2,0x0000(r9)
0013a42c: 8fa300c8 lw r3,0x00c8(r29)
0013a430: 2442ffff addiu r2,r2,0xffff
0013a434: 10620005 beq r3,r2,0x0013a44c
0013a438: 24620001 addiu r2,r3,0x0001
0013a43c: 0c04b751 jal 0x0012dd44
0013a440: afa200c8 sw r2,0x00c8(r29)
0013a444: 0804e926 j 0x0013a498
0013a448: 00000000 nop
0013a44c: 8fa300b8 lw r3,0x00b8(r29)
0013a450: 85220002 lh r2,0x0002(r9)
0013a454: 00000000 nop
0013a458: 10620008 beq r3,r2,0x0013a47c
0013a45c: 00000000 nop
0013a460: 8fa900e8 lw r9,0x00e8(r29)
0013a464: 00000000 nop
0013a468: 25290001 addiu r9,r9,0x0001
0013a46c: 0c04b751 jal 0x0012dd44
0013a470: afa900e8 sw r9,0x00e8(r29)
0013a474: 0804e926 j 0x0013a498
0013a478: 00000000 nop
0013a47c: 14600006 bne r3,r0,0x0013a498
0013a480: 00000000 nop
0013a484: 0c04b751 jal 0x0012dd44
0013a488: afa000c8 sw r0,0x00c8(r29)
0013a48c: 0804e926 j 0x0013a498
0013a490: 00000000 nop
0013a494: afa000f0 sw r0,0x00f0(r29)
0013a498: 8fa900e8 lw r9,0x00e8(r29)
0013a49c: 00000000 nop
0013a4a0: 112000e6 beq r9,r0,0x0013a83c
0013a4a4: 00000000 nop
0013a4a8: 1920000c blez r9,0x0013a4dc
0013a4ac: 00000000 nop
0013a4b0: 8fa900d8 lw r9,0x00d8(r29)
0013a4b4: 8fa300c4 lw r3,0x00c4(r29)
0013a4b8: 85220000 lh r2,0x0000(r9)
0013a4bc: 00000000 nop
0013a4c0: 00621821 addu r3,r3,r2
0013a4c4: 00031900 sll r3,r3,0x04
0013a4c8: 96e20002 lhu r2,0x0002(r23)
0013a4cc: 3063007f andi r3,r3,0x007f
0013a4d0: 00621821 addu r3,r3,r2
0013a4d4: 0804e93e j 0x0013a4f8
0013a4d8: a7a3002a sh r3,0x002a(r29)
0013a4dc: 8fa200c4 lw r2,0x00c4(r29)
0013a4e0: 96e30002 lhu r3,0x0002(r23)
0013a4e4: 2442ffff addiu r2,r2,0xffff
0013a4e8: 00021100 sll r2,r2,0x04
0013a4ec: 3042007f andi r2,r2,0x007f
0013a4f0: 00431021 addu r2,r2,r3
0013a4f4: a7a2002a sh r2,0x002a(r29)
0013a4f8: 8fb400d8 lw r20,0x00d8(r29)
0013a4fc: 87a4001c lh r4,0x001c(r29)
0013a500: 34020010 ori r2,r0,0x0010
0013a504: a7a2002e sh r2,0x002e(r29)
0013a508: 97a2002a lhu r2,0x002a(r29)
0013a50c: 34090001 ori r9,r0,0x0001
0013a510: afa90100 sw r9,0x0100(r29)
0013a514: 000420c0 sll r4,r4,0x03
0013a518: 24420080 addiu r2,r2,0x0080
0013a51c: 0c04bbac jal 0x0012eeb0
0013a520: a7a2002a sh r2,0x002a(r29)
0013a524: 0040f021 addu r30,r2,r0
0013a528: 87a5001c lh r5,0x001c(r29)
0013a52c: 03c02021 addu r4,r30,r0
0013a530: 0c052fb6 jal 0x0014bed8
0013a534: 000528c0 sll r5,r5,0x03
0013a538: 87a2001c lh r2,0x001c(r29)
0013a53c: 8fb500d8 lw r21,0x00d8(r29)
0013a540: 00009021 addu r18,r0,r0
0013a544: 3c018016 lui r1,0x8016
0013a548: ac225fa8 sw r2,0x5fa8(r1)
0013a54c: 00002821 addu r5,r0,r0
0013a550: 8fa200b8 lw r2,0x00b8(r29)
0013a554: 8fa300c8 lw r3,0x00c8(r29)
0013a558: 86a40004 lh r4,0x0004(r21)
0013a55c: 8fa900e8 lw r9,0x00e8(r29)
0013a560: 00621821 addu r3,r3,r2
0013a564: 0c0529b3 jal 0x0014a6cc
0013a568: 00698821 addu r17,r3,r9
0013a56c: 86a2000a lh r2,0x000a(r21)
0013a570: 34090002 ori r9,r0,0x0002
0013a574: 10490007 beq r2,r9,0x0013a594
0013a578: 00111840 sll r3,r17,0x01
0013a57c: 8e82001c lw r2,0x001c(r20)
0013a580: 00000000 nop
0013a584: 00621821 addu r3,r3,r2
0013a588: 84620000 lh r2,0x0000(r3)
0013a58c: 3c018016 lui r1,0x8016
0013a590: ac225f8c sw r2,0x5f8c(r1)
0013a594: 3c038016 lui r3,0x8016
0013a598: 8c635f8c lw r3,0x5f8c(r3)
0013a59c: 34020004 ori r2,r0,0x0004
0013a5a0: 3c018016 lui r1,0x8016
0013a5a4: ac205fac sw r0,0x5fac(r1)
0013a5a8: 14620004 bne r3,r2,0x0013a5bc
0013a5ac: 3c024444 lui r2,0x4444
0013a5b0: 34424444 ori r2,r2,0x4444
0013a5b4: 3c018016 lui r1,0x8016
0013a5b8: ac225fac sw r2,0x5fac(r1)
0013a5bc: 86a3000a lh r3,0x000a(r21)
0013a5c0: 00000000 nop
0013a5c4: 14600029 bne r3,r0,0x0013a66c
0013a5c8: 34090001 ori r9,r0,0x0001
0013a5cc: 8e820010 lw r2,0x0010(r20)
0013a5d0: 00118040 sll r16,r17,0x01
0013a5d4: 02021021 addu r2,r16,r2
0013a5d8: 84440000 lh r4,0x0000(r2)
0013a5dc: 3c068016 lui r6,0x8016
0013a5e0: 24c65fa0 addiu r6,r6,0x5fa0
0013a5e4: 0c052cbc jal 0x0014b2f0
0013a5e8: 03c02821 addu r5,r30,r0
0013a5ec: 8e83001c lw r3,0x001c(r20)
0013a5f0: 3c028017 lui r2,0x8017
0013a5f4: 8c424038 lw r2,0x4038(r2)
0013a5f8: 02038021 addu r16,r16,r3
0013a5fc: 00021280 sll r2,r2,0x0a
0013a600: 86030000 lh r3,0x0000(r16)
0013a604: 3c018017 lui r1,0x8017
0013a608: 00220821 addu r1,r1,r2
0013a60c: 8c229878 lw r2,-0x6788(r1)
0013a610: 3c018016 lui r1,0x8016
0013a614: ac235f8c sw r3,0x5f8c(r1)
0013a618: 1040006b beq r2,r0,0x0013a7c8
0013a61c: 00000000 nop
0013a620: 3c028017 lui r2,0x8017
0013a624: 8c424048 lw r2,0x4048(r2)
0013a628: 00000000 nop
0013a62c: 00511021 addu r2,r2,r17
0013a630: 90420290 lbu r2,0x0290(r2)
0013a634: 00000000 nop
0013a638: 30420001 andi r2,r2,0x0001
0013a63c: 10400062 beq r2,r0,0x0013a7c8
0013a640: 00002821 addu r5,r0,r0
0013a644: 86a40004 lh r4,0x0004(r21)
0013a648: 0c0529b3 jal 0x0014a6cc
0013a64c: 24840050 addiu r4,r4,0x0050
0013a650: 34045088 ori r4,r0,0x5088
0013a654: 3c068016 lui r6,0x8016
0013a658: 24c65fa0 addiu r6,r6,0x5fa0
0013a65c: 0c052cbc jal 0x0014b2f0
0013a660: 03c02821 addu r5,r30,r0
0013a664: 0804e9f3 j 0x0013a7cc
0013a668: 26940004 addiu r20,r20,0x0004
0013a66c: 1469000d bne r3,r9,0x0013a6a4
0013a670: 34020003 ori r2,r0,0x0003
0013a674: 34050002 ori r5,r0,0x0002
0013a678: 03c03021 addu r6,r30,r0
0013a67c: 00111040 sll r2,r17,0x01
0013a680: 8e830010 lw r3,0x0010(r20)
0013a684: 3c098016 lui r9,0x8016
0013a688: 25295fac addiu r9,r9,0x5fac
0013a68c: 00431021 addu r2,r2,r3
0013a690: 84440000 lh r4,0x0000(r2)
0013a694: 0c052ad6 jal 0x0014ab58
0013a698: 2527fff4 addiu r7,r9,0xfff4
0013a69c: 0804e9f3 j 0x0013a7cc
0013a6a0: 26940004 addiu r20,r20,0x0004
0013a6a4: 14620048 bne r3,r2,0x0013a7c8
0013a6a8: 34090002 ori r9,r0,0x0002
0013a6ac: 1249000a beq r18,r9,0x0013a6d8
0013a6b0: 00111840 sll r3,r17,0x01
0013a6b4: 34090001 ori r9,r0,0x0001
0013a6b8: 16490025 bne r18,r9,0x0013a750
0013a6bc: 00000000 nop
0013a6c0: 8fa900d8 lw r9,0x00d8(r29)
0013a6c4: 00000000 nop
0013a6c8: 8522000e lh r2,0x000e(r9)
0013a6cc: 34090002 ori r9,r0,0x0002
0013a6d0: 1449001f bne r2,r9,0x0013a750
0013a6d4: 00000000 nop
0013a6d8: 8e820010 lw r2,0x0010(r20)
0013a6dc: 00000000 nop
0013a6e0: 00621821 addu r3,r3,r2
0013a6e4: 94620000 lhu r2,0x0000(r3)
0013a6e8: 00000000 nop
0013a6ec: 2c420002 sltiu r2,r2,0x0002
0013a6f0: 10400017 beq r2,r0,0x0013a750
0013a6f4: 00000000 nop
0013a6f8: 3c028017 lui r2,0x8017
0013a6fc: 8c424048 lw r2,0x4048(r2)
0013a700: 00000000 nop
0013a704: 00511021 addu r2,r2,r17
0013a708: 90430334 lbu r3,0x0334(r2)
0013a70c: 340200ff ori r2,r0,0x00ff
0013a710: 10620003 beq r3,r2,0x0013a720
0013a714: 03c02021 addu r4,r30,r0
0013a718: 1460000d bne r3,r0,0x0013a750
0013a71c: 00000000 nop
0013a720: 3c098016 lui r9,0x8016
0013a724: 25295fac addiu r9,r9,0x5fac
0013a728: 3c028016 lui r2,0x8016
0013a72c: 94425fa2 lhu r2,0x5fa2(r2)
0013a730: 00000000 nop
0013a734: 24420002 addiu r2,r2,0x0002
0013a738: 3c018016 lui r1,0x8016
0013a73c: a4225fa2 sh r2,0x5fa2(r1)
0013a740: 0c052c99 jal 0x0014b264
0013a744: 2525fff4 addiu r5,r9,0xfff4
0013a748: 0804e9f3 j 0x0013a7cc
0013a74c: 26940004 addiu r20,r20,0x0004
0013a750: 8e830010 lw r3,0x0010(r20)
0013a754: 00111040 sll r2,r17,0x01
0013a758: 00431021 addu r2,r2,r3
0013a75c: 94440000 lhu r4,0x0000(r2)
0013a760: 00000000 nop
0013a764: 308207ff andi r2,r4,0x07ff
0013a768: 10400017 beq r2,r0,0x0013a7c8
0013a76c: 28420064 slti r2,r2,0x0064
0013a770: 1440000f bne r2,r0,0x0013a7b0
0013a774: 00042400 sll r4,r4,0x10
0013a778: 3404509d ori r4,r0,0x509d
0013a77c: 3c028016 lui r2,0x8016
0013a780: 94425fa0 lhu r2,0x5fa0(r2)
0013a784: 3c068016 lui r6,0x8016
0013a788: 24c65fa0 addiu r6,r6,0x5fa0
0013a78c: 3c018016 lui r1,0x8016
0013a790: ac205f8c sw r0,0x5f8c(r1)
0013a794: 24420003 addiu r2,r2,0x0003
0013a798: 3c018016 lui r1,0x8016
0013a79c: a4225fa0 sh r2,0x5fa0(r1)
0013a7a0: 0c052cbc jal 0x0014b2f0
0013a7a4: 03c02821 addu r5,r30,r0
0013a7a8: 0804e9f3 j 0x0013a7cc
0013a7ac: 26940004 addiu r20,r20,0x0004
0013a7b0: 00042403 sra r4,r4,0x10
0013a7b4: 34050002 ori r5,r0,0x0002
0013a7b8: 3c078016 lui r7,0x8016
0013a7bc: 24e75fa0 addiu r7,r7,0x5fa0
0013a7c0: 0c052b0c jal 0x0014ac30
0013a7c4: 03c03021 addu r6,r30,r0
0013a7c8: 26940004 addiu r20,r20,0x0004
0013a7cc: 26520001 addiu r18,r18,0x0001
0013a7d0: 2a420003 slti r2,r18,0x0003
0013a7d4: 1440ff5d bne r2,r0,0x0013a54c
0013a7d8: 26b50002 addiu r21,r21,0x0002
0013a7dc: 27a40028 addiu r4,r29,0x0028
0013a7e0: 3c018016 lui r1,0x8016
0013a7e4: ac205f8c sw r0,0x5f8c(r1)
0013a7e8: 3c018016 lui r1,0x8016
0013a7ec: ac205fac sw r0,0x5fac(r1)
0013a7f0: 0c00923f jal 0x000248fc
0013a7f4: 03c02821 addu r5,r30,r0
0013a7f8: 27a400b0 addiu r4,r29,0x00b0
0013a7fc: 00002821 addu r5,r0,r0
0013a800: 00003021 addu r6,r0,r0
0013a804: 00003821 addu r7,r0,r0
0013a808: 97a20028 lhu r2,0x0028(r29)
0013a80c: 97a3002a lhu r3,0x002a(r29)
0013a810: 97a8002c lhu r8,0x002c(r29)
0013a814: 34090002 ori r9,r0,0x0002
0013a818: a7a900b6 sh r9,0x00b6(r29)
0013a81c: a7a200b0 sh r2,0x00b0(r29)
0013a820: 2462fffe addiu r2,r3,0xfffe
0013a824: 304200ff andi r2,r2,0x00ff
0013a828: 3063ff00 andi r3,r3,0xff00
0013a82c: 00431021 addu r2,r2,r3
0013a830: a7a200b2 sh r2,0x00b2(r29)
0013a834: 0c00921a jal 0x00024868
0013a838: a7a800b4 sh r8,0x00b4(r29)
0013a83c: 0c0532a0 jal 0x0014ca80
0013a840: 00000000 nop
0013a844: 16c0001e bne r22,r0,0x0013a8c0
0013a848: 00000000 nop
0013a84c: 00009021 addu r18,r0,r0
0013a850: 34078000 ori r7,r0,0x8000
0013a854: 3c06801d lui r6,0x801d
0013a858: 24c6c074 addiu r6,r6,0xc074
0013a85c: 94c20000 lhu r2,0x0000(r6)
0013a860: 94c30000 lhu r3,0x0000(r6)
0013a864: 94c40000 lhu r4,0x0000(r6)
0013a868: 94c50000 lhu r5,0x0000(r6)
0013a86c: a4c20020 sh r2,0x0020(r6)
0013a870: 2642fffc addiu r2,r18,0xfffc
0013a874: 2c420004 sltiu r2,r2,0x0004
0013a878: a4c30040 sh r3,0x0040(r6)
0013a87c: a4c40060 sh r4,0x0060(r6)
0013a880: 10400005 beq r2,r0,0x0013a898
0013a884: a4c50080 sh r5,0x0080(r6)
0013a888: 94c2fff8 lhu r2,-0x0008(r6)
0013a88c: a4c70040 sh r7,0x0040(r6)
0013a890: 0804ea2c j 0x0013a8b0
0013a894: a4c20020 sh r2,0x0020(r6)
0013a898: 2a420008 slti r2,r18,0x0008
0013a89c: 14400004 bne r2,r0,0x0013a8b0
0013a8a0: 00000000 nop
0013a8a4: 94c20070 lhu r2,0x0070(r6)
0013a8a8: 00000000 nop
0013a8ac: a4c20080 sh r2,0x0080(r6)
0013a8b0: 26520001 addiu r18,r18,0x0001
0013a8b4: 2a420010 slti r2,r18,0x0010
0013a8b8: 1440ffe8 bne r2,r0,0x0013a85c
0013a8bc: 24c60002 addiu r6,r6,0x0002
0013a8c0: 3c028016 lui r2,0x8016
0013a8c4: 8c426018 lw r2,0x6018(r2)
0013a8c8: 34090001 ori r9,r0,0x0001
0013a8cc: 1449001c bne r2,r9,0x0013a940
0013a8d0: 3c028888 lui r2,0x8888
0013a8d4: 34428889 ori r2,r2,0x8889
0013a8d8: 02c20018 mult r22,r2
0013a8dc: 001617c3 sra r2,r22,0x1f
0013a8e0: 00001810 mfhi r3
0013a8e4: 00761821 addu r3,r3,r22
0013a8e8: 00031903 sra r3,r3,0x04
0013a8ec: 00621823 subu r3,r3,r2
0013a8f0: 00031100 sll r2,r3,0x04
0013a8f4: 00431023 subu r2,r2,r3
0013a8f8: 00021040 sll r2,r2,0x01
0013a8fc: 02c21023 subu r2,r22,r2
0013a900: 28420018 slti r2,r2,0x0018
0013a904: 10400007 beq r2,r0,0x0013a924
0013a908: 00000000 nop
0013a90c: 3c048017 lui r4,0x8017
0013a910: 24848eec addiu r4,r4,0x8eec
0013a914: 3c09801d lui r9,0x801d
0013a918: 2529c074 addiu r9,r9,0xc074
0013a91c: 0804ea4e j 0x0013a938
0013a920: 25250060 addiu r5,r9,0x0060
0013a924: 3c048017 lui r4,0x8017
0013a928: 24848eec addiu r4,r4,0x8eec
0013a92c: 3c09801d lui r9,0x801d
0013a930: 2529c074 addiu r9,r9,0xc074
0013a934: 25250080 addiu r5,r9,0x0080
0013a938: 0c00923f jal 0x000248fc
0013a93c: 00000000 nop
0013a940: 8fa900f8 lw r9,0x00f8(r29)
0013a944: 00000000 nop
0013a948: 11200004 beq r9,r0,0x0013a95c
0013a94c: 00000000 nop
0013a950: 0c04bc13 jal 0x0012f04c
0013a954: 03c02021 addu r4,r30,r0
0013a958: afa000f8 sw r0,0x00f8(r29)
0013a95c: 8fa900e8 lw r9,0x00e8(r29)
0013a960: 00000000 nop
0013a964: 15200012 bne r9,r0,0x0013a9b0
0013a968: 00000000 nop
0013a96c: 0c04dee6 jal 0x00137b98
0013a970: 00000000 nop
0013a974: 1040000e beq r2,r0,0x0013a9b0
0013a978: 27a20018 addiu r2,r29,0x0018
0013a97c: 02e02021 addu r4,r23,r0
0013a980: 27a500b8 addiu r5,r29,0x00b8
0013a984: 27a600c4 addiu r6,r29,0x00c4
0013a988: 27a700c8 addiu r7,r29,0x00c8
0013a98c: 0c04e63f jal 0x001398fc
0013a990: afa20010 sw r2,0x0010(r29)
0013a994: 0040f021 addu r30,r2,r0
0013a998: 27a400b0 addiu r4,r29,0x00b0
0013a99c: 00002821 addu r5,r0,r0
0013a9a0: 00003021 addu r6,r0,r0
0013a9a4: 00003821 addu r7,r0,r0
0013a9a8: 0c00921a jal 0x00024868
0013a9ac: afbe00f8 sw r30,0x00f8(r29)
0013a9b0: 97a200c8 lhu r2,0x00c8(r29)
0013a9b4: 97a300b8 lhu r3,0x00b8(r29)
0013a9b8: 00000000 nop
0013a9bc: 00431021 addu r2,r2,r3
0013a9c0: a6e20038 sh r2,0x0038(r23)
0013a9c4: 8fa900d8 lw r9,0x00d8(r29)
0013a9c8: 3c048017 lui r4,0x8017
0013a9cc: 248497d0 addiu r4,r4,0x97d0
0013a9d0: 0c04e025 jal 0x00138094
0013a9d4: a5230028 sh r3,0x0028(r9)
0013a9d8: 14400114 bne r2,r0,0x0013ae2c
0013a9dc: 34020002 ori r2,r0,0x0002
0013a9e0: 0c04e118 jal 0x00138460
0013a9e4: 26640090 addiu r4,r19,0x0090
0013a9e8: 8e6400f8 lw r4,0x00f8(r19)
0013a9ec: 0c04e105 jal 0x00138414
0013a9f0: 00000000 nop
0013a9f4: 8e6400fc lw r4,0x00fc(r19)
0013a9f8: 0c04e105 jal 0x00138414
0013a9fc: 00000000 nop
0013aa00: 8e640100 lw r4,0x0100(r19)
0013aa04: 0c04e105 jal 0x00138414
0013aa08: 00000000 nop
0013aa0c: 0c053317 jal 0x0014cc5c
0013aa10: 00000000 nop
0013aa14: 14400006 bne r2,r0,0x0013aa30
0013aa18: 34090001 ori r9,r0,0x0001
0013aa1c: 3c028016 lui r2,0x8016
0013aa20: 8c426028 lw r2,0x6028(r2)
0013aa24: 00000000 nop
0013aa28: 14490004 bne r2,r9,0x0013aa3c
0013aa2c: 34027ffc ori r2,r0,0x7ffc
0013aa30: 8fa300bc lw r3,0x00bc(r29)
0013aa34: 0804ea90 j 0x0013aa40
0013aa38: 34027f7d ori r2,r0,0x7f7d
0013aa3c: 8fa300bc lw r3,0x00bc(r29)
0013aa40: 00000000 nop
0013aa44: a462000e sh r2,0x000e(r3)
0013aa48: 02e02021 addu r4,r23,r0
0013aa4c: 26650090 addiu r5,r19,0x0090
0013aa50: 8fa700c8 lw r7,0x00c8(r29)
0013aa54: 0c04e15c jal 0x00138570
0013aa58: 02c03021 addu r6,r22,r0
0013aa5c: 8fa900d8 lw r9,0x00d8(r29)
0013aa60: 00000000 nop
0013aa64: 85220002 lh r2,0x0002(r9)
0013aa68: 00000000 nop
0013aa6c: 1040002e beq r2,r0,0x0013ab28
0013aa70: 00000000 nop
0013aa74: 0c053317 jal 0x0014cc5c
0013aa78: 00000000 nop
0013aa7c: 1440002a bne r2,r0,0x0013ab28
0013aa80: 00000000 nop
0013aa84: 8fa200b8 lw r2,0x00b8(r29)
0013aa88: 00000000 nop
0013aa8c: 10400005 beq r2,r0,0x0013aaa4
0013aa90: 00000000 nop
0013aa94: 0c05297a jal 0x0014a5e8
0013aa98: 26640014 addiu r4,r19,0x0014
0013aa9c: 0c05297a jal 0x0014a5e8
0013aaa0: 2664003c addiu r4,r19,0x003c
0013aaa4: 8fa900d8 lw r9,0x00d8(r29)
0013aaa8: 8fa200b8 lw r2,0x00b8(r29)
0013aaac: 85230002 lh r3,0x0002(r9)
0013aab0: 00000000 nop
0013aab4: 10430005 beq r2,r3,0x0013aacc
0013aab8: 00000000 nop
0013aabc: 0c05297a jal 0x0014a5e8
0013aac0: 26640028 addiu r4,r19,0x0028
0013aac4: 0c05297a jal 0x0014a5e8
0013aac8: 26640050 addiu r4,r19,0x0050
0013aacc: 86630032 lh r3,0x0032(r19)
0013aad0: 8666001e lh r6,0x001e(r19)
0013aad4: 86620026 lh r2,0x0026(r19)
0013aad8: 9664001c lhu r4,0x001c(r19)
0013aadc: 00c23021 addu r6,r6,r2
0013aae0: a664006c sh r4,0x006c(r19)
0013aae4: 86e20038 lh r2,0x0038(r23)
0013aae8: 00661823 subu r3,r3,r6
0013aaec: 00620018 mult r3,r2
0013aaf0: 8fa900d8 lw r9,0x00d8(r29)
0013aaf4: 00000000 nop
0013aaf8: 85220000 lh r2,0x0000(r9)
0013aafc: 85230002 lh r3,0x0002(r9)
0013ab00: 00002812 mflo r5
0013ab04: 00431021 addu r2,r2,r3
0013ab08: 00000000 nop
0013ab0c: 00a2001a div r5,r2
0013ab10: 00002812 mflo r5
0013ab14: 26640064 addiu r4,r19,0x0064
0013ab18: 00c53021 addu r6,r6,r5
0013ab1c: 24c6fffe addiu r6,r6,0xfffe
0013ab20: 0c05297a jal 0x0014a5e8
0013ab24: a666006e sh r6,0x006e(r19)
0013ab28: 3c028016 lui r2,0x8016
0013ab2c: 8c426018 lw r2,0x6018(r2)
0013ab30: 00000000 nop
0013ab34: 28420002 slti r2,r2,0x0002
0013ab38: 10400008 beq r2,r0,0x0013ab5c
0013ab3c: 00000000 nop
0013ab40: 8fa900e8 lw r9,0x00e8(r29)
0013ab44: 00000000 nop
0013ab48: 15200004 bne r9,r0,0x0013ab5c
0013ab4c: 00000000 nop
0013ab50: 8fa500c8 lw r5,0x00c8(r29)
0013ab54: 0c04df04 jal 0x00137c10
0013ab58: 02e02021 addu r4,r23,r0
0013ab5c: 0c04dfe1 jal 0x00137f84
0013ab60: 02e02021 addu r4,r23,r0
0013ab64: 3c028016 lui r2,0x8016
0013ab68: 8c425f88 lw r2,0x5f88(r2)
0013ab6c: 34090001 ori r9,r0,0x0001
0013ab70: 14490008 bne r2,r9,0x0013ab94
0013ab74: 34090002 ori r9,r0,0x0002
0013ab78: 0c04e6f7 jal 0x00139bdc
0013ab7c: 00000000 nop
0013ab80: 30420001 andi r2,r2,0x0001
0013ab84: 10400006 beq r2,r0,0x0013aba0
0013ab88: 34090002 ori r9,r0,0x0002
0013ab8c: 3c028016 lui r2,0x8016
0013ab90: 8c425f88 lw r2,0x5f88(r2)
0013ab94: 00000000 nop
0013ab98: 14490015 bne r2,r9,0x0013abf0
0013ab9c: 00000000 nop
0013aba0: 3c028004 lui r2,0x8004
0013aba4: 904273a4 lbu r2,0x73a4(r2)
0013aba8: 8fa900f0 lw r9,0x00f0(r29)
0013abac: 00000000 nop
0013abb0: 0122102a slt r2,r9,r2
0013abb4: 10400005 beq r2,r0,0x0013abcc
0013abb8: 00000000 nop
0013abbc: 3c028004 lui r2,0x8004
0013abc0: 904273a5 lbu r2,0x73a5(r2)
0013abc4: 0804eaf5 j 0x0013abd4
0013abc8: 00000000 nop
0013abcc: 3c028004 lui r2,0x8004
0013abd0: 904273a6 lbu r2,0x73a6(r2)
0013abd4: 8fa900e8 lw r9,0x00e8(r29)
0013abd8: 00021040 sll r2,r2,0x01
0013abdc: 01220018 mult r9,r2
0013abe0: 8fa900e0 lw r9,0x00e0(r29)
0013abe4: 00001012 mflo r2
0013abe8: 01224821 addu r9,r9,r2
0013abec: afa900e0 sw r9,0x00e0(r29)
0013abf0: 3c028016 lui r2,0x8016
0013abf4: 8c425f88 lw r2,0x5f88(r2)
0013abf8: 8fa900f0 lw r9,0x00f0(r29)
0013abfc: 00000000 nop
0013ac00: 01224821 addu r9,r9,r2
0013ac04: afa900f0 sw r9,0x00f0(r29)
0013ac08: 8fa900e0 lw r9,0x00e0(r29)
0013ac0c: 00000000 nop
0013ac10: 2522000f addiu r2,r9,0x000f
0013ac14: 2c42001f sltiu r2,r2,0x001f
0013ac18: 1440001f bne r2,r0,0x0013ac98
0013ac1c: 00000000 nop
0013ac20: 8fa200c4 lw r2,0x00c4(r29)
0013ac24: 8fa900e8 lw r9,0x00e8(r29)
0013ac28: 8fa300b8 lw r3,0x00b8(r29)
0013ac2c: 01221021 addu r2,r9,r2
0013ac30: 01231821 addu r3,r9,r3
0013ac34: afa200c4 sw r2,0x00c4(r29)
0013ac38: 0c04e6f7 jal 0x00139bdc
0013ac3c: afa300b8 sw r3,0x00b8(r29)
0013ac40: 3c048004 lui r4,0x8004
0013ac44: 908473a1 lbu r4,0x73a1(r4)
0013ac48: 3c038016 lui r3,0x8016
0013ac4c: 8c635f88 lw r3,0x5f88(r3)
0013ac50: 00000000 nop
0013ac54: 0083001a div r4,r3
0013ac58: 00002012 mflo r4
0013ac5c: afa000e0 sw r0,0x00e0(r29)
0013ac60: 0044102a slt r2,r2,r4
0013ac64: 14400009 bne r2,r0,0x0013ac8c
0013ac68: afa000e8 sw r0,0x00e8(r29)
0013ac6c: 3c028017 lui r2,0x8017
0013ac70: 8c42d9a0 lw r2,-0x2660(r2)
0013ac74: 3c038017 lui r3,0x8017
0013ac78: 8c6397d0 lw r3,-0x6830(r3)
0013ac7c: 30425000 andi r2,r2,0x5000
0013ac80: 00431025 or r2,r2,r3
0013ac84: 3c018017 lui r1,0x8017
0013ac88: ac2297d0 sw r2,-0x6830(r1)
0013ac8c: 0c04bc13 jal 0x0012f04c
0013ac90: 03c02021 addu r4,r30,r0
0013ac94: afa00100 sw r0,0x0100(r29)
0013ac98: 8fa200c4 lw r2,0x00c4(r29)
0013ac9c: 8fa900e0 lw r9,0x00e0(r29)
0013aca0: 8fa300bc lw r3,0x00bc(r29)
0013aca4: 00021100 sll r2,r2,0x04
0013aca8: 00491021 addu r2,r2,r9
0013acac: 2442fffe addiu r2,r2,0xfffe
0013acb0: 3042007f andi r2,r2,0x007f
0013acb4: a062000d sb r2,0x000d(r3)
0013acb8: 3c028016 lui r2,0x8016
0013acbc: 8c425f88 lw r2,0x5f88(r2)
0013acc0: 00000000 nop
0013acc4: 02c20018 mult r22,r2
0013acc8: 00001012 mflo r2
0013accc: 2842000c slti r2,r2,0x000c
0013acd0: 1040000d beq r2,r0,0x0013ad08
0013acd4: 02e02821 addu r5,r23,r0
0013acd8: 02602021 addu r4,r19,r0
0013acdc: 26e60008 addiu r6,r23,0x0008
0013ace0: 0c052a0d jal 0x0014a834
0013ace4: 27a70018 addiu r7,r29,0x0018
0013ace8: 3c028016 lui r2,0x8016
0013acec: 8c425f88 lw r2,0x5f88(r2)
0013acf0: 00000000 nop
0013acf4: 02c20018 mult r22,r2
0013acf8: 8fa500bc lw r5,0x00bc(r29)
0013acfc: 00003012 mflo r6
0013ad00: 0c04e1db jal 0x0013876c
0013ad04: 02e02021 addu r4,r23,r0
0013ad08: 8fa900d8 lw r9,0x00d8(r29)
0013ad0c: 00000000 nop
0013ad10: 8522000c lh r2,0x000c(r9)
0013ad14: 00000000 nop
0013ad18: 14400011 bne r2,r0,0x0013ad60
0013ad1c: 00000000 nop
0013ad20: 87a200c0 lh r2,0x00c0(r29)
0013ad24: 34090001 ori r9,r0,0x0001
0013ad28: 1449000d bne r2,r9,0x0013ad60
0013ad2c: 00000000 nop
0013ad30: 8ee30030 lw r3,0x0030(r23)
0013ad34: 966200c4 lhu r2,0x00c4(r19)
0013ad38: 94630006 lhu r3,0x0006(r3)
0013ad3c: 00000000 nop
0013ad40: 00431021 addu r2,r2,r3
0013ad44: a66200c4 sh r2,0x00c4(r19)
0013ad48: 8ee30030 lw r3,0x0030(r23)
0013ad4c: 966200d8 lhu r2,0x00d8(r19)
0013ad50: 94630006 lhu r3,0x0006(r3)
0013ad54: 00000000 nop
0013ad58: 00431021 addu r2,r2,r3
0013ad5c: a66200d8 sh r2,0x00d8(r19)
0013ad60: 966200c6 lhu r2,0x00c6(r19)
0013ad64: 966300da lhu r3,0x00da(r19)
0013ad68: 24420004 addiu r2,r2,0x0004
0013ad6c: 24630004 addiu r3,r3,0x0004
0013ad70: a66200c6 sh r2,0x00c6(r19)
0013ad74: a66300da sh r3,0x00da(r19)
0013ad78: 86e2002c lh r2,0x002c(r23)
0013ad7c: 00000000 nop
0013ad80: 28420005 slti r2,r2,0x0005
0013ad84: 14400014 bne r2,r0,0x0013add8
0013ad88: 00000000 nop
0013ad8c: 8e6400f8 lw r4,0x00f8(r19)
0013ad90: 0c05297a jal 0x0014a5e8
0013ad94: 00000000 nop
0013ad98: 8e6400fc lw r4,0x00fc(r19)
0013ad9c: 0c05297a jal 0x0014a5e8
0013ada0: 00000000 nop
0013ada4: 3c028017 lui r2,0x8017
0013ada8: 8c424038 lw r2,0x4038(r2)
0013adac: 00000000 nop
0013adb0: 00021280 sll r2,r2,0x0a
0013adb4: 3c018017 lui r1,0x8017
0013adb8: 00220821 addu r1,r1,r2
0013adbc: 8c229878 lw r2,-0x6788(r1)
0013adc0: 00000000 nop
0013adc4: 10400004 beq r2,r0,0x0013add8
0013adc8: 00000000 nop
0013adcc: 8e640100 lw r4,0x0100(r19)
0013add0: 0c05297a jal 0x0014a5e8
0013add4: 00000000 nop
0013add8: 0c05297a jal 0x0014a5e8
0013addc: 266400e4 addiu r4,r19,0x00e4
0013ade0: 0c05297a jal 0x0014a5e8
0013ade4: 266400bc addiu r4,r19,0x00bc
0013ade8: 0c05297a jal 0x0014a5e8
0013adec: 266400d0 addiu r4,r19,0x00d0
0013adf0: 0c05297a jal 0x0014a5e8
0013adf4: 26640084 addiu r4,r19,0x0084
0013adf8: 8fa400bc lw r4,0x00bc(r29)
0013adfc: 0c05297a jal 0x0014a5e8
0013ae00: 26d60001 addiu r22,r22,0x0001
0013ae04: 0c05297a jal 0x0014a5e8
0013ae08: 26640078 addiu r4,r19,0x0078
0013ae0c: 0c05297a jal 0x0014a5e8
0013ae10: 2664009c addiu r4,r19,0x009c
0013ae14: 0c05297a jal 0x0014a5e8
0013ae18: 266400a8 addiu r4,r19,0x00a8
0013ae1c: 0c05297a jal 0x0014a5e8
0013ae20: 26640090 addiu r4,r19,0x0090
0013ae24: 0804e84a j 0x0013a128
0013ae28: 32c30001 andi r3,r22,0x0001
0013ae2c: 3c038016 lui r3,0x8016
0013ae30: 8c636018 lw r3,0x6018(r3)
0013ae34: 00000000 nop
0013ae38: 10620007 beq r3,r2,0x0013ae58
0013ae3c: 00000000 nop
0013ae40: 3c048017 lui r4,0x8017
0013ae44: 24848eec addiu r4,r4,0x8eec
0013ae48: 3c05801d lui r5,0x801d
0013ae4c: 24a5c074 addiu r5,r5,0xc074
0013ae50: 0c00923f jal 0x000248fc
0013ae54: 00000000 nop
0013ae58: 8fa90100 lw r9,0x0100(r29)
0013ae5c: 00000000 nop
0013ae60: 11200003 beq r9,r0,0x0013ae70
0013ae64: 00000000 nop
0013ae68: 0c04bc13 jal 0x0012f04c
0013ae6c: 03c02021 addu r4,r30,r0
0013ae70: 0c0532a0 jal 0x0014ca80
0013ae74: 00000000 nop
0013ae78: 3c028016 lui r2,0x8016
0013ae7c: 8c426018 lw r2,0x6018(r2)
0013ae80: 00000000 nop
0013ae84: 2442ffff addiu r2,r2,0xffff
0013ae88: 3c018016 lui r1,0x8016
0013ae8c: ac226018 sw r2,0x6018(r1)
0013ae90: 0c0532fd jal 0x0014cbf4
0013ae94: 00000000 nop
0013ae98: 14400003 bne r2,r0,0x0013aea8
0013ae9c: 00000000 nop
0013aea0: 0c053256 jal 0x0014c958
0013aea4: 00000000 nop
0013aea8: 8fbf012c lw r31,0x012c(r29)
0013aeac: 8fbe0128 lw r30,0x0128(r29)
0013aeb0: 8fb70124 lw r23,0x0124(r29)
0013aeb4: 8fb60120 lw r22,0x0120(r29)
0013aeb8: 8fb5011c lw r21,0x011c(r29)
0013aebc: 8fb40118 lw r20,0x0118(r29)
0013aec0: 8fb30114 lw r19,0x0114(r29)
0013aec4: 8fb20110 lw r18,0x0110(r29)
0013aec8: 8fb1010c lw r17,0x010c(r29)
0013aecc: 8fb00108 lw r16,0x0108(r29)
0013aed0: 27bd0130 addiu r29,r29,0x0130
0013aed4: 03e00008 jr r31
0013aed8: 00000000 nop