0019db80 - 0019dca8

From Final Fantasy Hacktics Wiki
Revision as of 15:42, 8 February 2015 by Choto (talk | contribs) (Created page with "<font face='Courier New'> 0019d37c: 3c02801a lui r2,0x801a 0019d380: 90420d7b lbu r2,0x0d7b(r2) 0019d384: 27bdffe0 addiu r29,r29,0xffe0 0019d388: afb20018 sw r18,0x0018(...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

0019d37c: 3c02801a lui r2,0x801a
0019d380: 90420d7b lbu r2,0x0d7b(r2)
0019d384: 27bdffe0 addiu r29,r29,0xffe0
0019d388: afb20018 sw r18,0x0018(r29)
0019d38c: 3c12801a lui r18,0x801a
0019d390: 2652f3c4 addiu r18,r18,0xf3c4
0019d394: afbf001c sw r31,0x001c(r29)
0019d398: afb10014 sw r17,0x0014(r29)
0019d39c: 1040000f beq r2,r0,0x0019d3dc			branch if able to act
0019d3a0: afb00010 sw r16,0x0010(r29)
if unable to act
0019d3a4: 3c02801a lui r2,0x801a
0019d3a8: 904202b2 lbu r2,0x02b2(r2)
0019d3ac: 00000000 nop
0019d3b0: 1040000a beq r2,r0,0x0019d3dc
0019d3b4: 00000000 nop
0019d3b8: 0c0678de jal 0x0019e378				transfer AI data to unit data
0019d3bc: 34040001 ori r4,r0,0x0001
0019d3c0: 3c03801a lui r3,0x801a
0019d3c4: 906302b2 lbu r3,0x02b2(r3)
0019d3c8: 34020001 ori r2,r0,0x0001
0019d3cc: 10620062 beq r3,r2,0x0019d558
0019d3d0: 34020002 ori r2,r0,0x0002
0019d3d4: 106200b7 beq r3,r2,0x0019d6b4
0019d3d8: 00000000 nop
if able to act
0019d3dc: 0c0076ea jal 0x0001dba8				GPU manipulations?
0019d3e0: 34040001 ori r4,r0,0x0001
0019d3e4: 284201b9 slti r2,r2,0x01b9			set if returned value < 0x1b9
0019d3e8: 14400004 bne r2,r0,0x0019d3fc			branch if so
0019d3ec: 00000000 nop
0019d3f0: a2400eee sb r0,0x0eee(r18)
0019d3f4: 080676d9 j 0x0019db64					jump to end, return r2 = 0xffff
0019d3f8: 2402ffff addiu r2,r0,0xffff
0019d3fc: 0c067858 jal 0x0019e160				transfer unit data to AI data (status CT)
0019d400: 00002021 addu r4,r0,r0
0019d404: a24019bc sb r0,0x19bc(r18)			clear ??
0019d408: 34110014 ori r17,r0,0x0014
0019d40c: 26420014 addiu r2,r18,0x0014
0019d410: a0400e18 sb r0,0x0e18(r2)
0019d414: 2631ffff addiu r17,r17,0xffff
0019d418: 0621fffd bgez r17,0x0019d410
0019d41c: 2442ffff addiu r2,r2,0xffff			set some data = 0
0019d420: 92430014 lbu r3,0x0014(r18)			load targeting byte?
0019d424: 340200ff ori r2,r0,0x00ff
0019d428: a6400032 sh r0,0x0032(r18)
0019d42c: 10600017 beq r3,r0,0x0019d48c			branch if no target?
0019d430: a2420031 sb r2,0x0031(r18)			store base hit = 0xff?
0019d434: 9243001d lbu r3,0x001d(r18)			load skillset of last attack
0019d438: 00000000 nop
0019d43c: 10600029 beq r3,r0,0x0019d4e4			branch if attack?
0019d440: 34020002 ori r2,r0,0x0002
0019d444: 1062002a beq r3,r2,0x0019d4f0			branch if defend? equip change?
0019d448: 00000000 nop
0019d44c: 2650001c addiu r16,r18,0x001c
0019d450: 0c05f0f7 jal 0x0017c3dc				call attack preparation (AT list preview)
0019d454: 02002021 addu r4,r16,r0
0019d458: 34030001 ori r3,r0,0x0001
0019d45c: 14430005 bne r2,r3,0x0019d474
0019d460: 00000000 nop
0019d464: 0c06772f jal 0x0019dcbc
0019d468: 02002021 addu r4,r16,r0
0019d46c: 104001b9 beq r2,r0,0x0019db54
0019d470: 00000000 nop
0019d474: 8e4317f8 lw r3,0x17f8(r18)			load acting units data
0019d478: 34020001 ori r2,r0,0x0001
0019d47c: 0c0676e0 jal 0x0019db80
0019d480: a0620188 sb r2,0x0188(r3)
0019d484: 08067538 j 0x0019d4e0
0019d488: 00000000 nop
0019d48c: 0c0676e0 jal 0x0019db80
0019d490: 00000000 nop
0019d494: 9243001d lbu r3,0x001d(r18)
0019d498: 00000000 nop
0019d49c: 10600011 beq r3,r0,0x0019d4e4
0019d4a0: 34020002 ori r2,r0,0x0002
0019d4a4: 10620012 beq r3,r2,0x0019d4f0
0019d4a8: 00000000 nop
0019d4ac: 2650001c addiu r16,r18,0x001c
0019d4b0: 0c05f0f7 jal 0x0017c3dc				call attack preparation (AT list preview)
0019d4b4: 02002021 addu r4,r16,r0
0019d4b8: 34030001 ori r3,r0,0x0001
0019d4bc: 14430005 bne r2,r3,0x0019d4d4
0019d4c0: 00000000 nop
0019d4c4: 0c06772f jal 0x0019dcbc
0019d4c8: 02002021 addu r4,r16,r0
0019d4cc: 104001a1 beq r2,r0,0x0019db54
0019d4d0: 00000000 nop
0019d4d4: 8e4317f8 lw r3,0x17f8(r18)
0019d4d8: 34020001 ori r2,r0,0x0001
0019d4dc: a0620188 sb r2,0x0188(r3)
0019d4e0: 9243001d lbu r3,0x001d(r18)
0019d4e4: 34020002 ori r2,r0,0x0002
0019d4e8: 14620009 bne r3,r2,0x0019d510
0019d4ec: 00000000 nop
0019d4f0: 92440e2e lbu r4,0x0e2e(r18)
0019d4f4: 0c060f80 jal 0x00183e00				enable/disable acting statuses
0019d4f8: 00000000 nop
0019d4fc: 8e4317f8 lw r3,0x17f8(r18)
0019d500: 34020064 ori r2,r0,0x0064
0019d504: a2420031 sb r2,0x0031(r18)
0019d508: 34020001 ori r2,r0,0x0001
0019d50c: a0620188 sb r2,0x0188(r3)
0019d510: 9242001d lbu r2,0x001d(r18)
0019d514: 00000000 nop
0019d518: 14400002 bne r2,r0,0x0019d524
0019d51c: 34020064 ori r2,r0,0x0064
0019d520: a2420031 sb r2,0x0031(r18)
0019d524: 92440e2e lbu r4,0x0e2e(r18)
0019d528: 0c060f1b jal 0x00183c6c				End of Turn
0019d52c: 00000000 nop
0019d530: 3c028019 lui r2,0x8019
0019d534: 8c42f518 lw r2,-0x0ae8(r2)			load in between turn control variable
0019d538: 3c038019 lui r3,0x8019
0019d53c: 8c63f51c lw r3,-0x0ae4(r3)			load menu control variable?
0019d540: 3c048019 lui r4,0x8019
0019d544: 8c84f520 lw r4,-0x0ae0(r4)			load active units ID?
0019d548: a6400eec sh r0,0x0eec(r18)
0019d54c: ae420ee0 sw r2,0x0ee0(r18)
0019d550: ae430ee4 sw r3,0x0ee4(r18)
0019d554: ae440ee8 sw r4,0x0ee8(r18)
0019d558: 0c0076ea jal 0x0001dba8
0019d55c: 34040001 ori r4,r0,0x0001
0019d560: 28420139 slti r2,r2,0x0139
0019d564: 1040016c beq r2,r0,0x0019db18
0019d568: 00000000 nop
0019d56c: 96420eec lhu r2,0x0eec(r18)
0019d570: 00000000 nop
0019d574: 24420001 addiu r2,r2,0x0001
0019d578: a6420eec sh r2,0x0eec(r18)
0019d57c: 96420eec lhu r2,0x0eec(r18)
0019d580: 00000000 nop
0019d584: 2c420100 sltiu r2,r2,0x0100
0019d588: 10400041 beq r2,r0,0x0019d690
0019d58c: 00000000 nop
0019d590: 0c0609fc jal 0x001827f0				in between turn routine
0019d594: 00002021 addu r4,r0,r0
0019d598: 00408821 addu r17,r2,r0
0019d59c: 3225ff00 andi r5,r17,0xff00
0019d5a0: 323100ff andi r17,r17,0x00ff
0019d5a4: 001110c0 sll r2,r17,0x03
0019d5a8: 00511023 subu r2,r2,r17
0019d5ac: 00021180 sll r2,r2,0x06
0019d5b0: 3c038019 lui r3,0x8019
0019d5b4: 246308cc addiu r3,r3,0x08cc
0019d5b8: 00438021 addu r16,r2,r3
0019d5bc: 3402ff00 ori r2,r0,0xff00
0019d5c0: 10a20033 beq r5,r2,0x0019d690
0019d5c4: 34020300 ori r2,r0,0x0300
0019d5c8: 14a20005 bne r5,r2,0x0019d5e0
0019d5cc: 34020200 ori r2,r0,0x0200
0019d5d0: 0c062f82 jal 0x0018be08				action hardcoding
0019d5d4: 02202021 addu r4,r17,r0
0019d5d8: 08067590 j 0x0019d640
0019d5dc: 00008821 addu r17,r0,r0
0019d5e0: 14a2000d bne r5,r2,0x0019d618
0019d5e4: 34020100 ori r2,r0,0x0100
0019d5e8: 0c06772f jal 0x0019dcbc
0019d5ec: 2604016e addiu r4,r16,0x016e
0019d5f0: 1040014f beq r2,r0,0x0019db30
0019d5f4: 340200ff ori r2,r0,0x00ff
0019d5f8: a202015d sb r2,0x015d(r16)			store no ability CT
0019d5fc: 92020058 lbu r2,0x0058(r16)			load statii
0019d600: 920301bb lbu r3,0x01bb(r16)			load status infliction
0019d604: 304200f6 andi r2,r2,0x00f6			remove performing/charging
0019d608: 306300f6 andi r3,r3,0x00f6			remove performing/charging
0019d60c: a2020058 sb r2,0x0058(r16)			store new status
0019d610: 0806758f j 0x0019d63c
0019d614: a20301bb sb r3,0x01bb(r16)			store new status infliction
0019d618: 14a20008 bne r5,r2,0x0019d63c
0019d61c: 00002021 addu r4,r0,r0
0019d620: 0c067c57 jal 0x0019f15c
0019d624: 02202821 addu r5,r17,r0
0019d628: 10400003 beq r2,r0,0x0019d638
0019d62c: 02511821 addu r3,r18,r17
0019d630: 34020001 ori r2,r0,0x0001
0019d634: a0620e18 sb r2,0x0e18(r3)
0019d638: a2000186 sb r0,0x0186(r16)			store turn over
0019d63c: 00008821 addu r17,r0,r0
0019d640: 340400ff ori r4,r0,0x00ff
0019d644: 3c038019 lui r3,0x8019
0019d648: 246308cc addiu r3,r3,0x08cc
0019d64c: 00608021 addu r16,r3,r0
0019d650: 92020001 lbu r2,0x0001(r16)			load unit ID
0019d654: 00000000 nop
0019d658: 10440006 beq r2,r4,0x0019d674			branch if doesn't exist
0019d65c: 00000000 nop
0019d660: 92020058 lbu r2,0x0058(r16)			load status
0019d664: 00000000 nop
0019d668: 30420009 andi r2,r2,0x0009
0019d66c: 14400006 bne r2,r0,0x0019d688			branch if charging/performing
0019d670: 34020015 ori r2,r0,0x0015
0019d674: 26310001 addiu r17,r17,0x0001
0019d678: 2a220015 slti r2,r17,0x0015		
0019d67c: 1440fff3 bne r2,r0,0x0019d64c			branch if counter < 0x15
0019d680: 260301c0 addiu r3,r16,0x01c0			next unit
0019d684: 34020015 ori r2,r0,0x0015
0019d688: 1622ffb3 bne r17,r2,0x0019d558		branch if coutner != 0x15
0019d68c: 00000000 nop
0019d690: 8e420ee0 lw r2,0x0ee0(r18)
0019d694: 8e430ee4 lw r3,0x0ee4(r18)
0019d698: 8e440ee8 lw r4,0x0ee8(r18)
0019d69c: 3c018019 lui r1,0x8019
0019d6a0: ac22f518 sw r2,-0x0ae8(r1)
0019d6a4: 3c018019 lui r1,0x8019
0019d6a8: ac23f51c sw r3,-0x0ae4(r1)
0019d6ac: 3c018019 lui r1,0x8019
0019d6b0: ac24f520 sw r4,-0x0ae0(r1)
0019d6b4: 0c0076ea jal 0x0001dba8
0019d6b8: 34040001 ori r4,r0,0x0001
0019d6bc: 284201b9 slti r2,r2,0x01b9
0019d6c0: 14400005 bne r2,r0,0x0019d6d8
0019d6c4: 3c030100 lui r3,0x0100
0019d6c8: 0c067858 jal 0x0019e160
0019d6cc: 34040001 ori r4,r0,0x0001
0019d6d0: 080676c9 j 0x0019db24
0019d6d4: 34020002 ori r2,r0,0x0002
0019d6d8: 8e420cb4 lw r2,0x0cb4(r18)
0019d6dc: 00000000 nop
0019d6e0: 00431024 and r2,r2,r3
0019d6e4: 10400048 beq r2,r0,0x0019d808
0019d6e8: 00008821 addu r17,r0,r0
0019d6ec: 00003021 addu r6,r0,r0
0019d6f0: 3405182c ori r5,r0,0x182c
0019d6f4: 02452021 addu r4,r18,r5				r4 = AI decision data
0019d6f8: 3c028019 lui r2,0x8019
0019d6fc: 244208cc addiu r2,r2,0x08cc
0019d700: 90830004 lbu r3,0x0004(r4)			load AI settings?
0019d704: 00c28021 addu r16,r6,r2
0019d708: 306300f8 andi r3,r3,0x00f8			remove 01,02,04
0019d70c: a0830004 sb r3,0x0004(r4)				store new flags
0019d710: 92020058 lbu r2,0x0058(r16)			load status
0019d714: 00000000 nop
0019d718: 30420020 andi r2,r2,0x0020
0019d71c: 10400007 beq r2,r0,0x0019d73c			branch if not dead
0019d720: 00000000 nop
0019d724: 9202005a lbu r2,0x005a(r16)			load status
0019d728: 00000000 nop
0019d72c: 30420020 andi r2,r2,0x0020
0019d730: 14400002 bne r2,r0,0x0019d73c			branch if reraise
0019d734: 34620001 ori r2,r3,0x0001				add 0x01 flag
0019d738: a0820004 sb r2,0x0004(r4)				store new AI setting
0019d73c: 92020059 lbu r2,0x0059(r16)
0019d740: 00000000 nop
0019d744: 30420080 andi r2,r2,0x0080
0019d748: 10400005 beq r2,r0,0x0019d760			branch if not petrified
0019d74c: 00000000 nop
0019d750: 90820004 lbu r2,0x0004(r4)			load AI settings
0019d754: 00000000 nop
0019d758: 34420002 ori r2,r2,0x0002				add 0x02
0019d75c: a0820004 sb r2,0x0004(r4)				store new
0019d760: 92020058 lbu r2,0x0058(r16)
0019d764: 00000000 nop
0019d768: 30420004 andi r2,r2,0x0004
0019d76c: 10400005 beq r2,r0,0x0019d784			branch if not jumping
0019d770: 00000000 nop
0019d774: 90820004 lbu r2,0x0004(r4)
0019d778: 00000000 nop
0019d77c: 34420004 ori r2,r2,0x0004
0019d780: a0820004 sb r2,0x0004(r4)				store new AI settings
0019d784: 90830004 lbu r3,0x0004(r4)
0019d788: 00000000 nop
0019d78c: 30620080 andi r2,r3,0x0080
0019d790: 14400016 bne r2,r0,0x0019d7ec			branch if charging/performing
0019d794: 00000000 nop
0019d798: 92020059 lbu r2,0x0059(r16)
0019d79c: 00000000 nop
0019d7a0: 30420080 andi r2,r2,0x0080
0019d7a4: 14400011 bne r2,r0,0x0019d7ec			branch if petrified
0019d7a8: 00000000 nop
0019d7ac: 92020058 lbu r2,0x0058(r16)
0019d7b0: 00000000 nop
0019d7b4: 30420020 andi r2,r2,0x0020
0019d7b8: 10400006 beq r2,r0,0x0019d7d4			branch if not dead
0019d7bc: 00000000 nop
0019d7c0: 9202005a lbu r2,0x005a(r16)
0019d7c4: 00000000 nop
0019d7c8: 30420020 andi r2,r2,0x0020
0019d7cc: 10400007 beq r2,r0,0x0019d7ec			branch if not reraise
0019d7d0: 00000000 nop
0019d7d4: 9202005c lbu r2,0x005c(r16)
0019d7d8: 00000000 nop
0019d7dc: 30420001 andi r2,r2,0x0001
0019d7e0: 14400002 bne r2,r0,0x0019d7ec			branch if death-sentenced
0019d7e4: 34620080 ori r2,r3,0x0080				add charging/performing flag?
0019d7e8: a0820004 sb r2,0x0004(r4)				store new flags
0019d7ec: 24c601c0 addiu r6,r6,0x01c0
0019d7f0: 26310001 addiu r17,r17,0x0001
0019d7f4: 2a220015 slti r2,r17,0x0015
0019d7f8: 1440ffbe bne r2,r0,0x0019d6f4			perform for all units
0019d7fc: 24a50010 addiu r5,r5,0x0010
0019d800: 080676d5 j 0x0019db54
0019d804: 00000000 nop
0019d808: 0c06772b jal 0x0019dcac
0019d80c: 00000000 nop
0019d810: 3c0c8019 lui r12,0x8019
0019d814: 258c3de0 addiu r12,r12,0x3de0
0019d818: 3c0d801a lui r13,0x801a
0019d81c: 8dadf3c0 lw r13,-0x0c40(r13)
0019d820: 02404821 addu r9,r18,r0
0019d824: 02405021 addu r10,r18,r0
0019d828: 00005821 addu r11,r0,r0
0019d82c: 9145198c lbu r5,0x198c(r10)			load units battle ID?
0019d830: 340200ff ori r2,r0,0x00ff
0019d834: 10a2009c beq r5,r2,0x0019daa8			branch if doesn't exist
0019d838: 00002821 addu r5,r0,r0
0019d83c: 3c028019 lui r2,0x8019
0019d840: 244208cc addiu r2,r2,0x08cc		
0019d844: 01628021 addu r16,r11,r2				r16 = unit data
0019d848: 01204021 addu r8,r9,r0
0019d84c: 00003021 addu r6,r0,r0
0019d850: 96070028 lhu r7,0x0028(r16)			load current HP
0019d854: 9602002a lhu r2,0x002a(r16)			load max HP
0019d858: 000739c0 sll r7,r7,0x07				current HP*128
0019d85c: 00e2001a div r7,r2					current HP*128/maxHP
0019d860: 00003812 mflo r7
0019d864: 04a10002 bgez r5,0x0019d870
0019d868: 00a01021 addu r2,r5,r0
0019d86c: 24a20007 addiu r2,r5,0x0007
0019d870: 000210c3 sra r2,r2,0x03				
0019d874: 02021821 addu r3,r16,r2
0019d878: 90630058 lbu r3,0x0058(r3)			load status
0019d87c: 000210c0 sll r2,r2,0x03				status*8
0019d880: 00a21023 subu r2,r5,r2				status*8-(0 or 7)
0019d884: 00431804 sllv r3,r3,r2
0019d888: 30630080 andi r3,r3,0x0080
0019d88c: 1060003b beq r3,r0,0x0019d97c			branch if ?? status not present
0019d890: 00000000 nop
0019d894: 92020059 lbu r2,0x0059(r16)			load status
0019d898: 3c01801a lui r1,0x801a
0019d89c: 00260821 addu r1,r1,r6
0019d8a0: 8424f308 lh r4,-0x0cf8(r1)			load ??
0019d8a4: 30420014 andi r2,r2,0x0014
0019d8a8: 14400006 bne r2,r0,0x0019d8c4			
0019d8ac: 00000000 nop
0019d8b0: 9202005c lbu r2,0x005c(r16)			load status
0019d8b4: 00000000 nop
0019d8b8: 30420020 andi r2,r2,0x0020
0019d8bc: 10400003 beq r2,r0,0x0019d8cc			branch if not charmed
0019d8c0: 24a3fff6 addiu r3,r5,0xfff6			
0019d8c4: 0481002d bgez r4,0x0019d97c			
0019d8c8: 24a3fff6 addiu r3,r5,0xfff6			
0019d8cc: 2c62001c sltiu r2,r3,0x001c			
0019d8d0: 10400029 beq r2,r0,0x0019d978			
0019d8d4: 00031080 sll r2,r3,0x02
0019d8d8: 004c1021 addu r2,r2,r12
0019d8dc: 8c420000 lw r2,0x0000(r2)
0019d8e0: 00000000 nop
0019d8e4: 00400008 jr r2
0019d8e8: 00000000 nop
0019d8ec: 91021839 lbu r2,0x1839(r8)
0019d8f0: 08067641 j 0x0019d904
0019d8f4: 00820018 mult r4,r2
0019d8f8: 91021838 lbu r2,0x1838(r8)
0019d8fc: 00000000 nop
0019d900: 00820018 mult r4,r2
0019d904: 00001012 mflo r2
0019d908: 0441001b bgez r2,0x0019d978
0019d90c: 00022083 sra r4,r2,0x02
0019d910: 24420003 addiu r2,r2,0x0003
0019d914: 0806765e j 0x0019d978
0019d918: 00022083 sra r4,r2,0x02
0019d91c: 9202005b lbu r2,0x005b(r16)			load status
0019d920: 00000000 nop
0019d924: 30420006 andi r2,r2,0x0006
0019d928: 14400006 bne r2,r0,0x0019d944			branch if slow/stop
0019d92c: 000417c2 srl r2,r4,0x1f
0019d930: 9202005c lbu r2,0x005c(r16)			load status
0019d934: 00000000 nop
0019d938: 3042001c andi r2,r2,0x001c
0019d93c: 1040000e beq r2,r0,0x0019d978			branch if not sleep/don't move/act
0019d940: 000417c2 srl r2,r4,0x1f
0019d944: 00821021 addu r2,r4,r2
0019d948: 0806765e j 0x0019d978
0019d94c: 00022043 sra r4,r2,0x01
0019d950: 92020059 lbu r2,0x0059(r16)			load 
0019d954: 00000000 nop
0019d958: 30420014 andi r2,r2,0x0014
0019d95c: 14400007 bne r2,r0,0x0019d97c			branch if confuse/blood suck
0019d960: 00000000 nop
0019d964: 9202005c lbu r2,0x005c(r16)
0019d968: 00000000 nop
0019d96c: 30420020 andi r2,r2,0x0020
0019d970: 14400002 bne r2,r0,0x0019d97c			branch if charm
0019d974: 00000000 nop
0019d978: 00e43821 addu r7,r7,r4
0019d97c: 24a50001 addiu r5,r5,0x0001
0019d980: 28a20028 slti r2,r5,0x0028
0019d984: 1440ffb7 bne r2,r0,0x0019d864			some status check loop
0019d988: 24c60002 addiu r6,r6,0x0002
0019d98c: 92020006 lbu r2,0x0006(r16)			load gender
0019d990: 00000000 nop
0019d994: 30420020 andi r2,r2,0x0020
0019d998: 14400010 bne r2,r0,0x0019d9dc			branch if monster
0019d99c: 00000000 nop
0019d9a0: 9142198c lbu r2,0x198c(r10)			load unit battle ID?
0019d9a4: 00002821 addu r5,r0,r0
0019d9a8: 00021180 sll r2,r2,0x06
0019d9ac: 004d3021 addu r6,r2,r13				r6 = unit AI extended status data
0019d9b0: 02051021 addu r2,r16,r5				r2 = unit data
0019d9b4: 00c51821 addu r3,r6,r5				r3 = unit AI extended status data
0019d9b8: 9044001a lbu r4,0x001a(r2)			load Head slot equipment
0019d9bc: 90620036 lbu r2,0x0036(r3)			load helmet
0019d9c0: 00000000 nop
0019d9c4: 14820002 bne r4,r2,0x0019d9d0			branch if AI information incorrect?
0019d9c8: 24a50001 addiu r5,r5,0x0001
0019d9cc: 24e70033 addiu r7,r7,0x0033			r7 += 0x33 if information matches
0019d9d0: 28a20007 slti r2,r5,0x0007
0019d9d4: 1440fff7 bne r2,r0,0x0019d9b4
0019d9d8: 02051021 addu r2,r16,r5
0019d9dc: 9604002e lhu r4,0x002e(r16)			load max MP
0019d9e0: 00000000 nop
0019d9e4: 10800014 beq r4,r0,0x0019da38			branch if unit has no MP
0019d9e8: 00000000 nop
0019d9ec: 9606002c lhu r6,0x002c(r16)			load current MP
0019d9f0: 91231836 lbu r3,0x1836(r9)			
0019d9f4: 00c01021 addu r2,r6,r0
0019d9f8: 00063180 sll r6,r6,0x06
0019d9fc: 0043102b sltu r2,r2,r3
0019da00: 00c4001a div r6,r4
0019da04: 00003012 mflo r6
0019da08: 10400002 beq r2,r0,0x0019da14
0019da0c: 00000000 nop
0019da10: 00063042 srl r6,r6,0x01
0019da14: 91221837 lbu r2,0x1837(r9)
0019da18: 00000000 nop
0019da1c: 00c20018 mult r6,r2
0019da20: 00001012 mflo r2
0019da24: 04410003 bgez r2,0x0019da34
0019da28: 00023083 sra r6,r2,0x02
0019da2c: 24420003 addiu r2,r2,0x0003
0019da30: 00023083 sra r6,r2,0x02
0019da34: 00e63821 addu r7,r7,r6
0019da38: 92020005 lbu r2,0x0005(r16)			load ENTD flags
0019da3c: 00000000 nop
0019da40: 000210c2 srl r2,r2,0x03				flags / 3
0019da44: 30420006 andi r2,r2,0x0006			r2 = team #
0019da48: 3c018019 lui r1,0x8019
0019da4c: 00220821 addu r1,r1,r2
0019da50: 9426f5f4 lhu r6,-0x0a0c(r1)			Load golem Amount
0019da54: 92430e17 lbu r3,0x0e17(r18)			load golem amount? (byte)
0019da58: 00c02821 addu r5,r6,r0	
0019da5c: 000631c0 sll r6,r6,0x07				golem amount*128
0019da60: 00c3001a div r6,r3					golem amount*128/golem amount
0019da64: 00001812 mflo r3
0019da68: 00521021 addu r2,r2,r18
0019da6c: 94420e3c lhu r2,0x0e3c(r2)			load golem amount
0019da70: 00000000 nop
0019da74: 00a2282b sltu r5,r5,r2				set if golem amount <  golem amount?
0019da78: 10a00002 beq r5,r0,0x0019da84
0019da7c: 00e33821 addu r7,r7,r3
0019da80: 24e7ffff addiu r7,r7,0xffff
0019da84: 91221834 lbu r2,0x1834(r9)
0019da88: 00000000 nop
0019da8c: 10400002 beq r2,r0,0x0019da98
0019da90: 00000000 nop
0019da94: 00073823 subu r7,r0,r7
0019da98: 96420032 lhu r2,0x0032(r18)
0019da9c: 00000000 nop
0019daa0: 00471021 addu r2,r2,r7
0019daa4: a6420032 sh r2,0x0032(r18)
0019daa8: 25290010 addiu r9,r9,0x0010
0019daac: 254a0001 addiu r10,r10,0x0001
0019dab0: 26310001 addiu r17,r17,0x0001
0019dab4: 2a220015 slti r2,r17,0x0015
0019dab8: 1440ff5c bne r2,r0,0x0019d82c
0019dabc: 256b01c0 addiu r11,r11,0x01c0
0019dac0: 92420000 lbu r2,0x0000(r18)
0019dac4: 3c018006 lui r1,0x8006
0019dac8: 00220821 addu r1,r1,r2
0019dacc: 90235cb4 lbu r3,0x5cb4(r1)			load action menu byte
0019dad0: 34020002 ori r2,r0,0x0002
0019dad4: 1462000b bne r3,r2,0x0019db04			branch if not weapon inventory
0019dad8: 3402017e ori r2,r0,0x017e
0019dadc: 86430002 lh r3,0x0002(r18)			load ability ID
0019dae0: 00000000 nop
0019dae4: 10620007 beq r3,r2,0x0019db04			branch if ability = throw shuriken
0019dae8: 34020189 ori r2,r0,0x0189
0019daec: 10620005 beq r3,r2,0x0019db04			branch if ability = throw ball
0019daf0: 00000000 nop
0019daf4: 92420031 lbu r2,0x0031(r18)			load base hit%
0019daf8: 00000000 nop
0019dafc: 00021042 srl r2,r2,0x01				base hit/2
0019db00: a2420031 sb r2,0x0031(r18)			store new base hit%
0019db04: 0c0678de jal 0x0019e378				transfer AI data to unit data
0019db08: 00002021 addu r4,r0,r0
0019db0c: a24019b7 sb r0,0x19b7(r18)
0019db10: 080676d9 j 0x0019db64					jump to end, return r2 = 0x01
0019db14: 34020001 ori r2,r0,0x0001
0019db18: 0c067858 jal 0x0019e160				transfer unit data to AI data
0019db1c: 34040001 ori r4,r0,0x0001
0019db20: 34020001 ori r2,r0,0x0001
0019db24: a2420eee sb r2,0x0eee(r18)
0019db28: 080676d9 j 0x0019db64					jump to end, return r2=0xffff
0019db2c: 2402ffff addiu r2,r0,0xffff
0019db30: 8e420ee0 lw r2,0x0ee0(r18)
0019db34: 8e430ee4 lw r3,0x0ee4(r18)
0019db38: 8e440ee8 lw r4,0x0ee8(r18)
0019db3c: 3c018019 lui r1,0x8019
0019db40: ac22f518 sw r2,-0x0ae8(r1)
0019db44: 3c018019 lui r1,0x8019
0019db48: ac23f51c sw r3,-0x0ae4(r1)
0019db4c: 3c018019 lui r1,0x8019
0019db50: ac24f520 sw r4,-0x0ae0(r1)
0019db54: 0c0678de jal 0x0019e378				Transfer AI data to Unit Data
0019db58: 00002021 addu r4,r0,r0
0019db5c: a24019b7 sb r0,0x19b7(r18)
0019db60: 00001021 addu r2,r0,r0				return r2 = 0x00
0019db64: 8fbf001c lw r31,0x001c(r29)
0019db68: 8fb20018 lw r18,0x0018(r29)
0019db6c: 8fb10014 lw r17,0x0014(r29)
0019db70: 8fb00010 lw r16,0x0010(r29)
0019db74: 27bd0020 addiu r29,r29,0x0020
0019db78: 03e00008 jr r31
0019db7c: 00000000 nop