Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ; ======================================================
- ; Subroutine sub_0000255C - Address 0x0000255C
- sub_0000255C: ; Refs: 0x00001D2C 0x00001D48 0x00001DA8 0x00001F30
- 0x0000255C: 0x24C3FFFF '...$' - addiu $v1, $a2, -1 // v1 = a2 - 1
- 0x00002560: 0x2C670080 '..g,' - sltiu $a3, $v1, 128 // ignore
- 0x00002564: 0x3C0A8067 'g..<' - lui $t2, 0x8067 // ignore
- 0x00002568: 0x00804821 '!H..' - move $t1, $a0 // ignore
- 0x0000256C: 0x00A04021 '!@..' - move $t0, $a1 // ignore
- 0x00002570: 0x10E0000E '....' - beqz $a3, loc_000025AC // if (v1 >= 128) return v1;
- 0x00002574: 0x35431003 '..C5' - ori $v1, $t2, 0x1003 // v1 = 0x80671003 (delay)
- 0x00002578: 0x18C00012 '....' - blez $a2, loc_000025C4 // if (a2 <= 0) goto ...;
- 0x0000257C: 0x00003821 '!8..' - move $a3, $zr // a3 = 0; -> i=0;
- 0x00002580: 0x01272021 '! '.' - addu $a0, $t1, $a3 // ignore
- loc_00002584: ; Refs: 0x000025A0 // Loop
- 0x00002584: 0x01072821 '!(..' - addu $a1, $t0, $a3 // ignore
- 0x00002588: 0x80820000 '....' - lb $v0, 0($a0) // ignore
- 0x0000258C: 0x80AB0000 '....' - lb $t3, 0($a1) // ignore
- 0x00002590: 0x144B0008 '..K.' - bne $v0, $t3, loc_000025B4 // if (A0[i] != A1[i]) goto ...;
- 0x00002594: 0x00E6102A '*...' - slt $v0, $a3, $a2 // v0 = i < A2; (delay)
- 0x00002598: 0x24E70001 '...$' - addiu $a3, $a3, 1 // i++;
- 0x0000259C: 0x00E6602A '*`..' - slt $t4, $a3, $a2 // ignore
- 0x000025A0: 0x1580FFF8 '....' - bnez $t4, loc_00002584 // loop if (i < A2)
- 0x000025A4: 0x01272021 '! '.' - addu $a0, $t1, $a3 // ignore
- loc_000025A8: ; Refs: 0x000025B4
- 0x000025A8: 0x00001821 '!...' - move $v1, $zr
- loc_000025AC: ; Refs: 0x00002570 0x000025BC
- 0x000025AC: 0x03E00008 '....' - jr $ra
- 0x000025B0: 0x00601021 '!.`.' - move $v0, $v1
- loc_000025B4: ; Refs: 0x00002590 0x000025C4
- 0x000025B4: 0x1040FFFC '..@.' - beqz $v0, loc_000025A8 // if (v0 == 0) return 0;
- 0x000025B8: 0x2403FFFF '...$' - li $v1, -1 // ignore
- 0x000025BC: 0x0800096B 'k...' - j loc_000025AC // return -1;
- 0x000025C0: 0x00000000 '....' - nop
- loc_000025C4: ; Refs: 0x00002578
- 0x000025C4: 0x0800096D 'm...' - j loc_000025B4 // goto ...;
- 0x000025C8: 0x0006102A '*...' - slt $v0, $zr, $a2 // ignore
- */
- int sub_0000255C(char* a0, char* a1, int a2)
- {
- int i;
- if (a2 > 128)
- {
- return 0x80671003;
- }
- if (a2 < 0)
- {
- return 0;
- }
- if (a2 == 0)
- {
- return -1;
- }
- for (i=0; i<a2; i++)
- {
- if (a0[i] != a1[i])
- {
- return -1;
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement