.file 1 "wapiCrypto.c" .section .mdebug.abi32 .previous #APP .macro _ssnop; sll $0, $0, 1; .endm .macro _ehb; sll $0, $0, 3; .endm .macro mtc0_tlbw_hazard; nop; nop; .endm .macro tlbw_use_hazard; nop; nop; nop; .endm .macro tlb_probe_hazard; nop; nop; nop; .endm .macro irq_enable_hazard; _ssnop; _ssnop; _ssnop;; .endm .macro irq_disable_hazard; nop; nop; nop; .endm .macro back_to_back_c0_hazard; _ssnop; _ssnop; _ssnop;; .endm .macro raw_local_irq_enable .set push .set reorder .set noat mfc0 $1,$12 ori $1,0x1f xori $1,0x1e mtc0 $1,$12 irq_enable_hazard .set pop .endm .macro raw_local_irq_disable .set push .set noat mfc0 $1,$12 ori $1,0x1f xori $1,0x1f .set noreorder mtc0 $1,$12 irq_disable_hazard .set pop .endm .macro raw_local_save_flags flags .set push .set reorder mfc0 \flags, $12 .set pop .endm .macro raw_local_irq_save result .set push .set reorder .set noat mfc0 \result, $12 ori $1, \result, 0x1f xori $1, 0x1f .set noreorder mtc0 $1, $12 irq_disable_hazard .set pop .endm .macro raw_local_irq_restore flags .set push .set noreorder .set noat mfc0 $1, $12 andi \flags, 1 ori $1, 0x1f xori $1, 0x1f or \flags, $1 mtc0 \flags, $12 irq_disable_hazard .set pop .endm #NO_APP .rdata .align 2 .type rtl_ap_EDCA, @object .size rtl_ap_EDCA, 120 rtl_ap_EDCA: .word 0 .word 7 .word 4 .word 10 .word 0 .word 0 .word 3 .word 4 .word 6 .word 0 .word 0 .word 1 .word 3 .word 4 .word 188 .word 0 .word 1 .word 2 .word 3 .word 102 .word 0 .word 1 .word 3 .word 4 .word 94 .word 0 .word 1 .word 2 .word 3 .word 47 .align 2 .type rtl_sta_EDCA, @object .size rtl_sta_EDCA, 120 rtl_sta_EDCA: .word 0 .word 7 .word 4 .word 10 .word 0 .word 0 .word 3 .word 4 .word 10 .word 0 .word 0 .word 2 .word 3 .word 4 .word 188 .word 0 .word 2 .word 2 .word 3 .word 102 .word 0 .word 2 .word 3 .word 4 .word 94 .word 0 .word 2 .word 2 .word 3 .word 47 .section .text.sha2_starts,"ax",@progbits .align 2 .globl sha2_starts .ent sha2_starts .type sha2_starts, @function sha2_starts: .set nomips16 .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro sw $4,0($sp) sw $5,4($sp) lw $2,0($sp) sw $0,0($2) lw $2,0($sp) sw $0,4($2) lw $2,4($sp) bne $2,$0,$L2 nop lw $3,0($sp) li $2,1778974720 # 0x6a090000 ori $2,$2,0xe667 sw $2,8($3) lw $3,0($sp) li $2,-1150877696 # 0xbb670000 ori $2,$2,0xae85 sw $2,12($3) lw $3,0($sp) li $2,1013841920 # 0x3c6e0000 ori $2,$2,0xf372 sw $2,16($3) lw $3,0($sp) li $2,-1521549312 # 0xa54f0000 ori $2,$2,0xf53a sw $2,20($3) lw $3,0($sp) li $2,1359872000 # 0x510e0000 ori $2,$2,0x527f sw $2,24($3) lw $3,0($sp) li $2,-1694171136 # 0x9b050000 ori $2,$2,0x688c sw $2,28($3) lw $3,0($sp) li $2,528678912 # 0x1f830000 ori $2,$2,0xd9ab sw $2,32($3) lw $3,0($sp) li $2,1541406720 # 0x5be00000 ori $2,$2,0xcd19 sw $2,36($3) j $L3 nop $L2: lw $3,0($sp) li $2,-1056636928 # 0xc1050000 ori $2,$2,0x9ed8 sw $2,8($3) lw $3,0($sp) li $2,914096128 # 0x367c0000 ori $2,$2,0xd507 sw $2,12($3) lw $3,0($sp) li $2,812646400 # 0x30700000 ori $2,$2,0xdd17 sw $2,16($3) lw $3,0($sp) li $2,-150077440 # 0xf70e0000 ori $2,$2,0x5939 sw $2,20($3) lw $3,0($sp) li $2,-4194304 # 0xffc00000 ori $2,$2,0xb31 sw $2,24($3) lw $3,0($sp) li $2,1750597632 # 0x68580000 ori $2,$2,0x1511 sw $2,28($3) lw $3,0($sp) li $2,1694040064 # 0x64f90000 ori $2,$2,0x8fa7 sw $2,32($3) lw $3,0($sp) li $2,-1090912256 # 0xbefa0000 ori $2,$2,0x4fa4 sw $2,36($3) $L3: lw $3,0($sp) lw $2,4($sp) sw $2,232($3) j $31 nop .set macro .set reorder .end sha2_starts .section .text.sha2_process,"ax",@progbits .align 2 .ent sha2_process .type sha2_process, @function sha2_process: .set nomips16 .frame $sp,296,$31 # vars= 296, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-296 sw $4,296($sp) sw $5,300($sp) lw $2,300($sp) lbu $2,0($2) sll $3,$2,24 lw $2,300($sp) lbu $2,1($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,2($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,3($2) or $2,$3,$2 sw $2,8($sp) lw $2,300($sp) lbu $2,4($2) sll $3,$2,24 lw $2,300($sp) lbu $2,5($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,6($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,7($2) or $2,$3,$2 sw $2,12($sp) lw $2,300($sp) lbu $2,8($2) sll $3,$2,24 lw $2,300($sp) lbu $2,9($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,10($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,11($2) or $2,$3,$2 sw $2,16($sp) lw $2,300($sp) lbu $2,12($2) sll $3,$2,24 lw $2,300($sp) lbu $2,13($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,14($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,15($2) or $2,$3,$2 sw $2,20($sp) lw $2,300($sp) lbu $2,16($2) sll $3,$2,24 lw $2,300($sp) lbu $2,17($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,18($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,19($2) or $2,$3,$2 sw $2,24($sp) lw $2,300($sp) lbu $2,20($2) sll $3,$2,24 lw $2,300($sp) lbu $2,21($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,22($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,23($2) or $2,$3,$2 sw $2,28($sp) lw $2,300($sp) lbu $2,24($2) sll $3,$2,24 lw $2,300($sp) lbu $2,25($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,26($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,27($2) or $2,$3,$2 sw $2,32($sp) lw $2,300($sp) lbu $2,28($2) sll $3,$2,24 lw $2,300($sp) lbu $2,29($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,30($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,31($2) or $2,$3,$2 sw $2,36($sp) lw $2,300($sp) lbu $2,32($2) sll $3,$2,24 lw $2,300($sp) lbu $2,33($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,34($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,35($2) or $2,$3,$2 sw $2,40($sp) lw $2,300($sp) lbu $2,36($2) sll $3,$2,24 lw $2,300($sp) lbu $2,37($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,38($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,39($2) or $2,$3,$2 sw $2,44($sp) lw $2,300($sp) lbu $2,40($2) sll $3,$2,24 lw $2,300($sp) lbu $2,41($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,42($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,43($2) or $2,$3,$2 sw $2,48($sp) lw $2,300($sp) lbu $2,44($2) sll $3,$2,24 lw $2,300($sp) lbu $2,45($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,46($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,47($2) or $2,$3,$2 sw $2,52($sp) lw $2,300($sp) lbu $2,48($2) sll $3,$2,24 lw $2,300($sp) lbu $2,49($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,50($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,51($2) or $2,$3,$2 sw $2,56($sp) lw $2,300($sp) lbu $2,52($2) sll $3,$2,24 lw $2,300($sp) lbu $2,53($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,54($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,55($2) or $2,$3,$2 sw $2,60($sp) lw $2,300($sp) lbu $2,56($2) sll $3,$2,24 lw $2,300($sp) lbu $2,57($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,58($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,59($2) or $2,$3,$2 sw $2,64($sp) lw $2,300($sp) lbu $2,60($2) sll $3,$2,24 lw $2,300($sp) lbu $2,61($2) sll $2,$2,16 or $3,$3,$2 lw $2,300($sp) lbu $2,62($2) sll $2,$2,8 or $3,$3,$2 lw $2,300($sp) lbu $2,63($2) or $2,$3,$2 sw $2,68($sp) lw $2,296($sp) lw $2,8($2) sw $2,264($sp) lw $2,296($sp) lw $2,12($2) sw $2,268($sp) lw $2,296($sp) lw $2,16($2) sw $2,272($sp) lw $2,296($sp) lw $2,20($2) sw $2,276($sp) lw $2,296($sp) lw $2,24($2) sw $2,280($sp) lw $2,296($sp) lw $2,28($2) sw $2,284($sp) lw $2,296($sp) lw $2,32($2) sw $2,288($sp) lw $2,296($sp) lw $2,36($2) sw $2,292($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,8($sp) addu $3,$3,$2 li $2,1116340224 # 0x428a0000 ori $2,$2,0x2f98 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,12($sp) addu $3,$3,$2 li $2,1899429888 # 0x71370000 ori $2,$2,0x4491 addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,16($sp) addu $3,$3,$2 li $2,-1245708288 # 0xb5c00000 ori $2,$2,0xfbcf addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,20($sp) addu $3,$3,$2 li $2,-374013952 # 0xe9b50000 ori $2,$2,0xdba5 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,24($sp) addu $3,$3,$2 li $2,961937408 # 0x39560000 ori $2,$2,0xc25b addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,28($sp) addu $3,$3,$2 li $2,1508966400 # 0x59f10000 ori $2,$2,0x11f1 addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,32($sp) addu $3,$3,$2 li $2,-1841364992 # 0x923f0000 ori $2,$2,0x82a4 addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,36($sp) addu $3,$3,$2 li $2,-1424228352 # 0xab1c0000 ori $2,$2,0x5ed5 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,40($sp) addu $3,$3,$2 li $2,-670629888 # 0xd8070000 ori $2,$2,0xaa98 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,44($sp) addu $3,$3,$2 li $2,310575104 # 0x12830000 ori $2,$2,0x5b01 addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,48($sp) addu $3,$3,$2 li $2,607191040 # 0x24310000 ori $2,$2,0x85be addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,52($sp) addu $3,$3,$2 li $2,1426849792 # 0x550c0000 ori $2,$2,0x7dc3 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,56($sp) addu $3,$3,$2 li $2,1925054464 # 0x72be0000 ori $2,$2,0x5d74 addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,60($sp) addu $3,$3,$2 li $2,-2132934656 # 0x80de0000 ori $2,$2,0xb1fe addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,64($sp) addu $3,$3,$2 li $2,-1680080896 # 0x9bdc0000 ori $2,$2,0x6a7 addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $3,$4,$2 lw $2,68($sp) addu $3,$3,$2 li $2,-1046806528 # 0xc19b0000 ori $2,$2,0xf174 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,64($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,64($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,64($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,44($sp) addu $6,$3,$2 lw $2,12($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,12($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,12($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,8($sp) addu $2,$3,$2 sw $2,72($sp) addu $3,$5,$2 li $2,-459603968 # 0xe49b0000 ori $2,$2,0x69c1 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,68($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,68($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,68($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,48($sp) addu $6,$3,$2 lw $2,16($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,16($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,16($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,12($sp) addu $2,$3,$2 sw $2,76($sp) addu $3,$5,$2 li $2,-272760832 # 0xefbe0000 ori $2,$2,0x4786 addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,72($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,72($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,72($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,52($sp) addu $6,$3,$2 lw $2,20($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,20($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,20($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,16($sp) addu $2,$3,$2 sw $2,80($sp) addu $3,$5,$2 li $2,264306688 # 0xfc10000 ori $2,$2,0x9dc6 addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,76($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,76($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,76($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,56($sp) addu $6,$3,$2 lw $2,24($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,24($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,24($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,20($sp) addu $2,$3,$2 sw $2,84($sp) addu $3,$5,$2 li $2,604766208 # 0x240c0000 ori $2,$2,0xa1cc addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,80($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,80($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,80($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,60($sp) addu $6,$3,$2 lw $2,28($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,28($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,28($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,24($sp) addu $2,$3,$2 sw $2,88($sp) addu $3,$5,$2 li $2,770244608 # 0x2de90000 ori $2,$2,0x2c6f addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,84($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,84($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,84($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,64($sp) addu $6,$3,$2 lw $2,32($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,32($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,32($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,28($sp) addu $2,$3,$2 sw $2,92($sp) addu $3,$5,$2 li $2,1249116160 # 0x4a740000 ori $2,$2,0x84aa addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,88($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,88($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,88($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,68($sp) addu $6,$3,$2 lw $2,36($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,36($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,36($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,32($sp) addu $2,$3,$2 sw $2,96($sp) addu $3,$5,$2 li $2,1555038208 # 0x5cb00000 ori $2,$2,0xa9dc addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,92($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,92($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,92($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,72($sp) addu $6,$3,$2 lw $2,40($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,40($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,40($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,36($sp) addu $2,$3,$2 sw $2,100($sp) addu $3,$5,$2 li $2,1996029952 # 0x76f90000 ori $2,$2,0x88da addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,96($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,96($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,96($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,76($sp) addu $6,$3,$2 lw $2,44($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,44($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,44($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,40($sp) addu $2,$3,$2 sw $2,104($sp) addu $3,$5,$2 li $2,-1740767232 # 0x983e0000 ori $2,$2,0x5152 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,100($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,100($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,100($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,80($sp) addu $6,$3,$2 lw $2,48($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,48($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,48($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,44($sp) addu $2,$3,$2 sw $2,108($sp) addu $3,$5,$2 li $2,-1473183744 # 0xa8310000 ori $2,$2,0xc66d addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,104($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,104($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,104($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,84($sp) addu $6,$3,$2 lw $2,52($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,52($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,52($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,48($sp) addu $2,$3,$2 sw $2,112($sp) addu $3,$5,$2 li $2,-1341980672 # 0xb0030000 ori $2,$2,0x27c8 addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,108($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,108($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,108($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,88($sp) addu $6,$3,$2 lw $2,56($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,56($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,56($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,52($sp) addu $2,$3,$2 sw $2,116($sp) addu $3,$5,$2 li $2,-1084686336 # 0xbf590000 ori $2,$2,0x7fc7 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,112($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,112($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,112($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,92($sp) addu $6,$3,$2 lw $2,60($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,60($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,60($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,56($sp) addu $2,$3,$2 sw $2,120($sp) addu $3,$5,$2 li $2,-958398464 # 0xc6e00000 ori $2,$2,0xbf3 addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,116($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,116($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,116($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,96($sp) addu $6,$3,$2 lw $2,64($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,64($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,64($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,60($sp) addu $2,$3,$2 sw $2,124($sp) addu $3,$5,$2 li $2,-710475776 # 0xd5a70000 ori $2,$2,0x9147 addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,120($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,120($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,120($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,100($sp) addu $6,$3,$2 lw $2,68($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,68($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,68($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,64($sp) addu $2,$3,$2 sw $2,128($sp) addu $3,$5,$2 li $2,113901568 # 0x6ca0000 ori $2,$2,0x6351 addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,124($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,124($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,124($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,104($sp) addu $6,$3,$2 lw $2,72($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,72($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,72($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,68($sp) addu $2,$3,$2 sw $2,132($sp) addu $3,$5,$2 li $2,338231296 # 0x14290000 ori $2,$2,0x2967 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,128($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,128($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,128($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,108($sp) addu $6,$3,$2 lw $2,76($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,76($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,76($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,72($sp) addu $2,$3,$2 sw $2,136($sp) addu $3,$5,$2 li $2,666304512 # 0x27b70000 ori $2,$2,0xa85 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,132($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,132($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,132($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,112($sp) addu $6,$3,$2 lw $2,80($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,80($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,80($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,76($sp) addu $2,$3,$2 sw $2,140($sp) addu $3,$5,$2 li $2,773521408 # 0x2e1b0000 ori $2,$2,0x2138 addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,136($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,136($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,136($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,116($sp) addu $6,$3,$2 lw $2,84($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,84($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,84($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,80($sp) addu $2,$3,$2 sw $2,144($sp) addu $3,$5,$2 li $2,1294729216 # 0x4d2c0000 ori $2,$2,0x6dfc addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,140($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,140($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,140($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,120($sp) addu $6,$3,$2 lw $2,88($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,88($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,88($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,84($sp) addu $2,$3,$2 sw $2,148($sp) addu $3,$5,$2 li $2,1396178944 # 0x53380000 ori $2,$2,0xd13 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,144($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,144($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,144($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,124($sp) addu $6,$3,$2 lw $2,92($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,92($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,92($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,88($sp) addu $2,$3,$2 sw $2,152($sp) addu $3,$5,$2 li $2,1695154176 # 0x650a0000 ori $2,$2,0x7354 addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,148($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,148($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,148($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,128($sp) addu $6,$3,$2 lw $2,96($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,96($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,96($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,92($sp) addu $2,$3,$2 sw $2,156($sp) addu $3,$5,$2 li $2,1986658304 # 0x766a0000 ori $2,$2,0xabb addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,152($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,152($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,152($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,132($sp) addu $6,$3,$2 lw $2,100($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,100($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,100($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,96($sp) addu $2,$3,$2 sw $2,160($sp) addu $3,$5,$2 li $2,-2117992448 # 0x81c20000 ori $2,$2,0xc92e addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,156($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,156($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,156($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,136($sp) addu $6,$3,$2 lw $2,104($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,104($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,104($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,100($sp) addu $2,$3,$2 sw $2,164($sp) addu $3,$5,$2 li $2,-1838022656 # 0x92720000 ori $2,$2,0x2c85 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,160($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,160($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,160($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,140($sp) addu $6,$3,$2 lw $2,108($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,108($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,108($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,104($sp) addu $2,$3,$2 sw $2,168($sp) addu $3,$5,$2 li $2,-1564540928 # 0xa2bf0000 ori $2,$2,0xe8a1 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,164($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,164($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,164($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,144($sp) addu $6,$3,$2 lw $2,112($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,112($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,112($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,108($sp) addu $2,$3,$2 sw $2,172($sp) addu $3,$5,$2 li $2,-1474691072 # 0xa81a0000 ori $2,$2,0x664b addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,168($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,168($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,168($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,148($sp) addu $6,$3,$2 lw $2,116($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,116($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,116($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,112($sp) addu $2,$3,$2 sw $2,176($sp) addu $3,$5,$2 li $2,-1035272192 # 0xc24b0000 ori $2,$2,0x8b70 addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,172($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,172($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,172($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,152($sp) addu $6,$3,$2 lw $2,120($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,120($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,120($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,116($sp) addu $2,$3,$2 sw $2,180($sp) addu $3,$5,$2 li $2,-949223424 # 0xc76c0000 ori $2,$2,0x51a3 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,176($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,176($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,176($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,156($sp) addu $6,$3,$2 lw $2,124($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,124($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,124($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,120($sp) addu $2,$3,$2 sw $2,184($sp) addu $3,$5,$2 li $2,-778960896 # 0xd1920000 ori $2,$2,0xe819 addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,180($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,180($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,180($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,160($sp) addu $6,$3,$2 lw $2,128($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,128($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,128($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,124($sp) addu $2,$3,$2 sw $2,188($sp) addu $3,$5,$2 li $2,-694616064 # 0xd6990000 ori $2,$2,0x624 addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,184($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,184($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,184($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,164($sp) addu $6,$3,$2 lw $2,132($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,132($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,132($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,128($sp) addu $2,$3,$2 sw $2,192($sp) addu $3,$5,$2 li $2,-200409088 # 0xf40e0000 ori $2,$2,0x3585 addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,188($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,188($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,188($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,168($sp) addu $6,$3,$2 lw $2,136($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,136($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,136($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,132($sp) addu $2,$3,$2 sw $2,196($sp) addu $3,$5,$2 li $2,275382272 # 0x106a0000 ori $2,$2,0xa070 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,192($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,192($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,192($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,172($sp) addu $6,$3,$2 lw $2,140($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,140($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,140($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,136($sp) addu $2,$3,$2 sw $2,200($sp) addu $3,$5,$2 li $2,430178304 # 0x19a40000 ori $2,$2,0xc116 addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,196($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,196($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,196($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,176($sp) addu $6,$3,$2 lw $2,144($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,144($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,144($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,140($sp) addu $2,$3,$2 sw $2,204($sp) addu $3,$5,$2 li $2,506920960 # 0x1e370000 ori $2,$2,0x6c08 addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,200($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,200($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,200($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,180($sp) addu $6,$3,$2 lw $2,148($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,148($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,148($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,144($sp) addu $2,$3,$2 sw $2,208($sp) addu $3,$5,$2 li $2,659030016 # 0x27480000 ori $2,$2,0x774c addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,204($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,204($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,204($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,184($sp) addu $6,$3,$2 lw $2,152($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,152($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,152($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,148($sp) addu $2,$3,$2 sw $2,212($sp) addu $3,$5,$2 li $2,883949568 # 0x34b00000 ori $2,$2,0xbcb5 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,208($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,208($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,208($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,188($sp) addu $6,$3,$2 lw $2,156($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,156($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,156($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,152($sp) addu $2,$3,$2 sw $2,216($sp) addu $3,$5,$2 li $2,958136320 # 0x391c0000 ori $2,$2,0xcb3 addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,212($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,212($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,212($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,192($sp) addu $6,$3,$2 lw $2,160($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,160($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,160($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,156($sp) addu $2,$3,$2 sw $2,220($sp) addu $3,$5,$2 li $2,1322778624 # 0x4ed80000 ori $2,$2,0xaa4a addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,216($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,216($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,216($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,196($sp) addu $6,$3,$2 lw $2,164($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,164($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,164($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,160($sp) addu $2,$3,$2 sw $2,224($sp) addu $3,$5,$2 li $2,1536950272 # 0x5b9c0000 ori $2,$2,0xca4f addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,220($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,220($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,220($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,200($sp) addu $6,$3,$2 lw $2,168($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,168($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,168($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,164($sp) addu $2,$3,$2 sw $2,228($sp) addu $3,$5,$2 li $2,1747845120 # 0x682e0000 ori $2,$2,0x6ff3 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $2,280($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,280($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,292($sp) addu $4,$3,$2 lw $3,284($sp) lw $2,288($sp) xor $3,$3,$2 lw $2,280($sp) and $3,$3,$2 lw $2,288($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,224($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,224($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,224($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,204($sp) addu $6,$3,$2 lw $2,172($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,172($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,172($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,168($sp) addu $2,$3,$2 sw $2,232($sp) addu $3,$5,$2 li $2,1955528704 # 0x748f0000 ori $2,$2,0x82ee addu $2,$3,$2 sw $2,0($sp) lw $2,264($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,264($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,264($sp) lw $2,268($sp) and $5,$3,$2 lw $3,264($sp) lw $2,268($sp) or $3,$3,$2 lw $2,272($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,276($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,276($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,292($sp) lw $2,276($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,276($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,288($sp) addu $4,$3,$2 lw $3,280($sp) lw $2,284($sp) xor $3,$3,$2 lw $2,276($sp) and $3,$3,$2 lw $2,284($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,228($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,228($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,228($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,208($sp) addu $6,$3,$2 lw $2,176($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,176($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,176($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,172($sp) addu $2,$3,$2 sw $2,236($sp) addu $3,$5,$2 li $2,2024079360 # 0x78a50000 ori $2,$2,0x636f addu $2,$3,$2 sw $2,0($sp) lw $2,292($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,292($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,292($sp) lw $2,264($sp) and $5,$3,$2 lw $3,292($sp) lw $2,264($sp) or $3,$3,$2 lw $2,268($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,272($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,272($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,288($sp) lw $2,272($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,272($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,284($sp) addu $4,$3,$2 lw $3,276($sp) lw $2,280($sp) xor $3,$3,$2 lw $2,272($sp) and $3,$3,$2 lw $2,280($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,232($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,232($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,232($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,212($sp) addu $6,$3,$2 lw $2,180($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,180($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,180($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,176($sp) addu $2,$3,$2 sw $2,240($sp) addu $3,$5,$2 li $2,-2067267584 # 0x84c80000 ori $2,$2,0x7814 addu $2,$3,$2 sw $2,0($sp) lw $2,288($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,288($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,288($sp) lw $2,292($sp) and $5,$3,$2 lw $3,288($sp) lw $2,292($sp) or $3,$3,$2 lw $2,264($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,268($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,268($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,284($sp) lw $2,268($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,268($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,280($sp) addu $4,$3,$2 lw $3,272($sp) lw $2,276($sp) xor $3,$3,$2 lw $2,268($sp) and $3,$3,$2 lw $2,276($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,236($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,236($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,236($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,216($sp) addu $6,$3,$2 lw $2,184($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,184($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,184($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,180($sp) addu $2,$3,$2 sw $2,244($sp) addu $3,$5,$2 li $2,-1933115392 # 0x8cc70000 ori $2,$2,0x208 addu $2,$3,$2 sw $2,0($sp) lw $2,284($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,284($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,284($sp) lw $2,288($sp) and $5,$3,$2 lw $3,284($sp) lw $2,288($sp) or $3,$3,$2 lw $2,292($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,264($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,264($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,280($sp) lw $2,264($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,264($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,264($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,276($sp) addu $4,$3,$2 lw $3,268($sp) lw $2,272($sp) xor $3,$3,$2 lw $2,264($sp) and $3,$3,$2 lw $2,272($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,240($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,240($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,240($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,220($sp) addu $6,$3,$2 lw $2,188($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,188($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,188($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,184($sp) addu $2,$3,$2 sw $2,248($sp) addu $3,$5,$2 li $2,-1866596352 # 0x90be0000 ori $2,$2,0xfffa addu $2,$3,$2 sw $2,0($sp) lw $2,280($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,280($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,280($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,280($sp) lw $2,284($sp) and $5,$3,$2 lw $3,280($sp) lw $2,284($sp) or $3,$3,$2 lw $2,288($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,292($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,292($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,276($sp) lw $2,292($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,292($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,292($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,272($sp) addu $4,$3,$2 lw $3,264($sp) lw $2,268($sp) xor $3,$3,$2 lw $2,292($sp) and $3,$3,$2 lw $2,268($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,244($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,244($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,244($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,224($sp) addu $6,$3,$2 lw $2,192($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,192($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,192($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,188($sp) addu $2,$3,$2 sw $2,252($sp) addu $3,$5,$2 li $2,-1538260992 # 0xa4500000 ori $2,$2,0x6ceb addu $2,$3,$2 sw $2,0($sp) lw $2,276($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,276($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,276($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,276($sp) lw $2,280($sp) and $5,$3,$2 lw $3,276($sp) lw $2,280($sp) or $3,$3,$2 lw $2,284($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,288($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,288($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,272($sp) lw $2,288($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,288($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,288($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,268($sp) addu $4,$3,$2 lw $3,292($sp) lw $2,264($sp) xor $3,$3,$2 lw $2,288($sp) and $3,$3,$2 lw $2,264($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,248($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,248($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,248($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,228($sp) addu $6,$3,$2 lw $2,196($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,196($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,196($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,192($sp) addu $2,$3,$2 sw $2,256($sp) addu $3,$5,$2 li $2,-1090977792 # 0xbef90000 ori $2,$2,0xa3f7 addu $2,$3,$2 sw $2,0($sp) lw $2,272($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,272($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,272($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,272($sp) lw $2,276($sp) and $5,$3,$2 lw $3,272($sp) lw $2,276($sp) or $3,$3,$2 lw $2,280($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,284($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,284($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,268($sp) lw $2,284($sp) sll $3,$2,26 srl $2,$2,6 or $4,$3,$2 lw $2,284($sp) sll $3,$2,21 srl $2,$2,11 or $2,$3,$2 xor $4,$4,$2 lw $2,284($sp) sll $3,$2,7 srl $2,$2,25 or $2,$3,$2 xor $3,$4,$2 lw $2,264($sp) addu $4,$3,$2 lw $3,288($sp) lw $2,292($sp) xor $3,$3,$2 lw $2,284($sp) and $3,$3,$2 lw $2,292($sp) xor $2,$3,$2 addu $5,$4,$2 lw $2,252($sp) sll $3,$2,15 srl $2,$2,17 or $4,$3,$2 lw $2,252($sp) sll $3,$2,13 srl $2,$2,19 or $2,$3,$2 xor $3,$4,$2 lw $2,252($sp) srl $2,$2,10 xor $3,$3,$2 lw $2,232($sp) addu $6,$3,$2 lw $2,200($sp) sll $3,$2,25 srl $2,$2,7 or $4,$3,$2 lw $2,200($sp) sll $3,$2,14 srl $2,$2,18 or $2,$3,$2 xor $3,$4,$2 lw $2,200($sp) srl $2,$2,3 xor $2,$3,$2 addu $3,$6,$2 lw $2,196($sp) addu $2,$3,$2 sw $2,260($sp) addu $3,$5,$2 li $2,-965672960 # 0xc6710000 ori $2,$2,0x78f2 addu $2,$3,$2 sw $2,0($sp) lw $2,268($sp) sll $3,$2,30 srl $2,$2,2 or $4,$3,$2 lw $2,268($sp) sll $3,$2,19 srl $2,$2,13 or $2,$3,$2 xor $4,$4,$2 lw $2,268($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $3,268($sp) lw $2,272($sp) and $5,$3,$2 lw $3,268($sp) lw $2,272($sp) or $3,$3,$2 lw $2,276($sp) and $2,$3,$2 or $2,$5,$2 addu $2,$4,$2 sw $2,4($sp) lw $3,280($sp) lw $2,0($sp) addu $2,$3,$2 sw $2,280($sp) lw $3,0($sp) lw $2,4($sp) addu $2,$3,$2 sw $2,264($sp) lw $4,296($sp) lw $2,296($sp) lw $3,8($2) lw $2,264($sp) addu $2,$3,$2 sw $2,8($4) lw $4,296($sp) lw $2,296($sp) lw $3,12($2) lw $2,268($sp) addu $2,$3,$2 sw $2,12($4) lw $4,296($sp) lw $2,296($sp) lw $3,16($2) lw $2,272($sp) addu $2,$3,$2 sw $2,16($4) lw $4,296($sp) lw $2,296($sp) lw $3,20($2) lw $2,276($sp) addu $2,$3,$2 sw $2,20($4) lw $4,296($sp) lw $2,296($sp) lw $3,24($2) lw $2,280($sp) addu $2,$3,$2 sw $2,24($4) lw $4,296($sp) lw $2,296($sp) lw $3,28($2) lw $2,284($sp) addu $2,$3,$2 sw $2,28($4) lw $4,296($sp) lw $2,296($sp) lw $3,32($2) lw $2,288($sp) addu $2,$3,$2 sw $2,32($4) lw $4,296($sp) lw $2,296($sp) lw $3,36($2) lw $2,292($sp) addu $2,$3,$2 sw $2,36($4) addiu $sp,$sp,296 j $31 nop .set macro .set reorder .end sha2_process .section .text.sha2_update,"ax",@progbits .align 2 .globl sha2_update .ent sha2_update .type sha2_update, @function sha2_update: .set nomips16 .frame $sp,32,$31 # vars= 8, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,24($sp) sw $4,32($sp) sw $5,36($sp) sw $6,40($sp) lw $2,40($sp) bgtz $2,$L6 nop j $L5 nop $L6: lw $2,32($sp) lw $2,0($2) andi $2,$2,0x3f sw $2,20($sp) li $3,64 # 0x40 lw $2,20($sp) subu $2,$3,$2 sw $2,16($sp) lw $4,32($sp) lw $2,32($sp) lw $3,0($2) lw $2,40($sp) addu $2,$3,$2 sw $2,0($4) lw $3,32($sp) lw $2,32($sp) lw $2,0($2) sw $2,0($3) lw $2,32($sp) lw $3,0($2) lw $2,40($sp) sltu $2,$3,$2 beq $2,$0,$L7 nop lw $3,32($sp) lw $2,32($sp) lw $2,4($2) addiu $2,$2,1 sw $2,4($3) $L7: lw $2,20($sp) beq $2,$0,$L9 nop lw $2,40($sp) lw $3,16($sp) slt $2,$2,$3 bne $2,$0,$L9 nop lw $3,32($sp) lw $2,20($sp) addu $2,$3,$2 addiu $2,$2,40 move $4,$2 lw $5,36($sp) lw $6,16($sp) jal memcpy nop lw $2,32($sp) addiu $2,$2,40 lw $4,32($sp) move $5,$2 jal sha2_process nop lw $3,36($sp) lw $2,16($sp) addu $2,$3,$2 sw $2,36($sp) lw $3,40($sp) lw $2,16($sp) subu $2,$3,$2 sw $2,40($sp) sw $0,20($sp) $L9: lw $2,40($sp) slt $2,$2,64 bne $2,$0,$L10 nop lw $4,32($sp) lw $5,36($sp) jal sha2_process nop lw $2,36($sp) addiu $2,$2,64 sw $2,36($sp) lw $2,40($sp) addiu $2,$2,-64 sw $2,40($sp) j $L9 nop $L10: lw $2,40($sp) blez $2,$L5 nop lw $3,32($sp) lw $2,20($sp) addu $2,$3,$2 addiu $2,$2,40 move $4,$2 lw $5,36($sp) lw $6,40($sp) jal memcpy nop $L5: lw $31,24($sp) addiu $sp,$sp,32 j $31 nop .set macro .set reorder .end sha2_update .rdata .align 2 .type sha2_padding, @object .size sha2_padding, 64 sha2_padding: .byte -128 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .byte 0 .section .text.sha2_finish,"ax",@progbits .align 2 .globl sha2_finish .ent sha2_finish .type sha2_finish, @function sha2_finish: .set nomips16 .frame $sp,56,$31 # vars= 32, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-56 sw $31,48($sp) sw $4,56($sp) sw $5,60($sp) lw $2,56($sp) lw $2,0($2) srl $3,$2,29 lw $2,56($sp) lw $2,4($2) sll $2,$2,3 or $2,$3,$2 sw $2,24($sp) lw $2,56($sp) lw $2,0($2) sll $2,$2,3 sw $2,28($sp) lw $2,24($sp) srl $2,$2,24 sb $2,32($sp) lw $2,24($sp) srl $2,$2,16 sb $2,33($sp) lw $2,24($sp) srl $2,$2,8 sb $2,34($sp) lw $2,24($sp) sb $2,35($sp) lw $2,28($sp) srl $2,$2,24 sb $2,36($sp) lw $2,28($sp) srl $2,$2,16 sb $2,37($sp) lw $2,28($sp) srl $2,$2,8 sb $2,38($sp) lw $2,28($sp) sb $2,39($sp) lw $2,56($sp) lw $2,0($2) andi $2,$2,0x3f sw $2,16($sp) lw $2,16($sp) sltu $2,$2,56 beq $2,$0,$L13 nop li $3,56 # 0x38 lw $2,16($sp) subu $3,$3,$2 sw $3,40($sp) j $L14 nop $L13: li $3,120 # 0x78 lw $2,16($sp) subu $3,$3,$2 sw $3,40($sp) $L14: lw $2,40($sp) sw $2,20($sp) lw $4,56($sp) lui $2,%hi(sha2_padding) addiu $5,$2,%lo(sha2_padding) lw $6,20($sp) jal sha2_update nop addiu $2,$sp,32 lw $4,56($sp) move $5,$2 li $6,8 # 0x8 jal sha2_update nop lw $3,60($sp) lw $2,56($sp) lw $2,8($2) srl $2,$2,24 sb $2,0($3) lw $3,60($sp) lw $2,56($sp) lw $2,8($2) srl $2,$2,16 sb $2,1($3) lw $3,60($sp) lw $2,56($sp) lw $2,8($2) srl $2,$2,8 sb $2,2($3) lw $3,60($sp) lw $2,56($sp) lw $2,8($2) sb $2,3($3) lw $3,60($sp) lw $2,56($sp) lw $2,12($2) srl $2,$2,24 sb $2,4($3) lw $3,60($sp) lw $2,56($sp) lw $2,12($2) srl $2,$2,16 sb $2,5($3) lw $3,60($sp) lw $2,56($sp) lw $2,12($2) srl $2,$2,8 sb $2,6($3) lw $3,60($sp) lw $2,56($sp) lw $2,12($2) sb $2,7($3) lw $3,60($sp) lw $2,56($sp) lw $2,16($2) srl $2,$2,24 sb $2,8($3) lw $3,60($sp) lw $2,56($sp) lw $2,16($2) srl $2,$2,16 sb $2,9($3) lw $3,60($sp) lw $2,56($sp) lw $2,16($2) srl $2,$2,8 sb $2,10($3) lw $3,60($sp) lw $2,56($sp) lw $2,16($2) sb $2,11($3) lw $3,60($sp) lw $2,56($sp) lw $2,20($2) srl $2,$2,24 sb $2,12($3) lw $3,60($sp) lw $2,56($sp) lw $2,20($2) srl $2,$2,16 sb $2,13($3) lw $3,60($sp) lw $2,56($sp) lw $2,20($2) srl $2,$2,8 sb $2,14($3) lw $3,60($sp) lw $2,56($sp) lw $2,20($2) sb $2,15($3) lw $3,60($sp) lw $2,56($sp) lw $2,24($2) srl $2,$2,24 sb $2,16($3) lw $3,60($sp) lw $2,56($sp) lw $2,24($2) srl $2,$2,16 sb $2,17($3) lw $3,60($sp) lw $2,56($sp) lw $2,24($2) srl $2,$2,8 sb $2,18($3) lw $3,60($sp) lw $2,56($sp) lw $2,24($2) sb $2,19($3) lw $3,60($sp) lw $2,56($sp) lw $2,28($2) srl $2,$2,24 sb $2,20($3) lw $3,60($sp) lw $2,56($sp) lw $2,28($2) srl $2,$2,16 sb $2,21($3) lw $3,60($sp) lw $2,56($sp) lw $2,28($2) srl $2,$2,8 sb $2,22($3) lw $3,60($sp) lw $2,56($sp) lw $2,28($2) sb $2,23($3) lw $3,60($sp) lw $2,56($sp) lw $2,32($2) srl $2,$2,24 sb $2,24($3) lw $3,60($sp) lw $2,56($sp) lw $2,32($2) srl $2,$2,16 sb $2,25($3) lw $3,60($sp) lw $2,56($sp) lw $2,32($2) srl $2,$2,8 sb $2,26($3) lw $3,60($sp) lw $2,56($sp) lw $2,32($2) sb $2,27($3) lw $2,56($sp) lw $2,232($2) bne $2,$0,$L12 nop lw $3,60($sp) lw $2,56($sp) lw $2,36($2) srl $2,$2,24 sb $2,28($3) lw $3,60($sp) lw $2,56($sp) lw $2,36($2) srl $2,$2,16 sb $2,29($3) lw $3,60($sp) lw $2,56($sp) lw $2,36($2) srl $2,$2,8 sb $2,30($3) lw $3,60($sp) lw $2,56($sp) lw $2,36($2) sb $2,31($3) $L12: lw $31,48($sp) addiu $sp,$sp,56 j $31 nop .set macro .set reorder .end sha2_finish .section .text.sha2,"ax",@progbits .align 2 .globl sha2 .ent sha2 .type sha2, @function sha2: .set nomips16 .frame $sp,264,$31 # vars= 240, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-264 sw $31,256($sp) sw $4,264($sp) sw $5,268($sp) sw $6,272($sp) sw $7,276($sp) addiu $4,$sp,16 lw $5,276($sp) jal sha2_starts nop addiu $4,$sp,16 lw $5,264($sp) lw $6,268($sp) jal sha2_update nop addiu $4,$sp,16 lw $5,272($sp) jal sha2_finish nop addiu $4,$sp,16 move $5,$0 li $6,236 # 0xec jal memset nop lw $31,256($sp) addiu $sp,$sp,264 j $31 nop .set macro .set reorder .end sha2 .section .text.sha2_hmac_starts,"ax",@progbits .align 2 .globl sha2_hmac_starts .ent sha2_hmac_starts .type sha2_hmac_starts, @function sha2_hmac_starts: .set nomips16 .frame $sp,72,$31 # vars= 48, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-72 sw $31,64($sp) sw $4,72($sp) sw $5,76($sp) sw $6,80($sp) sw $7,84($sp) lw $2,80($sp) slt $2,$2,65 bne $2,$0,$L18 nop addiu $2,$sp,24 lw $4,76($sp) lw $5,80($sp) move $6,$2 lw $7,84($sp) jal sha2 nop lw $2,84($sp) beq $2,$0,$L19 nop li $2,28 # 0x1c sw $2,56($sp) j $L20 nop $L19: li $2,32 # 0x20 sw $2,56($sp) $L20: lw $2,56($sp) sw $2,80($sp) addiu $2,$sp,24 sw $2,76($sp) $L18: lw $2,72($sp) addiu $2,$2,104 move $4,$2 li $5,54 # 0x36 li $6,64 # 0x40 jal memset nop lw $2,72($sp) addiu $2,$2,168 move $4,$2 li $5,92 # 0x5c li $6,64 # 0x40 jal memset nop sw $0,16($sp) $L21: lw $2,16($sp) lw $3,80($sp) slt $2,$2,$3 beq $2,$0,$L22 nop lw $3,72($sp) lw $2,16($sp) addu $5,$3,$2 lw $3,72($sp) lw $2,16($sp) addu $4,$3,$2 lw $3,76($sp) lw $2,16($sp) addu $2,$3,$2 lbu $3,104($4) lbu $2,0($2) xor $2,$3,$2 sb $2,104($5) lw $3,72($sp) lw $2,16($sp) addu $5,$3,$2 lw $3,72($sp) lw $2,16($sp) addu $4,$3,$2 lw $3,76($sp) lw $2,16($sp) addu $2,$3,$2 lbu $3,168($4) lbu $2,0($2) xor $2,$3,$2 sb $2,168($5) lw $2,16($sp) addiu $2,$2,1 sw $2,16($sp) j $L21 nop $L22: lw $4,72($sp) lw $5,84($sp) jal sha2_starts nop lw $2,72($sp) addiu $2,$2,104 lw $4,72($sp) move $5,$2 li $6,64 # 0x40 jal sha2_update nop addiu $2,$sp,24 move $4,$2 move $5,$0 li $6,32 # 0x20 jal memset nop lw $31,64($sp) addiu $sp,$sp,72 j $31 nop .set macro .set reorder .end sha2_hmac_starts .section .text.sha2_hmac_update,"ax",@progbits .align 2 .globl sha2_hmac_update .ent sha2_hmac_update .type sha2_hmac_update, @function sha2_hmac_update: .set nomips16 .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,16($sp) sw $4,24($sp) sw $5,28($sp) sw $6,32($sp) lw $4,24($sp) lw $5,28($sp) lw $6,32($sp) jal sha2_update nop lw $31,16($sp) addiu $sp,$sp,24 j $31 nop .set macro .set reorder .end sha2_hmac_update .section .text.sha2_hmac_finish,"ax",@progbits .align 2 .globl sha2_hmac_finish .ent sha2_hmac_finish .type sha2_hmac_finish, @function sha2_hmac_finish: .set nomips16 .frame $sp,72,$31 # vars= 48, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-72 sw $31,64($sp) sw $4,72($sp) sw $5,76($sp) lw $2,72($sp) lw $2,232($2) sw $2,16($sp) lw $2,16($sp) bne $2,$0,$L26 nop li $2,32 # 0x20 sw $2,56($sp) j $L27 nop $L26: li $2,28 # 0x1c sw $2,56($sp) $L27: lw $2,56($sp) sw $2,20($sp) addiu $2,$sp,24 lw $4,72($sp) move $5,$2 jal sha2_finish nop lw $4,72($sp) lw $5,16($sp) jal sha2_starts nop lw $2,72($sp) addiu $2,$2,168 lw $4,72($sp) move $5,$2 li $6,64 # 0x40 jal sha2_update nop addiu $2,$sp,24 lw $4,72($sp) move $5,$2 lw $6,20($sp) jal sha2_update nop lw $4,72($sp) lw $5,76($sp) jal sha2_finish nop addiu $2,$sp,24 move $4,$2 move $5,$0 li $6,32 # 0x20 jal memset nop lw $31,64($sp) addiu $sp,$sp,72 j $31 nop .set macro .set reorder .end sha2_hmac_finish .section .text.sha2_hmac,"ax",@progbits .align 2 .globl sha2_hmac .ent sha2_hmac .type sha2_hmac, @function sha2_hmac: .set nomips16 .frame $sp,264,$31 # vars= 240, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-264 sw $31,256($sp) sw $4,264($sp) sw $5,268($sp) sw $6,272($sp) sw $7,276($sp) addiu $4,$sp,16 lw $5,264($sp) lw $6,268($sp) lw $7,284($sp) jal sha2_hmac_starts nop addiu $4,$sp,16 lw $5,272($sp) lw $6,276($sp) jal sha2_hmac_update nop addiu $4,$sp,16 lw $5,280($sp) jal sha2_hmac_finish nop addiu $4,$sp,16 move $5,$0 li $6,236 # 0xec jal memset nop lw $31,256($sp) addiu $sp,$sp,264 j $31 nop .set macro .set reorder .end sha2_hmac .section .text.sha256_hmac,"ax",@progbits .align 2 .globl sha256_hmac .ent sha256_hmac .type sha256_hmac, @function sha256_hmac: .set nomips16 .frame $sp,64,$31 # vars= 32, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $31,56($sp) sw $4,64($sp) sw $5,68($sp) sw $6,72($sp) sw $7,76($sp) addiu $2,$sp,24 sw $2,16($sp) sw $0,20($sp) lw $4,64($sp) lw $5,68($sp) lw $6,72($sp) lw $7,76($sp) jal sha2_hmac nop lw $4,80($sp) addiu $5,$sp,24 lw $6,84($sp) jal memcpy nop addiu $4,$sp,24 move $5,$0 li $6,32 # 0x20 jal memset nop lw $31,56($sp) addiu $sp,$sp,64 j $31 nop .set macro .set reorder .end sha256_hmac .section .text.KD_hmac_sha256,"ax",@progbits .align 2 .globl KD_hmac_sha256 .ent KD_hmac_sha256 .type KD_hmac_sha256, @function KD_hmac_sha256: .set nomips16 .frame $sp,40,$31 # vars= 8, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $31,32($sp) sw $4,40($sp) sw $5,44($sp) sw $6,48($sp) sw $7,52($sp) sw $0,24($sp) $L31: lw $2,60($sp) sw $2,28($sp) lw $2,28($sp) bgez $2,$L34 nop lw $3,28($sp) addiu $3,$3,31 sw $3,28($sp) $L34: lw $3,28($sp) sra $2,$3,5 beq $2,$0,$L32 nop lw $2,24($sp) sll $3,$2,5 lw $2,56($sp) addu $2,$3,$2 sw $2,16($sp) li $2,32 # 0x20 sw $2,20($sp) lw $4,40($sp) lw $5,44($sp) lw $6,48($sp) lw $7,52($sp) jal sha256_hmac nop lw $2,24($sp) sll $3,$2,5 lw $2,56($sp) addu $2,$3,$2 sw $2,48($sp) li $2,32 # 0x20 sw $2,52($sp) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) lw $2,60($sp) addiu $2,$2,-32 sw $2,60($sp) j $L31 nop $L32: lw $2,60($sp) blez $2,$L30 nop lw $2,24($sp) sll $3,$2,5 lw $2,56($sp) addu $2,$3,$2 sw $2,16($sp) lw $2,60($sp) sw $2,20($sp) lw $4,40($sp) lw $5,44($sp) lw $6,48($sp) lw $7,52($sp) jal sha256_hmac nop $L30: lw $31,32($sp) addiu $sp,$sp,40 j $31 nop .set macro .set reorder .end KD_hmac_sha256 .data .align 2 .type Sbox_tmp.3, @object .size Sbox_tmp.3, 256 Sbox_tmp.3: .byte -42 .byte -112 .byte -23 .byte -2 .byte -52 .byte -31 .byte 61 .byte -73 .byte 22 .byte -74 .byte 20 .byte -62 .byte 40 .byte -5 .byte 44 .byte 5 .byte 43 .byte 103 .byte -102 .byte 118 .byte 42 .byte -66 .byte 4 .byte -61 .byte -86 .byte 68 .byte 19 .byte 38 .byte 73 .byte -122 .byte 6 .byte -103 .byte -100 .byte 66 .byte 80 .byte -12 .byte -111 .byte -17 .byte -104 .byte 122 .byte 51 .byte 84 .byte 11 .byte 67 .byte -19 .byte -49 .byte -84 .byte 98 .byte -28 .byte -77 .byte 28 .byte -87 .byte -55 .byte 8 .byte -24 .byte -107 .byte -128 .byte -33 .byte -108 .byte -6 .byte 117 .byte -113 .byte 63 .byte -90 .byte 71 .byte 7 .byte -89 .byte -4 .byte -13 .byte 115 .byte 23 .byte -70 .byte -125 .byte 89 .byte 60 .byte 25 .byte -26 .byte -123 .byte 79 .byte -88 .byte 104 .byte 107 .byte -127 .byte -78 .byte 113 .byte 100 .byte -38 .byte -117 .byte -8 .byte -21 .byte 15 .byte 75 .byte 112 .byte 86 .byte -99 .byte 53 .byte 30 .byte 36 .byte 14 .byte 94 .byte 99 .byte 88 .byte -47 .byte -94 .byte 37 .byte 34 .byte 124 .byte 59 .byte 1 .byte 33 .byte 120 .byte -121 .byte -44 .byte 0 .byte 70 .byte 87 .byte -97 .byte -45 .byte 39 .byte 82 .byte 76 .byte 54 .byte 2 .byte -25 .byte -96 .byte -60 .byte -56 .byte -98 .byte -22 .byte -65 .byte -118 .byte -46 .byte 64 .byte -57 .byte 56 .byte -75 .byte -93 .byte -9 .byte -14 .byte -50 .byte -7 .byte 97 .byte 21 .byte -95 .byte -32 .byte -82 .byte 93 .byte -92 .byte -101 .byte 52 .byte 26 .byte 85 .byte -83 .byte -109 .byte 50 .byte 48 .byte -11 .byte -116 .byte -79 .byte -29 .byte 29 .byte -10 .byte -30 .byte 46 .byte -126 .byte 102 .byte -54 .byte 96 .byte -64 .byte 41 .byte 35 .byte -85 .byte 13 .byte 83 .byte 78 .byte 111 .byte -43 .byte -37 .byte 55 .byte 69 .byte -34 .byte -3 .byte -114 .byte 47 .byte 3 .byte -1 .byte 106 .byte 114 .byte 109 .byte 108 .byte 91 .byte 81 .byte -115 .byte 27 .byte -81 .byte -110 .byte -69 .byte -35 .byte -68 .byte 127 .byte 17 .byte -39 .byte 92 .byte 65 .byte 31 .byte 16 .byte 90 .byte -40 .byte 10 .byte -63 .byte 49 .byte -120 .byte -91 .byte -51 .byte 123 .byte -67 .byte 45 .byte 116 .byte -48 .byte 18 .byte -72 .byte -27 .byte -76 .byte -80 .byte -119 .byte 105 .byte -105 .byte 74 .byte 12 .byte -106 .byte 119 .byte 126 .byte 101 .byte -71 .byte -15 .byte 9 .byte -59 .byte 110 .byte -58 .byte -124 .byte 24 .byte -16 .byte 125 .byte -20 .byte 58 .byte -36 .byte 77 .byte 32 .byte 121 .byte -18 .byte 95 .byte 62 .byte -41 .byte -53 .byte 57 .byte 72 .align 2 .type CK_tmp.4, @object .size CK_tmp.4, 128 CK_tmp.4: .word 462357 .word 472066609 .word 943670861 .word 1415275113 .word 1886879365 .word -1936483679 .word -1464879427 .word -993275175 .word -521670923 .word -66909679 .word 404694573 .word 876298825 .word 1347903077 .word 1819507329 .word -2003855715 .word -1532251463 .word -1060647211 .word -589042959 .word -117504499 .word 337322537 .word 808926789 .word 1280531041 .word 1752135293 .word -2071227751 .word -1599623499 .word -1128019247 .word -656414995 .word -184876535 .word 269950501 .word 741554753 .word 1213159005 .word 1684763257 .section .text.init_SMS4_CK_Sbox,"ax",@progbits .align 2 .globl init_SMS4_CK_Sbox .ent init_SMS4_CK_Sbox .type init_SMS4_CK_Sbox, @function init_SMS4_CK_Sbox: .set nomips16 .frame $sp,24,$31 # vars= 0, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $31,16($sp) lui $2,%hi(Sbox) addiu $4,$2,%lo(Sbox) lui $2,%hi(Sbox_tmp.3) addiu $5,$2,%lo(Sbox_tmp.3) li $6,256 # 0x100 jal memcpy nop lui $2,%hi(CK) addiu $4,$2,%lo(CK) lui $2,%hi(CK_tmp.4) addiu $5,$2,%lo(CK_tmp.4) li $6,128 # 0x80 jal memcpy nop li $2,1 # 0x1 lw $31,16($sp) addiu $sp,$sp,24 j $31 nop .set macro .set reorder .end init_SMS4_CK_Sbox .section .text.SMS4Crypt,"ax",@progbits .align 2 .ent SMS4Crypt .type SMS4Crypt, @function SMS4Crypt: .set nomips16 .frame $sp,32,$31 # vars= 32, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $4,32($sp) sw $5,36($sp) sw $6,40($sp) lw $2,32($sp) sw $2,24($sp) lw $2,24($sp) lw $2,0($2) sw $2,8($sp) lw $2,24($sp) lw $2,4($2) sw $2,12($sp) lw $2,24($sp) lw $2,8($2) sw $2,16($sp) lw $2,24($sp) lw $2,12($2) sw $2,20($sp) sw $0,0($sp) $L38: lw $2,0($sp) sltu $2,$2,32 beq $2,$0,$L39 nop lw $3,12($sp) lw $2,16($sp) xor $3,$3,$2 lw $2,20($sp) xor $4,$3,$2 lw $2,0($sp) sll $3,$2,2 lw $2,40($sp) addu $2,$3,$2 lw $2,0($2) xor $2,$4,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,4($sp) sll $3,$2,2 srl $2,$2,30 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,18 srl $2,$2,14 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,24 srl $2,$2,8 or $2,$3,$2 xor $3,$4,$2 lw $2,8($sp) xor $2,$2,$3 sw $2,8($sp) lw $3,16($sp) lw $2,20($sp) xor $3,$3,$2 lw $2,8($sp) xor $4,$3,$2 lw $2,0($sp) sll $3,$2,2 lw $2,40($sp) addu $2,$3,$2 lw $2,4($2) xor $2,$4,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,4($sp) sll $3,$2,2 srl $2,$2,30 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,18 srl $2,$2,14 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,24 srl $2,$2,8 or $2,$3,$2 xor $3,$4,$2 lw $2,12($sp) xor $2,$2,$3 sw $2,12($sp) lw $3,20($sp) lw $2,8($sp) xor $3,$3,$2 lw $2,12($sp) xor $4,$3,$2 lw $2,0($sp) sll $3,$2,2 lw $2,40($sp) addu $2,$3,$2 lw $2,8($2) xor $2,$4,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,4($sp) sll $3,$2,2 srl $2,$2,30 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,18 srl $2,$2,14 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,24 srl $2,$2,8 or $2,$3,$2 xor $3,$4,$2 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) lw $3,8($sp) lw $2,12($sp) xor $3,$3,$2 lw $2,16($sp) xor $4,$3,$2 lw $2,0($sp) sll $3,$2,2 lw $2,40($sp) addu $2,$3,$2 lw $2,12($2) xor $2,$4,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,4($sp) sll $3,$2,2 srl $2,$2,30 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,10 srl $2,$2,22 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,18 srl $2,$2,14 or $2,$3,$2 xor $4,$4,$2 lw $2,4($sp) sll $3,$2,24 srl $2,$2,8 or $2,$3,$2 xor $3,$4,$2 lw $2,20($sp) xor $2,$2,$3 sw $2,20($sp) lw $2,0($sp) addiu $2,$2,4 sw $2,0($sp) j $L38 nop $L39: lw $2,36($sp) sw $2,24($sp) lw $3,24($sp) lw $2,20($sp) sw $2,0($3) lw $3,24($sp) lw $2,16($sp) sw $2,4($3) lw $3,24($sp) lw $2,12($sp) sw $2,8($3) lw $3,24($sp) lw $2,8($sp) sw $2,12($3) addiu $sp,$sp,32 j $31 nop .set macro .set reorder .end SMS4Crypt .section .text.SMS4KeyExt,"ax",@progbits .align 2 .ent SMS4KeyExt .type SMS4KeyExt, @function SMS4KeyExt: .set nomips16 .frame $sp,32,$31 # vars= 32, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $4,32($sp) sw $5,36($sp) lw $2,32($sp) sw $2,24($sp) lw $2,24($sp) lw $2,0($2) sw $2,8($sp) lw $2,24($sp) lw $2,4($2) sw $2,12($sp) lw $2,24($sp) lw $2,8($2) sw $2,16($sp) lw $2,24($sp) lw $2,12($2) sw $2,20($sp) lw $3,8($sp) li $2,-1548681216 # 0xa3b10000 ori $2,$2,0xbac6 xor $2,$3,$2 sw $2,8($sp) lw $3,12($sp) li $2,1453981696 # 0x56aa0000 ori $2,$2,0x3350 xor $2,$3,$2 sw $2,12($sp) lw $3,16($sp) li $2,1736245248 # 0x677d0000 ori $2,$2,0x9197 xor $2,$3,$2 sw $2,16($sp) lw $3,20($sp) li $2,-1301282816 # 0xb2700000 ori $2,$2,0x22dc xor $2,$3,$2 sw $2,20($sp) sw $0,0($sp) $L42: lw $2,0($sp) sltu $2,$2,32 beq $2,$0,$L41 nop lw $3,12($sp) lw $2,16($sp) xor $3,$3,$2 lw $2,20($sp) xor $5,$3,$2 lui $4,%hi(CK) lw $2,0($sp) sll $3,$2,2 addiu $2,$4,%lo(CK) addu $2,$3,$2 lw $2,0($2) xor $2,$5,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,0($sp) sll $3,$2,2 lw $2,36($sp) addu $5,$3,$2 lw $2,4($sp) sll $3,$2,13 srl $2,$2,19 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,23 srl $2,$2,9 or $2,$3,$2 xor $3,$4,$2 lw $2,8($sp) xor $2,$2,$3 sw $2,8($sp) sw $2,0($5) lw $3,16($sp) lw $2,20($sp) xor $3,$3,$2 lw $2,8($sp) xor $5,$3,$2 lui $4,%hi(CK) lw $2,0($sp) sll $3,$2,2 addiu $2,$4,%lo(CK) addu $2,$3,$2 lw $2,4($2) xor $2,$5,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,0($sp) sll $3,$2,2 lw $2,36($sp) addu $5,$3,$2 lw $2,4($sp) sll $3,$2,13 srl $2,$2,19 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,23 srl $2,$2,9 or $2,$3,$2 xor $3,$4,$2 lw $2,12($sp) xor $2,$2,$3 sw $2,12($sp) sw $2,4($5) lw $3,20($sp) lw $2,8($sp) xor $3,$3,$2 lw $2,12($sp) xor $5,$3,$2 lui $4,%hi(CK) lw $2,0($sp) sll $3,$2,2 addiu $2,$4,%lo(CK) addu $2,$3,$2 lw $2,8($2) xor $2,$5,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,0($sp) sll $3,$2,2 lw $2,36($sp) addu $5,$3,$2 lw $2,4($sp) sll $3,$2,13 srl $2,$2,19 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,23 srl $2,$2,9 or $2,$3,$2 xor $3,$4,$2 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) sw $2,8($5) lw $3,8($sp) lw $2,12($sp) xor $3,$3,$2 lw $2,16($sp) xor $5,$3,$2 lui $4,%hi(CK) lw $2,0($sp) sll $3,$2,2 addiu $2,$4,%lo(CK) addu $2,$3,$2 lw $2,12($2) xor $2,$5,$2 sw $2,4($sp) lui $4,%hi(Sbox) lw $2,4($sp) srl $3,$2,24 addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $5,$2,24 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,16 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,16 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) srl $2,$2,8 andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) sll $2,$2,8 xor $5,$5,$2 lui $4,%hi(Sbox) lw $2,4($sp) andi $3,$2,0xff addiu $2,$4,%lo(Sbox) addu $2,$3,$2 lbu $2,0($2) xor $2,$5,$2 sw $2,4($sp) lw $2,0($sp) sll $3,$2,2 lw $2,36($sp) addu $5,$3,$2 lw $2,4($sp) sll $3,$2,13 srl $2,$2,19 or $3,$3,$2 lw $2,4($sp) xor $4,$3,$2 lw $2,4($sp) sll $3,$2,23 srl $2,$2,9 or $2,$3,$2 xor $3,$4,$2 lw $2,20($sp) xor $2,$2,$3 sw $2,20($sp) sw $2,12($5) lw $2,0($sp) addiu $2,$2,4 sw $2,0($sp) j $L42 nop $L41: addiu $sp,$sp,32 j $31 nop .set macro .set reorder .end SMS4KeyExt .section .text.WapiSMS4Cryption,"ax",@progbits .align 2 .globl WapiSMS4Cryption .ent WapiSMS4Cryption .type WapiSMS4Cryption, @function WapiSMS4Cryption: .set nomips16 .frame $sp,64,$31 # vars= 40, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $31,56($sp) sw $4,64($sp) sw $5,68($sp) sw $6,72($sp) move $2,$7 sh $2,76($sp) lhu $2,76($sp) andi $2,$2,0xf sh $2,28($sp) lhu $2,76($sp) srl $2,$2,4 andi $2,$2,0xffff sw $2,16($sp) sw $0,20($sp) $L46: lw $2,20($sp) sltu $2,$2,16 beq $2,$0,$L47 nop lui $2,%hi(wapiBlockIn) addiu $3,$2,%lo(wapiBlockIn) lw $2,20($sp) addu $4,$3,$2 lw $3,68($sp) lw $2,20($sp) subu $2,$3,$2 lbu $2,15($2) sb $2,0($4) lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L46 nop $L47: lw $4,64($sp) lui $2,%hi(wapiRK) addiu $5,$2,%lo(wapiRK) jal SMS4KeyExt nop lui $2,%hi(wapiBlockIn) addiu $2,$2,%lo(wapiBlockIn) sw $2,32($sp) lui $2,%hi(wapiTempBlock) addiu $2,$2,%lo(wapiTempBlock) sw $2,36($sp) sw $0,20($sp) $L49: lw $2,20($sp) lw $3,16($sp) sltu $2,$2,$3 beq $2,$0,$L50 nop lw $4,32($sp) lw $5,36($sp) lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop lw $2,80($sp) sw $2,44($sp) lw $2,72($sp) sw $2,48($sp) lw $2,36($sp) sw $2,52($sp) lw $5,44($sp) lw $2,48($sp) lw $3,52($sp) lw $4,0($2) lw $2,0($3) xor $2,$4,$2 sw $2,0($5) lw $5,44($sp) lw $2,48($sp) lw $3,52($sp) lw $4,4($2) lw $2,4($3) xor $2,$4,$2 sw $2,4($5) lw $5,44($sp) lw $2,48($sp) lw $3,52($sp) lw $4,8($2) lw $2,8($3) xor $2,$4,$2 sw $2,8($5) lw $5,44($sp) lw $2,48($sp) lw $3,52($sp) lw $4,12($2) lw $2,12($3) xor $2,$4,$2 sw $2,12($5) lw $2,32($sp) sw $2,40($sp) lw $2,36($sp) sw $2,32($sp) lw $2,40($sp) sw $2,36($sp) lw $2,80($sp) addiu $2,$2,16 sw $2,80($sp) lw $2,72($sp) addiu $2,$2,16 sw $2,72($sp) lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L49 nop $L50: lhu $2,28($sp) beq $2,$0,$L53 nop lw $4,84($sp) lw $2,20($sp) sll $2,$2,4 move $3,$2 lhu $2,28($sp) addu $2,$3,$2 sh $2,0($4) lw $4,32($sp) lw $5,36($sp) lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop sw $0,24($sp) $L54: lhu $2,28($sp) lw $3,24($sp) sltu $2,$3,$2 beq $2,$0,$L45 nop lw $3,80($sp) lw $2,24($sp) addu $5,$3,$2 lw $3,72($sp) lw $2,24($sp) addu $4,$3,$2 lw $3,36($sp) lw $2,24($sp) addu $2,$3,$2 lbu $3,0($4) lbu $2,0($2) xor $2,$3,$2 sb $2,0($5) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L54 nop $L53: lw $3,84($sp) lw $2,20($sp) sll $2,$2,4 sh $2,0($3) $L45: lw $31,56($sp) addiu $sp,$sp,64 j $31 nop .set macro .set reorder .end WapiSMS4Cryption .section .text.WapiSMS4CalculateMic,"ax",@progbits .align 2 .globl WapiSMS4CalculateMic .ent WapiSMS4CalculateMic .type WapiSMS4CalculateMic, @function WapiSMS4CalculateMic: .set nomips16 .frame $sp,72,$31 # vars= 48, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-72 sw $31,64($sp) sw $4,72($sp) sw $5,76($sp) sw $6,80($sp) move $2,$7 lw $3,92($sp) sb $2,84($sp) sh $3,16($sp) lbu $2,84($sp) andi $2,$2,0xf sw $2,28($sp) lbu $2,84($sp) srl $2,$2,4 andi $2,$2,0x00ff sw $2,20($sp) sw $0,24($sp) $L59: lw $2,24($sp) sltu $2,$2,16 beq $2,$0,$L60 nop lui $2,%hi(wapiBlockIn) addiu $3,$2,%lo(wapiBlockIn) lw $2,24($sp) addu $4,$3,$2 lw $3,76($sp) lw $2,24($sp) subu $2,$3,$2 lbu $2,15($2) sb $2,0($4) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L59 nop $L60: lw $4,72($sp) lui $2,%hi(wapiRK) addiu $5,$2,%lo(wapiRK) jal SMS4KeyExt nop addiu $3,$sp,32 lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) move $5,$3 lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop sw $0,24($sp) $L62: lw $2,24($sp) lw $3,20($sp) sltu $2,$2,$3 beq $2,$0,$L63 nop lui $2,%hi(wapiBlockIn) addiu $2,$2,%lo(wapiBlockIn) sw $2,48($sp) lw $2,80($sp) sw $2,52($sp) addiu $2,$sp,32 sw $2,56($sp) lw $5,48($sp) lw $2,52($sp) lw $3,56($sp) lw $4,0($2) lw $2,0($3) xor $2,$4,$2 sw $2,0($5) lw $5,48($sp) lw $2,52($sp) lw $3,56($sp) lw $4,4($2) lw $2,4($3) xor $2,$4,$2 sw $2,4($5) lw $5,48($sp) lw $2,52($sp) lw $3,56($sp) lw $4,8($2) lw $2,8($3) xor $2,$4,$2 sw $2,8($5) lw $5,48($sp) lw $2,52($sp) lw $3,56($sp) lw $4,12($2) lw $2,12($3) xor $2,$4,$2 sw $2,12($5) addiu $3,$sp,32 lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) move $5,$3 lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop lw $2,80($sp) addiu $2,$2,16 sw $2,80($sp) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L62 nop $L63: lw $2,28($sp) beq $2,$0,$L66 nop lw $3,28($sp) lui $2,%hi(wapiTempBlock) addiu $2,$2,%lo(wapiTempBlock) addu $4,$3,$2 li $3,16 # 0x10 lw $2,28($sp) subu $2,$3,$2 move $5,$0 move $6,$2 jal memset nop lui $2,%hi(wapiTempBlock) addiu $4,$2,%lo(wapiTempBlock) lw $5,80($sp) lw $6,28($sp) jal memcpy nop lui $2,%hi(wapiBlockIn) addiu $2,$2,%lo(wapiBlockIn) sw $2,56($sp) lui $2,%hi(wapiTempBlock) addiu $2,$2,%lo(wapiTempBlock) sw $2,52($sp) addiu $2,$sp,32 sw $2,48($sp) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,0($2) lw $2,0($3) xor $2,$4,$2 sw $2,0($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,4($2) lw $2,4($3) xor $2,$4,$2 sw $2,4($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,8($2) lw $2,8($3) xor $2,$4,$2 sw $2,8($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,12($2) lw $2,12($3) xor $2,$4,$2 sw $2,12($5) addiu $3,$sp,32 lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) move $5,$3 lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop $L66: lhu $2,16($sp) andi $2,$2,0xf sw $2,28($sp) lhu $2,16($sp) srl $2,$2,4 andi $2,$2,0xffff sw $2,20($sp) sw $0,24($sp) $L68: lw $2,24($sp) lw $3,20($sp) sltu $2,$2,$3 beq $2,$0,$L69 nop lui $2,%hi(wapiBlockIn) addiu $2,$2,%lo(wapiBlockIn) sw $2,56($sp) lw $2,88($sp) sw $2,52($sp) addiu $2,$sp,32 sw $2,48($sp) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,0($2) lw $2,0($3) xor $2,$4,$2 sw $2,0($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,4($2) lw $2,4($3) xor $2,$4,$2 sw $2,4($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,8($2) lw $2,8($3) xor $2,$4,$2 sw $2,8($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,12($2) lw $2,12($3) xor $2,$4,$2 sw $2,12($5) addiu $3,$sp,32 lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) move $5,$3 lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop lw $2,88($sp) addiu $2,$2,16 sw $2,88($sp) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L68 nop $L69: lw $2,28($sp) beq $2,$0,$L72 nop lw $3,28($sp) lui $2,%hi(wapiTempBlock) addiu $2,$2,%lo(wapiTempBlock) addu $4,$3,$2 li $3,16 # 0x10 lw $2,28($sp) subu $2,$3,$2 move $5,$0 move $6,$2 jal memset nop lui $2,%hi(wapiTempBlock) addiu $4,$2,%lo(wapiTempBlock) lw $5,88($sp) lw $6,28($sp) jal memcpy nop lui $2,%hi(wapiBlockIn) addiu $2,$2,%lo(wapiBlockIn) sw $2,56($sp) lui $2,%hi(wapiTempBlock) addiu $2,$2,%lo(wapiTempBlock) sw $2,52($sp) addiu $2,$sp,32 sw $2,48($sp) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,0($2) lw $2,0($3) xor $2,$4,$2 sw $2,0($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,4($2) lw $2,4($3) xor $2,$4,$2 sw $2,4($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,8($2) lw $2,8($3) xor $2,$4,$2 sw $2,8($5) lw $5,56($sp) lw $2,52($sp) lw $3,48($sp) lw $4,12($2) lw $2,12($3) xor $2,$4,$2 sw $2,12($5) addiu $3,$sp,32 lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) move $5,$3 lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop $L72: addiu $2,$sp,32 lw $4,96($sp) move $5,$2 li $6,16 # 0x10 jal memcpy nop lw $31,64($sp) addiu $sp,$sp,72 j $31 nop .set macro .set reorder .end WapiSMS4CalculateMic .section .text.WapiSMS4ForMNKEncrypt,"ax",@progbits .align 2 .globl WapiSMS4ForMNKEncrypt .ent WapiSMS4ForMNKEncrypt .type WapiSMS4ForMNKEncrypt, @function WapiSMS4ForMNKEncrypt: .set nomips16 .frame $sp,40,$31 # vars= 16, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $31,32($sp) sw $4,40($sp) sw $5,44($sp) sw $6,48($sp) sw $7,52($sp) lw $2,60($sp) sb $0,0($2) lw $2,52($sp) andi $2,$2,0xf sw $2,28($sp) lw $2,52($sp) srl $2,$2,4 sw $2,16($sp) lw $2,28($sp) beq $2,$0,$L75 nop lw $2,16($sp) addiu $2,$2,1 sw $2,16($sp) $L75: lw $2,28($sp) beq $2,$0,$L76 nop lw $2,52($sp) sw $2,24($sp) $L77: lw $2,16($sp) sll $3,$2,4 lw $2,24($sp) sltu $2,$2,$3 beq $2,$0,$L76 nop lw $3,48($sp) lw $2,24($sp) addu $2,$3,$2 sb $0,0($2) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L77 nop $L76: lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) lw $5,44($sp) li $6,16 # 0x10 jal memcpy nop lw $4,40($sp) lui $2,%hi(wapiRK) addiu $5,$2,%lo(wapiRK) jal SMS4KeyExt nop sw $0,20($sp) $L80: lw $2,20($sp) lw $3,16($sp) sltu $2,$2,$3 beq $2,$0,$L74 nop lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) lui $2,%hi(wapiTempBlock) addiu $5,$2,%lo(wapiTempBlock) lui $2,%hi(wapiRK) addiu $6,$2,%lo(wapiRK) jal SMS4Crypt nop lw $3,60($sp) lw $2,60($sp) lbu $2,0($2) addiu $2,$2,16 sb $2,0($3) sw $0,24($sp) $L83: lw $2,24($sp) sltu $2,$2,16 beq $2,$0,$L84 nop lw $2,20($sp) sll $3,$2,4 lw $2,56($sp) addu $3,$3,$2 lw $2,24($sp) addu $5,$3,$2 lw $2,20($sp) sll $3,$2,4 lw $2,48($sp) addu $3,$3,$2 lw $2,24($sp) addu $4,$3,$2 lui $2,%hi(wapiTempBlock) addiu $3,$2,%lo(wapiTempBlock) lw $2,24($sp) addu $2,$3,$2 lbu $3,0($4) lbu $2,0($2) xor $2,$3,$2 sb $2,0($5) lw $2,24($sp) addiu $2,$2,1 sw $2,24($sp) j $L83 nop $L84: lui $2,%hi(wapiBlockIn) addiu $4,$2,%lo(wapiBlockIn) lui $2,%hi(wapiTempBlock) addiu $5,$2,%lo(wapiTempBlock) li $6,16 # 0x10 jal memcpy nop lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L80 nop $L74: lw $31,32($sp) addiu $sp,$sp,40 j $31 nop .set macro .set reorder .end WapiSMS4ForMNKEncrypt .local TempBuf.5 .comm TempBuf.5,34,4 .section .text.SecCalculateMicSMS4,"ax",@progbits .align 2 .globl SecCalculateMicSMS4 .ent SecCalculateMicSMS4 .type SecCalculateMicSMS4, @function SecCalculateMicSMS4: .set nomips16 .frame $sp,64,$31 # vars= 24, regs= 1/0, args= 32, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $31,56($sp) move $3,$4 sw $5,68($sp) sw $6,72($sp) sw $7,76($sp) lw $2,80($sp) sb $3,64($sp) sh $2,32($sp) lui $3,%hi(TempBuf.5) lw $2,72($sp) lhu $2,0($2) sh $2,%lo(TempBuf.5)($3) lui $2,%hi(TempBuf.5) addiu $2,$2,%lo(TempBuf.5) sw $2,40($sp) lui $4,%hi(TempBuf.5) lui $2,%hi(TempBuf.5) li $3,-28729 lhu $2,%lo(TempBuf.5)($2) and $2,$2,$3 sh $2,%lo(TempBuf.5)($4) lw $2,72($sp) addiu $3,$2,4 lui $2,%hi(TempBuf.5+2) addiu $4,$2,%lo(TempBuf.5+2) move $5,$3 li $6,12 # 0xc jal memcpy nop lw $2,72($sp) addiu $3,$2,22 lui $2,%hi(TempBuf.5+14) addiu $4,$2,%lo(TempBuf.5+14) move $5,$3 li $6,2 # 0x2 jal memcpy nop lui $2,%hi(TempBuf.5+14) addiu $2,$2,%lo(TempBuf.5+14) sw $2,40($sp) lui $3,%hi(TempBuf.5+14) lui $2,%hi(TempBuf.5+14) lhu $2,%lo(TempBuf.5+14)($2) andi $2,$2,0xf00 sh $2,%lo(TempBuf.5+14)($3) lw $2,72($sp) addiu $3,$2,16 lui $2,%hi(TempBuf.5+16) addiu $4,$2,%lo(TempBuf.5+16) move $5,$3 li $6,6 # 0x6 jal memcpy nop lw $2,72($sp) lhu $2,0($2) andi $2,$2,0x1 sll $3,$2,1 lw $2,72($sp) lhu $2,0($2) srl $2,$2,1 andi $2,$2,0x1 or $3,$3,$2 li $2,3 # 0x3 bne $3,$2,$L87 nop lw $2,72($sp) addiu $3,$2,24 lui $2,%hi(TempBuf.5+22) addiu $4,$2,%lo(TempBuf.5+22) move $5,$3 li $6,6 # 0x6 jal memcpy nop li $2,30 sb $2,35($sp) j $L90 nop $L87: lui $2,%hi(TempBuf.5+22) addiu $4,$2,%lo(TempBuf.5+22) move $5,$0 li $6,6 # 0x6 jal memset nop li $2,24 sb $2,35($sp) $L90: lw $2,72($sp) lhu $2,0($2) sh $2,44($sp) lhu $2,44($sp) andi $2,$2,0xff sll $3,$2,8 lhu $2,44($sp) andi $2,$2,0xff00 sra $2,$2,8 or $2,$3,$2 andi $2,$2,0xffff sw $2,48($sp) lw $2,48($sp) andi $2,$2,0xffff andi $3,$2,0x88 li $2,136 # 0x88 beq $3,$2,$L91 nop j $L89 nop $L91: lbu $3,35($sp) lw $2,72($sp) addu $3,$3,$2 lui $2,%hi(TempBuf.5+28) addiu $4,$2,%lo(TempBuf.5+28) move $5,$3 li $6,2 # 0x2 jal memcpy nop li $2,34 sb $2,34($sp) lbu $3,35($sp) lw $2,72($sp) addu $2,$3,$2 addiu $2,$2,4 sw $2,36($sp) j $L93 nop $L89: li $2,32 sb $2,34($sp) lbu $3,35($sp) lw $2,72($sp) addu $2,$3,$2 addiu $2,$2,2 sw $2,36($sp) $L93: lui $2,%hi(TempBuf.5) lbu $3,34($sp) addiu $2,$2,%lo(TempBuf.5) addu $3,$3,$2 lhu $2,32($sp) sb $2,-1($3) lui $2,%hi(TempBuf.5) lbu $3,34($sp) addiu $2,$2,%lo(TempBuf.5) addu $3,$3,$2 lhu $2,32($sp) andi $2,$2,0xff00 sra $2,$2,8 sb $2,-2($3) lui $2,%hi(TempBuf.5) lbu $3,34($sp) addiu $2,$2,%lo(TempBuf.5) addu $2,$3,$2 sb $0,-3($2) lui $2,%hi(TempBuf.5) lbu $3,34($sp) addiu $2,$2,%lo(TempBuf.5) addu $3,$3,$2 lbu $2,64($sp) sb $2,-4($3) lbu $3,34($sp) lw $2,76($sp) sw $2,16($sp) lhu $2,32($sp) sw $2,20($sp) lw $2,84($sp) sw $2,24($sp) lw $4,68($sp) lw $5,36($sp) lui $2,%hi(TempBuf.5) addiu $6,$2,%lo(TempBuf.5) move $7,$3 jal WapiSMS4CalculateMic nop lw $31,56($sp) addiu $sp,$sp,64 j $31 nop .set macro .set reorder .end SecCalculateMicSMS4 .section .text.SecSWSMS4Encryption,"ax",@progbits .align 2 .globl SecSWSMS4Encryption .ent SecSWSMS4Encryption .type SecSWSMS4Encryption, @function SecSWSMS4Encryption: .set nomips16 .frame $sp,88,$31 # vars= 56, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-88 sw $31,80($sp) sw $4,88($sp) sw $5,92($sp) lw $2,92($sp) lw $2,8($2) sw $2,32($sp) lw $2,92($sp) lw $2,68($2) bne $2,$0,$L95 nop lw $3,88($sp) li $2,65536 # 0x10000 addu $2,$2,$3 lw $2,15776($2) sw $2,72($sp) lw $2,88($sp) lw $2,1232($2) srl $2,$2,15 andi $2,$2,0x1 sb $2,36($sp) lw $2,88($sp) addiu $2,$2,928 sw $2,52($sp) lbu $2,36($sp) sll $3,$2,5 lw $2,88($sp) addu $2,$3,$2 addiu $2,$2,1254 sw $2,44($sp) lbu $2,36($sp) sll $3,$2,5 lw $2,88($sp) addu $2,$3,$2 addiu $2,$2,1238 sw $2,48($sp) lw $4,52($sp) li $5,1 # 0x1 jal WapiIncreasePN nop sw $2,64($sp) lw $2,64($sp) bne $2,$0,$L96 nop lw $2,88($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L96 nop lw $2,72($sp) beq $2,$0,$L97 nop lw $2,72($sp) lw $2,6676($2) beq $2,$0,$L97 nop lw $2,72($sp) lw $2,6676($2) lw $2,352($2) andi $2,$2,0x1000 bne $2,$0,$L96 nop $L97: lw $4,88($sp) move $5,$0 jal wapiUpdateMSK nop $L96: lw $2,88($sp) lw $3,92($sp) lw $4,1304($2) lw $2,20($3) sltu $2,$2,$4 bne $2,$0,$L100 nop lw $3,88($sp) lw $2,88($sp) lw $2,8($2) lw $2,5260($2) sw $2,1304($3) lw $2,88($sp) lw $2,8($2) lw $3,5252($2) li $2,3 # 0x3 beq $3,$2,$L102 nop lw $2,88($sp) lw $2,8($2) lw $3,5252($2) li $2,4 # 0x4 beq $3,$2,$L102 nop j $L106 nop $L102: lw $2,88($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L106 nop lw $2,72($sp) beq $2,$0,$L103 nop lw $2,72($sp) lw $2,6676($2) beq $2,$0,$L103 nop lw $2,72($sp) lw $2,6676($2) lw $2,352($2) andi $2,$2,0x1000 bne $2,$0,$L106 nop $L103: lw $4,88($sp) move $5,$0 jal wapiUpdateMSK nop j $L106 nop $L100: lw $5,88($sp) lw $2,88($sp) lw $3,92($sp) lw $4,1304($2) lw $2,20($3) subu $2,$4,$2 sw $2,1304($5) $L106: lw $2,88($sp) lw $2,8($2) lw $2,668($2) sw $2,68($sp) j $L107 nop $L95: lw $2,92($sp) lw $2,68($2) lw $2,6676($2) sw $2,28($sp) lw $2,28($sp) lw $2,352($2) srl $2,$2,15 andi $2,$2,0x1 sb $2,36($sp) lw $2,28($sp) addiu $2,$2,432 sw $2,52($sp) lbu $2,36($sp) sll $3,$2,5 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,504 sw $2,44($sp) lbu $2,36($sp) sll $3,$2,5 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,488 sw $2,48($sp) lw $4,52($sp) li $5,2 # 0x2 jal WapiIncreasePN nop sw $2,64($sp) lw $2,64($sp) bne $2,$0,$L108 nop lw $2,28($sp) lw $2,352($2) andi $2,$2,0x1000 bne $2,$0,$L108 nop lw $2,88($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L108 nop lw $2,92($sp) lw $4,88($sp) lw $5,68($2) jal wapiUpdateUSK nop $L108: lw $2,28($sp) lw $3,92($sp) lw $4,596($2) lw $2,20($3) sltu $2,$2,$4 bne $2,$0,$L112 nop lw $3,28($sp) lw $2,88($sp) lw $2,8($2) lw $2,5248($2) sw $2,596($3) lw $2,28($sp) lw $2,652($2) lw $2,8($2) lw $3,5240($2) li $2,3 # 0x3 beq $3,$2,$L114 nop lw $2,28($sp) lw $2,652($2) lw $2,8($2) lw $3,5240($2) li $2,4 # 0x4 beq $3,$2,$L114 nop j $L118 nop $L114: lw $2,28($sp) lw $2,352($2) andi $2,$2,0x1000 bne $2,$0,$L118 nop lw $2,88($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L118 nop lw $2,92($sp) lw $4,88($sp) lw $5,68($2) jal wapiUpdateUSK nop j $L118 nop $L112: lw $5,28($sp) lw $2,28($sp) lw $3,92($sp) lw $4,596($2) lw $2,20($3) subu $2,$4,$2 sw $2,596($5) $L118: lw $2,92($sp) lw $2,68($2) lw $2,6124($2) sw $2,68($sp) $L107: lw $2,92($sp) lw $3,12($2) lw $2,32($sp) addu $2,$3,$2 sw $2,56($sp) lw $3,56($sp) lbu $2,36($sp) sb $2,0($3) lw $2,56($sp) sb $0,1($2) lw $2,56($sp) addiu $2,$2,2 move $4,$2 lw $5,52($sp) li $6,16 # 0x10 jal memcpy nop lw $3,68($sp) li $2,1 # 0x1 beq $3,$2,$L119 nop lw $2,92($sp) lw $4,4($2) lw $2,92($sp) lbu $3,56($2) lw $2,176($4) subu $2,$2,$3 sw $2,60($sp) lw $2,92($sp) lw $2,4($2) lw $3,92($sp) lw $4,176($2) lw $2,20($3) addu $2,$4,$2 sw $2,40($sp) lw $2,92($sp) lbu $2,56($2) beq $2,$0,$L120 nop lw $2,92($sp) lw $3,12($2) lw $2,32($sp) addu $3,$3,$2 lw $2,92($sp) lw $2,44($2) addu $3,$3,$2 lw $2,92($sp) lbu $2,56($2) lw $4,60($sp) move $5,$3 move $6,$2 jal memcpy nop $L120: lbu $5,36($sp) lw $2,92($sp) lw $4,20($2) lw $2,92($sp) lbu $3,56($2) move $2,$4 addu $2,$3,$2 andi $2,$2,0xffff sw $2,16($sp) lw $2,40($sp) sw $2,20($sp) move $4,$5 lw $5,44($sp) lw $6,32($sp) lw $7,60($sp) jal SecCalculateMicSMS4 nop lw $2,92($sp) lw $4,20($2) lw $2,92($sp) lbu $3,56($2) move $2,$4 addu $2,$3,$2 addiu $2,$2,16 andi $3,$2,0xffff lw $2,60($sp) sw $2,16($sp) addiu $2,$sp,24 sw $2,20($sp) lw $4,48($sp) lw $5,52($sp) lw $6,60($sp) move $7,$3 jal WapiSMS4Cryption nop lw $3,56($sp) lw $2,60($sp) lw $2,0($2) sw $2,18($3) lw $3,56($sp) lw $2,60($sp) lw $2,4($2) sw $2,22($3) j $L94 nop $L119: lw $2,92($sp) sw $0,52($2) $L94: lw $31,80($sp) addiu $sp,$sp,88 j $31 nop .set macro .set reorder .end SecSWSMS4Encryption .section .text.SecSWSMS4Decryption,"ax",@progbits .align 2 .globl SecSWSMS4Decryption .ent SecSWSMS4Decryption .type SecSWSMS4Decryption, @function SecSWSMS4Decryption: .set nomips16 .frame $sp,104,$31 # vars= 72, regs= 1/0, args= 24, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-104 sw $31,96($sp) sw $4,104($sp) sw $5,108($sp) sw $6,112($sp) lw $2,108($sp) lw $2,6676($2) sw $2,28($sp) lw $2,112($sp) lw $2,0($2) lw $2,176($2) sw $2,32($sp) lw $2,112($sp) lw $2,32($2) sb $2,24($sp) lbu $2,24($sp) addiu $2,$2,18 sb $2,25($sp) lbu $3,24($sp) lw $2,32($sp) addu $2,$3,$2 sw $2,72($sp) lw $2,32($sp) addiu $2,$2,4 sw $2,36($sp) lw $2,32($sp) addiu $2,$2,10 sw $2,40($sp) lw $2,72($sp) lbu $2,0($2) sb $2,44($sp) lw $2,72($sp) addiu $2,$2,2 sw $2,56($sp) lw $2,36($sp) lbu $2,0($2) andi $2,$2,0x1 beq $2,$0,$L123 nop lw $4,104($sp) lw $5,40($sp) jal get_stainfo nop sw $2,80($sp) lw $2,80($sp) beq $2,$0,$L125 nop lw $2,80($sp) lw $2,6676($2) beq $2,$0,$L125 nop lw $2,80($sp) lw $2,6676($2) lw $2,352($2) andi $2,$2,0x800 beq $2,$0,$L125 nop lw $2,104($sp) lw $2,1232($2) srl $2,$2,15 andi $2,$2,0x1 lbu $3,44($sp) andi $2,$2,0x00ff beq $3,$2,$L124 nop lw $2,104($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L124 nop $L125: sw $0,88($sp) j $L122 nop $L124: lw $2,104($sp) addiu $2,$2,944 lw $4,56($sp) move $5,$2 jal WapiComparePN nop move $3,$2 li $2,-1 # 0xffffffff bne $3,$2,$L126 nop sw $0,88($sp) j $L122 nop $L126: lw $2,104($sp) addiu $2,$2,944 move $4,$2 lw $5,56($sp) li $6,16 # 0x10 jal memcpy nop lbu $2,44($sp) sll $3,$2,5 lw $2,104($sp) addu $2,$3,$2 addiu $2,$2,1254 sw $2,48($sp) lbu $2,44($sp) sll $3,$2,5 lw $2,104($sp) addu $2,$3,$2 addiu $2,$2,1238 sw $2,52($sp) lw $2,104($sp) lw $2,8($2) lw $2,668($2) sw $2,84($sp) j $L127 nop $L123: lw $2,28($sp) lw $2,352($2) andi $2,$2,0x4000 beq $2,$0,$L129 nop lw $2,28($sp) lw $2,352($2) srl $2,$2,15 andi $2,$2,0x1 lbu $3,44($sp) andi $2,$2,0x00ff beq $3,$2,$L128 nop lw $2,104($sp) lw $2,1232($2) andi $2,$2,0x2000 bne $2,$0,$L128 nop $L129: sw $0,88($sp) j $L122 nop $L128: lw $2,112($sp) lhu $2,38($2) beq $2,$0,$L131 nop lw $2,112($sp) lhu $3,38($2) li $2,3 # 0x3 beq $3,$2,$L131 nop j $L130 nop $L131: sb $0,76($sp) j $L132 nop $L130: lw $2,112($sp) lhu $2,38($2) sltu $2,$2,3 beq $2,$0,$L133 nop li $2,1 sb $2,76($sp) j $L132 nop $L133: lw $2,112($sp) lhu $2,38($2) sltu $2,$2,6 beq $2,$0,$L135 nop li $2,2 sb $2,76($sp) j $L132 nop $L135: li $2,3 sb $2,76($sp) $L132: lw $2,56($sp) lbu $2,15($2) andi $2,$2,0x1 beq $2,$0,$L137 nop sw $0,88($sp) j $L122 nop $L137: lw $4,112($sp) lw $3,28($sp) lbu $2,76($sp) sll $2,$2,1 addu $2,$2,$3 lhu $3,36($4) lhu $2,448($2) sltu $2,$3,$2 bne $2,$0,$L138 nop lbu $2,76($sp) sll $3,$2,4 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,368 lw $4,56($sp) move $5,$2 jal WapiComparePN nop move $3,$2 li $2,-1 # 0xffffffff bne $3,$2,$L139 nop sw $0,88($sp) j $L122 nop $L139: lbu $2,76($sp) sll $3,$2,4 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,368 move $4,$2 lw $5,56($sp) li $6,16 # 0x10 jal memcpy nop lw $3,28($sp) lbu $2,76($sp) sll $2,$2,1 addu $3,$2,$3 lw $2,112($sp) lhu $2,36($2) sh $2,448($3) j $L140 nop $L138: lui $2,%hi(wapiCryptoTemp) addiu $4,$2,%lo(wapiCryptoTemp) lw $5,56($sp) li $6,16 # 0x10 jal memcpy nop lw $3,28($sp) lbu $2,76($sp) sll $2,$2,1 addu $2,$2,$3 lhu $3,448($2) lw $2,112($sp) lhu $2,36($2) subu $2,$3,$2 addiu $2,$2,1 sll $2,$2,1 andi $3,$2,0x00ff lui $2,%hi(wapiCryptoTemp) addiu $4,$2,%lo(wapiCryptoTemp) move $5,$3 jal WapiIncreasePN nop lbu $2,76($sp) sll $3,$2,4 lw $2,28($sp) addu $2,$3,$2 addiu $3,$2,368 lui $2,%hi(wapiCryptoTemp) addiu $4,$2,%lo(wapiCryptoTemp) move $5,$3 jal WapiComparePN nop move $3,$2 li $2,-1 # 0xffffffff bne $3,$2,$L140 nop sw $0,88($sp) j $L122 nop $L140: lbu $2,44($sp) sll $3,$2,5 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,504 sw $2,48($sp) lbu $2,44($sp) sll $3,$2,5 lw $2,28($sp) addu $2,$3,$2 addiu $2,$2,488 sw $2,52($sp) lw $2,108($sp) lw $2,6124($2) sw $2,84($sp) $L127: lw $3,84($sp) li $2,1 # 0x1 beq $3,$2,$L142 nop lbu $3,25($sp) lw $2,32($sp) addu $2,$3,$2 sw $2,60($sp) lw $2,112($sp) lw $2,12($2) sh $2,70($sp) lbu $3,25($sp) lhu $2,70($sp) subu $2,$2,$3 sh $2,68($sp) lhu $3,70($sp) lw $2,32($sp) addu $2,$3,$2 addiu $2,$2,-16 sw $2,64($sp) lhu $3,68($sp) lui $2,%hi(wapiDecrytBuf) addiu $4,$2,%lo(wapiDecrytBuf) lw $5,60($sp) move $6,$3 jal memcpy nop lbu $3,25($sp) lui $2,%hi(wapiDecrytHdrBuf) addiu $4,$2,%lo(wapiDecrytHdrBuf) lw $5,32($sp) move $6,$3 jal memcpy nop lhu $3,68($sp) lw $2,60($sp) sw $2,16($sp) addiu $2,$sp,26 sw $2,20($sp) lw $4,52($sp) lw $5,56($sp) lui $2,%hi(wapiDecrytBuf) addiu $6,$2,%lo(wapiDecrytBuf) move $7,$3 jal WapiSMS4Cryption nop lhu $2,68($sp) addiu $2,$2,-16 sh $2,68($sp) lbu $3,44($sp) lhu $2,68($sp) sw $2,16($sp) lui $2,%hi(wapiCryptoTemp) addiu $2,$2,%lo(wapiCryptoTemp) sw $2,20($sp) move $4,$3 lw $5,48($sp) lui $2,%hi(wapiDecrytHdrBuf) addiu $6,$2,%lo(wapiDecrytHdrBuf) lw $7,60($sp) jal SecCalculateMicSMS4 nop lui $2,%hi(wapiCryptoTemp) addiu $4,$2,%lo(wapiCryptoTemp) lw $5,64($sp) li $6,16 # 0x10 jal memcmp nop beq $2,$0,$L142 nop sw $0,88($sp) j $L122 nop $L142: li $2,1 # 0x1 sw $2,88($sp) $L122: lw $2,88($sp) lw $31,96($sp) addiu $sp,$sp,104 j $31 nop .set macro .set reorder .end SecSWSMS4Decryption .data .align 2 .type mti, @object .size mti, 4 mti: .word 625 .section .text.WapiMTgenSeed,"ax",@progbits .align 2 .globl WapiMTgenSeed .ent WapiMTgenSeed .type WapiMTgenSeed, @function WapiMTgenSeed: .set nomips16 .frame $sp,8,$31 # vars= 8, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-8 sw $4,8($sp) li $2,1812398080 # 0x6c070000 ori $2,$2,0x8965 sw $2,0($sp) lui $3,%hi(mt) lw $2,8($sp) sw $2,%lo(mt)($3) lui $3,%hi(mti) li $2,1 # 0x1 sw $2,%lo(mti)($3) $L145: lui $2,%hi(mti) lw $2,%lo(mti)($2) slt $2,$2,624 beq $2,$0,$L144 nop lui $4,%hi(mt) lui $2,%hi(mti) lw $2,%lo(mti)($2) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $6,$3,$2 lui $4,%hi(mt) lui $2,%hi(mti) lw $2,%lo(mti)($2) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $5,$3,$2 lui $4,%hi(mt) lui $2,%hi(mti) lw $2,%lo(mti)($2) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $2,-4($2) srl $3,$2,30 lw $2,-4($5) xor $3,$3,$2 lw $2,0($sp) mult $3,$2 mflo $3 lui $2,%hi(mti) lw $2,%lo(mti)($2) addu $2,$3,$2 sw $2,0($6) lui $4,%hi(mt) lui $2,%hi(mti) lw $2,%lo(mti)($2) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $5,$3,$2 lui $4,%hi(mt) lui $2,%hi(mti) lw $2,%lo(mti)($2) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $2,0($2) sw $2,0($5) lui $3,%hi(mti) lui $2,%hi(mti) lw $2,%lo(mti)($2) addiu $2,$2,1 sw $2,%lo(mti)($3) j $L145 nop $L144: addiu $sp,$sp,8 j $31 nop .set macro .set reorder .end WapiMTgenSeed .data .align 2 .type mag01.6, @object .size mag01.6, 8 mag01.6: .word 0 .word -1727483681 .section .text.WapiMTgenrand,"ax",@progbits .align 2 .globl WapiMTgenrand .ent WapiMTgenrand .type WapiMTgenrand, @function WapiMTgenrand: .set nomips16 .frame $sp,32,$31 # vars= 8, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,24($sp) lui $2,%hi(mti) lw $2,%lo(mti)($2) slt $2,$2,624 bne $2,$0,$L149 nop lui $2,%hi(mti) lw $3,%lo(mti)($2) li $2,625 # 0x271 bne $3,$2,$L150 nop li $4,5489 # 0x1571 jal WapiMTgenSeed nop $L150: sw $0,20($sp) $L151: lw $2,20($sp) slt $2,$2,227 beq $2,$0,$L154 nop lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $3,0($2) li $2,-2147483648 # 0x80000000 and $5,$3,$2 lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $3,4($2) li $2,2147418112 # 0x7fff0000 ori $2,$2,0xffff and $2,$3,$2 or $2,$5,$2 sw $2,16($sp) lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $6,$3,$2 lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $4,$3,$2 lw $2,16($sp) srl $3,$2,1 lw $2,1588($4) xor $5,$3,$2 lui $4,%hi(mag01.6) lw $2,16($sp) andi $2,$2,0x1 sll $3,$2,2 addiu $2,$4,%lo(mag01.6) addu $2,$3,$2 lw $2,0($2) xor $2,$5,$2 sw $2,0($6) lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L151 nop $L154: lw $2,20($sp) slt $2,$2,623 beq $2,$0,$L155 nop lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $3,0($2) li $2,-2147483648 # 0x80000000 and $5,$3,$2 lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $2,$3,$2 lw $3,4($2) li $2,2147418112 # 0x7fff0000 ori $2,$2,0xffff and $2,$3,$2 or $2,$5,$2 sw $2,16($sp) lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $6,$3,$2 lui $4,%hi(mt) lw $2,20($sp) sll $3,$2,2 addiu $2,$4,%lo(mt) addu $4,$3,$2 lw $2,16($sp) srl $3,$2,1 lw $2,-908($4) xor $5,$3,$2 lui $4,%hi(mag01.6) lw $2,16($sp) andi $2,$2,0x1 sll $3,$2,2 addiu $2,$4,%lo(mag01.6) addu $2,$3,$2 lw $2,0($2) xor $2,$5,$2 sw $2,0($6) lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L154 nop $L155: lui $2,%hi(mt) addiu $2,$2,%lo(mt) lw $3,2492($2) li $2,-2147483648 # 0x80000000 and $4,$3,$2 lui $2,%hi(mt) lw $3,%lo(mt)($2) li $2,2147418112 # 0x7fff0000 ori $2,$2,0xffff and $2,$3,$2 or $2,$4,$2 sw $2,16($sp) lui $2,%hi(mt) addiu $6,$2,%lo(mt) lui $2,%hi(mt) addiu $4,$2,%lo(mt) lw $2,16($sp) srl $3,$2,1 lw $2,1584($4) xor $5,$3,$2 lui $4,%hi(mag01.6) lw $2,16($sp) andi $2,$2,0x1 sll $3,$2,2 addiu $2,$4,%lo(mag01.6) addu $2,$3,$2 lw $2,0($2) xor $2,$5,$2 sw $2,2492($6) lui $2,%hi(mti) sw $0,%lo(mti)($2) $L149: lui $5,%hi(mt) lui $2,%hi(mti) addiu $6,$2,%lo(mti) lw $3,0($6) move $2,$3 sll $4,$2,2 addiu $2,$5,%lo(mt) addu $2,$4,$2 addiu $3,$3,1 sw $3,0($6) lw $2,0($2) sw $2,16($sp) lw $2,16($sp) srl $3,$2,11 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) lw $2,16($sp) sll $3,$2,7 li $2,-1658060800 # 0x9d2c0000 ori $2,$2,0x5680 and $3,$3,$2 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) lw $2,16($sp) sll $3,$2,15 li $2,-272236544 # 0xefc60000 and $3,$3,$2 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) lw $2,16($sp) srl $3,$2,18 lw $2,16($sp) xor $2,$2,$3 sw $2,16($sp) lw $2,16($sp) lw $31,24($sp) addiu $sp,$sp,32 j $31 nop .set macro .set reorder .end WapiMTgenrand .section .text.GenerateRandomData,"ax",@progbits .align 2 .globl GenerateRandomData .ent GenerateRandomData .type GenerateRandomData, @function GenerateRandomData: .set nomips16 .frame $sp,72,$31 # vars= 48, regs= 1/0, args= 16, gp= 0 .mask 0x80000000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-72 sw $31,64($sp) sw $4,72($sp) sw $5,76($sp) lui $2,%hi(jiffies) lw $4,%lo(jiffies)($2) jal srandom32 nop jal random32 nop sw $2,60($sp) lw $4,60($sp) jal WapiMTgenSeed nop lw $2,76($sp) andi $2,$2,0x3 bne $2,$0,$L158 nop lw $2,76($sp) srl $2,$2,2 sw $2,16($sp) j $L159 nop $L158: lw $2,76($sp) srl $2,$2,2 addiu $2,$2,1 sw $2,16($sp) $L159: addiu $3,$sp,24 lw $2,16($sp) sll $2,$2,2 move $4,$3 move $5,$0 move $6,$2 jal memset nop sw $0,20($sp) $L160: lw $2,20($sp) lw $3,16($sp) slt $2,$2,$3 beq $2,$0,$L161 nop jal WapiMTgenrand nop sw $2,56($sp) addiu $3,$sp,24 lw $2,20($sp) sll $2,$2,2 addu $2,$3,$2 addiu $3,$sp,56 move $4,$2 move $5,$3 li $6,4 # 0x4 jal memcpy nop lw $2,20($sp) addiu $2,$2,1 sw $2,20($sp) j $L160 nop $L161: addiu $2,$sp,24 lw $4,72($sp) move $5,$2 lw $6,76($sp) jal memcpy nop lw $31,64($sp) addiu $sp,$sp,72 j $31 nop .set macro .set reorder .end GenerateRandomData .local wapiCryptoTemp .comm wapiCryptoTemp,16,4 .local wapiBlockIn .comm wapiBlockIn,16,4 .local wapiTempBlock .comm wapiTempBlock,16,4 .local wapiRK .comm wapiRK,128,4 .local wapiDecrytBuf .comm wapiDecrytBuf,1560,4 .local wapiDecrytHdrBuf .comm wapiDecrytHdrBuf,64,4 .globl Sbox .section .dram-rtkwlan,"aw",@progbits .align 2 .type Sbox, @object .size Sbox, 256 Sbox: .space 256 .globl CK .align 2 .type CK, @object .size CK, 128 CK: .space 128 .local mt .comm mt,2496,4 .ident "GCC: (GNU) 3.4.6-1.3.6"