Randomly Transfer Data
Jump to navigation
Jump to search
001970bc: 27bdffd0 addiu r29,r29,0xffd0 001970c0: afb3001c sw r19,0x001c(r29) 001970c4: 00009821 addu r19,r0,r0 001970c8: afb00010 sw r16,0x0010(r29) 001970cc: 00008021 addu r16,r0,r0 r16 = ? Counter 001970d0: afb60028 sw r22,0x0028(r29) 001970d4: 3c1651eb lui r22,0x51eb 001970d8: 36d6851f ori r22,r22,0x851f 001970dc: afb40020 sw r20,0x0020(r29) 001970e0: 3c14801a lui r20,0x801a 001970e4: 2694f3c4 addiu r20,r20,0xf3c4 001970e8: afb20018 sw r18,0x0018(r29) 001970ec: 02809021 addu r18,r20,r0 001970f0: afbf002c sw r31,0x002c(r29) 001970f4: afb50024 sw r21,0x0024(r29) 001970f8: afb10014 sw r17,0x0014(r29)
<RNG Loop> 001970fc: 92510071 lbu r17,0x0071(r18) 00197100: 00000000 nop 00197104: 12200002 beq r17,r0,0x00197110 Branch to RNG if false 00197108: 0010a940 sll r21,r16,0x05 0019710c: 34130001 ori r19,r0,0x0001 r19 = True
00197110: 0c0088c3 jal 0x0002230c Load RNG 00197114: 00000000 nop 00197118: 00560018 mult r2,r22 RNG * 0x51eb851f 0019711c: 00021fc3 sra r3,r2,0x1f RNG / 0x1f 00197120: 00002010 mfhi r4 r4 = Upper bits (Get positive value?) 00197124: 00042143 sra r4,r4,0x05 00197128: 00832023 subu r4,r4,r3 0019712c: 00041840 sll r3,r4,0x01 00197130: 00641821 addu r3,r3,r4 00197134: 000318c0 sll r3,r3,0x03 00197138: 00641821 addu r3,r3,r4 0019713c: 00031880 sll r3,r3,0x02 00197140: 00431023 subu r2,r2,r3
00197144: 0051102a slt r2,r2,r17 00197148: 14400008 bne r2,r0,0x0019716c Transfer if RNG is greater than r17 0019714c: 26100001 addiu r16,r16,0x0001 r16++ 00197150: 2a020008 slti r2,r16,0x0008 00197154: 1440ffe9 bne r2,r0,0x001970fc loop 20 times or RNG breaks out 00197158: 26520020 addiu r18,r18,0x0020 </RNG Loop>
0019715c: 1260000a beq r19,r0,0x00197188 Exit and return 0 if 0x71 = true 00197160: 268417fc addiu r4,r20,0x17fc 00197164: 08065c5e j 0x00197178 Jump to Transfer 00197168: 26850054 addiu r5,r20,0x0054 <Tranfer ?> 0019716c: 268417fc addiu r4,r20,0x17fc 00197170: 26a50054 addiu r5,r21,0x0054 00197174: 02852821 addu r5,r20,r5 00197178: 0c066ac2 jal 0x0019ab08 Transfer Halfword Values 0019717c: 34060020 ori r6,r0,0x0020 00197180: 08065c63 j 0x0019718c Exit and Return 1 00197184: 34020001 ori r2,r0,0x0001
00197188: 00001021 addu r2,r0,r0 0019718c: 8fbf002c lw r31,0x002c(r29) 00197190: 8fb60028 lw r22,0x0028(r29) 00197194: 8fb50024 lw r21,0x0024(r29) 00197198: 8fb40020 lw r20,0x0020(r29) 0019719c: 8fb3001c lw r19,0x001c(r29) 001971a0: 8fb20018 lw r18,0x0018(r29) 001971a4: 8fb10014 lw r17,0x0014(r29) 001971a8: 8fb00010 lw r16,0x0010(r29) 001971ac: 27bd0030 addiu r29,r29,0x0030 001971b0: 03e00008 jr r31 001971b4: 00000000 nop