Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Purely for shits and giggles.
- glabel StableRandom
- lw $t0, ($a0)
- bne $t0, $zero, .leftloaded
- lw $t1, 4($a0)
- srl $t2, $t1, 24
- addiu $t3, $zero, 4
- .leftloop:
- sll $t4, $t2, 3
- addiu $t5, $t2, 29
- sll $t2, $t4, 3
- addu $t5, $t4, $t5
- addu $t4, $t2, $t5
- addiu $t3, $t3, -1
- andi $t2, $t4, 255
- sll $t4, $t0, 8
- bne $t3, $zero, .leftloop
- or $t0, $t2, $t4
- lui $t3, 256
- addiu $t3, $t3, -1
- sll $t2, $t2, 24
- and $t3, $t1, $t3
- or $t1, $t3, $t2
- .leftloaded:
- srl $t2, $t0, 8
- xor $t3, $t0, $t2
- sll $t0, $t3, 9
- xor $t2, $t3, $t0
- srl $t3, $t2, 23
- xor $t0, $t2, $t3
- andi $t4, $t1, 255
- addiu $t2, $t4, -210
- bltz $t2, .noreduction
- srl $t3, $t1, 8
- addu $t4, $zero, $t2
- .noreduction:
- srl $t2, $t1, 16
- andi $t3, $t3, 255
- andi $t2, $t2, 255
- addu $t5, $t4, $t3
- addu $t5, $t5, $t2
- srl $t1, $t1, 24
- beq $t5, $zero, .reloadright
- addiu $at, $zero, 719
- bne $t5, $at, .rightloaded
- nop
- .reloadright:
- sll $t4, $t1, 3
- addiu $t3, $t1, 29
- sll $t2, $t4, 3
- addu $t4, $t4, $t3
- addu $t1, $t2, $t4
- sll $t5, $t1, 3
- addiu $t3, $t1, 29
- sll $t4, $t5, 3
- addu $t6, $t5, $t3
- andi $t2, $t1, 255
- addu $t1, $t4, $t6
- sll $t5, $t1, 3
- andi $t4, $t1, 255
- addiu $t3, $t1, 29
- sltiu $at, $t4, 210
- addu $t5, $t5, $t3
- addiu $at, $at, -1
- sll $t6, $t1, 6
- andi $at, $at, 210
- addu $t1, $t5, $t6
- subu $t4, $t4, $at
- andi $t3, $t1, 255
- .rightloaded:
- addiu $at, $zero, 210
- multu $at, $t2
- sll $t2, $t3, 16
- mflo $t5
- addu $t4, $t5, $t4
- srl $t3, $t4, 8
- andi $t5, $t4, 255
- addu $t2, $t2, $t3
- sll $t4, $t5, 8
- addu $t2, $t2, $t4
- sll $t3, $t1, 3
- addiu $t4, $t1, 29
- sll $t1, $t1, 6
- addu $t3, $t3, $t4
- addu $t4, $t1, $t3
- sll $t1, $t4, 24
- addu $t1, $t1, $t2
- sw $t0, ($a0)
- sw $t1, 4($a0)
- srl $t2, $t1, 27
- andi $t3, $t2, 24
- srl $t4, $t1, 28
- srlv $t5, $t0, $t3
- srl $t2, $t1, 8
- andi $t3, $t4, 3
- andi $t1, $t2, 255
- andi $t0, $t5, 255
- addu $t2, $t0, $t1
- beq $t3, $zero, .done
- addiu $at, $zero, 1
- xor $t2, $t0, $t1
- beq $t3, $at, .done
- addiu $at, $zero, 2
- subu $t2, $t0, $t1
- beq $t3, $at, .done
- nop
- subu $t2, $t1, $t0
- .done:
- jr $ra
- andi $v0, $t2, 255
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement