diff options
Diffstat (limited to 'target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D')
-rw-r--r-- | target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapiCrypto.S | 7065 | ||||
-rw-r--r-- | target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapi_wai.S | 6180 |
2 files changed, 13245 insertions, 0 deletions
diff --git a/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapiCrypto.S b/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapiCrypto.S new file mode 100644 index 000000000..7cadac567 --- /dev/null +++ b/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapiCrypto.S @@ -0,0 +1,7065 @@ + .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 + .data + .align 2 + .type mti, @object + .size mti, 4 +mti: + .word 625 + .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_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 $0,0($4) + bne $5,$0,$L2 + sw $0,4($4) + + li $2,1778974720 # 0x6a090000 + ori $2,$2,0xe667 + sw $2,8($4) + li $2,-1150877696 # 0xffffffffbb670000 + ori $2,$2,0xae85 + sw $2,12($4) + li $2,1013841920 # 0x3c6e0000 + ori $2,$2,0xf372 + sw $2,16($4) + li $2,-1521549312 # 0xffffffffa54f0000 + ori $2,$2,0xf53a + sw $2,20($4) + li $2,1359872000 # 0x510e0000 + ori $2,$2,0x527f + sw $2,24($4) + li $2,-1694171136 # 0xffffffff9b050000 + ori $2,$2,0x688c + sw $2,28($4) + li $2,528678912 # 0x1f830000 + ori $2,$2,0xd9ab + sw $2,32($4) + li $2,1541406720 # 0x5be00000 + j $L4 + ori $2,$2,0xcd19 + +$L2: + li $2,-1056636928 # 0xffffffffc1050000 + ori $2,$2,0x9ed8 + sw $2,8($4) + li $2,914096128 # 0x367c0000 + ori $2,$2,0xd507 + sw $2,12($4) + li $2,812646400 # 0x30700000 + ori $2,$2,0xdd17 + sw $2,16($4) + li $2,-150077440 # 0xfffffffff70e0000 + ori $2,$2,0x5939 + sw $2,20($4) + li $2,-4194304 # 0xffffffffffc00000 + ori $2,$2,0xb31 + sw $2,24($4) + li $2,1750597632 # 0x68580000 + ori $2,$2,0x1511 + sw $2,28($4) + li $2,1694040064 # 0x64f90000 + ori $2,$2,0x8fa7 + sw $2,32($4) + li $2,-1090912256 # 0xffffffffbefa0000 + ori $2,$2,0x4fa4 +$L4: + sw $2,36($4) + j $31 + sw $5,232($4) + + .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,616,$31 # vars= 576, regs= 9/0, args= 0, gp= 0 + .mask 0x40ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-616 + sw $fp,608($sp) + sw $22,600($sp) + sw $23,604($sp) + sw $21,596($sp) + sw $20,592($sp) + sw $19,588($sp) + sw $18,584($sp) + sw $17,580($sp) + sw $16,576($sp) + lbu $23,24($5) + lbu $21,20($5) + lbu $16,8($5) + sll $23,$23,24 + lbu $9,9($5) + lbu $17,12($5) + lbu $8,13($5) + lbu $20,16($5) + lbu $7,17($5) + lbu $6,21($5) + lbu $3,25($5) + lbu $24,28($5) + lbu $2,29($5) + lbu $10,10($5) + lbu $11,14($5) + lbu $12,18($5) + lbu $13,22($5) + lbu $14,26($5) + lbu $15,30($5) + sw $23,332($sp) + lw $25,332($sp) + sll $16,$16,24 + sll $17,$17,24 + sll $20,$20,24 + sll $24,$24,24 + sll $3,$3,16 + sw $16,292($sp) + sw $17,300($sp) + sw $20,312($sp) + sw $24,348($sp) + or $3,$25,$3 + lbu $16,11($5) + lbu $17,15($5) + lbu $18,19($5) + lbu $19,23($5) + lbu $20,27($5) + lw $22,292($sp) + lw $23,300($sp) + lw $24,312($sp) + sll $fp,$21,24 + lbu $21,31($5) + sw $3,336($sp) + lw $3,348($sp) + sll $2,$2,16 + sll $9,$9,16 + or $2,$3,$2 + sw $2,352($sp) + or $9,$22,$9 + sll $10,$10,8 + or $2,$9,$10 + lw $9,336($sp) + lw $10,352($sp) + sll $6,$6,16 + sll $8,$8,16 + sll $7,$7,16 + or $8,$23,$8 + or $7,$24,$7 + or $fp,$fp,$6 + sll $11,$11,8 + sll $12,$12,8 + sll $13,$13,8 + sll $14,$14,8 + sll $15,$15,8 + or $3,$8,$11 + or $6,$7,$12 + or $8,$9,$14 + or $7,$fp,$13 + or $9,$10,$15 + or $2,$2,$16 + or $3,$3,$17 + or $6,$6,$18 + or $7,$7,$19 + or $8,$8,$20 + or $9,$9,$21 + sw $2,296($sp) + sw $3,308($sp) + sw $6,320($sp) + sw $7,328($sp) + sw $8,344($sp) + sw $9,360($sp) + sw $2,8($sp) + sw $3,12($sp) + sw $6,16($sp) + sw $7,20($sp) + sw $8,24($sp) + lbu $11,0($5) + nop + sw $11,256($sp) + lbu $13,1($5) + nop + sw $13,260($sp) + lbu $14,2($5) + nop + sw $14,264($sp) + lbu $15,3($5) + nop + sw $15,268($sp) + lbu $16,4($5) + nop + sw $16,276($sp) + lbu $17,5($5) + nop + sw $17,280($sp) + lbu $18,6($5) + nop + sw $18,284($sp) + lbu $19,7($5) + sw $9,28($sp) + sw $19,288($sp) + lbu $21,32($5) + lbu $20,40($5) + lbu $22,44($5) + lbu $24,52($5) + lbu $25,56($5) + lbu $fp,36($5) + lbu $17,58($5) + sll $21,$21,24 + lbu $23,48($5) + lbu $10,33($5) + lbu $9,37($5) + lbu $8,41($5) + lbu $7,45($5) + lbu $6,49($5) + lbu $3,53($5) + lbu $2,57($5) + lbu $11,34($5) + lbu $12,38($5) + lbu $13,42($5) + lbu $14,46($5) + lbu $15,50($5) + lbu $16,54($5) + sll $18,$20,24 + sw $17,448($sp) + sll $19,$22,24 + sw $21,364($sp) + sll $20,$24,24 + sll $21,$25,24 + sll $fp,$fp,24 + sw $fp,372($sp) + sw $20,420($sp) + sw $21,440($sp) + sw $18,384($sp) + sw $19,400($sp) + lbu $22,35($5) + sll $fp,$23,24 + lw $20,364($sp) + sw $22,368($sp) + lbu $23,39($5) + lw $22,384($sp) + sll $3,$3,16 + sw $23,376($sp) + lbu $24,43($5) + sll $2,$2,16 + sll $10,$10,16 + sw $24,388($sp) + lbu $25,47($5) + lw $24,420($sp) + sll $8,$8,16 + sw $25,404($sp) + lbu $17,51($5) + lw $25,440($sp) + or $3,$24,$3 + sw $17,412($sp) + lbu $18,55($5) + or $2,$25,$2 + lw $21,372($sp) + sw $18,428($sp) + lbu $19,59($5) + or $8,$22,$8 + sw $3,424($sp) + sw $2,444($sp) + sll $6,$6,16 + lw $2,448($sp) + or $10,$20,$10 + sll $11,$11,8 + sll $13,$13,8 + lw $23,400($sp) + or $fp,$fp,$6 + or $10,$10,$11 + or $3,$8,$13 + lw $11,424($sp) + lw $13,444($sp) + sll $15,$15,8 + or $8,$fp,$15 + lw $20,428($sp) + lw $15,388($sp) + sll $9,$9,16 + lw $18,404($sp) + or $9,$21,$9 + sll $12,$12,8 + sll $16,$16,8 + sll $6,$2,8 + sll $7,$7,16 + or $2,$9,$12 + or $7,$23,$7 + or $9,$11,$16 + sll $14,$14,8 + or $6,$13,$6 + or $13,$6,$19 + or $3,$3,$15 + lw $19,412($sp) + or $9,$9,$20 + or $7,$7,$14 + lw $14,376($sp) + or $12,$7,$18 + lw $17,368($sp) + sw $3,392($sp) + sw $9,432($sp) + lw $18,24($4) + or $16,$2,$14 + lw $20,28($4) + or $14,$8,$19 + lw $22,256($sp) + lw $19,32($4) + lw $23,260($sp) + sw $3,40($sp) + lw $24,264($sp) + srl $7,$18,6 + srl $6,$18,11 + sll $3,$18,26 + sll $2,$18,21 + or $2,$2,$6 + lw $21,36($4) + or $3,$3,$7 + sll $6,$18,7 + srl $7,$18,25 + lw $25,268($sp) + or $6,$6,$7 + sll $8,$22,24 + xor $3,$3,$2 + sll $7,$23,16 + xor $2,$20,$19 + or $7,$8,$7 + xor $3,$3,$6 + and $2,$18,$2 + sll $15,$24,8 + xor $2,$19,$2 + addu $3,$21,$3 + or $15,$7,$15 + or $15,$15,$25 + addu $3,$3,$2 + lw $24,20($4) + li $2,1116340224 # 0x428a0000 + addu $3,$3,$15 + ori $2,$2,0x2f98 + or $11,$10,$17 + addu $17,$3,$2 + addu $24,$24,$17 + srl $7,$24,6 + srl $3,$24,11 + sll $6,$24,26 + sll $2,$24,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$24,25 + sll $7,$24,7 + lw $22,8($4) + or $7,$7,$3 + xor $6,$6,$2 + lw $3,280($sp) + lw $2,276($sp) + lw $23,12($4) + xor $6,$6,$7 + lw $7,284($sp) + sw $15,272($sp) + sw $9,52($sp) + lw $25,16($4) + sll $21,$2,24 + sll $15,$3,16 + srl $8,$22,2 + srl $2,$22,13 + sll $3,$22,30 + sll $9,$22,19 + or $9,$9,$2 + or $3,$3,$8 + or $fp,$21,$15 + xor $10,$18,$20 + or $8,$22,$23 + srl $2,$22,22 + sll $21,$7,8 + xor $3,$3,$9 + sll $7,$22,10 + lw $9,288($sp) + or $7,$7,$2 + and $8,$25,$8 + and $2,$22,$23 + and $10,$24,$10 + or $21,$fp,$21 + xor $10,$20,$10 + xor $3,$3,$7 + or $2,$2,$8 + addu $6,$19,$6 + or $15,$21,$9 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,1899429888 # 0x71370000 + addu $6,$6,$15 + ori $2,$2,0x4491 + addu $21,$17,$fp + addu $17,$6,$2 + addu $25,$25,$17 + srl $7,$25,6 + srl $3,$25,11 + sll $6,$25,26 + sll $2,$25,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$25,25 + sll $7,$25,7 + or $7,$7,$3 + xor $10,$24,$18 + xor $6,$6,$2 + srl $9,$21,2 + srl $2,$21,13 + sll $3,$21,30 + sll $8,$21,19 + xor $6,$6,$7 + and $10,$25,$10 + or $8,$8,$2 + xor $10,$18,$10 + srl $2,$21,22 + or $3,$3,$9 + sll $7,$21,10 + or $9,$21,$22 + addu $6,$20,$6 + or $7,$7,$2 + and $9,$23,$9 + and $2,$21,$22 + xor $3,$3,$8 + addu $6,$6,$10 + lw $10,296($sp) + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + li $2,-1245708288 # 0xffffffffb5c00000 + addu $6,$6,$10 + ori $2,$2,0xfbcf + addu $19,$17,$fp + addu $17,$6,$2 + addu $23,$23,$17 + srl $7,$23,6 + srl $3,$23,11 + sll $6,$23,26 + sll $2,$23,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$23,25 + sll $7,$23,7 + or $7,$7,$3 + srl $9,$19,2 + xor $6,$6,$2 + sll $3,$19,30 + srl $2,$19,13 + sll $8,$19,19 + xor $10,$25,$24 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$19,22 + or $9,$19,$21 + xor $6,$6,$7 + sll $7,$19,10 + or $7,$7,$2 + and $9,$22,$9 + and $2,$19,$21 + and $10,$23,$10 + addu $6,$18,$6 + xor $3,$3,$8 + lw $18,308($sp) + xor $10,$24,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-374013952 # 0xffffffffe9b50000 + addu $6,$6,$18 + ori $2,$2,0xdba5 + addu $20,$17,$fp + addu $17,$6,$2 + addu $22,$22,$17 + srl $7,$22,6 + srl $3,$22,11 + sll $6,$22,26 + sll $2,$22,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$22,25 + sll $7,$22,7 + or $7,$7,$3 + srl $9,$20,2 + xor $6,$6,$2 + sll $3,$20,30 + srl $2,$20,13 + sll $8,$20,19 + xor $10,$23,$25 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$20,22 + or $9,$20,$19 + xor $6,$6,$7 + sll $7,$20,10 + or $7,$7,$2 + and $9,$21,$9 + and $2,$20,$19 + and $10,$22,$10 + addu $6,$24,$6 + xor $3,$3,$8 + lw $24,320($sp) + xor $10,$25,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,961937408 # 0x39560000 + addu $6,$6,$24 + ori $2,$2,0xc25b + addu $18,$17,$fp + addu $17,$6,$2 + addu $21,$21,$17 + srl $7,$21,6 + srl $3,$21,11 + sll $6,$21,26 + sll $2,$21,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$21,25 + sll $7,$21,7 + or $7,$7,$3 + srl $9,$18,2 + xor $6,$6,$2 + sll $3,$18,30 + srl $2,$18,13 + sll $8,$18,19 + xor $10,$22,$23 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$18,22 + or $9,$18,$20 + xor $6,$6,$7 + sll $7,$18,10 + or $7,$7,$2 + and $9,$19,$9 + and $2,$18,$20 + and $10,$21,$10 + addu $6,$25,$6 + xor $3,$3,$8 + lw $25,328($sp) + xor $10,$23,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,1508966400 # 0x59f10000 + addu $6,$6,$25 + ori $2,$2,0x11f1 + addu $24,$17,$fp + addu $17,$6,$2 + addu $19,$19,$17 + srl $7,$19,6 + srl $3,$19,11 + sll $6,$19,26 + sll $2,$19,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$19,25 + sll $7,$19,7 + or $7,$7,$3 + srl $9,$24,2 + xor $6,$6,$2 + sll $3,$24,30 + srl $2,$24,13 + sll $8,$24,19 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$24,22 + or $9,$24,$18 + xor $6,$6,$7 + sll $7,$24,10 + or $7,$7,$2 + and $9,$20,$9 + and $2,$24,$18 + xor $3,$3,$8 + xor $10,$21,$22 + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + and $10,$19,$10 + lw $2,344($sp) + xor $10,$22,$10 + addu $6,$23,$6 + addu $6,$6,$10 + addu $6,$6,$2 + li $2,-1841364992 # 0xffffffff923f0000 + ori $2,$2,0x82a4 + addu $25,$17,$fp + addu $17,$6,$2 + addu $20,$20,$17 + srl $7,$20,6 + srl $3,$20,11 + sll $6,$20,26 + sll $2,$20,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$20,25 + sll $7,$20,7 + or $7,$7,$3 + srl $9,$25,2 + xor $6,$6,$2 + sll $3,$25,30 + srl $2,$25,13 + sll $8,$25,19 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$25,22 + or $9,$25,$24 + xor $6,$6,$7 + sll $7,$25,10 + or $7,$7,$2 + and $9,$18,$9 + and $2,$25,$24 + xor $3,$3,$8 + xor $10,$19,$21 + xor $3,$3,$7 + or $2,$2,$9 + addu $fp,$3,$2 + and $10,$20,$10 + lw $3,360($sp) + xor $10,$21,$10 + addu $6,$22,$6 + addu $6,$6,$10 + li $2,-1424228352 # 0xffffffffab1c0000 + addu $6,$6,$3 + ori $2,$2,0x5ed5 + addu $23,$17,$fp + addu $17,$6,$2 + addu $18,$18,$17 + srl $7,$18,6 + srl $3,$18,11 + sll $6,$18,26 + sll $2,$18,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$18,25 + sll $7,$18,7 + or $7,$7,$3 + srl $9,$23,2 + xor $6,$6,$2 + sll $3,$23,30 + srl $2,$23,13 + sll $8,$23,19 + xor $10,$20,$19 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$23,22 + or $9,$23,$25 + xor $6,$6,$7 + sll $7,$23,10 + or $7,$7,$2 + and $9,$24,$9 + and $2,$23,$25 + and $10,$18,$10 + xor $3,$3,$8 + xor $10,$19,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$21,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-670629888 # 0xffffffffd8070000 + addu $6,$6,$11 + ori $2,$2,0xaa98 + addu $22,$17,$fp + addu $17,$6,$2 + addu $24,$24,$17 + srl $7,$24,6 + srl $3,$24,11 + sll $6,$24,26 + sll $2,$24,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$24,25 + sll $7,$24,7 + or $7,$7,$3 + srl $9,$22,2 + xor $6,$6,$2 + sll $3,$22,30 + srl $2,$22,13 + sll $8,$22,19 + xor $10,$18,$20 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$22,22 + or $9,$22,$23 + xor $6,$6,$7 + sll $7,$22,10 + or $7,$7,$2 + and $9,$25,$9 + and $2,$22,$23 + and $10,$24,$10 + xor $3,$3,$8 + xor $10,$20,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$19,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,310575104 # 0x12830000 + addu $6,$6,$16 + ori $2,$2,0x5b01 + addu $21,$17,$fp + addu $17,$6,$2 + addu $25,$25,$17 + srl $7,$25,6 + srl $3,$25,11 + sll $6,$25,26 + sll $2,$25,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$25,25 + sll $7,$25,7 + or $7,$7,$3 + srl $9,$21,2 + xor $6,$6,$2 + sll $3,$21,30 + srl $2,$21,13 + sll $8,$21,19 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$21,22 + xor $6,$6,$7 + sll $7,$21,10 + xor $10,$24,$18 + or $9,$21,$22 + or $7,$7,$2 + xor $3,$3,$8 + and $9,$23,$9 + and $2,$21,$22 + xor $3,$3,$7 + and $10,$25,$10 + lw $7,392($sp) + xor $10,$18,$10 + or $2,$2,$9 + addu $6,$20,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,607191040 # 0x24310000 + addu $6,$6,$7 + ori $2,$2,0x85be + addu $19,$17,$fp + addu $17,$6,$2 + addu $23,$23,$17 + srl $7,$23,6 + srl $3,$23,11 + sll $6,$23,26 + sll $2,$23,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$23,25 + sll $7,$23,7 + or $7,$7,$3 + srl $9,$19,2 + xor $6,$6,$2 + sll $3,$19,30 + srl $2,$19,13 + sll $8,$19,19 + xor $10,$25,$24 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$19,22 + or $9,$19,$21 + xor $6,$6,$7 + sll $7,$19,10 + or $7,$7,$2 + and $9,$22,$9 + and $2,$19,$21 + and $10,$23,$10 + xor $3,$3,$8 + xor $10,$24,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$18,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,1426849792 # 0x550c0000 + addu $6,$6,$12 + ori $2,$2,0x7dc3 + addu $20,$17,$fp + addu $17,$6,$2 + addu $22,$22,$17 + srl $7,$22,6 + srl $3,$22,11 + sll $6,$22,26 + sll $2,$22,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$22,25 + sll $7,$22,7 + or $7,$7,$3 + srl $9,$20,2 + xor $6,$6,$2 + sll $3,$20,30 + srl $2,$20,13 + sll $8,$20,19 + xor $10,$23,$25 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$20,22 + or $9,$20,$19 + xor $6,$6,$7 + sll $7,$20,10 + or $7,$7,$2 + and $9,$21,$9 + and $2,$20,$19 + and $10,$22,$10 + xor $3,$3,$8 + xor $10,$25,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$24,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,1925054464 # 0x72be0000 + addu $6,$6,$14 + ori $2,$2,0x5d74 + addu $18,$17,$fp + addu $17,$6,$2 + addu $21,$21,$17 + srl $7,$21,6 + srl $3,$21,11 + sll $6,$21,26 + sll $2,$21,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$21,25 + sll $7,$21,7 + or $7,$7,$3 + srl $9,$18,2 + xor $6,$6,$2 + sll $3,$18,30 + srl $2,$18,13 + sll $8,$18,19 + xor $10,$22,$23 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$18,22 + or $9,$18,$20 + xor $6,$6,$7 + sll $7,$18,10 + or $7,$7,$2 + and $9,$19,$9 + and $2,$18,$20 + and $10,$21,$10 + xor $3,$3,$8 + lw $8,432($sp) + xor $10,$23,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$25,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-2132934656 # 0xffffffff80de0000 + addu $6,$6,$8 + ori $2,$2,0xb1fe + addu $24,$17,$fp + addu $17,$6,$2 + addu $19,$19,$17 + srl $7,$19,6 + srl $3,$19,11 + sll $6,$19,26 + sll $2,$19,21 + or $2,$2,$3 + or $6,$6,$7 + srl $3,$19,25 + sll $7,$19,7 + or $7,$7,$3 + srl $9,$24,2 + xor $6,$6,$2 + sll $3,$24,30 + srl $2,$24,13 + sll $8,$24,19 + xor $10,$21,$22 + or $8,$8,$2 + or $3,$3,$9 + srl $2,$24,22 + or $9,$24,$18 + xor $6,$6,$7 + sll $7,$24,10 + or $7,$7,$2 + and $9,$20,$9 + and $2,$24,$18 + and $10,$19,$10 + xor $3,$3,$8 + xor $10,$22,$10 + xor $3,$3,$7 + or $2,$2,$9 + addu $6,$23,$6 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-1680080896 # 0xffffffff9bdc0000 + addu $6,$6,$13 + ori $2,$2,0x6a7 + addu $25,$17,$fp + addu $17,$6,$2 + addu $20,$20,$17 + sw $16,36($sp) + sw $13,56($sp) + sw $11,32($sp) + sw $12,44($sp) + sw $14,48($sp) + lbu $14,60($5) + lbu $10,61($5) + srl $7,$20,6 + srl $3,$20,11 + sll $6,$20,26 + sll $2,$20,21 + lbu $11,62($5) + or $2,$2,$3 + or $6,$6,$7 + srl $3,$20,25 + sll $7,$20,7 + lbu $12,63($5) + or $7,$7,$3 + srl $5,$25,2 + xor $6,$6,$2 + sll $3,$25,30 + srl $2,$25,13 + sll $8,$25,19 + xor $9,$19,$21 + or $8,$8,$2 + sll $10,$10,16 + srl $2,$25,22 + or $3,$3,$5 + xor $6,$6,$7 + sll $5,$25,10 + or $7,$25,$24 + sll $14,$14,24 + or $5,$5,$2 + and $7,$18,$7 + and $2,$25,$24 + or $14,$14,$10 + and $9,$20,$9 + sll $11,$11,8 + xor $3,$3,$8 + xor $9,$21,$9 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$22,$6 + or $14,$14,$11 + or $14,$14,$12 + addu $fp,$3,$2 + addu $6,$6,$9 + li $2,-1046806528 # 0xffffffffc19b0000 + addu $6,$6,$14 + ori $2,$2,0xf174 + addu $23,$17,$fp + addu $17,$6,$2 + addu $18,$18,$17 + sll $5,$13,15 + srl $3,$13,17 + srl $2,$13,19 + sll $6,$13,13 + or $12,$5,$3 + or $6,$6,$2 + srl $11,$18,6 + srl $9,$18,11 + srl $10,$15,7 + srl $2,$15,18 + sll $5,$18,26 + sll $8,$18,21 + sll $7,$15,25 + sll $3,$15,14 + or $8,$8,$9 + or $3,$3,$2 + srl $9,$13,10 + srl $2,$18,25 + or $5,$5,$11 + or $7,$7,$10 + xor $11,$12,$6 + sll $6,$18,7 + or $6,$6,$2 + xor $12,$11,$9 + srl $2,$23,13 + xor $5,$5,$8 + xor $7,$7,$3 + srl $8,$23,2 + sll $3,$23,30 + sll $9,$23,19 + or $9,$9,$2 + or $3,$3,$8 + xor $10,$20,$19 + srl $11,$15,3 + or $8,$23,$25 + srl $2,$23,22 + xor $5,$5,$6 + xor $3,$3,$9 + sll $6,$23,10 + lw $9,272($sp) + xor $7,$7,$11 + or $6,$6,$2 + and $8,$24,$8 + and $2,$23,$25 + addu $12,$12,$16 + and $10,$18,$10 + xor $10,$19,$10 + xor $3,$3,$6 + or $2,$2,$8 + addu $5,$21,$5 + addu $12,$12,$7 + addu $12,$12,$9 + addu $fp,$3,$2 + addu $5,$5,$10 + li $2,-459603968 # 0xffffffffe49b0000 + sw $12,64($sp) + addu $5,$5,$12 + lw $13,296($sp) + lw $10,296($sp) + ori $2,$2,0x69c1 + addu $22,$17,$fp + addu $17,$5,$2 + addu $24,$24,$17 + srl $3,$14,17 + srl $2,$14,19 + sll $12,$14,15 + sll $6,$14,13 + or $6,$6,$2 + srl $11,$24,6 + srl $9,$24,11 + srl $2,$13,18 + or $12,$12,$3 + sll $5,$24,26 + sll $8,$24,21 + sll $7,$10,25 + sll $3,$13,14 + srl $10,$10,7 + lw $16,392($sp) + or $8,$8,$9 + or $3,$3,$2 + or $5,$5,$11 + srl $2,$24,25 + xor $12,$12,$6 + or $7,$7,$10 + srl $6,$14,10 + sll $9,$24,7 + or $9,$9,$2 + xor $5,$5,$8 + srl $2,$22,13 + xor $12,$12,$6 + xor $7,$7,$3 + srl $6,$22,2 + sll $3,$22,30 + sll $8,$22,19 + srl $11,$13,3 + xor $10,$18,$20 + or $8,$8,$2 + or $3,$3,$6 + srl $2,$22,22 + xor $5,$5,$9 + sll $6,$22,10 + or $9,$22,$23 + xor $7,$7,$11 + or $6,$6,$2 + and $9,$25,$9 + and $2,$22,$23 + addu $12,$12,$16 + and $10,$24,$10 + xor $3,$3,$8 + xor $10,$20,$10 + xor $3,$3,$6 + or $2,$2,$9 + addu $5,$19,$5 + addu $12,$12,$7 + lw $19,64($sp) + addu $12,$12,$15 + addu $fp,$3,$2 + addu $5,$5,$10 + li $2,-272760832 # 0xffffffffefbe0000 + lw $15,12($sp) + addu $5,$5,$12 + ori $2,$2,0x4786 + addu $21,$17,$fp + addu $17,$5,$2 + addu $25,$25,$17 + sll $6,$19,15 + srl $3,$19,17 + or $13,$6,$3 + srl $11,$25,6 + srl $9,$25,11 + srl $3,$15,18 + sll $6,$25,26 + sll $8,$25,21 + sll $7,$15,14 + or $8,$8,$9 + or $7,$7,$3 + or $6,$6,$11 + srl $3,$25,25 + sll $9,$25,7 + srl $2,$19,19 + or $9,$9,$3 + sll $5,$19,13 + srl $3,$21,13 + xor $6,$6,$8 + sll $8,$21,19 + or $5,$5,$2 + srl $10,$15,7 + or $8,$8,$3 + sll $2,$15,25 + lw $3,44($sp) + xor $11,$13,$5 + or $2,$2,$10 + srl $5,$19,10 + xor $13,$11,$5 + srl $10,$15,3 + xor $2,$2,$7 + sll $5,$21,30 + srl $7,$21,2 + xor $2,$2,$10 + addu $13,$13,$3 + or $5,$5,$7 + xor $11,$24,$18 + xor $5,$5,$8 + addu $8,$13,$2 + lw $2,8($sp) + srl $3,$21,22 + xor $6,$6,$9 + and $11,$25,$11 + or $9,$21,$22 + sll $7,$21,10 + or $7,$7,$3 + and $9,$23,$9 + xor $11,$18,$11 + and $3,$21,$22 + addu $6,$20,$6 + addu $8,$8,$2 + xor $5,$5,$7 + or $3,$3,$9 + addu $6,$6,$11 + li $2,264306688 # 0xfc10000 + addu $fp,$5,$3 + addu $6,$6,$8 + ori $2,$2,0x9dc6 + sw $19,460($sp) + addu $19,$17,$fp + addu $17,$6,$2 + addu $23,$23,$17 + sll $5,$12,15 + srl $3,$12,17 + lw $13,16($sp) + sw $12,68($sp) + srl $2,$12,19 + srl $11,$23,6 + sll $6,$12,13 + or $12,$5,$3 + sll $5,$23,26 + or $5,$5,$11 + lw $11,68($sp) + sw $8,464($sp) + lw $20,48($sp) + or $6,$6,$2 + srl $9,$23,11 + srl $10,$13,7 + srl $3,$13,18 + sll $8,$23,21 + sll $2,$13,25 + sll $7,$13,14 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$12,$6 + srl $3,$23,25 + srl $6,$11,10 + or $2,$2,$10 + sll $10,$23,7 + xor $12,$9,$6 + or $10,$10,$3 + srl $6,$19,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$13,3 + srl $7,$19,2 + sll $3,$19,30 + sll $9,$19,19 + xor $11,$25,$24 + or $9,$9,$6 + xor $2,$2,$8 + addu $16,$12,$20 + srl $8,$19,22 + or $3,$3,$7 + sll $6,$19,10 + or $7,$19,$21 + or $6,$6,$8 + and $7,$22,$7 + xor $5,$5,$10 + and $11,$23,$11 + xor $3,$3,$9 + addu $16,$16,$2 + and $2,$19,$21 + xor $11,$24,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$18,$5 + addu $16,$16,$15 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,604766208 # 0x240c0000 + addu $5,$5,$16 + ori $2,$2,0xa1cc + addu $20,$17,$fp + addu $17,$5,$2 + lw $2,464($sp) + lw $15,20($sp) + addu $22,$22,$17 + srl $3,$2,17 + sll $12,$2,15 + sll $6,$2,13 + srl $2,$2,19 + or $6,$6,$2 + srl $11,$22,6 + srl $9,$22,11 + srl $10,$15,7 + or $12,$12,$3 + sll $5,$22,26 + srl $3,$15,18 + sll $8,$22,21 + sll $2,$15,25 + sll $7,$15,14 + or $8,$8,$9 + or $7,$7,$3 + lw $9,464($sp) + srl $3,$22,25 + or $5,$5,$11 + or $2,$2,$10 + sll $10,$22,7 + or $10,$10,$3 + xor $5,$5,$8 + xor $5,$5,$10 + lw $10,52($sp) + xor $12,$12,$6 + srl $6,$9,10 + srl $8,$15,3 + xor $12,$12,$6 + xor $2,$2,$7 + srl $6,$20,13 + srl $7,$20,2 + sll $3,$20,30 + sll $9,$20,19 + xor $11,$23,$25 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$20,22 + or $7,$20,$19 + addu $12,$12,$10 + sll $6,$20,10 + or $6,$6,$8 + and $7,$21,$7 + and $11,$22,$11 + xor $3,$3,$9 + addu $12,$12,$2 + and $2,$20,$19 + xor $11,$25,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$24,$5 + addu $12,$12,$13 + sw $16,468($sp) + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,770244608 # 0x2de90000 + lw $24,468($sp) + addu $5,$5,$12 + ori $2,$2,0x2c6f + addu $18,$17,$fp + srl $3,$16,17 + addu $17,$5,$2 + sll $13,$16,15 + srl $2,$16,19 + sll $6,$16,13 + addu $21,$21,$17 + lw $16,24($sp) + or $6,$6,$2 + or $13,$13,$3 + srl $9,$21,11 + sll $8,$21,21 + xor $13,$13,$6 + srl $6,$24,10 + or $8,$8,$9 + xor $13,$13,$6 + sll $9,$18,19 + srl $6,$18,13 + srl $11,$21,6 + srl $10,$16,7 + srl $3,$16,18 + or $9,$9,$6 + sll $5,$21,26 + lw $6,56($sp) + sll $2,$16,25 + sll $7,$16,14 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$21,25 + or $2,$2,$10 + sll $10,$21,7 + or $10,$10,$3 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$16,3 + srl $7,$18,2 + sll $3,$18,30 + xor $11,$22,$23 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$18,22 + or $7,$18,$20 + addu $13,$13,$6 + sll $6,$18,10 + or $6,$6,$8 + and $7,$19,$7 + xor $5,$5,$10 + and $11,$21,$11 + xor $3,$3,$9 + addu $13,$13,$2 + and $2,$18,$20 + xor $11,$23,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$25,$5 + addu $13,$13,$15 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1249116160 # 0x4a740000 + lw $7,28($sp) + sw $14,60($sp) + addu $5,$5,$13 + lw $14,28($sp) + ori $2,$2,0x84aa + addu $24,$17,$fp + addu $17,$5,$2 + addu $19,$19,$17 + srl $3,$12,17 + srl $2,$12,19 + sll $16,$12,15 + sll $6,$12,13 + or $6,$6,$2 + srl $11,$19,6 + srl $9,$19,11 + srl $10,$7,7 + or $16,$16,$3 + sll $5,$19,26 + srl $3,$14,18 + sll $8,$19,21 + sll $2,$7,25 + sll $7,$7,14 + lw $15,60($sp) + or $8,$8,$9 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$19,25 + or $2,$2,$10 + sll $10,$19,7 + or $10,$10,$3 + xor $16,$16,$6 + xor $5,$5,$8 + srl $6,$12,10 + srl $8,$14,3 + xor $16,$16,$6 + xor $2,$2,$7 + srl $6,$24,13 + srl $7,$24,2 + sll $3,$24,30 + sll $9,$24,19 + xor $5,$5,$10 + xor $11,$21,$22 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$24,22 + or $7,$24,$18 + addu $16,$16,$15 + sll $6,$24,10 + addu $5,$23,$5 + lw $23,24($sp) + or $6,$6,$8 + and $7,$20,$7 + and $11,$19,$11 + xor $3,$3,$9 + addu $16,$16,$2 + and $2,$24,$18 + xor $11,$22,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $16,$16,$23 + addu $fp,$3,$2 + addu $5,$5,$11 + srl $3,$13,17 + sll $15,$13,15 + li $2,1555038208 # 0x5cb00000 + addu $5,$5,$16 + ori $2,$2,0xa9dc + or $15,$15,$3 + lw $3,32($sp) + addu $25,$17,$fp + addu $17,$5,$2 + addu $20,$20,$17 + lw $14,32($sp) + srl $2,$13,19 + sll $6,$13,13 + or $6,$6,$2 + srl $11,$20,6 + srl $9,$20,11 + srl $10,$3,7 + sll $5,$20,26 + sll $8,$20,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + lw $23,460($sp) + or $8,$8,$9 + or $7,$7,$3 + or $5,$5,$11 + xor $15,$15,$6 + or $2,$2,$10 + srl $6,$13,10 + srl $3,$20,25 + sll $10,$20,7 + xor $5,$5,$8 + xor $15,$15,$6 + srl $8,$14,3 + srl $6,$25,13 + xor $2,$2,$7 + sll $9,$25,19 + or $10,$10,$3 + srl $7,$25,2 + or $9,$9,$6 + xor $2,$2,$8 + sll $3,$25,30 + srl $8,$25,22 + sll $6,$25,10 + xor $11,$19,$21 + or $6,$6,$8 + or $3,$3,$7 + lw $8,28($sp) + or $7,$25,$24 + addu $15,$15,$23 + and $7,$18,$7 + xor $5,$5,$10 + and $11,$20,$11 + xor $3,$3,$9 + addu $15,$15,$2 + and $2,$25,$24 + xor $11,$21,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$22,$5 + addu $15,$15,$8 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1996029952 # 0x76f90000 + addu $5,$5,$15 + ori $2,$2,0x88da + addu $23,$17,$fp + srl $3,$16,17 + addu $17,$5,$2 + sll $14,$16,15 + srl $2,$16,19 + sll $5,$16,13 + addu $18,$18,$17 + lw $22,36($sp) + lw $10,36($sp) + or $5,$5,$2 + or $14,$14,$3 + srl $9,$18,11 + sll $8,$18,21 + xor $14,$14,$5 + srl $5,$16,10 + or $8,$8,$9 + xor $14,$14,$5 + sll $9,$23,19 + srl $5,$23,13 + srl $11,$18,6 + srl $3,$22,18 + or $9,$9,$5 + sll $6,$18,26 + lw $5,68($sp) + sll $2,$10,25 + sll $7,$22,14 + srl $10,$10,7 + or $7,$7,$3 + or $6,$6,$11 + or $2,$2,$10 + srl $3,$18,25 + sll $10,$18,7 + xor $6,$6,$8 + xor $2,$2,$7 + srl $8,$22,3 + or $10,$10,$3 + srl $7,$23,2 + xor $2,$2,$8 + sll $3,$23,30 + srl $8,$23,22 + addu $14,$14,$5 + sll $5,$23,10 + xor $11,$20,$19 + or $5,$5,$8 + or $3,$3,$7 + lw $8,32($sp) + or $7,$23,$25 + and $7,$24,$7 + xor $6,$6,$10 + and $11,$18,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$23,$25 + xor $11,$19,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$21,$6 + addu $14,$14,$8 + addu $fp,$3,$2 + addu $6,$6,$11 + li $2,-1740767232 # 0xffffffff983e0000 + addu $6,$6,$14 + ori $2,$2,0x5152 + addu $22,$17,$fp + addu $17,$6,$2 + addu $24,$24,$17 + sll $5,$15,15 + srl $3,$15,17 + srl $2,$15,19 + sll $6,$15,13 + sw $12,80($sp) + or $fp,$5,$3 + lw $21,40($sp) + lw $10,40($sp) + or $6,$6,$2 + srl $9,$24,11 + sll $8,$24,21 + or $8,$8,$9 + xor $9,$fp,$6 + srl $6,$15,10 + xor $fp,$9,$6 + srl $6,$22,13 + sll $9,$22,19 + srl $11,$24,6 + srl $3,$21,18 + or $9,$9,$6 + sll $5,$24,26 + lw $6,464($sp) + sll $2,$10,25 + sll $7,$21,14 + srl $10,$10,7 + or $7,$7,$3 + or $5,$5,$11 + or $2,$2,$10 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$21,3 + xor $2,$2,$8 + addu $fp,$fp,$6 + srl $8,$22,22 + sll $6,$22,10 + or $6,$6,$8 + lw $8,36($sp) + srl $3,$24,25 + sll $10,$24,7 + addu $fp,$fp,$2 + or $10,$10,$3 + srl $7,$22,2 + addu $fp,$fp,$8 + sll $3,$22,30 + sw $fp,472($sp) + xor $11,$18,$20 + or $3,$3,$7 + or $7,$22,$23 + and $7,$25,$7 + and $2,$22,$23 + xor $5,$5,$10 + and $11,$24,$11 + xor $3,$3,$9 + lw $9,472($sp) + xor $11,$20,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$19,$5 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1473183744 # 0xffffffffa8310000 + addu $5,$5,$9 + ori $2,$2,0xc66d + addu $21,$17,$fp + addu $17,$5,$2 + addu $25,$25,$17 + sll $5,$14,15 + srl $3,$14,17 + srl $2,$14,19 + sll $6,$14,13 + lw $19,44($sp) + or $fp,$5,$3 + lw $10,44($sp) + or $6,$6,$2 + srl $9,$25,11 + sll $8,$25,21 + or $8,$8,$9 + xor $9,$fp,$6 + srl $6,$14,10 + xor $fp,$9,$6 + srl $6,$21,13 + sll $9,$21,19 + srl $11,$25,6 + srl $3,$19,18 + or $9,$9,$6 + sll $5,$25,26 + lw $6,468($sp) + sll $2,$10,25 + sll $7,$19,14 + srl $10,$10,7 + or $7,$7,$3 + or $5,$5,$11 + or $2,$2,$10 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$19,3 + xor $2,$2,$8 + addu $fp,$fp,$6 + srl $8,$21,22 + sll $6,$21,10 + or $6,$6,$8 + lw $8,40($sp) + srl $3,$25,25 + sll $10,$25,7 + addu $fp,$fp,$2 + or $10,$10,$3 + srl $7,$21,2 + addu $fp,$fp,$8 + sll $3,$21,30 + sw $fp,476($sp) + xor $11,$24,$18 + or $3,$3,$7 + or $7,$21,$22 + and $7,$23,$7 + and $2,$21,$22 + xor $5,$5,$10 + and $11,$25,$11 + xor $3,$3,$9 + lw $9,476($sp) + xor $11,$18,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$20,$5 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1341980672 # 0xffffffffb0030000 + lw $11,472($sp) + addu $5,$5,$9 + ori $2,$2,0x27c8 + addu $19,$17,$fp + lw $10,472($sp) + addu $17,$5,$2 + addu $23,$23,$17 + lw $20,48($sp) + srl $3,$11,17 + srl $2,$11,19 + sll $6,$11,13 + sll $5,$23,26 + srl $11,$23,6 + sll $10,$10,15 + or $5,$5,$11 + lw $11,472($sp) + or $fp,$10,$3 + sw $10,480($sp) + or $6,$6,$2 + srl $9,$23,11 + srl $10,$20,7 + srl $3,$20,18 + sll $8,$23,21 + sll $2,$20,25 + sll $7,$20,14 + or $8,$8,$9 + or $7,$7,$3 + or $2,$2,$10 + srl $3,$23,25 + sll $10,$23,7 + xor $9,$fp,$6 + or $10,$10,$3 + srl $6,$11,10 + xor $5,$5,$8 + xor $fp,$9,$6 + srl $8,$20,3 + srl $6,$19,13 + xor $2,$2,$7 + sll $3,$19,30 + srl $7,$19,2 + sll $9,$19,19 + xor $5,$5,$10 + xor $11,$25,$24 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$19,22 + or $7,$19,$21 + addu $fp,$fp,$12 + sll $6,$19,10 + addu $5,$18,$5 + lw $18,44($sp) + addu $fp,$fp,$2 + or $6,$6,$8 + and $7,$22,$7 + and $2,$19,$21 + and $11,$23,$11 + xor $3,$3,$9 + xor $11,$24,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $18,$fp,$18 + sw $fp,484($sp) + addu $5,$5,$11 + addu $fp,$3,$2 + li $2,-1084686336 # 0xffffffffbf590000 + addu $5,$5,$18 + ori $2,$2,0x7fc7 + addu $20,$17,$fp + addu $17,$5,$2 + lw $2,476($sp) + addu $22,$22,$17 + srl $9,$22,11 + srl $3,$2,17 + sll $12,$2,15 + or $12,$12,$3 + lw $3,52($sp) + sll $8,$22,21 + or $8,$8,$9 + sll $6,$2,13 + lw $9,476($sp) + srl $2,$2,19 + sw $18,488($sp) + or $6,$6,$2 + lw $18,52($sp) + srl $11,$22,6 + srl $10,$3,7 + sll $5,$22,26 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$22,25 + or $2,$2,$10 + sll $10,$22,7 + or $10,$10,$3 + xor $12,$12,$6 + xor $5,$5,$8 + srl $6,$9,10 + srl $8,$18,3 + xor $12,$12,$6 + xor $2,$2,$7 + srl $6,$20,13 + srl $7,$20,2 + sll $3,$20,30 + sll $9,$20,19 + xor $5,$5,$10 + xor $11,$23,$25 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$20,22 + or $7,$20,$19 + addu $12,$12,$13 + sll $6,$20,10 + addu $5,$24,$5 + lw $24,48($sp) + or $6,$6,$8 + and $7,$21,$7 + and $11,$22,$11 + xor $3,$3,$9 + addu $12,$12,$2 + and $2,$20,$19 + xor $11,$25,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $12,$12,$24 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-958398464 # 0xffffffffc6e00000 + addu $5,$5,$12 + ori $2,$2,0xbf3 + addu $18,$17,$fp + addu $17,$5,$2 + lw $2,488($sp) + sw $13,84($sp) + addu $21,$21,$17 + srl $3,$2,17 + sll $13,$2,15 + or $13,$13,$3 + lw $3,56($sp) + srl $9,$21,11 + sll $8,$21,21 + or $8,$8,$9 + sll $6,$2,13 + lw $9,488($sp) + srl $2,$2,19 + lw $24,56($sp) + or $6,$6,$2 + srl $11,$21,6 + srl $10,$3,7 + sll $5,$21,26 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$21,25 + or $2,$2,$10 + sll $10,$21,7 + or $10,$10,$3 + xor $13,$13,$6 + xor $5,$5,$8 + srl $6,$9,10 + srl $8,$24,3 + xor $13,$13,$6 + xor $2,$2,$7 + srl $6,$18,13 + srl $7,$18,2 + sll $3,$18,30 + sll $9,$18,19 + xor $5,$5,$10 + xor $11,$22,$23 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$18,22 + or $7,$18,$20 + addu $13,$13,$16 + sll $6,$18,10 + addu $5,$25,$5 + lw $25,52($sp) + or $6,$6,$8 + and $7,$19,$7 + and $11,$21,$11 + xor $3,$3,$9 + addu $13,$13,$2 + and $2,$18,$20 + xor $11,$23,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $13,$13,$25 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-710475776 # 0xffffffffd5a70000 + addu $5,$5,$13 + ori $2,$2,0x9147 + addu $24,$17,$fp + sll $6,$12,13 + addu $17,$5,$2 + srl $2,$12,19 + or $6,$6,$2 + lw $2,60($sp) + addu $19,$19,$17 + lw $25,60($sp) + sw $16,88($sp) + srl $3,$12,17 + sll $16,$12,15 + srl $9,$19,11 + srl $10,$2,7 + or $16,$16,$3 + sll $8,$19,21 + sll $7,$2,25 + sll $3,$2,14 + srl $2,$2,18 + srl $11,$19,6 + or $8,$8,$9 + or $3,$3,$2 + srl $9,$12,10 + sll $5,$19,26 + xor $16,$16,$6 + or $7,$7,$10 + srl $2,$19,25 + or $5,$5,$11 + sll $6,$19,7 + srl $11,$25,3 + xor $16,$16,$9 + xor $7,$7,$3 + or $6,$6,$2 + xor $7,$7,$11 + srl $2,$24,13 + xor $5,$5,$8 + sll $3,$24,30 + srl $8,$24,2 + sll $9,$24,19 + addu $16,$16,$15 + xor $10,$21,$22 + or $9,$9,$2 + or $3,$3,$8 + srl $2,$24,22 + or $8,$24,$18 + xor $5,$5,$6 + addu $16,$16,$7 + sll $6,$24,10 + lw $7,56($sp) + or $6,$6,$2 + and $8,$20,$8 + and $2,$24,$18 + and $10,$19,$10 + xor $3,$3,$9 + xor $10,$22,$10 + xor $3,$3,$6 + or $2,$2,$8 + addu $5,$23,$5 + addu $16,$16,$7 + addu $fp,$3,$2 + addu $5,$5,$10 + li $2,113901568 # 0x6ca0000 + lw $23,460($sp) + lw $10,460($sp) + addu $5,$5,$16 + ori $2,$2,0x6351 + addu $25,$17,$fp + addu $17,$5,$2 + addu $20,$20,$17 + sll $5,$13,15 + srl $3,$13,17 + srl $2,$13,19 + sll $6,$13,13 + sw $15,92($sp) + or $6,$6,$2 + or $15,$5,$3 + srl $11,$20,6 + srl $2,$23,18 + sll $5,$20,26 + sll $7,$10,25 + sll $3,$23,14 + srl $10,$10,7 + srl $9,$20,11 + or $3,$3,$2 + sll $8,$20,21 + or $5,$5,$11 + or $7,$7,$10 + xor $11,$15,$6 + srl $6,$13,10 + or $8,$8,$9 + srl $2,$20,25 + xor $15,$11,$6 + sll $9,$20,7 + srl $11,$23,3 + xor $7,$7,$3 + or $9,$9,$2 + srl $6,$25,2 + srl $2,$25,13 + xor $7,$7,$11 + xor $5,$5,$8 + sll $3,$25,30 + sll $8,$25,19 + addu $15,$15,$14 + xor $10,$19,$21 + or $8,$8,$2 + or $3,$3,$6 + srl $2,$25,22 + xor $5,$5,$9 + sll $6,$25,10 + or $9,$25,$24 + addu $15,$15,$7 + lw $7,60($sp) + or $6,$6,$2 + and $9,$18,$9 + and $2,$25,$24 + and $10,$20,$10 + xor $3,$3,$8 + xor $10,$21,$10 + xor $3,$3,$6 + or $2,$2,$9 + addu $5,$22,$5 + addu $15,$15,$7 + addu $fp,$3,$2 + addu $5,$5,$10 + li $2,338231296 # 0x14290000 + sw $14,96($sp) + addu $5,$5,$15 + sw $15,124($sp) + ori $2,$2,0x2967 + lw $15,68($sp) + lw $10,68($sp) + addu $23,$17,$fp + addu $17,$5,$2 + addu $18,$18,$17 + sll $6,$16,15 + srl $3,$16,17 + srl $2,$16,19 + sll $5,$16,13 + lw $22,472($sp) + or $14,$6,$3 + or $5,$5,$2 + srl $11,$18,6 + srl $3,$15,18 + sll $6,$18,26 + sll $2,$10,25 + sll $7,$15,14 + srl $10,$10,7 + or $7,$7,$3 + or $6,$6,$11 + or $2,$2,$10 + xor $11,$14,$5 + srl $5,$16,10 + xor $14,$11,$5 + srl $9,$18,11 + srl $10,$15,3 + sll $8,$18,21 + xor $2,$2,$7 + or $8,$8,$9 + srl $3,$18,25 + xor $2,$2,$10 + addu $15,$14,$22 + sll $9,$18,7 + or $9,$9,$3 + xor $11,$20,$19 + srl $7,$23,2 + srl $3,$23,13 + xor $6,$6,$8 + sll $5,$23,30 + sll $8,$23,19 + addu $15,$15,$2 + lw $2,64($sp) + or $8,$8,$3 + or $5,$5,$7 + srl $3,$23,22 + xor $6,$6,$9 + and $11,$18,$11 + or $9,$23,$25 + sll $7,$23,10 + or $7,$7,$3 + and $9,$24,$9 + xor $11,$19,$11 + and $3,$23,$25 + addu $6,$21,$6 + xor $5,$5,$8 + addu $15,$15,$2 + xor $5,$5,$7 + or $3,$3,$9 + addu $6,$6,$11 + li $2,666304512 # 0x27b70000 + addu $fp,$5,$3 + addu $6,$6,$15 + ori $2,$2,0xa85 + sw $22,492($sp) + addu $22,$17,$fp + addu $17,$6,$2 + lw $2,124($sp) + addu $24,$24,$17 + srl $11,$24,6 + sll $5,$2,15 + srl $3,$2,17 + sw $2,496($sp) + or $14,$5,$3 + lw $3,464($sp) + sll $5,$24,26 + or $5,$5,$11 + lw $11,496($sp) + lw $21,464($sp) + sll $6,$2,13 + srl $2,$2,19 + or $6,$6,$2 + srl $9,$24,11 + srl $10,$3,7 + sll $8,$24,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + sw $15,128($sp) + or $8,$8,$9 + lw $15,476($sp) + xor $9,$14,$6 + or $7,$7,$3 + srl $6,$11,10 + or $2,$2,$10 + srl $3,$24,25 + xor $14,$9,$6 + sll $10,$24,7 + srl $6,$22,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$21,3 + sll $9,$22,19 + or $10,$10,$3 + srl $7,$22,2 + or $9,$9,$6 + xor $2,$2,$8 + sll $3,$22,30 + srl $8,$22,22 + sll $6,$22,10 + xor $11,$18,$20 + or $6,$6,$8 + or $3,$3,$7 + lw $8,68($sp) + or $7,$22,$23 + addu $14,$14,$15 + and $7,$25,$7 + xor $5,$5,$10 + and $11,$24,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$22,$23 + lw $9,128($sp) + xor $11,$20,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$19,$5 + addu $14,$14,$8 + addu $fp,$3,$2 + lw $10,468($sp) + sw $15,500($sp) + addu $5,$5,$11 + lw $15,468($sp) + li $2,773521408 # 0x2e1b0000 + addu $5,$5,$14 + ori $2,$2,0x2138 + addu $21,$17,$fp + sll $6,$9,15 + addu $17,$5,$2 + srl $3,$9,17 + srl $2,$9,19 + sll $5,$9,13 + addu $25,$25,$17 + sw $14,132($sp) + or $5,$5,$2 + or $14,$6,$3 + sll $2,$10,25 + srl $3,$15,18 + srl $10,$10,7 + sll $7,$15,14 + lw $19,128($sp) + or $7,$7,$3 + or $2,$2,$10 + srl $3,$25,25 + sll $10,$25,7 + or $10,$10,$3 + lw $3,488($sp) + srl $9,$25,11 + sll $8,$25,21 + or $8,$8,$9 + xor $9,$14,$5 + srl $5,$19,10 + sw $3,504($sp) + xor $14,$9,$5 + srl $5,$21,13 + sll $9,$21,19 + srl $11,$25,6 + or $9,$9,$5 + sll $6,$25,26 + lw $5,504($sp) + or $6,$6,$11 + xor $6,$6,$8 + xor $2,$2,$7 + srl $8,$15,3 + srl $7,$21,2 + xor $2,$2,$8 + sll $3,$21,30 + srl $8,$21,22 + addu $14,$14,$5 + sll $5,$21,10 + xor $11,$24,$18 + or $5,$5,$8 + or $3,$3,$7 + lw $8,464($sp) + or $7,$21,$22 + and $7,$23,$7 + xor $6,$6,$10 + and $11,$25,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$21,$22 + xor $11,$18,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$20,$6 + lw $9,132($sp) + addu $14,$14,$8 + addu $fp,$3,$2 + addu $6,$6,$11 + li $2,1294729216 # 0x4d2c0000 + addu $6,$6,$14 + ori $2,$2,0x6dfc + addu $19,$17,$fp + addu $17,$6,$2 + addu $23,$23,$17 + sll $5,$9,15 + srl $3,$9,17 + lw $15,80($sp) + sw $12,112($sp) + srl $11,$23,6 + or $12,$5,$3 + sll $5,$23,26 + or $5,$5,$11 + lw $11,132($sp) + srl $2,$9,19 + sll $6,$9,13 + or $6,$6,$2 + srl $9,$23,11 + srl $10,$15,7 + srl $3,$15,18 + sll $8,$23,21 + sll $2,$15,25 + sll $7,$15,14 + lw $20,112($sp) + or $8,$8,$9 + or $7,$7,$3 + xor $9,$12,$6 + or $2,$2,$10 + srl $6,$11,10 + xor $12,$9,$6 + srl $3,$23,25 + srl $6,$19,13 + sll $10,$23,7 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$15,3 + sll $9,$19,19 + or $10,$10,$3 + srl $7,$19,2 + or $9,$9,$6 + xor $2,$2,$8 + sll $3,$19,30 + srl $8,$19,22 + sll $6,$19,10 + sw $14,136($sp) + xor $11,$25,$24 + addu $14,$12,$20 + or $6,$6,$8 + or $3,$3,$7 + lw $8,468($sp) + or $7,$19,$21 + and $7,$22,$7 + xor $5,$5,$10 + and $11,$23,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$19,$21 + xor $11,$24,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$18,$5 + lw $9,136($sp) + addu $14,$14,$8 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1396178944 # 0x53380000 + addu $5,$5,$14 + ori $2,$2,0xd13 + addu $20,$17,$fp + addu $17,$5,$2 + addu $22,$22,$17 + sll $5,$9,15 + srl $3,$9,17 + or $12,$5,$3 + sw $14,508($sp) + srl $11,$22,6 + lw $14,84($sp) + sll $5,$22,26 + or $5,$5,$11 + lw $11,136($sp) + srl $2,$9,19 + sll $6,$9,13 + or $6,$6,$2 + srl $9,$22,11 + srl $10,$14,7 + srl $3,$14,18 + sll $8,$22,21 + sll $2,$14,25 + sll $7,$14,14 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$12,$6 + srl $3,$22,25 + srl $6,$11,10 + or $2,$2,$10 + sll $10,$22,7 + xor $12,$9,$6 + or $10,$10,$3 + srl $6,$20,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$14,3 + srl $7,$20,2 + sll $3,$20,30 + sll $9,$20,19 + addu $fp,$12,$13 + xor $11,$23,$25 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$20,22 + or $7,$20,$19 + xor $5,$5,$10 + sll $6,$20,10 + or $6,$6,$8 + and $7,$21,$7 + and $11,$22,$11 + addu $5,$24,$5 + xor $3,$3,$9 + addu $24,$fp,$2 + and $2,$20,$19 + addu $24,$24,$15 + xor $11,$25,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $fp,$3,$2 + sw $13,116($sp) + addu $5,$5,$11 + sw $24,144($sp) + li $2,1695154176 # 0x650a0000 + lw $15,508($sp) + lw $12,88($sp) + addu $5,$5,$24 + ori $2,$2,0x7354 + addu $18,$17,$fp + addu $17,$5,$2 + addu $21,$21,$17 + sll $5,$15,15 + srl $3,$15,17 + srl $2,$15,19 + sll $6,$15,13 + or $13,$5,$3 + or $6,$6,$2 + srl $11,$21,6 + srl $9,$21,11 + srl $10,$12,7 + srl $3,$12,18 + sll $5,$21,26 + sll $8,$21,21 + sll $2,$12,25 + sll $7,$12,14 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$13,$6 + srl $3,$21,25 + srl $6,$15,10 + or $5,$5,$11 + or $2,$2,$10 + sll $10,$21,7 + xor $13,$9,$6 + or $10,$10,$3 + srl $6,$18,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$12,3 + srl $7,$18,2 + sll $3,$18,30 + sll $9,$18,19 + xor $11,$22,$23 + or $9,$9,$6 + xor $2,$2,$8 + addu $15,$13,$16 + srl $8,$18,22 + or $3,$3,$7 + sll $6,$18,10 + or $7,$18,$20 + or $6,$6,$8 + and $7,$19,$7 + xor $5,$5,$10 + and $11,$21,$11 + xor $3,$3,$9 + addu $15,$15,$2 + and $2,$18,$20 + xor $11,$23,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$25,$5 + addu $15,$15,$14 + lw $25,144($sp) + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1986658304 # 0x766a0000 + addu $5,$5,$15 + ori $2,$2,0xabb + addu $24,$17,$fp + addu $17,$5,$2 + addu $19,$19,$17 + sll $5,$25,15 + srl $3,$25,17 + srl $2,$25,19 + sll $6,$25,13 + lw $13,92($sp) + or $14,$5,$3 + or $6,$6,$2 + srl $9,$19,11 + sll $8,$19,21 + or $8,$8,$9 + xor $9,$14,$6 + srl $6,$25,10 + xor $14,$9,$6 + srl $6,$24,13 + sll $9,$24,19 + srl $11,$19,6 + srl $10,$13,7 + srl $3,$13,18 + or $9,$9,$6 + sll $5,$19,26 + lw $6,496($sp) + sll $2,$13,25 + sll $7,$13,14 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$19,25 + or $2,$2,$10 + sll $10,$19,7 + or $10,$10,$3 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$13,3 + srl $7,$24,2 + sll $3,$24,30 + sw $15,148($sp) + xor $11,$21,$22 + xor $2,$2,$8 + addu $15,$14,$6 + srl $8,$24,22 + or $3,$3,$7 + sll $6,$24,10 + or $7,$24,$18 + or $6,$6,$8 + and $7,$20,$7 + xor $5,$5,$10 + and $11,$19,$11 + xor $3,$3,$9 + addu $15,$15,$2 + and $2,$24,$18 + xor $11,$22,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$23,$5 + lw $7,148($sp) + addu $15,$15,$12 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-2117992448 # 0xffffffff81c20000 + addu $5,$5,$15 + ori $2,$2,0xc92e + addu $25,$17,$fp + addu $17,$5,$2 + addu $20,$20,$17 + sll $5,$7,15 + srl $3,$7,17 + lw $12,96($sp) + or $14,$5,$3 + srl $11,$20,6 + sll $5,$20,26 + or $5,$5,$11 + lw $11,148($sp) + srl $2,$7,19 + sll $6,$7,13 + lw $23,128($sp) + or $6,$6,$2 + srl $9,$20,11 + srl $10,$12,7 + srl $3,$12,18 + sll $8,$20,21 + sll $2,$12,25 + sll $7,$12,14 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$14,$6 + srl $3,$20,25 + srl $6,$11,10 + or $2,$2,$10 + sll $10,$20,7 + xor $14,$9,$6 + or $10,$10,$3 + srl $6,$25,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$12,3 + srl $7,$25,2 + sll $3,$25,30 + sll $9,$25,19 + sw $15,152($sp) + xor $11,$19,$21 + addu $15,$14,$23 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$25,22 + or $7,$25,$24 + xor $5,$5,$10 + sll $6,$25,10 + or $6,$6,$8 + and $7,$18,$7 + and $11,$20,$11 + addu $5,$22,$5 + xor $3,$3,$9 + addu $22,$15,$2 + and $2,$25,$24 + xor $11,$21,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $22,$22,$13 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1838022656 # 0xffffffff92720000 + addu $5,$5,$22 + ori $2,$2,0x2c85 + addu $23,$17,$fp + addu $17,$5,$2 + lw $2,152($sp) + addu $18,$18,$17 + srl $11,$18,6 + sll $5,$2,15 + srl $3,$2,17 + or $13,$5,$3 + lw $3,492($sp) + sll $5,$18,26 + or $5,$5,$11 + lw $11,152($sp) + lw $14,492($sp) + sll $6,$2,13 + srl $2,$2,19 + lw $15,132($sp) + or $6,$6,$2 + srl $9,$18,11 + srl $10,$3,7 + sll $8,$18,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$13,$6 + srl $3,$18,25 + srl $6,$11,10 + or $2,$2,$10 + sll $10,$18,7 + or $10,$10,$3 + xor $13,$9,$6 + xor $5,$5,$8 + srl $6,$23,13 + srl $8,$14,3 + xor $2,$2,$7 + sll $3,$23,30 + srl $7,$23,2 + sll $9,$23,19 + xor $11,$20,$19 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$23,22 + or $7,$23,$25 + addu $13,$13,$15 + sll $6,$23,10 + sw $22,156($sp) + or $6,$6,$8 + addu $13,$13,$2 + and $7,$24,$7 + and $2,$23,$25 + xor $5,$5,$10 + and $11,$18,$11 + xor $3,$3,$9 + xor $11,$19,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$21,$5 + lw $21,156($sp) + addu $15,$13,$12 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1564540928 # 0xffffffffa2bf0000 + addu $5,$5,$15 + ori $2,$2,0xe8a1 + addu $22,$17,$fp + srl $3,$21,17 + addu $17,$5,$2 + sll $5,$21,15 + or $12,$5,$3 + lw $3,500($sp) + addu $24,$24,$17 + srl $2,$21,19 + sll $6,$21,13 + lw $13,500($sp) + or $6,$6,$2 + srl $11,$24,6 + srl $9,$24,11 + srl $10,$3,7 + sll $5,$24,26 + sll $8,$24,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + lw $14,136($sp) + or $8,$8,$9 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$24,25 + or $2,$2,$10 + sll $10,$24,7 + xor $9,$12,$6 + or $10,$10,$3 + srl $6,$21,10 + xor $5,$5,$8 + xor $12,$9,$6 + srl $8,$13,3 + srl $6,$22,13 + xor $2,$2,$7 + sll $3,$22,30 + srl $7,$22,2 + sll $9,$22,19 + xor $5,$5,$10 + xor $11,$18,$20 + or $9,$9,$6 + addu $13,$12,$14 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$22,22 + or $7,$22,$23 + sll $6,$22,10 + addu $5,$19,$5 + lw $19,492($sp) + or $6,$6,$8 + and $7,$25,$7 + and $11,$24,$11 + xor $3,$3,$9 + addu $13,$13,$2 + and $2,$22,$23 + xor $11,$20,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $13,$13,$19 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1474691072 # 0xffffffffa81a0000 + addu $5,$5,$13 + ori $2,$2,0x664b + addu $21,$17,$fp + srl $3,$15,17 + addu $17,$5,$2 + sll $5,$15,15 + or $12,$5,$3 + lw $3,504($sp) + addu $25,$25,$17 + sw $13,512($sp) + srl $2,$15,19 + lw $13,504($sp) + sll $6,$15,13 + lw $14,508($sp) + or $6,$6,$2 + srl $11,$25,6 + srl $9,$25,11 + srl $10,$3,7 + sll $5,$25,26 + sll $8,$25,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$12,$6 + srl $3,$25,25 + srl $6,$15,10 + or $5,$5,$11 + or $2,$2,$10 + sll $10,$25,7 + xor $12,$9,$6 + or $10,$10,$3 + srl $6,$21,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$13,3 + srl $7,$21,2 + sll $3,$21,30 + sll $9,$21,19 + lw $19,500($sp) + xor $11,$24,$18 + or $9,$9,$6 + xor $2,$2,$8 + addu $13,$12,$14 + srl $8,$21,22 + or $3,$3,$7 + sll $6,$21,10 + or $7,$21,$22 + or $6,$6,$8 + and $7,$23,$7 + xor $5,$5,$10 + and $11,$25,$11 + xor $3,$3,$9 + addu $13,$13,$2 + and $2,$21,$22 + xor $11,$18,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$20,$5 + lw $20,512($sp) + addu $13,$13,$19 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-1035272192 # 0xffffffffc24b0000 + addu $5,$5,$13 + ori $2,$2,0x8b70 + addu $19,$17,$fp + srl $3,$20,17 + addu $17,$5,$2 + sll $5,$20,15 + or $12,$5,$3 + lw $3,112($sp) + addu $23,$23,$17 + sw $13,516($sp) + srl $2,$20,19 + lw $13,112($sp) + sll $6,$20,13 + or $6,$6,$2 + srl $11,$23,6 + srl $9,$23,11 + srl $10,$3,7 + sll $5,$23,26 + sll $8,$23,21 + sll $2,$3,25 + sll $7,$3,14 + srl $3,$3,18 + or $8,$8,$9 + or $7,$7,$3 + xor $9,$12,$6 + or $5,$5,$11 + srl $6,$20,10 + or $2,$2,$10 + xor $12,$9,$6 + lw $20,144($sp) + srl $6,$19,13 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$13,3 + sll $9,$19,19 + srl $3,$23,25 + or $9,$9,$6 + xor $2,$2,$8 + sll $10,$23,7 + srl $8,$19,22 + sll $6,$19,10 + or $10,$10,$3 + srl $7,$19,2 + or $6,$6,$8 + sll $3,$19,30 + lw $8,504($sp) + xor $11,$25,$24 + addu $14,$12,$20 + or $3,$3,$7 + or $7,$19,$21 + and $7,$22,$7 + xor $5,$5,$10 + and $11,$23,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$19,$21 + addu $14,$14,$8 + xor $11,$24,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$18,$5 + sw $14,520($sp) + addu $fp,$3,$2 + lw $9,516($sp) + addu $5,$5,$11 + li $2,-949223424 # 0xffffffffc76c0000 + lw $13,116($sp) + lw $10,116($sp) + addu $5,$5,$14 + ori $2,$2,0x51a3 + addu $20,$17,$fp + addu $17,$5,$2 + addu $22,$22,$17 + lw $14,516($sp) + srl $3,$9,17 + srl $2,$9,19 + sll $12,$9,15 + sll $6,$9,13 + or $6,$6,$2 + srl $11,$22,6 + srl $9,$22,11 + or $12,$12,$3 + sll $5,$22,26 + srl $3,$13,18 + sll $8,$22,21 + sll $2,$10,25 + sll $7,$13,14 + srl $10,$10,7 + lw $18,148($sp) + or $8,$8,$9 + or $7,$7,$3 + or $5,$5,$11 + srl $3,$22,25 + or $2,$2,$10 + sll $10,$22,7 + or $10,$10,$3 + xor $12,$12,$6 + xor $5,$5,$8 + srl $6,$14,10 + srl $8,$13,3 + xor $12,$12,$6 + xor $2,$2,$7 + srl $6,$20,13 + srl $7,$20,2 + sll $3,$20,30 + sll $9,$20,19 + xor $5,$5,$10 + xor $11,$23,$25 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$20,22 + or $7,$20,$19 + addu $12,$12,$18 + sll $6,$20,10 + addu $5,$24,$5 + lw $24,112($sp) + or $6,$6,$8 + and $7,$21,$7 + and $11,$22,$11 + xor $3,$3,$9 + addu $12,$12,$2 + and $2,$20,$19 + xor $11,$25,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $12,$12,$24 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-778960896 # 0xffffffffd1920000 + addu $5,$5,$12 + ori $2,$2,0xe819 + addu $18,$17,$fp + addu $17,$5,$2 + lw $2,520($sp) + addu $21,$21,$17 + srl $11,$21,6 + sll $5,$2,15 + srl $3,$2,17 + or $13,$5,$3 + sll $5,$21,26 + sll $6,$2,13 + or $5,$5,$11 + srl $2,$2,19 + lw $11,520($sp) + or $6,$6,$2 + srl $9,$21,11 + srl $10,$16,7 + srl $3,$16,18 + sll $8,$21,21 + sll $2,$16,25 + sll $7,$16,14 + lw $24,152($sp) + or $8,$8,$9 + or $7,$7,$3 + or $2,$2,$10 + srl $3,$21,25 + sll $10,$21,7 + xor $9,$13,$6 + or $10,$10,$3 + srl $6,$11,10 + xor $5,$5,$8 + xor $13,$9,$6 + srl $8,$16,3 + srl $6,$18,13 + xor $2,$2,$7 + sll $3,$18,30 + srl $7,$18,2 + sll $9,$18,19 + xor $5,$5,$10 + xor $11,$22,$23 + or $9,$9,$6 + addu $14,$13,$24 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$18,22 + or $7,$18,$20 + sll $6,$18,10 + addu $5,$25,$5 + lw $25,116($sp) + or $6,$6,$8 + and $7,$19,$7 + and $11,$21,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$18,$20 + xor $11,$23,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $14,$14,$25 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,-694616064 # 0xffffffffd6990000 + addu $5,$5,$14 + ori $2,$2,0x624 + addu $24,$17,$fp + addu $17,$5,$2 + srl $2,$12,19 + sll $5,$12,13 + or $5,$5,$2 + lw $2,496($sp) + sll $6,$12,15 + srl $3,$12,17 + or $13,$6,$3 + srl $10,$2,7 + sll $7,$2,25 + sll $3,$2,14 + srl $2,$2,18 + or $3,$3,$2 + or $7,$7,$10 + addu $19,$19,$17 + xor $7,$7,$3 + lw $3,496($sp) + srl $11,$19,6 + sll $6,$19,26 + or $6,$6,$11 + xor $11,$13,$5 + srl $5,$12,10 + xor $13,$11,$5 + srl $11,$3,3 + srl $5,$24,2 + sll $3,$24,30 + srl $9,$19,11 + sll $8,$19,21 + or $3,$3,$5 + lw $5,156($sp) + or $8,$8,$9 + srl $2,$19,25 + sll $9,$19,7 + or $9,$9,$2 + xor $6,$6,$8 + srl $2,$24,13 + sll $8,$24,19 + xor $10,$21,$22 + or $8,$8,$2 + addu $13,$13,$5 + srl $2,$24,22 + xor $6,$6,$9 + sll $5,$24,10 + or $9,$24,$18 + or $5,$5,$2 + and $9,$20,$9 + and $2,$24,$18 + xor $7,$7,$11 + and $10,$19,$10 + xor $3,$3,$8 + xor $10,$22,$10 + xor $3,$3,$5 + or $2,$2,$9 + addu $6,$23,$6 + addu $7,$13,$7 + addu $7,$7,$16 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-200409088 # 0xfffffffff40e0000 + sw $14,180($sp) + addu $6,$6,$7 + ori $2,$2,0x3585 + addu $25,$17,$fp + addu $17,$6,$2 + lw $6,180($sp) + sw $7,184($sp) + lw $14,128($sp) + sw $6,524($sp) + lw $7,524($sp) + srl $10,$14,7 + addu $20,$20,$17 + srl $2,$7,19 + sll $5,$7,13 + or $5,$5,$2 + sll $2,$14,25 + or $2,$2,$10 + lw $10,524($sp) + srl $3,$7,17 + sll $6,$6,15 + or $13,$6,$3 + srl $11,$20,6 + srl $3,$14,18 + sll $6,$20,26 + sll $7,$14,14 + or $7,$7,$3 + or $6,$6,$11 + xor $11,$13,$5 + srl $5,$10,10 + srl $9,$20,11 + xor $13,$11,$5 + srl $10,$14,3 + sll $8,$20,21 + xor $2,$2,$7 + or $8,$8,$9 + srl $3,$20,25 + xor $2,$2,$10 + sll $9,$20,7 + addu $13,$13,$15 + or $9,$9,$3 + xor $11,$19,$21 + srl $7,$25,2 + srl $3,$25,13 + xor $6,$6,$8 + sll $5,$25,30 + sll $8,$25,19 + addu $13,$13,$2 + lw $2,124($sp) + or $8,$8,$3 + or $5,$5,$7 + srl $3,$25,22 + xor $6,$6,$9 + and $11,$20,$11 + or $9,$25,$24 + sll $7,$25,10 + or $7,$7,$3 + and $9,$18,$9 + xor $11,$21,$11 + and $3,$25,$24 + addu $6,$22,$6 + xor $5,$5,$8 + addu $13,$13,$2 + xor $5,$5,$7 + or $3,$3,$9 + addu $6,$6,$11 + li $2,275382272 # 0x106a0000 + lw $11,184($sp) + addu $fp,$5,$3 + addu $6,$6,$13 + ori $2,$2,0xa070 + addu $23,$17,$fp + addu $17,$6,$2 + addu $18,$18,$17 + sll $6,$11,15 + srl $3,$11,17 + srl $2,$11,19 + sll $5,$11,13 + sw $13,188($sp) + sw $15,528($sp) + lw $13,132($sp) + or $15,$6,$3 + or $5,$5,$2 + srl $9,$18,11 + sll $8,$18,21 + or $8,$8,$9 + xor $9,$15,$5 + lw $15,184($sp) + lw $16,512($sp) + srl $11,$18,6 + srl $10,$13,7 + srl $3,$13,18 + sll $6,$18,26 + sll $2,$13,25 + sll $7,$13,14 + or $7,$7,$3 + or $6,$6,$11 + srl $3,$18,25 + or $2,$2,$10 + srl $5,$15,10 + sll $10,$18,7 + or $10,$10,$3 + xor $15,$9,$5 + xor $6,$6,$8 + srl $5,$23,13 + srl $8,$13,3 + xor $2,$2,$7 + sll $3,$23,30 + srl $7,$23,2 + sll $9,$23,19 + xor $11,$20,$19 + or $9,$9,$5 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$23,22 + or $7,$23,$25 + addu $15,$15,$16 + sll $5,$23,10 + or $5,$5,$8 + and $7,$24,$7 + xor $6,$6,$10 + and $11,$18,$11 + xor $3,$3,$9 + addu $15,$15,$2 + and $2,$23,$25 + xor $11,$19,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$21,$6 + lw $21,188($sp) + addu $15,$15,$14 + addu $fp,$3,$2 + lw $14,136($sp) + addu $6,$6,$11 + li $2,430178304 # 0x19a40000 + addu $6,$6,$15 + ori $2,$2,0xc116 + addu $22,$17,$fp + sll $5,$21,15 + addu $17,$6,$2 + srl $3,$21,17 + srl $2,$21,19 + sll $6,$21,13 + addu $24,$24,$17 + sw $15,192($sp) + or $6,$6,$2 + or $15,$5,$3 + srl $10,$14,7 + srl $3,$14,18 + sll $2,$14,25 + sll $7,$14,14 + or $7,$7,$3 + or $2,$2,$10 + srl $3,$24,25 + sll $10,$24,7 + or $10,$10,$3 + lw $3,516($sp) + srl $9,$24,11 + sll $8,$24,21 + or $8,$8,$9 + xor $9,$15,$6 + srl $6,$21,10 + xor $15,$9,$6 + sw $3,536($sp) + srl $6,$22,13 + sll $9,$22,19 + srl $11,$24,6 + or $9,$9,$6 + sll $5,$24,26 + lw $6,536($sp) + or $5,$5,$11 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$14,3 + srl $7,$22,2 + sll $3,$22,30 + sw $16,532($sp) + xor $11,$18,$20 + xor $2,$2,$8 + addu $16,$15,$6 + srl $8,$22,22 + or $3,$3,$7 + sll $6,$22,10 + or $7,$22,$23 + or $6,$6,$8 + and $7,$25,$7 + xor $5,$5,$10 + and $11,$24,$11 + xor $3,$3,$9 + addu $16,$16,$2 + and $2,$22,$23 + addu $16,$16,$13 + xor $11,$20,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$19,$5 + sw $16,540($sp) + addu $fp,$3,$2 + lw $7,192($sp) + addu $5,$5,$11 + li $2,506920960 # 0x1e370000 + lw $15,508($sp) + lw $10,508($sp) + addu $5,$5,$16 + ori $2,$2,0x6c08 + addu $21,$17,$fp + lw $16,192($sp) + addu $17,$5,$2 + addu $25,$25,$17 + srl $3,$7,17 + srl $2,$7,19 + sll $13,$7,15 + sll $5,$7,13 + lw $19,520($sp) + or $5,$5,$2 + srl $11,$25,6 + srl $9,$25,11 + or $13,$13,$3 + sll $6,$25,26 + srl $3,$15,18 + sll $8,$25,21 + sll $2,$10,25 + sll $7,$15,14 + srl $10,$10,7 + or $8,$8,$9 + or $7,$7,$3 + or $6,$6,$11 + srl $3,$25,25 + xor $13,$13,$5 + or $2,$2,$10 + srl $5,$16,10 + sll $10,$25,7 + or $10,$10,$3 + xor $6,$6,$8 + xor $13,$13,$5 + srl $8,$15,3 + srl $5,$21,13 + xor $2,$2,$7 + sll $3,$21,30 + srl $7,$21,2 + sll $9,$21,19 + xor $11,$24,$18 + or $9,$9,$5 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$21,22 + or $7,$21,$22 + addu $13,$13,$19 + sll $5,$21,10 + or $5,$5,$8 + and $7,$23,$7 + xor $6,$6,$10 + and $11,$25,$11 + xor $3,$3,$9 + addu $13,$13,$2 + and $2,$21,$22 + xor $11,$18,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$20,$6 + addu $13,$13,$14 + lw $20,540($sp) + addu $fp,$3,$2 + addu $6,$6,$11 + li $2,659030016 # 0x27480000 + lw $15,144($sp) + addu $6,$6,$13 + ori $2,$2,0x774c + sw $19,544($sp) + addu $19,$17,$fp + addu $17,$6,$2 + addu $23,$23,$17 + srl $3,$20,17 + srl $2,$20,19 + sll $14,$20,15 + sll $5,$20,13 + or $5,$5,$2 + srl $11,$23,6 + srl $9,$23,11 + srl $10,$15,7 + or $14,$14,$3 + sll $6,$23,26 + srl $3,$15,18 + sll $8,$23,21 + sll $2,$15,25 + sll $7,$15,14 + or $8,$8,$9 + or $7,$7,$3 + or $6,$6,$11 + xor $14,$14,$5 + or $2,$2,$10 + srl $5,$20,10 + srl $3,$23,25 + sll $10,$23,7 + xor $6,$6,$8 + xor $14,$14,$5 + srl $8,$15,3 + srl $5,$19,13 + xor $2,$2,$7 + sll $9,$19,19 + or $10,$10,$3 + srl $7,$19,2 + or $9,$9,$5 + xor $2,$2,$8 + sll $3,$19,30 + srl $8,$19,22 + sll $5,$19,10 + xor $11,$25,$24 + or $5,$5,$8 + or $3,$3,$7 + lw $8,508($sp) + or $7,$19,$21 + addu $14,$14,$12 + and $7,$22,$7 + xor $6,$6,$10 + and $11,$23,$11 + xor $3,$3,$9 + addu $14,$14,$2 + and $2,$19,$21 + xor $11,$24,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$18,$6 + addu $14,$14,$8 + addu $fp,$3,$2 + addu $6,$6,$11 + li $2,883949568 # 0x34b00000 + sw $12,176($sp) + addu $6,$6,$14 + lw $12,148($sp) + ori $2,$2,0xbcb5 + addu $20,$17,$fp + addu $17,$6,$2 + addu $22,$22,$17 + sll $9,$13,15 + srl $3,$13,17 + srl $2,$13,19 + sll $5,$13,13 + or $16,$9,$3 + or $5,$5,$2 + srl $11,$22,6 + srl $9,$22,11 + srl $10,$12,7 + srl $3,$12,18 + sll $6,$22,26 + sll $8,$22,21 + sll $2,$12,25 + sll $7,$12,14 + or $8,$8,$9 + or $7,$7,$3 + or $6,$6,$11 + srl $3,$22,25 + or $2,$2,$10 + sll $10,$22,7 + or $10,$10,$3 + xor $6,$6,$8 + xor $6,$6,$10 + lw $10,524($sp) + xor $9,$16,$5 + srl $5,$13,10 + xor $16,$9,$5 + srl $8,$12,3 + srl $5,$20,13 + xor $2,$2,$7 + sll $3,$20,30 + srl $7,$20,2 + sll $9,$20,19 + xor $11,$23,$25 + or $9,$9,$5 + xor $2,$2,$8 + addu $fp,$16,$10 + srl $8,$20,22 + or $3,$3,$7 + sll $5,$20,10 + or $7,$20,$19 + addu $fp,$fp,$2 + or $5,$5,$8 + and $7,$21,$7 + and $2,$20,$19 + and $11,$22,$11 + xor $3,$3,$9 + xor $11,$25,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$24,$6 + addu $15,$fp,$15 + sw $fp,552($sp) + addu $6,$6,$11 + addu $fp,$3,$2 + li $2,958136320 # 0x391c0000 + lw $16,152($sp) + addu $6,$6,$15 + ori $2,$2,0xcb3 + addu $18,$17,$fp + addu $17,$6,$2 + addu $21,$21,$17 + sw $15,556($sp) + srl $3,$14,17 + srl $2,$14,19 + sll $15,$14,15 + sll $5,$14,13 + lw $24,184($sp) + or $5,$5,$2 + srl $11,$21,6 + srl $9,$21,11 + srl $10,$16,7 + or $15,$15,$3 + sll $6,$21,26 + srl $3,$16,18 + sll $8,$21,21 + sll $2,$16,25 + sll $7,$16,14 + or $8,$8,$9 + or $7,$7,$3 + or $6,$6,$11 + srl $3,$21,25 + xor $15,$15,$5 + or $2,$2,$10 + srl $5,$14,10 + sll $10,$21,7 + or $10,$10,$3 + xor $6,$6,$8 + xor $15,$15,$5 + srl $8,$16,3 + srl $5,$18,13 + xor $2,$2,$7 + sll $3,$18,30 + srl $7,$18,2 + sll $9,$18,19 + xor $11,$22,$23 + or $9,$9,$5 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$18,22 + or $7,$18,$20 + addu $15,$15,$24 + sll $5,$18,10 + or $5,$5,$8 + and $7,$19,$7 + xor $6,$6,$10 + and $11,$21,$11 + xor $3,$3,$9 + addu $15,$15,$2 + and $2,$18,$20 + xor $11,$23,$11 + xor $3,$3,$5 + or $2,$2,$7 + addu $6,$25,$6 + lw $25,556($sp) + addu $15,$15,$12 + addu $fp,$3,$2 + addu $6,$6,$11 + li $2,1322778624 # 0x4ed80000 + addu $6,$6,$15 + ori $2,$2,0xaa4a + addu $24,$17,$fp + srl $3,$25,17 + addu $17,$6,$2 + sll $16,$25,15 + srl $2,$25,19 + sll $6,$25,13 + addu $19,$19,$17 + lw $12,156($sp) + or $6,$6,$2 + or $16,$16,$3 + srl $9,$19,11 + sll $8,$19,21 + xor $16,$16,$6 + srl $6,$25,10 + or $8,$8,$9 + xor $16,$16,$6 + sll $9,$24,19 + srl $6,$24,13 + srl $11,$19,6 + srl $10,$12,7 + srl $3,$12,18 + or $9,$9,$6 + sll $5,$19,26 + lw $6,188($sp) + sll $2,$12,25 + sll $7,$12,14 + or $7,$7,$3 + or $5,$5,$11 + or $2,$2,$10 + srl $3,$19,25 + sll $10,$19,7 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$12,3 + or $10,$10,$3 + srl $7,$24,2 + xor $2,$2,$8 + sll $3,$24,30 + srl $8,$24,22 + addu $16,$16,$6 + sll $6,$24,10 + xor $11,$21,$22 + or $6,$6,$8 + or $3,$3,$7 + lw $8,152($sp) + or $7,$24,$18 + and $7,$20,$7 + xor $5,$5,$10 + and $11,$19,$11 + xor $3,$3,$9 + addu $16,$16,$2 + and $2,$24,$18 + xor $11,$22,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$23,$5 + addu $16,$16,$8 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1536950272 # 0x5b9c0000 + addu $5,$5,$16 + ori $2,$2,0xca4f + addu $25,$17,$fp + addu $17,$5,$2 + addu $20,$20,$17 + sll $5,$15,15 + srl $3,$15,17 + srl $2,$15,19 + sll $6,$15,13 + lw $23,528($sp) + or $fp,$5,$3 + lw $10,528($sp) + or $6,$6,$2 + srl $9,$20,11 + sll $8,$20,21 + or $8,$8,$9 + xor $9,$fp,$6 + srl $6,$15,10 + xor $fp,$9,$6 + srl $6,$25,13 + sll $9,$25,19 + srl $11,$20,6 + srl $3,$23,18 + or $9,$9,$6 + sll $5,$20,26 + lw $6,192($sp) + sll $2,$10,25 + sll $7,$23,14 + srl $10,$10,7 + or $7,$7,$3 + or $5,$5,$11 + or $2,$2,$10 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$23,3 + srl $3,$20,25 + xor $2,$2,$8 + sll $10,$20,7 + addu $fp,$fp,$6 + or $10,$10,$3 + srl $7,$25,2 + sll $3,$25,30 + addu $fp,$fp,$2 + addu $fp,$fp,$12 + or $3,$3,$7 + or $7,$25,$24 + sw $fp,560($sp) + xor $11,$19,$21 + srl $8,$25,22 + and $7,$18,$7 + and $2,$25,$24 + sll $6,$25,10 + or $6,$6,$8 + or $2,$2,$7 + xor $5,$5,$10 + lw $7,560($sp) + and $11,$20,$11 + xor $3,$3,$9 + xor $11,$21,$11 + xor $3,$3,$6 + addu $5,$22,$5 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1747845120 # 0x682e0000 + addu $5,$5,$7 + ori $2,$2,0x6ff3 + addu $23,$17,$fp + addu $17,$5,$2 + addu $18,$18,$17 + sll $5,$16,15 + srl $3,$16,17 + srl $2,$16,19 + sll $6,$16,13 + lw $22,532($sp) + or $12,$5,$3 + lw $10,532($sp) + or $6,$6,$2 + srl $9,$18,11 + sll $8,$18,21 + or $8,$8,$9 + xor $9,$12,$6 + srl $6,$16,10 + xor $12,$9,$6 + srl $6,$23,13 + sll $9,$23,19 + srl $11,$18,6 + srl $3,$22,18 + or $9,$9,$6 + sll $5,$18,26 + lw $6,540($sp) + sll $2,$10,25 + sll $7,$22,14 + srl $10,$10,7 + or $7,$7,$3 + or $5,$5,$11 + or $2,$2,$10 + srl $3,$18,25 + sll $10,$18,7 + xor $5,$5,$8 + xor $2,$2,$7 + srl $8,$22,3 + or $10,$10,$3 + srl $7,$23,2 + xor $2,$2,$8 + sll $3,$23,30 + srl $8,$23,22 + addu $12,$12,$6 + sll $6,$23,10 + xor $11,$20,$19 + or $6,$6,$8 + or $3,$3,$7 + lw $8,528($sp) + or $7,$23,$25 + and $7,$24,$7 + xor $5,$5,$10 + and $11,$18,$11 + xor $3,$3,$9 + addu $12,$12,$2 + and $2,$23,$25 + xor $11,$19,$11 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$21,$5 + addu $12,$12,$8 + addu $fp,$3,$2 + addu $5,$5,$11 + li $2,1955528704 # 0x748f0000 + lw $9,560($sp) + addu $5,$5,$12 + ori $2,$2,0x82ee + addu $22,$17,$fp + addu $17,$5,$2 + addu $24,$24,$17 + lw $21,536($sp) + lw $11,536($sp) + srl $3,$9,17 + srl $2,$9,19 + sll $10,$9,15 + sll $6,$9,13 + sll $8,$24,21 + srl $9,$24,11 + or $8,$8,$9 + lw $9,560($sp) + sw $12,564($sp) + or $6,$6,$2 + srl $12,$24,6 + or $10,$10,$3 + sll $5,$24,26 + srl $3,$21,18 + sll $2,$11,25 + sll $7,$21,14 + srl $11,$11,7 + or $7,$7,$3 + or $5,$5,$12 + srl $3,$24,25 + xor $10,$10,$6 + or $2,$2,$11 + srl $6,$9,10 + sll $11,$24,7 + or $11,$11,$3 + xor $5,$5,$8 + xor $10,$10,$6 + srl $8,$21,3 + srl $6,$22,13 + xor $2,$2,$7 + sll $3,$22,30 + srl $7,$22,2 + sll $9,$22,19 + xor $12,$18,$20 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$22,22 + or $7,$22,$23 + xor $5,$5,$11 + addu $10,$10,$13 + lw $11,532($sp) + sll $6,$22,10 + or $6,$6,$8 + and $7,$25,$7 + and $12,$24,$12 + xor $3,$3,$9 + addu $10,$10,$2 + and $2,$22,$23 + xor $12,$20,$12 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$19,$5 + addu $10,$10,$11 + addu $fp,$3,$2 + addu $5,$5,$12 + li $2,2024079360 # 0x78a50000 + addu $5,$5,$10 + ori $2,$2,0x636f + addu $21,$17,$fp + addu $17,$5,$2 + addu $25,$25,$17 + lw $13,564($sp) + lw $19,544($sp) + srl $9,$25,11 + sll $8,$25,21 + or $8,$8,$9 + lw $9,564($sp) + srl $3,$13,17 + srl $2,$13,19 + sll $11,$13,15 + sll $6,$13,13 + or $6,$6,$2 + srl $13,$25,6 + srl $12,$19,7 + or $11,$11,$3 + sll $5,$25,26 + srl $3,$19,18 + sll $2,$19,25 + sll $7,$19,14 + or $7,$7,$3 + or $5,$5,$13 + srl $3,$25,25 + xor $11,$11,$6 + or $2,$2,$12 + srl $6,$9,10 + sll $12,$25,7 + or $12,$12,$3 + xor $5,$5,$8 + xor $11,$11,$6 + srl $8,$19,3 + srl $6,$21,13 + xor $2,$2,$7 + sll $3,$21,30 + srl $7,$21,2 + sll $9,$21,19 + xor $13,$24,$18 + or $9,$9,$6 + xor $2,$2,$8 + or $3,$3,$7 + srl $8,$21,22 + or $7,$21,$22 + addu $11,$11,$14 + sll $6,$21,10 + lw $14,536($sp) + or $6,$6,$8 + and $7,$23,$7 + xor $5,$5,$12 + and $13,$25,$13 + xor $3,$3,$9 + addu $11,$11,$2 + and $2,$21,$22 + xor $13,$18,$13 + xor $3,$3,$6 + or $2,$2,$7 + addu $5,$20,$5 + addu $11,$11,$14 + lw $20,176($sp) + addu $fp,$3,$2 + addu $5,$5,$13 + li $2,-2067267584 # 0xffffffff84c80000 + addu $5,$5,$11 + ori $2,$2,0x7814 + addu $19,$17,$fp + srl $3,$10,17 + addu $17,$5,$2 + sll $12,$10,15 + srl $2,$10,19 + sll $6,$10,13 + addu $23,$23,$17 + or $6,$6,$2 + or $12,$12,$3 + srl $2,$20,18 + sll $3,$20,14 + srl $9,$23,11 + or $3,$3,$2 + sll $8,$23,21 + srl $2,$23,25 + xor $12,$12,$6 + sll $6,$23,7 + or $8,$8,$9 + or $6,$6,$2 + sll $9,$19,19 + srl $2,$19,13 + srl $13,$20,7 + or $9,$9,$2 + sll $7,$20,25 + lw $2,556($sp) + srl $14,$23,6 + sll $5,$23,26 + or $7,$7,$13 + srl $10,$10,10 + srl $13,$20,3 + or $5,$5,$14 + xor $12,$12,$10 + xor $7,$7,$3 + xor $7,$7,$13 + xor $5,$5,$8 + sll $3,$19,30 + srl $8,$19,2 + addu $12,$12,$2 + xor $10,$25,$24 + srl $2,$19,22 + or $3,$3,$8 + xor $5,$5,$6 + or $8,$19,$21 + sll $6,$19,10 + addu $12,$12,$7 + lw $7,544($sp) + or $6,$6,$2 + and $8,$22,$8 + and $2,$19,$21 + and $10,$23,$10 + xor $3,$3,$9 + xor $10,$24,$10 + xor $3,$3,$6 + or $2,$2,$8 + addu $5,$18,$5 + addu $12,$12,$7 + addu $fp,$3,$2 + addu $5,$5,$10 + li $2,-1933115392 # 0xffffffff8cc70000 + lw $18,524($sp) + addu $5,$5,$12 + ori $2,$2,0x208 + addu $20,$17,$fp + lw $10,524($sp) + addu $17,$5,$2 + addu $22,$22,$17 + srl $3,$11,17 + srl $2,$11,19 + sll $13,$11,15 + sll $5,$11,13 + or $5,$5,$2 + srl $14,$22,6 + srl $9,$22,11 + srl $2,$18,18 + or $13,$13,$3 + sll $6,$22,26 + sll $8,$22,21 + sll $3,$18,14 + or $8,$8,$9 + or $3,$3,$2 + sll $7,$10,25 + srl $2,$22,25 + srl $10,$10,7 + or $6,$6,$14 + sll $9,$22,7 + or $9,$9,$2 + or $7,$7,$10 + xor $6,$6,$8 + srl $2,$20,13 + xor $13,$13,$5 + srl $11,$11,10 + srl $5,$20,2 + xor $7,$7,$3 + sll $8,$20,19 + sll $3,$20,30 + xor $6,$6,$9 + xor $10,$23,$25 + or $8,$8,$2 + or $9,$20,$19 + srl $2,$20,22 + xor $13,$13,$11 + or $3,$3,$5 + srl $11,$18,3 + sll $5,$20,10 + addu $6,$24,$6 + lw $24,176($sp) + xor $7,$7,$11 + or $5,$5,$2 + and $9,$21,$9 + and $2,$20,$19 + addu $13,$13,$15 + and $10,$22,$10 + xor $3,$3,$8 + xor $10,$25,$10 + xor $3,$3,$5 + or $2,$2,$9 + addu $13,$13,$7 + addu $13,$13,$24 + addu $fp,$3,$2 + addu $6,$6,$10 + li $2,-1866596352 # 0xffffffff90be0000 + addu $6,$6,$13 + ori $2,$2,0xfffa + addu $18,$17,$fp + sll $5,$12,13 + addu $17,$6,$2 + srl $2,$12,19 + addu $21,$21,$17 + or $5,$5,$2 + lw $2,184($sp) + srl $14,$21,6 + sll $6,$21,26 + srl $3,$12,17 + sll $11,$12,15 + or $6,$6,$14 + lw $14,184($sp) + srl $9,$21,11 + srl $10,$2,7 + or $11,$11,$3 + sll $8,$21,21 + sll $3,$2,25 + sll $7,$2,14 + srl $2,$2,18 + or $8,$8,$9 + or $7,$7,$2 + xor $11,$11,$5 + srl $2,$21,25 + or $3,$3,$10 + srl $12,$12,10 + sll $9,$21,7 + or $9,$9,$2 + xor $6,$6,$8 + srl $2,$18,13 + xor $11,$11,$12 + xor $3,$3,$7 + srl $12,$14,3 + srl $7,$18,2 + sll $5,$18,30 + sll $8,$18,19 + or $8,$8,$2 + xor $3,$3,$12 + srl $2,$18,22 + or $5,$5,$7 + xor $6,$6,$9 + addu $11,$11,$16 + or $9,$18,$20 + sll $7,$18,10 + or $7,$7,$2 + and $9,$19,$9 + xor $5,$5,$8 + addu $11,$11,$3 + and $3,$18,$20 + xor $5,$5,$7 + or $3,$3,$9 + lw $2,180($sp) + addu $fp,$5,$3 + xor $10,$22,$23 + addu $24,$17,$fp + and $10,$21,$10 + xor $10,$23,$10 + addu $6,$25,$6 + srl $15,$24,2 + sw $15,568($sp) + addu $11,$11,$2 + lw $25,188($sp) + addu $6,$6,$10 + li $2,-1538260992 # 0xffffffffa4500000 + addu $6,$6,$11 + ori $2,$2,0x6ceb + addu $17,$6,$2 + sll $9,$13,13 + srl $2,$13,19 + addu $19,$19,$17 + srl $3,$13,17 + or $9,$9,$2 + srl $10,$25,7 + srl $2,$25,18 + sll $6,$13,15 + sll $7,$25,25 + sll $14,$25,14 + srl $12,$19,6 + lw $25,568($sp) + or $14,$14,$2 + or $6,$6,$3 + sll $5,$19,26 + srl $3,$19,11 + sll $15,$19,21 + or $7,$7,$10 + or $15,$15,$3 + or $5,$5,$12 + xor $7,$7,$14 + lw $14,188($sp) + srl $fp,$24,13 + xor $5,$5,$15 + sll $8,$24,30 + lw $15,560($sp) + sll $16,$24,19 + or $16,$16,$fp + srl $3,$19,25 + or $8,$8,$25 + xor $6,$6,$9 + srl $13,$13,10 + or $12,$24,$18 + srl $2,$24,22 + sll $10,$19,7 + sll $9,$24,10 + or $9,$9,$2 + or $10,$10,$3 + and $12,$20,$12 + xor $2,$21,$22 + xor $8,$8,$16 + xor $6,$6,$13 + lw $16,184($sp) + srl $13,$14,3 + and $3,$24,$18 + xor $8,$8,$9 + or $3,$3,$12 + xor $7,$7,$13 + xor $5,$5,$10 + addu $6,$6,$15 + and $2,$19,$2 + addu $fp,$8,$3 + xor $2,$22,$2 + addu $5,$23,$5 + addu $6,$6,$7 + addu $25,$17,$fp + addu $6,$6,$16 + addu $5,$5,$2 + li $2,-1090977792 # 0xffffffffbef90000 + lw $14,192($sp) + addu $5,$5,$6 + srl $8,$25,2 + srl $7,$25,13 + ori $2,$2,0xa3f7 + sll $6,$25,30 + sll $3,$25,19 + addu $17,$5,$2 + or $3,$3,$7 + or $6,$6,$8 + srl $7,$25,22 + sll $5,$25,10 + or $2,$25,$24 + addu $20,$20,$17 + or $5,$5,$7 + and $2,$18,$2 + srl $7,$11,17 + xor $6,$6,$3 + sll $8,$11,15 + and $12,$25,$24 + xor $6,$6,$5 + srl $16,$20,6 + srl $5,$20,11 + or $12,$12,$2 + or $8,$8,$7 + srl $2,$14,18 + sll $7,$20,26 + sll $10,$20,21 + sll $9,$14,14 + srl $3,$11,19 + addu $fp,$6,$12 + or $10,$10,$5 + or $9,$9,$2 + srl $5,$20,25 + sll $13,$11,13 + or $7,$7,$16 + sll $2,$20,7 + addu $23,$17,$fp + or $2,$2,$5 + lw $17,564($sp) + or $13,$13,$3 + srl $15,$14,7 + sll $3,$14,25 + xor $7,$7,$10 + xor $5,$19,$21 + xor $7,$7,$2 + xor $8,$8,$13 + or $3,$3,$15 + srl $11,$11,10 + srl $2,$23,13 + xor $3,$3,$9 + and $5,$20,$5 + sll $9,$23,19 + addu $7,$22,$7 + xor $8,$8,$11 + lw $22,188($sp) + srl $14,$14,3 + srl $10,$23,2 + or $9,$9,$2 + xor $5,$21,$5 + addu $8,$8,$17 + xor $3,$3,$14 + sll $6,$23,30 + or $2,$23,$25 + addu $8,$8,$3 + or $6,$6,$10 + sll $3,$23,10 + srl $10,$23,22 + addu $7,$7,$5 + and $2,$24,$2 + and $5,$23,$25 + addu $8,$8,$22 + or $5,$5,$2 + xor $6,$6,$9 + or $3,$3,$10 + li $2,-965672960 # 0xffffffffc6710000 + addu $7,$7,$8 + xor $6,$6,$3 + ori $2,$2,0x78f2 + lw $3,8($4) + addu $17,$7,$2 + addu $fp,$6,$5 + addu $22,$17,$fp + addu $3,$3,$22 + lw $7,24($4) + lw $8,28($4) + lw $9,32($4) + lw $2,36($4) + sw $3,8($4) + lw $3,12($4) + addu $18,$18,$17 + lw $5,16($4) + lw $6,20($4) + addu $3,$3,$23 + addu $7,$7,$18 + addu $8,$8,$20 + addu $9,$9,$19 + addu $2,$2,$21 + lw $fp,608($sp) + lw $23,604($sp) + lw $22,600($sp) + lw $21,596($sp) + lw $20,592($sp) + lw $19,588($sp) + lw $18,584($sp) + lw $17,580($sp) + lw $16,576($sp) + addu $5,$5,$25 + addu $6,$6,$24 + addiu $sp,$sp,616 + sw $2,36($4) + sw $3,12($4) + sw $5,16($4) + sw $6,20($4) + sw $7,24($4) + sw $8,28($4) + j $31 + sw $9,32($4) + + .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,40,$31 # vars= 0, regs= 6/0, args= 16, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-40 + sw $20,32($sp) + sw $17,20($sp) + sw $16,16($sp) + sw $31,36($sp) + sw $19,28($sp) + sw $18,24($sp) + move $16,$6 + move $17,$4 + blez $6,$L6 + move $20,$5 + + lw $2,0($4) + nop + addu $3,$2,$6 + andi $19,$2,0x3f + sltu $4,$3,$6 + li $2,64 # 0x40 + subu $18,$2,$19 + beq $4,$0,$L8 + sw $3,0($17) + + lw $2,4($17) + nop + addiu $2,$2,1 + sw $2,4($17) +$L8: + beq $19,$0,$L16 + slt $2,$16,64 + + slt $2,$16,$18 + bne $2,$0,$L16 + slt $2,$16,64 + + addu $4,$17,$19 + addiu $4,$4,40 + jal memcpy + move $6,$18 + + move $4,$17 + jal sha2_process + addiu $5,$17,40 + + subu $16,$16,$18 + addu $20,$20,$18 + move $19,$0 + slt $2,$16,64 +$L16: + bne $2,$0,$L15 + move $5,$20 + + addiu $16,$16,-64 + jal sha2_process + move $4,$17 + + addiu $20,$20,64 + j $L16 + slt $2,$16,64 + +$L15: + blez $16,$L6 + addu $4,$17,$19 + + move $5,$20 + move $6,$16 + lw $31,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + addiu $4,$4,40 + j memcpy + addiu $sp,$sp,40 + +$L6: + lw $31,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,40 + + .set macro + .set reorder + .end sha2_update + .section .text.sha2_finish,"ax",@progbits + .align 2 + .globl sha2_finish + .ent sha2_finish + .type sha2_finish, @function +sha2_finish: + .set nomips16 + .frame $sp,40,$31 # vars= 8, regs= 3/0, args= 16, gp= 0 + .mask 0x80030000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-40 + sw $17,28($sp) + sw $16,24($sp) + sw $31,32($sp) + lw $3,0($4) + lw $2,4($4) + move $16,$4 + srl $4,$3,29 + sll $2,$2,3 + or $4,$4,$2 + andi $11,$3,0x3f + sll $3,$3,3 + srl $2,$4,24 + move $17,$5 + srl $6,$4,8 + srl $5,$4,16 + srl $7,$3,24 + srl $8,$3,16 + srl $9,$3,8 + sltu $10,$11,56 + sb $2,16($sp) + sb $5,17($sp) + sb $6,18($sp) + sb $4,19($sp) + sb $7,20($sp) + sb $8,21($sp) + sb $9,22($sp) + sb $3,23($sp) + bne $10,$0,$L21 + li $2,56 # 0x38 + + li $2,120 # 0x78 +$L21: + lui $5,%hi(sha2_padding) + subu $6,$2,$11 + addiu $5,$5,%lo(sha2_padding) + jal sha2_update + move $4,$16 + + move $4,$16 + addiu $5,$sp,16 + jal sha2_update + li $6,8 # 0x8 + + lbu $2,8($16) + nop + sb $2,0($17) + lhu $2,8($16) + nop + sb $2,1($17) + lw $2,8($16) + nop + srl $2,$2,8 + sb $2,2($17) + lw $2,8($16) + nop + sb $2,3($17) + lbu $2,12($16) + nop + sb $2,4($17) + lhu $2,12($16) + nop + sb $2,5($17) + lw $2,12($16) + nop + srl $2,$2,8 + sb $2,6($17) + lw $2,12($16) + nop + sb $2,7($17) + lbu $2,16($16) + nop + sb $2,8($17) + lhu $2,16($16) + nop + sb $2,9($17) + lw $2,16($16) + nop + srl $2,$2,8 + sb $2,10($17) + lw $2,16($16) + nop + sb $2,11($17) + lbu $2,20($16) + nop + sb $2,12($17) + lhu $2,20($16) + nop + sb $2,13($17) + lw $2,20($16) + nop + srl $2,$2,8 + sb $2,14($17) + lw $2,20($16) + nop + sb $2,15($17) + lbu $2,24($16) + nop + sb $2,16($17) + lhu $2,24($16) + nop + sb $2,17($17) + lw $2,24($16) + nop + srl $2,$2,8 + sb $2,18($17) + lw $2,24($16) + nop + sb $2,19($17) + lbu $2,28($16) + nop + sb $2,20($17) + lhu $2,28($16) + nop + sb $2,21($17) + lw $2,28($16) + nop + srl $2,$2,8 + sb $2,22($17) + lw $2,28($16) + nop + sb $2,23($17) + lbu $2,32($16) + nop + sb $2,24($17) + lhu $2,32($16) + nop + sb $2,25($17) + lw $2,32($16) + nop + srl $2,$2,8 + sb $2,26($17) + lw $2,32($16) + nop + sb $2,27($17) + lw $2,232($16) + nop + bne $2,$0,$L17 + nop + + lbu $2,36($16) + nop + sb $2,28($17) + lhu $2,36($16) + nop + sb $2,29($17) + lw $2,36($16) + nop + srl $2,$2,8 + sb $2,30($17) + lw $2,36($16) + nop + sb $2,31($17) +$L17: + lw $31,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j $31 + addiu $sp,$sp,40 + + .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,272,$31 # vars= 240, regs= 4/0, args= 16, gp= 0 + .mask 0x80070000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-272 + sw $17,260($sp) + sw $16,256($sp) + move $17,$5 + move $16,$4 + move $5,$7 + addiu $4,$sp,16 + sw $31,268($sp) + sw $18,264($sp) + jal sha2_starts + move $18,$6 + + move $6,$17 + move $5,$16 + jal sha2_update + addiu $4,$sp,16 + + move $5,$18 + jal sha2_finish + addiu $4,$sp,16 + + addiu $4,$sp,16 + move $5,$0 + jal memset + li $6,236 # 0xec + + lw $31,268($sp) + lw $18,264($sp) + lw $17,260($sp) + lw $16,256($sp) + j $31 + addiu $sp,$sp,272 + + .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= 32, regs= 6/0, args= 16, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + slt $2,$6,65 + sw $20,64($sp) + sw $18,56($sp) + sw $17,52($sp) + sw $16,48($sp) + sw $31,68($sp) + sw $19,60($sp) + move $16,$6 + move $18,$4 + move $17,$5 + bne $2,$0,$L24 + move $20,$7 + + move $4,$5 + move $5,$6 + jal sha2 + addiu $6,$sp,16 + + li $16,28 # 0x1c + li $2,32 # 0x20 + movz $16,$2,$20 #RLX4181/RLX4281:conditional move + addiu $17,$sp,16 +$L24: + addiu $19,$18,104 + move $4,$19 + li $5,54 # 0x36 + jal memset + li $6,64 # 0x40 + + addiu $4,$18,168 + li $5,92 # 0x5c + jal memset + li $6,64 # 0x40 + + blez $16,$L32 + move $7,$0 + +$L30: + addu $4,$7,$18 + addu $6,$17,$7 + lbu $5,0($6) + lbu $2,104($4) + lbu $3,168($4) + addiu $7,$7,1 + xor $2,$2,$5 + sb $2,104($4) + lbu $2,0($6) + slt $5,$7,$16 + xor $3,$3,$2 + bne $5,$0,$L30 + sb $3,168($4) + +$L32: + move $5,$20 + jal sha2_starts + move $4,$18 + + move $4,$18 + move $5,$19 + jal sha2_update + li $6,64 # 0x40 + + addiu $4,$sp,16 + move $5,$0 + jal memset + li $6,32 # 0x20 + + lw $31,68($sp) + lw $20,64($sp) + lw $19,60($sp) + lw $18,56($sp) + lw $17,52($sp) + lw $16,48($sp) + j $31 + addiu $sp,$sp,72 + + .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,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 + .mask 0x00000000,0 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + j sha2_update + 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= 32, regs= 5/0, args= 16, gp= 0 + .mask 0x800f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + sw $31,64($sp) + sw $19,60($sp) + sw $17,52($sp) + sw $16,48($sp) + sw $18,56($sp) + lw $18,232($4) + move $16,$4 + li $2,28 # 0x1c + move $19,$5 + li $17,32 # 0x20 + addiu $5,$sp,16 + jal sha2_finish + movn $17,$2,$18 #RLX4181/RLX4281:conditional move + + move $4,$16 + jal sha2_starts + move $5,$18 + + move $4,$16 + addiu $5,$16,168 + jal sha2_update + li $6,64 # 0x40 + + move $6,$17 + move $4,$16 + jal sha2_update + addiu $5,$sp,16 + + move $4,$16 + jal sha2_finish + move $5,$19 + + addiu $4,$sp,16 + move $5,$0 + jal memset + li $6,32 # 0x20 + + lw $31,64($sp) + lw $19,60($sp) + lw $18,56($sp) + lw $17,52($sp) + lw $16,48($sp) + j $31 + addiu $sp,$sp,72 + + .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,272,$31 # vars= 240, regs= 3/0, args= 16, gp= 0 + .mask 0x80030000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-272 + sw $17,260($sp) + move $17,$7 + lw $7,292($sp) + move $2,$5 + sw $16,256($sp) + move $5,$4 + move $16,$6 + addiu $4,$sp,16 + sw $31,264($sp) + jal sha2_hmac_starts + move $6,$2 + + move $6,$17 + move $5,$16 + jal sha2_hmac_update + addiu $4,$sp,16 + + lw $5,288($sp) + jal sha2_hmac_finish + addiu $4,$sp,16 + + addiu $4,$sp,16 + move $5,$0 + jal memset + li $6,236 # 0xec + + lw $31,264($sp) + lw $17,260($sp) + lw $16,256($sp) + j $31 + addiu $sp,$sp,272 + + .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= 2/0, args= 24, gp= 0 + .mask 0x80010000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $16,56($sp) + addiu $16,$sp,24 + sw $31,60($sp) + sw $16,16($sp) + jal sha2_hmac + sw $0,20($sp) + + lw $4,80($sp) + lw $6,84($sp) + jal memcpy + move $5,$16 + + move $4,$16 + move $5,$0 + jal memset + li $6,32 # 0x20 + + lw $31,60($sp) + lw $16,56($sp) + j $31 + addiu $sp,$sp,64 + + .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,56,$31 # vars= 0, regs= 7/0, args= 24, gp= 0 + .mask 0x803f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $21,44($sp) + sw $20,40($sp) + sw $19,36($sp) + sw $18,32($sp) + sw $16,24($sp) + sw $31,48($sp) + sw $17,28($sp) + move $20,$4 + move $21,$5 + move $9,$6 + move $8,$7 + lw $19,72($sp) + lw $16,76($sp) + j $L40 + move $18,$0 + +$L44: + li $2,32 # 0x20 + sw $2,20($sp) + sw $17,16($sp) + jal sha256_hmac + addiu $18,$18,1 + + addiu $16,$16,-32 + move $9,$17 + li $8,32 # 0x20 +$L40: + addiu $2,$16,31 + slt $3,$16,0 + movz $2,$16,$3 #RLX4181/RLX4281:conditional move + sll $4,$18,5 + sra $2,$2,5 + addu $17,$19,$4 + move $6,$9 + move $7,$8 + move $4,$20 + bne $2,$0,$L44 + move $5,$21 + + blez $16,$L39 + nop + + sw $17,72($sp) + sw $16,76($sp) + lw $31,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j sha256_hmac + addiu $sp,$sp,56 + +$L39: + lw $31,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j $31 + addiu $sp,$sp,56 + + .set macro + .set reorder + .end KD_hmac_sha256 + .data + .align 2 + .type Sbox_tmp.2, @object + .size Sbox_tmp.2, 256 +Sbox_tmp.2: + .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.3, @object + .size CK_tmp.3, 128 +CK_tmp.3: + .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 + + lui $4,%hi(Sbox) + lui $5,%hi(Sbox_tmp.2) + addiu $sp,$sp,-24 + addiu $4,$4,%lo(Sbox) + addiu $5,$5,%lo(Sbox_tmp.2) + sw $31,16($sp) + jal memcpy + li $6,256 # 0x100 + + lui $4,%hi(CK) + lui $5,%hi(CK_tmp.3) + addiu $4,$4,%lo(CK) + addiu $5,$5,%lo(CK_tmp.3) + jal memcpy + li $6,128 # 0x80 + + lw $31,16($sp) + li $2,1 # 0x1 + j $31 + addiu $sp,$sp,24 + + .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,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 + .mask 0x00000000,0 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + lw $12,12($4) + lw $9,0($4) + lw $11,4($4) + lw $10,8($4) + lui $2,%hi(Sbox) + move $13,$5 + addiu $8,$2,%lo(Sbox) + li $14,28 # 0x1c +$L51: + lw $3,0($6) + xor $2,$11,$10 + xor $2,$2,$12 + xor $7,$2,$3 + srl $3,$7,16 + srl $2,$7,24 + srl $4,$7,8 + andi $3,$3,0xff + addu $3,$3,$8 + addu $2,$2,$8 + andi $4,$4,0xff + lbu $5,0($3) + lbu $2,0($2) + addu $4,$4,$8 + andi $3,$7,0xff + lbu $4,0($4) + addu $3,$3,$8 + sll $5,$5,16 + lbu $3,0($3) + sll $2,$2,24 + xor $2,$2,$5 + sll $4,$4,8 + xor $2,$2,$4 + xor $7,$2,$3 + srl $2,$7,30 + sll $3,$7,2 + or $3,$3,$2 + sll $4,$7,10 + srl $2,$7,22 + or $4,$4,$2 + xor $3,$7,$3 + srl $2,$7,14 + sll $5,$7,18 + or $5,$5,$2 + xor $3,$3,$4 + sll $2,$7,24 + srl $4,$7,8 + or $2,$2,$4 + xor $3,$3,$5 + xor $3,$3,$2 + lw $4,4($6) + xor $9,$9,$3 + xor $2,$10,$12 + xor $2,$2,$9 + xor $7,$2,$4 + srl $3,$7,16 + srl $2,$7,24 + srl $4,$7,8 + andi $3,$3,0xff + addu $3,$3,$8 + addu $2,$2,$8 + andi $4,$4,0xff + lbu $5,0($3) + lbu $2,0($2) + addu $4,$4,$8 + andi $3,$7,0xff + lbu $4,0($4) + addu $3,$3,$8 + sll $5,$5,16 + lbu $3,0($3) + sll $2,$2,24 + xor $2,$2,$5 + sll $4,$4,8 + xor $2,$2,$4 + xor $7,$2,$3 + srl $2,$7,30 + sll $3,$7,2 + or $3,$3,$2 + sll $4,$7,10 + srl $2,$7,22 + or $4,$4,$2 + xor $3,$7,$3 + srl $2,$7,14 + sll $5,$7,18 + or $5,$5,$2 + xor $3,$3,$4 + sll $2,$7,24 + srl $4,$7,8 + or $2,$2,$4 + xor $3,$3,$5 + xor $3,$3,$2 + lw $4,8($6) + xor $11,$11,$3 + xor $2,$12,$9 + xor $2,$2,$11 + xor $7,$2,$4 + srl $3,$7,16 + srl $2,$7,24 + srl $4,$7,8 + andi $3,$3,0xff + addu $3,$3,$8 + addu $2,$2,$8 + andi $4,$4,0xff + lbu $5,0($3) + lbu $2,0($2) + addu $4,$4,$8 + andi $3,$7,0xff + lbu $4,0($4) + addu $3,$3,$8 + sll $5,$5,16 + lbu $3,0($3) + sll $2,$2,24 + xor $2,$2,$5 + sll $4,$4,8 + xor $2,$2,$4 + xor $7,$2,$3 + srl $2,$7,30 + sll $3,$7,2 + or $3,$3,$2 + sll $4,$7,10 + srl $2,$7,22 + or $4,$4,$2 + xor $3,$7,$3 + srl $2,$7,14 + sll $5,$7,18 + or $5,$5,$2 + xor $3,$3,$4 + sll $2,$7,24 + srl $4,$7,8 + or $2,$2,$4 + xor $3,$3,$5 + xor $3,$3,$2 + lw $4,12($6) + xor $10,$10,$3 + xor $2,$9,$11 + xor $2,$2,$10 + xor $7,$2,$4 + srl $3,$7,16 + srl $2,$7,24 + srl $4,$7,8 + andi $3,$3,0xff + addu $3,$3,$8 + addu $2,$2,$8 + andi $4,$4,0xff + lbu $5,0($3) + lbu $2,0($2) + addu $4,$4,$8 + andi $3,$7,0xff + lbu $4,0($4) + addu $3,$3,$8 + sll $5,$5,16 + lbu $3,0($3) + sll $2,$2,24 + xor $2,$2,$5 + sll $4,$4,8 + xor $2,$2,$4 + xor $7,$2,$3 + srl $2,$7,30 + sll $3,$7,2 + or $3,$3,$2 + sll $4,$7,10 + srl $2,$7,22 + or $4,$4,$2 + xor $3,$7,$3 + srl $2,$7,14 + sll $5,$7,18 + xor $3,$3,$4 + or $5,$5,$2 + srl $4,$7,8 + sll $2,$7,24 + xor $3,$3,$5 + or $2,$2,$4 + xor $3,$3,$2 + addiu $14,$14,-4 + xor $12,$12,$3 + bgez $14,$L51 + addiu $6,$6,16 + + sw $9,12($13) + sw $12,0($13) + sw $10,4($13) + j $31 + sw $11,8($13) + + .set macro + .set reorder + .end SMS4Crypt + .section .text.SMS4KeyExt,"ax",@progbits + .align 2 + .ent SMS4KeyExt + .type SMS4KeyExt, @function +SMS4KeyExt: + .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 + + lw $12,0($4) + li $2,-1548681216 # 0xffffffffa3b10000 + ori $2,$2,0xbac6 + lw $11,4($4) + xor $12,$12,$2 + li $2,1453981696 # 0x56aa0000 + ori $2,$2,0x3350 + lw $10,8($4) + xor $11,$11,$2 + li $2,1736245248 # 0x677d0000 + ori $2,$2,0x9197 + lw $13,12($4) + xor $10,$10,$2 + li $2,-1301282816 # 0xffffffffb2700000 + ori $2,$2,0x22dc + xor $13,$13,$2 + lui $2,%hi(CK) + addiu $24,$2,%lo(CK) + lui $2,%hi(Sbox) + move $15,$5 + addiu $9,$2,%lo(Sbox) + move $14,$0 +$L58: + sll $6,$14,2 + addu $7,$6,$24 + lw $3,0($7) + xor $2,$11,$10 + xor $2,$2,$13 + xor $8,$2,$3 + srl $4,$8,16 + srl $3,$8,24 + srl $2,$8,8 + andi $4,$4,0xff + addu $3,$3,$9 + addu $4,$4,$9 + andi $2,$2,0xff + lbu $3,0($3) + lbu $4,0($4) + addu $2,$2,$9 + lbu $5,0($2) + andi $2,$8,0xff + addu $2,$2,$9 + lbu $2,0($2) + sll $4,$4,16 + sll $3,$3,24 + xor $3,$3,$4 + sll $5,$5,8 + xor $3,$3,$5 + xor $8,$3,$2 + srl $3,$8,19 + sll $2,$8,13 + srl $4,$8,9 + or $2,$2,$3 + sll $3,$8,23 + or $3,$3,$4 + xor $2,$8,$2 + xor $2,$2,$3 + xor $12,$12,$2 + addu $6,$6,$15 + sw $12,0($6) + lw $3,4($7) + xor $2,$10,$13 + xor $2,$2,$12 + xor $8,$2,$3 + srl $4,$8,16 + srl $3,$8,24 + srl $2,$8,8 + andi $4,$4,0xff + addu $3,$3,$9 + addu $4,$4,$9 + andi $2,$2,0xff + lbu $3,0($3) + lbu $4,0($4) + addu $2,$2,$9 + lbu $5,0($2) + andi $2,$8,0xff + addu $2,$2,$9 + lbu $2,0($2) + sll $4,$4,16 + sll $3,$3,24 + xor $3,$3,$4 + sll $5,$5,8 + xor $3,$3,$5 + xor $8,$3,$2 + srl $3,$8,19 + sll $2,$8,13 + srl $4,$8,9 + or $2,$2,$3 + sll $3,$8,23 + or $3,$3,$4 + xor $2,$8,$2 + xor $2,$2,$3 + xor $11,$11,$2 + sw $11,4($6) + lw $3,8($7) + xor $2,$13,$12 + xor $2,$2,$11 + xor $8,$2,$3 + srl $4,$8,16 + srl $3,$8,24 + srl $2,$8,8 + andi $4,$4,0xff + addu $3,$3,$9 + addu $4,$4,$9 + andi $2,$2,0xff + lbu $3,0($3) + lbu $4,0($4) + addu $2,$2,$9 + lbu $5,0($2) + andi $2,$8,0xff + addu $2,$2,$9 + lbu $2,0($2) + sll $4,$4,16 + sll $3,$3,24 + xor $3,$3,$4 + sll $5,$5,8 + xor $3,$3,$5 + xor $8,$3,$2 + srl $3,$8,19 + sll $2,$8,13 + srl $4,$8,9 + or $2,$2,$3 + sll $3,$8,23 + or $3,$3,$4 + xor $2,$8,$2 + xor $2,$2,$3 + xor $10,$10,$2 + sw $10,8($6) + lw $3,12($7) + xor $2,$12,$11 + xor $2,$2,$10 + xor $8,$2,$3 + srl $4,$8,16 + srl $3,$8,24 + srl $2,$8,8 + andi $4,$4,0xff + addu $3,$3,$9 + addu $4,$4,$9 + andi $2,$2,0xff + lbu $3,0($3) + lbu $4,0($4) + addu $2,$2,$9 + lbu $5,0($2) + andi $2,$8,0xff + addu $2,$2,$9 + lbu $2,0($2) + sll $4,$4,16 + sll $3,$3,24 + xor $3,$3,$4 + sll $5,$5,8 + xor $3,$3,$5 + xor $8,$3,$2 + srl $3,$8,19 + sll $2,$8,13 + or $2,$2,$3 + srl $4,$8,9 + sll $3,$8,23 + or $3,$3,$4 + xor $2,$8,$2 + xor $2,$2,$3 + addiu $14,$14,4 + xor $13,$13,$2 + sltu $2,$14,32 + bne $2,$0,$L58 + sw $13,12($6) + + 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,56,$31 # vars= 0, regs= 10/0, args= 16, gp= 0 + .mask 0xc0ff0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $fp,48($sp) + sw $18,24($sp) + lw $fp,76($sp) + lw $18,72($sp) + andi $7,$7,0xffff + lui $2,%hi(wapiBlockIn) + sw $22,40($sp) + sw $21,36($sp) + sw $19,28($sp) + sw $17,20($sp) + sw $16,16($sp) + sw $31,52($sp) + sw $23,44($sp) + sw $20,32($sp) + move $8,$4 + move $17,$6 + srl $22,$7,4 + addiu $19,$2,%lo(wapiBlockIn) + andi $21,$7,0xf + move $16,$0 +$L65: + subu $2,$5,$16 + lbu $4,15($2) + addu $3,$16,$19 + addiu $16,$16,1 + sltu $2,$16,16 + bne $2,$0,$L65 + sb $4,0($3) + + lui $23,%hi(wapiRK) + move $4,$8 + jal SMS4KeyExt + addiu $5,$23,%lo(wapiRK) + + lui $2,%hi(wapiTempBlock) + move $20,$19 + move $16,$0 + beq $22,$0,$L80 + addiu $19,$2,%lo(wapiTempBlock) + +$L70: + move $4,$20 + move $5,$19 + jal SMS4Crypt + addiu $6,$23,%lo(wapiRK) + + lw $3,0($19) + lw $2,0($17) + addiu $16,$16,1 + move $5,$20 + xor $2,$2,$3 + sw $2,0($18) + lw $3,4($19) + lw $2,4($17) + sltu $4,$16,$22 + move $20,$19 + xor $2,$2,$3 + sw $2,4($18) + lw $3,8($19) + lw $2,8($17) + nop + xor $2,$2,$3 + sw $2,8($18) + lw $2,12($17) + lw $3,12($19) + addiu $17,$17,16 + move $19,$5 + xor $2,$2,$3 + sw $2,12($18) + bne $4,$0,$L70 + addiu $18,$18,16 + +$L80: + beq $21,$0,$L71 + sll $2,$16,4 + + addu $2,$21,$2 + lui $6,%hi(wapiRK) + move $5,$19 + sh $2,0($fp) + move $4,$20 + jal SMS4Crypt + addiu $6,$6,%lo(wapiRK) + + beq $21,$0,$L61 + move $5,$0 + +$L75: + addu $2,$17,$5 + addu $3,$19,$5 + lbu $3,0($3) + lbu $2,0($2) + addu $4,$18,$5 + addiu $5,$5,1 + xor $2,$2,$3 + sltu $3,$5,$21 + bne $3,$0,$L75 + sb $2,0($4) + + j $L61 + nop + +$L71: + sh $2,0($fp) +$L61: + lw $31,52($sp) + lw $fp,48($sp) + lw $23,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,56 + + .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= 16, regs= 9/0, args= 16, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + sw $23,60($sp) + sw $20,48($sp) + lhu $23,94($sp) + lw $20,88($sp) + andi $7,$7,0x00ff + sw $22,56($sp) + lui $22,%hi(wapiBlockIn) + sw $19,44($sp) + sw $18,40($sp) + sw $17,36($sp) + sw $16,32($sp) + move $18,$6 + sw $31,64($sp) + sw $21,52($sp) + move $8,$4 + srl $17,$7,4 + andi $19,$7,0xf + move $16,$0 + addiu $6,$22,%lo(wapiBlockIn) +$L87: + subu $2,$5,$16 + lbu $4,15($2) + addu $3,$16,$6 + addiu $16,$16,1 + sltu $2,$16,16 + bne $2,$0,$L87 + sb $4,0($3) + + lui $21,%hi(wapiRK) + move $4,$8 + jal SMS4KeyExt + addiu $5,$21,%lo(wapiRK) + + addiu $4,$22,%lo(wapiBlockIn) + addiu $5,$sp,16 + jal SMS4Crypt + addiu $6,$21,%lo(wapiRK) + + beq $17,$0,$L105 + move $16,$0 + +$L92: + lw $2,0($18) + lw $3,16($sp) + addiu $7,$22,%lo(wapiBlockIn) + move $4,$7 + xor $2,$2,$3 + sw $2,%lo(wapiBlockIn)($22) + lw $2,4($18) + lw $3,20($sp) + addiu $16,$16,1 + addiu $5,$sp,16 + xor $2,$2,$3 + sw $2,4($7) + lw $3,8($18) + lw $2,24($sp) + addiu $6,$21,%lo(wapiRK) + xor $3,$3,$2 + sw $3,8($7) + lw $3,12($18) + lw $2,28($sp) + addiu $18,$18,16 + xor $3,$3,$2 + jal SMS4Crypt + sw $3,12($7) + + sltu $2,$16,$17 + bne $2,$0,$L92 + nop + +$L105: + beq $19,$0,$L108 + srl $17,$23,4 + + lui $17,%hi(wapiTempBlock) + addiu $16,$17,%lo(wapiTempBlock) + li $6,16 # 0x10 + subu $6,$6,$19 + addu $4,$19,$16 + jal memset + move $5,$0 + + move $4,$16 + move $5,$18 + jal memcpy + move $6,$19 + + lw $2,16($sp) + lw $9,%lo(wapiTempBlock)($17) + lw $7,4($16) + lw $8,8($16) + xor $9,$9,$2 + lw $2,20($sp) + lw $10,12($16) + lui $11,%hi(wapiBlockIn) + xor $7,$7,$2 + lw $2,24($sp) + addiu $3,$11,%lo(wapiBlockIn) + lui $6,%hi(wapiRK) + xor $8,$8,$2 + lw $2,28($sp) + move $4,$3 + sw $9,%lo(wapiBlockIn)($11) + xor $10,$10,$2 + addiu $6,$6,%lo(wapiRK) + addiu $5,$sp,16 + sw $7,4($3) + sw $8,8($3) + jal SMS4Crypt + sw $10,12($3) + + srl $17,$23,4 +$L108: + andi $19,$23,0xf + beq $17,$0,$L107 + move $16,$0 + +$L99: + lw $2,0($20) + lw $3,16($sp) + lui $7,%hi(wapiBlockIn) + lui $6,%hi(wapiRK) + xor $2,$2,$3 + sw $2,%lo(wapiBlockIn)($7) + lw $2,4($20) + lw $3,20($sp) + addiu $7,$7,%lo(wapiBlockIn) + move $4,$7 + xor $2,$2,$3 + sw $2,4($7) + lw $2,8($20) + lw $3,24($sp) + addiu $6,$6,%lo(wapiRK) + addiu $16,$16,1 + xor $2,$2,$3 + sw $2,8($7) + lw $3,12($20) + lw $2,28($sp) + addiu $5,$sp,16 + addiu $20,$20,16 + xor $3,$3,$2 + jal SMS4Crypt + sw $3,12($7) + + sltu $2,$16,$17 + bne $2,$0,$L99 + nop + +$L107: + beq $19,$0,$L100 + lui $17,%hi(wapiTempBlock) + + addiu $16,$17,%lo(wapiTempBlock) + li $6,16 # 0x10 + subu $6,$6,$19 + addu $4,$19,$16 + jal memset + move $5,$0 + + move $4,$16 + move $5,$20 + jal memcpy + move $6,$19 + + lw $2,16($sp) + lw $9,%lo(wapiTempBlock)($17) + lw $7,4($16) + lw $8,8($16) + xor $9,$9,$2 + lw $2,20($sp) + lw $10,12($16) + lui $11,%hi(wapiBlockIn) + xor $7,$7,$2 + lw $2,24($sp) + addiu $3,$11,%lo(wapiBlockIn) + lui $6,%hi(wapiRK) + xor $8,$8,$2 + lw $2,28($sp) + move $4,$3 + sw $9,%lo(wapiBlockIn)($11) + xor $10,$10,$2 + addiu $6,$6,%lo(wapiRK) + addiu $5,$sp,16 + sw $7,4($3) + sw $8,8($3) + jal SMS4Crypt + sw $10,12($3) + +$L100: + lw $4,96($sp) + addiu $5,$sp,16 + jal memcpy + li $6,16 # 0x10 + + lw $31,64($sp) + lw $23,60($sp) + lw $22,56($sp) + lw $21,52($sp) + lw $20,48($sp) + lw $19,44($sp) + lw $18,40($sp) + lw $17,36($sp) + lw $16,32($sp) + j $31 + addiu $sp,$sp,72 + + .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,56,$31 # vars= 0, regs= 9/0, args= 16, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $19,28($sp) + lw $19,76($sp) + andi $2,$7,0xf + sw $23,44($sp) + sb $0,0($19) + sw $22,40($sp) + sw $17,20($sp) + sw $16,16($sp) + sw $31,48($sp) + sw $21,36($sp) + sw $20,32($sp) + sw $18,24($sp) + move $17,$4 + move $22,$6 + lw $23,72($sp) + beq $2,$0,$L111 + srl $16,$7,4 + + addiu $16,$16,1 + sll $4,$16,4 + sltu $2,$7,$4 +$L129: + beq $2,$0,$L111 + addu $3,$22,$7 + + addiu $7,$7,1 + sltu $2,$7,$4 + j $L129 + sb $0,0($3) + +$L111: + lui $4,%hi(wapiBlockIn) + addiu $4,$4,%lo(wapiBlockIn) + li $6,16 # 0x10 + jal memcpy + lui $21,%hi(wapiRK) + + move $4,$17 + jal SMS4KeyExt + addiu $5,$21,%lo(wapiRK) + + beq $16,$0,$L126 + move $18,$0 + + lui $17,%hi(wapiTempBlock) +$L130: + lui $20,%hi(wapiBlockIn) + addiu $5,$17,%lo(wapiTempBlock) + addiu $6,$21,%lo(wapiRK) + jal SMS4Crypt + addiu $4,$20,%lo(wapiBlockIn) + + lbu $2,0($19) + sll $3,$18,4 + addu $6,$3,$22 + addiu $2,$2,16 + sb $2,0($19) + move $7,$0 + addu $5,$3,$23 + addiu $8,$17,%lo(wapiTempBlock) +$L122: + addu $2,$6,$7 + addu $3,$7,$8 + lbu $3,0($3) + lbu $2,0($2) + addu $4,$5,$7 + addiu $7,$7,1 + xor $2,$2,$3 + sltu $3,$7,16 + bne $3,$0,$L122 + sb $2,0($4) + + addiu $4,$20,%lo(wapiBlockIn) + addiu $5,$17,%lo(wapiTempBlock) + addiu $18,$18,1 + jal memcpy + li $6,16 # 0x10 + + sltu $2,$18,$16 + bne $2,$0,$L130 + lui $17,%hi(wapiTempBlock) + +$L126: + lw $31,48($sp) + lw $23,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,56 + + .set macro + .set reorder + .end WapiSMS4ForMNKEncrypt + .local TempBuf.1 + .comm TempBuf.1,34,4 + .section .text.SecCalculateMicSMS4,"ax",@progbits + .align 2 + .globl SecCalculateMicSMS4 + .ent SecCalculateMicSMS4 + .type SecCalculateMicSMS4, @function +SecCalculateMicSMS4: + .set nomips16 + .frame $sp,64,$31 # vars= 0, regs= 8/0, args= 32, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $31,60($sp) + sw $22,56($sp) + sw $21,52($sp) + sw $20,48($sp) + sw $19,44($sp) + sw $18,40($sp) + sw $17,36($sp) + sw $16,32($sp) + lhu $2,0($6) + andi $19,$4,0x00ff + lui $4,%hi(TempBuf.1+2) + move $17,$6 + lui $16,%hi(TempBuf.1+14) + andi $2,$2,0x8fc7 + addiu $4,$4,%lo(TempBuf.1+2) + move $22,$5 + lui $20,%hi(TempBuf.1) + addiu $5,$6,4 + li $6,12 # 0xc + sh $2,%lo(TempBuf.1)($20) + lhu $18,82($sp) + jal memcpy + move $21,$7 + + addiu $4,$16,%lo(TempBuf.1+14) + addiu $5,$17,22 + jal memcpy + li $6,2 # 0x2 + + lhu $2,%lo(TempBuf.1+14)($16) + lui $4,%hi(TempBuf.1+16) + addiu $4,$4,%lo(TempBuf.1+16) + andi $2,$2,0xf00 + addiu $5,$17,16 + li $6,6 # 0x6 + jal memcpy + sh $2,%lo(TempBuf.1+14)($16) + + lhu $2,0($17) + lui $7,%hi(TempBuf.1+22) + addiu $5,$17,24 + srl $3,$2,1 + andi $2,$2,0x1 + andi $3,$3,0x1 + sll $2,$2,1 + or $2,$2,$3 + li $3,3 # 0x3 + li $6,6 # 0x6 + bne $2,$3,$L132 + addiu $4,$7,%lo(TempBuf.1+22) + + jal memcpy + nop + + j $L133 + li $5,30 # 0x1e + +$L132: + move $5,$0 + jal memset + li $6,6 # 0x6 + + li $5,24 # 0x18 +$L133: + lhu $2,0($17) + lui $4,%hi(TempBuf.1+28) + addu $16,$17,$5 + srl $2,$2,8 + andi $2,$2,0x88 + li $3,136 # 0x88 + addiu $4,$4,%lo(TempBuf.1+28) + li $6,2 # 0x2 + bne $2,$3,$L134 + move $5,$16 + + jal memcpy + nop + + addiu $5,$16,4 + j $L138 + li $3,34 # 0x22 + +$L134: + addiu $5,$16,2 + li $3,32 # 0x20 +$L138: + addiu $2,$20,%lo(TempBuf.1) + move $6,$2 + move $7,$3 + addu $2,$3,$2 + srl $3,$18,8 + sb $3,-2($2) + lw $3,84($sp) + sb $19,-4($2) + move $4,$22 + sw $21,16($sp) + sw $18,20($sp) + sw $3,24($sp) + sb $18,-1($2) + jal WapiSMS4CalculateMic + sb $0,-3($2) + + lw $31,60($sp) + lw $22,56($sp) + lw $21,52($sp) + lw $20,48($sp) + lw $19,44($sp) + lw $18,40($sp) + lw $17,36($sp) + lw $16,32($sp) + j $31 + addiu $sp,$sp,64 + + .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,72,$31 # vars= 8, regs= 10/0, args= 24, gp= 0 + .mask 0xc0ff0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + sw $18,40($sp) + sw $17,36($sp) + sw $31,68($sp) + sw $fp,64($sp) + sw $23,60($sp) + sw $22,56($sp) + sw $21,52($sp) + sw $20,48($sp) + sw $19,44($sp) + sw $16,32($sp) + lw $2,68($5) + move $18,$5 + lw $22,8($5) + bne $2,$0,$L140 + move $17,$4 + + lw $2,1232($4) + addiu $21,$4,928 + li $5,1 # 0x1 + srl $2,$2,15 + andi $20,$2,0x1 + sll $3,$20,5 + li $2,65536 # 0x10000 + addu $3,$4,$3 + addu $2,$4,$2 + move $4,$21 + lw $16,15776($2) + addiu $fp,$3,1238 + jal WapiIncreasePN + addiu $23,$3,1254 + + bne $2,$0,$L141 + nop + + lw $2,1232($17) + nop + andi $2,$2,0x2000 + bne $2,$0,$L141 + nop + + beq $16,$0,$L165 + move $4,$17 + + lw $2,6676($16) + nop + beq $2,$0,$L165 + nop + + lw $2,352($2) + nop + andi $2,$2,0x1000 + bne $2,$0,$L141 + nop + +$L165: + jal wapiUpdateMSK + move $5,$0 + +$L141: + lw $4,1304($17) + lw $3,20($18) + nop + sltu $2,$3,$4 + bne $2,$0,$L145 + subu $2,$4,$3 + + lw $3,8($17) + nop + lw $2,5260($3) + nop + sw $2,1304($17) + lw $2,5252($3) + nop + addiu $2,$2,-3 + sltu $2,$2,2 + beq $2,$0,$L150 + nop + + lw $2,1232($17) + nop + andi $2,$2,0x2000 + bne $2,$0,$L150 + nop + + beq $16,$0,$L147 + nop + + lw $2,6676($16) + nop + beq $2,$0,$L147 + nop + + lw $2,352($2) + nop + andi $2,$2,0x1000 + bne $2,$0,$L150 + nop + +$L147: + move $4,$17 + jal wapiUpdateMSK + move $5,$0 + + j $L150 + nop + +$L145: + sw $2,1304($17) +$L150: + lw $2,8($17) + nop + lw $16,668($2) + j $L151 + nop + +$L140: + lw $16,6676($2) + li $5,2 # 0x2 + lw $2,352($16) + addiu $21,$16,432 + move $4,$21 + srl $2,$2,15 + andi $20,$2,0x1 + sll $2,$20,5 + addu $2,$16,$2 + addiu $fp,$2,488 + jal WapiIncreasePN + addiu $23,$2,504 + + bne $2,$0,$L152 + nop + + lw $2,352($16) + nop + andi $2,$2,0x1000 + bne $2,$0,$L152 + nop + + lw $2,1232($17) + nop + andi $2,$2,0x2000 + bne $2,$0,$L152 + nop + + lw $5,68($18) + jal wapiUpdateUSK + move $4,$17 + +$L152: + lw $4,596($16) + lw $3,20($18) + nop + sltu $2,$3,$4 + bne $2,$0,$L156 + subu $2,$4,$3 + + lw $2,8($17) + lw $3,652($16) + lw $2,5248($2) + nop + sw $2,596($16) + lw $2,8($3) + nop + lw $2,5240($2) + nop + addiu $2,$2,-3 + sltu $2,$2,2 + beq $2,$0,$L161 + nop + + lw $2,352($16) + nop + andi $2,$2,0x1000 + bne $2,$0,$L161 + nop + + lw $2,1232($17) + nop + andi $2,$2,0x2000 + bne $2,$0,$L161 + nop + + lw $5,68($18) + jal wapiUpdateUSK + move $4,$17 + + j $L161 + nop + +$L156: + sw $2,596($16) +$L161: + lw $2,68($18) + nop + lw $16,6124($2) +$L151: + lw $2,12($18) + move $5,$21 + li $6,16 # 0x10 + addu $17,$22,$2 + sb $20,0($17) + sb $0,1($17) + jal memcpy + addiu $4,$17,2 + + li $2,1 # 0x1 + beq $16,$2,$L162 + nop + + lw $2,4($18) + lbu $6,56($18) + lw $3,20($18) + lw $2,176($2) + nop + addu $19,$2,$3 + beq $6,$0,$L163 + subu $16,$2,$6 + + lw $5,12($18) + lw $2,44($18) + move $4,$16 + addu $5,$22,$5 + jal memcpy + addu $5,$5,$2 + +$L163: + lbu $3,56($18) + lw $2,20($18) + move $4,$20 + move $5,$23 + addu $2,$2,$3 + andi $2,$2,0xffff + move $6,$22 + move $7,$16 + sw $2,16($sp) + jal SecCalculateMicSMS4 + sw $19,20($sp) + + lbu $2,56($18) + lw $7,20($18) + move $4,$fp + move $5,$21 + addu $7,$7,$2 + addiu $7,$7,16 + addiu $2,$sp,24 + andi $7,$7,0xffff + move $6,$16 + sw $2,20($sp) + jal WapiSMS4Cryption + sw $16,16($sp) + + lw $2,0($16) + nop + sw $2,18($17) + lw $2,4($16) + j $L139 + sw $2,22($17) + +$L162: + sw $0,52($18) +$L139: + lw $31,68($sp) + lw $fp,64($sp) + lw $23,60($sp) + lw $22,56($sp) + lw $21,52($sp) + lw $20,48($sp) + lw $19,44($sp) + lw $18,40($sp) + lw $17,36($sp) + lw $16,32($sp) + j $31 + addiu $sp,$sp,72 + + .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,80,$31 # vars= 16, regs= 10/0, args= 24, gp= 0 + .mask 0xc0ff0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-80 + sw $22,64($sp) + sw $21,60($sp) + sw $20,56($sp) + sw $17,44($sp) + sw $31,76($sp) + sw $fp,72($sp) + sw $23,68($sp) + sw $19,52($sp) + sw $18,48($sp) + sw $16,40($sp) + lw $2,0($6) + lbu $3,35($6) + move $22,$5 + lw $23,176($2) + addiu $2,$3,18 + andi $2,$2,0x00ff + sw $2,28($sp) + lbu $2,4($23) + addu $3,$23,$3 + lw $19,6676($5) + andi $2,$2,0x1 + move $20,$6 + addiu $21,$3,2 + move $17,$4 + lbu $fp,0($3) + beq $2,$0,$L167 + addiu $5,$23,10 + + jal get_stainfo + nop + + beq $2,$0,$L166 + move $5,$0 + + lw $2,6676($2) + nop + beq $2,$0,$L166 + nop + + lw $2,352($2) + nop + andi $2,$2,0x800 + beq $2,$0,$L166 + nop + + lw $3,1232($17) + nop + srl $2,$3,15 + andi $2,$2,0x1 + beq $fp,$2,$L168 + andi $2,$3,0x2000 + + beq $2,$0,$L166 + nop + +$L168: + addiu $16,$17,944 + move $5,$16 + jal WapiComparePN + move $4,$21 + + li $3,-1 # 0xffffffffffffffff + beq $2,$3,$L166 + move $5,$0 + + move $5,$21 + move $4,$16 + jal memcpy + li $6,16 # 0x10 + + lw $3,8($17) + sll $2,$fp,5 + addu $2,$17,$2 + lw $5,668($3) + addiu $22,$2,1238 + j $L188 + addiu $2,$2,1254 + +$L167: + lw $3,352($19) + nop + andi $2,$3,0x4000 + beq $2,$0,$L166 + move $5,$0 + + srl $2,$3,15 + andi $2,$2,0x1 + beq $fp,$2,$L172 + nop + + lw $2,1232($4) + nop + andi $2,$2,0x2000 + beq $2,$0,$L166 + nop + +$L172: + lhu $3,38($20) + nop + beq $3,$0,$L176 + move $4,$0 + + li $5,3 # 0x3 + beq $3,$5,$L176 + sltu $2,$3,3 + + bne $2,$0,$L176 + li $4,1 # 0x1 + + sltu $2,$3,6 + li $4,2 # 0x2 + movz $4,$5,$2 #RLX4181/RLX4281:conditional move +$L176: + lbu $2,15($21) + nop + andi $2,$2,0x1 + bne $2,$0,$L166 + move $5,$0 + + sll $2,$4,1 + addu $17,$2,$19 + lhu $3,448($17) + lhu $2,36($20) + nop + sltu $2,$2,$3 + bne $2,$0,$L182 + sll $18,$4,4 + + addu $2,$19,$18 + addiu $16,$2,368 + move $5,$16 + jal WapiComparePN + move $4,$21 + + li $3,-1 # 0xffffffffffffffff + beq $2,$3,$L166 + move $5,$0 + + move $4,$16 + move $5,$21 + jal memcpy + li $6,16 # 0x10 + + lhu $2,36($20) + j $L184 + sh $2,448($17) + +$L182: + lui $16,%hi(wapiCryptoTemp) + li $6,16 # 0x10 + addiu $4,$16,%lo(wapiCryptoTemp) + jal memcpy + move $5,$21 + + lbu $5,449($17) + lbu $2,37($20) + addiu $4,$16,%lo(wapiCryptoTemp) + subu $5,$5,$2 + addiu $5,$5,1 + sll $5,$5,1 + jal WapiIncreasePN + andi $5,$5,0xfe + + addu $5,$19,$18 + addiu $5,$5,368 + jal WapiComparePN + addiu $4,$16,%lo(wapiCryptoTemp) + + li $3,-1 # 0xffffffffffffffff + beq $2,$3,$L166 + move $5,$0 + +$L184: + sll $2,$fp,5 + addu $2,$19,$2 + lw $5,6124($22) + addiu $22,$2,488 + addiu $2,$2,504 +$L188: + sw $2,32($sp) + li $2,1 # 0x1 + beq $5,$2,$L186 + lui $16,%hi(wapiDecrytBuf) + + lhu $17,14($20) + lw $2,28($sp) + addiu $4,$16,%lo(wapiDecrytBuf) + addu $18,$23,$2 + subu $2,$17,$2 + andi $20,$2,0xffff + move $6,$20 + jal memcpy + move $5,$18 + + lw $6,28($sp) + lui $19,%hi(wapiDecrytHdrBuf) + move $5,$23 + jal memcpy + addiu $4,$19,%lo(wapiDecrytHdrBuf) + + addiu $6,$16,%lo(wapiDecrytBuf) + move $7,$20 + addiu $2,$sp,24 + move $4,$22 + move $5,$21 + sw $2,20($sp) + jal WapiSMS4Cryption + sw $18,16($sp) + + lw $5,32($sp) + addiu $2,$20,-16 + addu $17,$23,$17 + lui $16,%hi(wapiCryptoTemp) + andi $20,$2,0xffff + addiu $16,$16,%lo(wapiCryptoTemp) + move $4,$fp + addiu $6,$19,%lo(wapiDecrytHdrBuf) + move $7,$18 + addiu $17,$17,-16 + sw $20,16($sp) + jal SecCalculateMicSMS4 + sw $16,20($sp) + + move $5,$17 + move $4,$16 + jal memcmp + li $6,16 # 0x10 + + bne $2,$0,$L166 + move $5,$0 + +$L186: + li $5,1 # 0x1 +$L166: + lw $31,76($sp) + lw $fp,72($sp) + lw $23,68($sp) + lw $22,64($sp) + lw $21,60($sp) + lw $20,56($sp) + lw $19,52($sp) + lw $18,48($sp) + lw $17,44($sp) + lw $16,40($sp) + move $2,$5 + j $31 + addiu $sp,$sp,80 + + .set macro + .set reorder + .end SecSWSMS4Decryption + .section .text.WapiMTgenSeed,"ax",@progbits + .align 2 + .globl WapiMTgenSeed + .ent WapiMTgenSeed + .type WapiMTgenSeed, @function +WapiMTgenSeed: + .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 + + lui $2,%hi(mt) + addiu $3,$2,%lo(mt) + sw $4,%lo(mt)($2) + lui $7,%hi(mti) + li $2,1 # 0x1 + sw $2,%lo(mti)($7) + li $2,1812398080 # 0x6c070000 + ori $6,$2,0x8965 + addiu $5,$3,4 + li $4,1 # 0x1 +$L193: + lw $2,-4($5) + nop + srl $3,$2,30 + xor $2,$2,$3 + mult $2,$6 + mflo $2 + addu $2,$2,$4 + addiu $4,$4,1 + slt $3,$4,624 + sw $2,0($5) + bne $3,$0,$L193 + addiu $5,$5,4 + + li $2,624 # 0x270 + j $31 + sw $2,%lo(mti)($7) + + .set macro + .set reorder + .end WapiMTgenSeed + .data + .align 2 + .type mag01.0, @object + .size mag01.0, 8 +mag01.0: + .word 0 + .word -1727483681 + .section .text.WapiMTgenrand,"ax",@progbits + .align 2 + .globl WapiMTgenrand + .ent WapiMTgenrand + .type WapiMTgenrand, @function +WapiMTgenrand: + .set nomips16 + .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 + .mask 0x80010000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-24 + sw $16,16($sp) + lui $16,%hi(mti) + lw $3,%lo(mti)($16) + nop + slt $2,$3,624 + bne $2,$0,$L198 + sw $31,20($sp) + + li $2,625 # 0x271 + bne $3,$2,$L212 + li $2,2147418112 # 0x7fff0000 + + jal WapiMTgenSeed + li $4,5489 # 0x1571 + + li $2,2147418112 # 0x7fff0000 +$L212: + ori $10,$2,0xffff + lui $2,%hi(mag01.0) + addiu $9,$2,%lo(mag01.0) + lui $2,%hi(mt) + addiu $5,$2,%lo(mt) + li $8,-2147483648 # 0xffffffff80000000 + li $7,226 # 0xe2 +$L203: + lw $3,0($5) + lw $2,4($5) + lw $4,1588($5) + and $3,$3,$8 + and $2,$2,$10 + or $6,$3,$2 + andi $2,$6,0x1 + sll $2,$2,2 + addu $2,$2,$9 + lw $3,0($2) + srl $2,$6,1 + xor $4,$4,$2 + xor $4,$4,$3 + addiu $7,$7,-1 + sw $4,0($5) + bgez $7,$L203 + addiu $5,$5,4 + + li $2,2147418112 # 0x7fff0000 + ori $10,$2,0xffff + lui $2,%hi(mag01.0) + addiu $9,$2,%lo(mag01.0) + lui $2,%hi(mt) + addiu $2,$2,%lo(mt) + addiu $5,$2,908 + li $7,227 # 0xe3 + li $8,-2147483648 # 0xffffffff80000000 +$L207: + lw $3,0($5) + lw $2,4($5) + lw $4,-908($5) + and $3,$3,$8 + and $2,$2,$10 + or $6,$3,$2 + andi $2,$6,0x1 + sll $2,$2,2 + addu $2,$2,$9 + lw $3,0($2) + srl $2,$6,1 + xor $4,$4,$2 + addiu $7,$7,1 + xor $4,$4,$3 + slt $2,$7,623 + sw $4,0($5) + bne $2,$0,$L207 + addiu $5,$5,4 + + lui $2,%hi(mt) + addiu $5,$2,%lo(mt) + lw $3,2492($5) + lw $4,%lo(mt)($2) + li $2,-2147483648 # 0xffffffff80000000 + and $3,$3,$2 + li $2,2147418112 # 0x7fff0000 + ori $2,$2,0xffff + and $4,$4,$2 + or $6,$3,$4 + andi $3,$6,0x1 + lui $2,%hi(mag01.0) + addiu $2,$2,%lo(mag01.0) + sll $3,$3,2 + addu $3,$3,$2 + lw $2,1584($5) + lw $4,0($3) + srl $3,$6,1 + xor $2,$2,$3 + xor $2,$2,$4 + sw $2,2492($5) + sw $0,%lo(mti)($16) +$L198: + lui $5,%hi(mti) + lw $4,%lo(mti)($5) + lui $2,%hi(mt) + addiu $2,$2,%lo(mt) + sll $3,$4,2 + addu $3,$3,$2 + lw $6,0($3) + lw $31,20($sp) + lw $16,16($sp) + srl $2,$6,11 + xor $6,$6,$2 + li $2,-1658060800 # 0xffffffff9d2c0000 + sll $3,$6,7 + ori $2,$2,0x5680 + and $3,$3,$2 + xor $6,$6,$3 + sll $2,$6,15 + li $3,-272236544 # 0xffffffffefc60000 + and $2,$2,$3 + xor $6,$6,$2 + srl $2,$6,18 + addiu $4,$4,1 + xor $2,$6,$2 + addiu $sp,$sp,24 + j $31 + sw $4,%lo(mti)($5) + + .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,80,$31 # vars= 40, regs= 5/0, args= 16, gp= 0 + .mask 0x800f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-80 + sw $31,72($sp) + sw $19,68($sp) + sw $18,64($sp) + sw $17,60($sp) + sw $16,56($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + move $19,$4 + move $18,$5 + jal srandom32 + move $4,$2 + + jal random32 + move $17,$0 + + jal WapiMTgenSeed + move $4,$2 + + srl $3,$18,2 + addiu $4,$3,1 + andi $2,$18,0x3 + move $16,$3 + movn $16,$4,$2 #RLX4181/RLX4281:conditional move + move $5,$0 + addiu $4,$sp,16 + jal memset + sll $6,$16,2 + + blez $16,$L222 + move $4,$19 + +$L219: + jal WapiMTgenrand + nop + + sll $4,$17,2 + addiu $3,$sp,16 + addu $4,$3,$4 + addiu $17,$17,1 + addiu $5,$sp,48 + li $6,4 # 0x4 + jal memcpy + sw $2,48($sp) + + slt $2,$17,$16 + bne $2,$0,$L219 + move $4,$19 + +$L222: + move $6,$18 + jal memcpy + addiu $5,$sp,16 + + lw $31,72($sp) + lw $19,68($sp) + lw $18,64($sp) + lw $17,60($sp) + lw $16,56($sp) + j $31 + addiu $sp,$sp,80 + + .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" diff --git a/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapi_wai.S b/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapi_wai.S new file mode 100644 index 000000000..289e2eb18 --- /dev/null +++ b/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapi_wai.S @@ -0,0 +1,6180 @@ + .file 1 "wapi_wai.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 + .data + .align 2 + .type WAPI_KM_OUI, @object + .size WAPI_KM_OUI, 3 +WAPI_KM_OUI: + .byte 0 + .byte 20 + .byte 114 + .rdata + .align 2 + .type __func__.0, @object + .size __func__.0, 14 +__func__.0: + .ascii "wapiDeauthSta\000" + .section .text.wapiDeauthSta,"ax",@progbits + .align 2 + .ent wapiDeauthSta + .type wapiDeauthSta, @function +wapiDeauthSta: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 + .mask 0x80070000,-4 + .fmask 0x00000000,0 + addiu $sp,$sp,-32 + sw $16,16($sp) + move $16,$5 + addiu $5,$5,6070 + sw $18,24($sp) + sw $31,28($sp) + sw $17,20($sp) + .set noreorder + .set nomacro + jal issue_deauth + move $18,$4 + .set macro + .set reorder + +#APP + raw_local_irq_save $17 +#NO_APP + lw $3,8($16) + addiu $8,$16,8 + .set noreorder + .set nomacro + beq $3,$8,$L7 + lui $7,%hi(__func__.0) + .set macro + .set reorder + + lw $2,4($8) + addiu $7,$7,%lo(__func__.0) + sw $3,0($2) + sw $2,4($3) + sw $8,4($8) + lw $2,6248($16) + move $4,$18 + move $5,$16 + move $6,$0 + .set noreorder + .set nomacro + beq $2,$0,$L7 + sw $8,8($16) + .set macro + .set reorder + + jal cnt_assoc_num + move $4,$18 + move $5,$16 + .set noreorder + .set nomacro + jal check_sta_characteristic + move $6,$0 + .set macro + .set reorder + +$L7: +#APP + raw_local_irq_restore $17 +#NO_APP + move $4,$18 + move $5,$16 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + .set noreorder + .set nomacro + j free_stainfo + addiu $sp,$sp,32 + .set macro + .set reorder + + .end wapiDeauthSta + .section .text.wapiFreeAllSta,"ax",@progbits + .align 2 + .ent wapiFreeAllSta + .type wapiFreeAllSta, @function +wapiFreeAllSta: + .set nomips16 + .frame $sp,48,$31 # vars= 0, regs= 8/0, args= 16, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-48 + sw $22,40($sp) + sw $21,36($sp) + sw $20,32($sp) + sw $19,28($sp) + sw $18,24($sp) + sw $31,44($sp) + sw $17,20($sp) + sw $16,16($sp) + move $21,$4 + move $22,$5 + move $20,$0 + move $18,$4 + li $19,30 # 0x1e +$L35: + li $2,65536 # 0x10000 + ori $2,$2,0x2a74 + addu $17,$18,$2 + lw $16,0($17) + nop +$L41: + beq $16,$17,$L39 + move $5,$16 + + lw $3,6676($16) + lw $16,0($16) + beq $3,$0,$L41 + nop + + lw $2,364($3) + nop + beq $2,$0,$L41 + li $2,1 # 0x1 + + move $4,$21 + beq $22,$2,$L32 + li $6,25 # 0x19 + + lw $2,352($3) + nop + andi $2,$2,0x400 + bne $2,$0,$L31 + nop + +$L32: + jal wapiDeauthSta + nop + + j $L41 + nop + +$L31: + j $L41 + addiu $20,$20,1 + +$L39: + addiu $19,$19,-1 + bgez $19,$L35 + addiu $18,$18,8 + + move $2,$20 + lw $31,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,48 + + .set macro + .set reorder + .end wapiFreeAllSta + .local data.1 + .comm data.1,64,4 + .section .text.wapiReqActiveCA,"ax",@progbits + .align 2 + .globl wapiReqActiveCA + .ent wapiReqActiveCA + .type wapiReqActiveCA, @function +wapiReqActiveCA: + .set nomips16 + .frame $sp,40,$31 # vars= 0, regs= 6/0, args= 16, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-40 + sw $31,36($sp) + sw $19,28($sp) + sw $18,24($sp) + sw $16,16($sp) + sw $20,32($sp) + sw $17,20($sp) + lw $20,6676($4) + lui $16,%hi(data.1) + addiu $16,$16,%lo(data.1) + lw $17,652($20) + move $18,$4 + move $5,$0 + move $4,$16 + jal memset + li $6,64 # 0x40 + + addiu $19,$16,8 + li $2,3 + move $5,$0 + li $6,16 # 0x10 + move $4,$19 + sh $2,2($16) + jal memset + sw $18,4($16) + + lw $4,4($17) + jal strlen + nop + + lw $5,4($17) + move $4,$19 + jal memcpy + move $6,$2 + + lw $5,4($17) + addiu $4,$16,24 + li $6,6 # 0x6 + jal memcpy + addiu $5,$5,320 + + addiu $5,$18,6070 + addiu $4,$16,30 + jal memcpy + li $6,6 # 0x6 + + lw $4,652($20) + move $6,$16 + lw $5,36($4) + jal DOT11_EnQueue + li $7,36 # 0x24 + + lw $4,652($20) + jal wapi_event_indicate + nop + + lw $2,364($20) + nop + bne $2,$0,$L43 + addiu $4,$20,600 + + li $2,1 # 0x1 + sw $2,364($20) +$L43: + lui $2,%hi(jiffies) + lw $5,%lo(jiffies)($2) + lw $31,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + addiu $5,$5,1000 + j mod_timer + addiu $sp,$sp,40 + + .set macro + .set reorder + .end wapiReqActiveCA + .section .text.wapiExit,"ax",@progbits + .align 2 + .globl wapiExit + .ent wapiExit + .type wapiExit, @function +wapiExit: + .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 + + j del_timer + addiu $4,$4,1308 + + .set macro + .set reorder + .end wapiExit + .section .text.wapiStationInit,"ax",@progbits + .align 2 + .globl wapiStationInit + .ent wapiStationInit + .type wapiStationInit, @function +wapiStationInit: + .set nomips16 + .frame $sp,40,$31 # vars= 0, regs= 5/0, args= 16, gp= 0 + .mask 0x800f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-40 + sw $31,32($sp) + sw $16,16($sp) + sw $19,28($sp) + sw $18,24($sp) + sw $17,20($sp) + lw $17,6676($4) + move $16,$4 + move $5,$0 + move $6,$0 + jal init_timer_key + addiu $4,$17,600 + + lui $2,%hi(wapiResendTimeout) + addiu $2,$2,%lo(wapiResendTimeout) + sw $2,612($17) + addiu $4,$17,624 + move $5,$0 + move $6,$0 + jal init_timer_key + sw $16,616($17) + + lw $3,652($17) + lui $2,%hi(wapiUCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiUCastUpdateKeyTimeout) + sw $16,640($17) + sw $2,636($17) + sh $0,358($17) + lhu $2,1236($3) + li $4,16 # 0x10 + li $6,92 + sh $2,356($17) + lhu $2,1236($3) + li $5,54 + addiu $2,$2,8 + sh $2,1236($3) +$L49: + addu $2,$4,$17 + addiu $4,$4,-2 + sb $5,366($2) + bgtz $4,$L49 + sb $6,367($2) + + addiu $18,$17,384 + li $16,2 # 0x2 +$L53: + addiu $19,$17,368 + move $4,$18 + move $5,$19 + li $6,16 # 0x10 + jal memcpy + addiu $16,$16,-1 + + bgez $16,$L53 + addiu $18,$18,16 + + addiu $4,$17,432 + move $5,$19 + jal memcpy + li $6,16 # 0x10 + + lw $4,652($17) + move $5,$19 + li $6,16 # 0x10 + jal memcpy + addiu $4,$4,928 + + lw $4,652($17) + move $5,$19 + li $6,16 # 0x10 + jal memcpy + addiu $4,$4,944 + + lw $4,652($17) + move $5,$19 + li $6,16 # 0x10 + jal memcpy + addiu $4,$4,960 + + li $16,3 # 0x3 + move $5,$19 + li $4,55 +$L57: + addiu $16,$16,-1 + sb $4,0($5) + bgez $16,$L57 + addiu $5,$5,16 + + lw $3,352($17) + li $2,-65536 # 0xffffffffffff0000 + ori $2,$2,0x7fff + and $3,$3,$2 + li $2,-4097 # 0xffffffffffffefff + and $3,$3,$2 + li $2,-16385 # 0xffffffffffffbfff + and $3,$3,$2 + li $2,-8193 # 0xffffffffffffdfff + and $3,$3,$2 + li $2,-2049 # 0xfffffffffffff7ff + and $3,$3,$2 + sw $3,352($17) + sb $4,432($17) + sw $0,592($17) + sb $0,353($17) + sw $0,648($17) + sw $0,364($17) + sw $0,656($17) + lw $31,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,40 + + .set macro + .set reorder + .end wapiStationInit + .section .text.wapiSetIE,"ax",@progbits + .align 2 + .globl wapiSetIE + .ent wapiSetIE + .type wapiSetIE, @function +wapiSetIE: + .set nomips16 + .frame $sp,48,$31 # vars= 8, regs= 5/0, args= 16, gp= 0 + .mask 0x800f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-48 + sw $31,40($sp) + sw $19,36($sp) + sw $18,32($sp) + sw $17,28($sp) + sw $16,24($sp) + lw $16,908($4) + move $17,$4 + sb $0,1232($4) + li $2,256 + move $4,$16 + addiu $5,$sp,16 + li $6,2 # 0x2 + sh $2,20($sp) + sh $2,16($sp) + sh $2,18($sp) + jal memcpy + sh $0,22($sp) + + lbu $2,1232($17) + addiu $16,$16,2 + move $4,$16 + addiu $2,$2,2 + addiu $5,$sp,18 + sb $2,1232($17) + jal memcpy + li $6,2 # 0x2 + + lbu $2,1232($17) + lui $18,%hi(WAPI_KM_OUI) + addiu $16,$16,2 + addiu $2,$2,2 + move $4,$16 + addiu $5,$18,%lo(WAPI_KM_OUI) + sb $2,1232($17) + jal memcpy + li $6,3 # 0x3 + + lw $2,8($17) + addiu $5,$sp,20 + li $6,2 # 0x2 + lw $2,5192($2) + li $19,1 + sb $2,3($16) + lbu $2,1232($17) + addiu $16,$16,4 + move $4,$16 + addiu $2,$2,4 + jal memcpy + sb $2,1232($17) + + addiu $4,$16,2 + addiu $5,$18,%lo(WAPI_KM_OUI) + jal memcpy + li $6,3 # 0x3 + + sb $19,5($16) + lbu $2,1232($17) + addiu $16,$16,6 + addiu $5,$18,%lo(WAPI_KM_OUI) + addiu $2,$2,6 + move $4,$16 + sb $2,1232($17) + jal memcpy + li $6,3 # 0x3 + + sb $19,3($16) + lbu $2,1232($17) + addiu $4,$16,4 + addiu $5,$sp,22 + addiu $2,$2,4 + sb $2,1232($17) + jal memcpy + li $6,2 # 0x2 + + lbu $2,1232($17) + lw $31,40($sp) + lw $19,36($sp) + addiu $2,$2,2 + sb $2,1232($17) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j $31 + addiu $sp,$sp,48 + + .set macro + .set reorder + .end wapiSetIE + .rdata + .align 2 +$LC1: + .byte -1 + .byte -1 + .byte -1 + .byte -1 + .byte -1 + .byte -1 + .align 2 +$LC0: + .ascii "multicast or station key expansion for station unicast a" + .ascii "nd multicast and broadcast\000" + .section .text.wapiInstallMCastKey,"ax",@progbits + .align 2 + .ent wapiInstallMCastKey + .type wapiInstallMCastKey, @function +wapiInstallMCastKey: + .set nomips16 + .frame $sp,80,$31 # vars= 40, regs= 3/0, args= 24, gp= 0 + .mask 0x80030000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-80 + lui $2,%hi($LC1) + sw $31,72($sp) + sw $17,68($sp) + sw $16,64($sp) + addiu $5,$2,%lo($LC1) + lbu $3,1($5) + lbu $2,%lo($LC1)($2) + lbu $6,2($5) + lbu $7,3($5) + sll $2,$2,24 + sll $3,$3,16 + or $3,$3,$2 + lbu $8,5($5) + lbu $2,4($5) + sll $6,$6,8 + lui $16,%hi($LC0) + or $6,$6,$3 + addiu $16,$16,%lo($LC0) + move $17,$4 + or $7,$7,$6 + move $4,$16 + sb $8,61($sp) + sw $7,56($sp) + jal strlen + sb $2,60($sp) + + move $7,$2 + move $6,$16 + li $2,32 # 0x20 + addiu $16,$sp,24 + addiu $4,$17,912 + li $5,16 # 0x10 + sw $2,20($sp) + jal KD_hmac_sha256 + sw $16,16($sp) + + lw $4,1232($17) + move $5,$16 + li $6,16 # 0x10 + srl $4,$4,10 + andi $4,$4,0x20 + addu $4,$17,$4 + jal memcpy + addiu $4,$4,1238 + + lw $4,1232($17) + addiu $5,$sp,40 + li $6,16 # 0x10 + srl $4,$4,10 + andi $4,$4,0x20 + addu $4,$17,$4 + jal memcpy + addiu $4,$4,1254 + + lw $2,8($17) + addiu $16,$sp,56 + move $4,$17 + lw $2,172($2) + move $5,$16 + bne $2,$0,$L65 + li $7,24 # 0x18 + + lw $6,1232($17) + sw $0,16($sp) + srl $6,$6,15 + andi $6,$6,0x1 + sll $2,$6,5 + addu $2,$17,$2 + addiu $2,$2,1238 + sll $6,$6,1 + jal CamAddOneEntry + sw $2,20($sp) + + move $5,$16 + move $4,$17 + beq $2,$0,$L67 + li $7,24 # 0x18 + + lw $6,1232($17) + li $2,1 # 0x1 + sw $2,16($sp) + srl $6,$6,15 + andi $6,$6,0x1 + sll $2,$6,5 + addu $2,$17,$2 + sll $6,$6,1 + addiu $2,$2,1254 + addiu $6,$6,1 + jal CamAddOneEntry + sw $2,20($sp) + + lw $3,8($17) + sltu $2,$0,$2 + j $L65 + sw $2,668($3) + +$L67: + lw $2,8($17) + nop + sw $0,668($2) +$L65: + lw $31,72($sp) + lw $17,68($sp) + lw $16,64($sp) + j $31 + addiu $sp,$sp,80 + + .set macro + .set reorder + .end wapiInstallMCastKey + .section .text.wapiInit,"ax",@progbits + .align 2 + .globl wapiInit + .ent wapiInit + .type wapiInit, @function +wapiInit: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 + .mask 0x80030000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-32 + sw $17,20($sp) + sw $31,24($sp) + move $17,$4 + jal wapiInstallMCastKey + sw $16,16($sp) + + li $3,16 # 0x10 + li $5,92 + li $4,54 +$L75: + addu $2,$3,$17 + addiu $3,$3,-2 + sb $4,926($2) + bgtz $3,$L75 + sb $5,927($2) + + addiu $5,$17,928 + addiu $16,$17,1308 + li $6,16 # 0x10 + jal memcpy + addiu $4,$17,944 + + jal del_timer + move $4,$16 + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lw $3,1232($17) + lw $4,8($17) + lui $2,%hi(wapiMCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiMCastUpdateKeyTimeout) + ori $3,$3,0x1000 + sw $2,1320($17) + sw $3,1232($17) + sw $17,1324($17) + lw $2,5260($4) + lw $31,24($sp) + lw $16,16($sp) + sw $2,1304($17) + lw $17,20($sp) + j init_SMS4_CK_Sbox + addiu $sp,$sp,32 + + .set macro + .set reorder + .end wapiInit + .rdata + .align 2 +$LC2: + .ascii "pairwise key expansion for unicast and additional keys a" + .ascii "nd nonce\000" + .section .text.wapiDerivedUCastKey,"ax",@progbits + .align 2 + .ent wapiDerivedUCastKey + .type wapiDerivedUCastKey, @function +wapiDerivedUCastKey: + .set nomips16 + .frame $sp,208,$31 # vars= 160, regs= 5/0, args= 24, gp= 0 + .mask 0x800f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-208 + sw $19,196($sp) + sw $18,192($sp) + sw $17,188($sp) + sw $31,200($sp) + sw $16,184($sp) + lw $16,6676($4) + lui $2,%hi($LC2) + addiu $18,$2,%lo($LC2) + lw $7,652($16) + move $17,$4 + li $6,6 # 0x6 + lw $3,8($7) + addiu $4,$sp,30 + lw $2,892($3) + nop + andi $3,$2,0x10 + andi $2,$2,0x8 + beq $2,$0,$L79 + move $19,$5 + + lw $5,4($7) + jal memcpy + addiu $5,$5,320 + + addiu $4,$sp,24 + j $L82 + addiu $5,$17,6070 + +$L79: + addiu $4,$sp,24 + beq $3,$0,$L80 + li $6,6 # 0x6 + + lw $5,4($7) + jal memcpy + addiu $5,$5,320 + + addiu $5,$17,6070 + addiu $4,$sp,30 +$L82: + jal memcpy + li $6,6 # 0x6 + +$L80: + addiu $4,$sp,36 + addiu $5,$16,288 + jal memcpy + li $6,32 # 0x20 + + addiu $5,$16,256 + li $6,32 # 0x20 + jal memcpy + addiu $4,$sp,68 + + jal strlen + move $4,$18 + + move $6,$2 + move $5,$18 + jal memcpy + addiu $4,$sp,100 + + jal strlen + move $4,$18 + + addiu $2,$2,76 + addiu $4,$16,456 + addiu $6,$sp,24 + andi $7,$2,0x00ff + li $5,16 # 0x10 + li $2,96 # 0x60 + sw $19,16($sp) + jal KD_hmac_sha256 + sw $2,20($sp) + + lw $31,200($sp) + lw $19,196($sp) + lw $18,192($sp) + lw $17,188($sp) + lw $16,184($sp) + j $31 + addiu $sp,$sp,208 + + .set macro + .set reorder + .end wapiDerivedUCastKey + .section .text.wapiInstallUCastKey,"ax",@progbits + .align 2 + .ent wapiInstallUCastKey + .type wapiInstallUCastKey, @function +wapiInstallUCastKey: + .set nomips16 + .frame $sp,64,$31 # vars= 8, regs= 8/0, args= 24, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + lui $2,%hi($LC1) + addiu $8,$2,%lo($LC1) + sw $31,60($sp) + sw $22,56($sp) + sw $21,52($sp) + sw $20,48($sp) + sw $19,44($sp) + sw $16,32($sp) + sw $18,40($sp) + sw $17,36($sp) + lbu $3,1($8) + lbu $2,%lo($LC1)($2) + lbu $7,2($8) + move $21,$4 + sll $2,$2,24 + lbu $4,3($8) + sll $3,$3,16 + or $3,$3,$2 + lbu $9,5($8) + lw $17,6676($21) + lbu $2,4($8) + sll $7,$7,8 + or $7,$7,$3 + or $4,$4,$7 + sb $9,29($sp) + move $16,$6 + sw $4,24($sp) + sb $2,28($sp) + andi $19,$5,0x00ff + addiu $4,$17,568 + addiu $5,$6,32 + lw $18,652($17) + jal memcpy + li $6,16 # 0x10 + + sll $2,$19,5 + addu $2,$17,$2 + addiu $20,$2,488 + addiu $22,$2,504 + move $4,$20 + move $5,$16 + jal memcpy + li $6,16 # 0x10 + + move $4,$22 + addiu $5,$16,16 + jal memcpy + li $6,16 # 0x10 + + addiu $4,$17,552 + addiu $5,$16,48 + jal memcpy + li $6,16 # 0x10 + + addiu $4,$16,64 + addiu $6,$17,288 + li $5,32 # 0x20 + jal sha2 + move $7,$0 + + lw $2,8($18) + nop + lw $2,172($2) + nop + bne $2,$0,$L83 + addiu $17,$21,6070 + + move $4,$18 + move $5,$17 + move $6,$19 + li $7,24 # 0x18 + sw $20,20($sp) + jal CamAddOneEntry + sw $0,16($sp) + + beq $2,$0,$L85 + li $16,1 # 0x1 + + lw $3,60($18) + move $4,$18 + lw $2,9728($3) + move $5,$17 + move $6,$19 + addiu $2,$2,1 + sw $2,9728($3) + li $7,24 # 0x18 + sw $22,20($sp) + jal CamAddOneEntry + sw $16,16($sp) + + beq $2,$0,$L85 + nop + + sw $16,6124($21) + lw $3,60($18) + nop + lw $2,9728($3) + nop + addiu $2,$2,1 + j $L88 + sw $2,9728($3) + +$L85: + sw $0,6124($21) +$L88: + sltu $16,$19,1 + move $4,$18 + move $5,$17 + move $6,$16 + jal CamDeleteOneEntry + move $7,$0 + + beq $2,$0,$L89 + move $5,$17 + + lw $3,60($18) + move $6,$16 + lw $2,9728($3) + move $4,$18 + move $7,$0 + addiu $2,$2,-1 + jal CamDeleteOneEntry + sw $2,9728($3) + + beq $2,$0,$L89 + nop + + lw $3,60($18) + nop + lw $2,9728($3) + nop + addiu $2,$2,-1 + sw $2,9728($3) +$L89: + lw $6,1232($18) + sw $0,16($sp) + lw $2,1232($18) + srl $6,$6,14 + andi $6,$6,0x2 + srl $2,$2,10 + andi $2,$2,0x20 + addu $2,$18,$2 + addiu $2,$2,1238 + move $4,$18 + addiu $5,$sp,24 + li $7,24 # 0x18 + jal CamAddOneEntry + sw $2,20($sp) + + beq $2,$0,$L91 + li $2,1 # 0x1 + + lw $6,1232($18) + sw $2,16($sp) + lw $2,1232($18) + srl $6,$6,14 + andi $6,$6,0x2 + srl $2,$2,10 + andi $2,$2,0x20 + addu $2,$18,$2 + addiu $2,$2,1254 + addiu $6,$6,1 + move $4,$18 + addiu $5,$sp,24 + li $7,24 # 0x18 + jal CamAddOneEntry + sw $2,20($sp) + + lw $3,8($18) + sltu $2,$0,$2 + j $L83 + sw $2,668($3) + +$L91: + lw $2,8($18) + nop + sw $0,668($2) +$L83: + lw $31,60($sp) + lw $22,56($sp) + lw $21,52($sp) + lw $20,48($sp) + lw $19,44($sp) + lw $18,40($sp) + lw $17,36($sp) + lw $16,32($sp) + j $31 + addiu $sp,$sp,64 + + .set macro + .set reorder + .end wapiInstallUCastKey + .section .text.wapiReleaseFragementQueue,"ax",@progbits + .align 2 + .globl wapiReleaseFragementQueue + .ent wapiReleaseFragementQueue + .type wapiReleaseFragementQueue, @function +wapiReleaseFragementQueue: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 + .mask 0x80030000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-32 + sw $17,20($sp) + sw $31,24($sp) + sw $16,16($sp) + lw $2,648($4) + nop + beq $2,$0,$L95 + move $17,$4 + + move $16,$2 + move $2,$16 +$L101: + sw $0,4($16) + move $4,$2 + lw $16,0($16) + jal dev_kfree_skb_any + sw $0,0($2) + + lw $2,648($17) + nop + bne $16,$2,$L101 + move $2,$16 + + sw $0,584($17) + sw $0,648($17) + sb $0,353($17) +$L95: + lw $31,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,32 + + .set macro + .set reorder + .end wapiReleaseFragementQueue + .section .text.wapiFragementSend,"ax",@progbits + .align 2 + .ent wapiFragementSend + .type wapiFragementSend, @function +wapiFragementSend: + .set nomips16 + .frame $sp,64,$31 # vars= 8, regs= 10/0, args= 16, gp= 0 + .mask 0xc0ff0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $fp,56($sp) + sw $23,52($sp) + sw $22,48($sp) + sw $21,44($sp) + sw $20,40($sp) + sw $31,60($sp) + sw $19,36($sp) + sw $18,32($sp) + sw $17,28($sp) + sw $16,24($sp) + sw $5,68($sp) + lw $2,4($5) + lw $3,84($4) + move $fp,$4 + lw $4,208($2) + addiu $3,$3,-26 + lw $5,176($fp) + andi $2,$4,0x7 + subu $4,$4,$2 + addiu $2,$4,-60 + divu $0,$3,$2 + addiu $4,$4,-34 + addiu $22,$5,26 + move $20,$3 + sw $4,16($sp) + mflo $21 + addiu $2,$21,1 + mfhi $6 + movn $21,$2,$6 #RLX4181/RLX4281:conditional move + blez $21,$L120 + move $23,$0 + +$L117: + lw $4,68($sp) + jal alloc_skb_from_queue + nop + + move $19,$2 + bne $2,$0,$L109 + li $4,2400 # 0x960 + + jal dev_alloc_skb + nop + + beq $2,$0,$L121 + move $19,$2 + +$L109: + lw $5,16($sp) + lw $3,176($19) + lw $4,164($19) + lw $6,16($sp) + addiu $2,$5,-26 + addiu $3,$3,34 + sltu $2,$2,$20 + addiu $4,$4,34 + addiu $5,$20,26 + sw $3,176($19) + movn $5,$6,$2 #RLX4181/RLX4281:conditional move + sw $4,164($19) + jal skb_put + move $4,$19 + + lw $16,176($19) + lw $5,176($fp) + lw $17,84($19) + move $4,$16 + jal memcpy + li $6,26 # 0x1a + + lw $4,176($19) + addiu $18,$17,-26 + move $5,$22 + addiu $4,$4,26 + jal memcpy + move $6,$18 + + lw $2,24($fp) + subu $20,$20,$18 + addiu $16,$16,14 + sw $2,24($19) + sltu $3,$0,$20 + li $2,-30540 + addiu $17,$17,-14 + sh $2,106($19) + sb $3,11($16) + sb $23,10($16) + sh $17,6($16) + lw $2,68($sp) + move $4,$19 + addiu $23,$23,1 + lw $5,4($2) + jal rtl8192cd_start_xmit + addu $22,$22,$18 + + beq $2,$0,$L106 + slt $3,$23,$21 + + jal dev_kfree_skb_any + move $4,$19 + +$L121: + j $L102 + li $2,-1 # 0xffffffffffffffff + +$L106: + bne $3,$0,$L117 + nop + +$L120: + jal dev_kfree_skb_any + move $4,$fp + + li $2,1 # 0x1 +$L102: + lw $31,60($sp) + lw $fp,56($sp) + lw $23,52($sp) + lw $22,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j $31 + addiu $sp,$sp,64 + + .set macro + .set reorder + .end wapiFragementSend + .section .text.WapiComparePN,"ax",@progbits + .align 2 + .globl WapiComparePN + .ent WapiComparePN + .type WapiComparePN, @function +WapiComparePN: + .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 + + lbu $2,15($5) + lbu $3,15($4) + nop + subu $2,$2,$3 + andi $2,$2,0x80 + bne $2,$0,$L122 + move $6,$0 + + li $6,16 # 0x10 +$L131: + addu $2,$4,$6 + addu $3,$5,$6 + lbu $7,-1($2) + lbu $3,-1($3) + addiu $2,$6,-1 + sll $6,$2,24 + beq $7,$3,$L126 + sra $6,$6,24 + + sltu $2,$3,$7 + beq $2,$0,$L122 + li $6,-1 # 0xffffffffffffffff + + j $L122 + move $6,$0 + +$L126: + bgtz $6,$L131 + nop + + li $6,-1 # 0xffffffffffffffff +$L122: + j $31 + move $2,$6 + + .set macro + .set reorder + .end WapiComparePN + .section .text.WapiIncreasePN,"ax",@progbits + .align 2 + .globl WapiIncreasePN + .ent WapiIncreasePN + .type WapiIncreasePN, @function +WapiIncreasePN: + .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 + + andi $5,$5,0x00ff + move $8,$0 +$L141: + addu $6,$4,$8 + lbu $2,0($6) + addiu $3,$8,1 + andi $8,$3,0x00ff + andi $3,$2,0x00ff + addu $3,$3,$5 + slt $3,$3,256 + addu $7,$5,$2 + sltu $9,$8,16 + beq $3,$0,$L139 + li $5,1 # 0x1 + + li $2,-1 # 0xffffffffffffffff + j $31 + sb $7,0($6) + +$L139: + bne $9,$0,$L141 + sb $7,0($6) + + j $31 + move $2,$0 + + .set macro + .set reorder + .end WapiIncreasePN + .rdata + .align 2 +$LC4: + .ascii "base key expansion for key and additional nonce\000" + .align 2 +$LC3: + .ascii "preshared key expansion for authentication and key negot" + .ascii "iation\000" + .section .text.wapiSetBK,"ax",@progbits + .align 2 + .globl wapiSetBK + .ent wapiSetBK + .type wapiSetBK, @function +wapiSetBK: + .set nomips16 + .frame $sp,192,$31 # vars= 144, regs= 6/0, args= 24, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-192 + sw $20,184($sp) + sw $19,180($sp) + sw $18,176($sp) + sw $31,188($sp) + sw $17,172($sp) + sw $16,168($sp) + lw $16,6676($4) + lui $2,%hi($LC4) + addiu $18,$2,%lo($LC4) + lw $3,360($16) + lui $2,%hi($LC3) + addiu $19,$2,%lo($LC3) + li $2,2 # 0x2 + move $20,$4 + lw $17,652($16) + bne $3,$2,$L145 + move $4,$19 + + jal strlen + nop + + lw $4,8($17) + move $7,$2 + move $6,$19 + lw $5,5236($4) + addiu $2,$16,456 + j $L151 + addiu $4,$4,5204 + +$L145: + addiu $19,$sp,40 + li $2,1 # 0x1 + move $4,$19 + bne $3,$2,$L146 + li $6,64 # 0x40 + + lw $5,908($17) + jal memcpy + addiu $5,$5,24 + + jal strlen + move $4,$18 + + move $6,$2 + move $5,$18 + jal memcpy + addiu $4,$sp,104 + + jal strlen + move $4,$18 + + lw $4,908($17) + addiu $2,$2,64 + andi $7,$2,0x00ff + move $6,$19 + li $5,24 # 0x18 + addiu $2,$16,456 +$L151: + sw $2,16($sp) + li $2,16 # 0x10 + jal KD_hmac_sha256 + sw $2,20($sp) + +$L146: + lw $2,8($17) + addiu $4,$sp,30 + lw $2,892($2) + nop + andi $3,$2,0x10 + andi $2,$2,0x8 + beq $2,$0,$L148 + li $6,6 # 0x6 + + lw $5,4($17) + jal memcpy + addiu $5,$5,320 + + addiu $5,$20,6070 + addiu $4,$sp,24 + jal memcpy + li $6,6 # 0x6 + + j $L152 + addiu $2,$16,472 + +$L148: + beq $3,$0,$L149 + addiu $4,$sp,24 + + lw $5,4($17) + jal memcpy + addiu $5,$5,320 + + addiu $5,$20,6070 + addiu $4,$sp,30 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$16,288 + jal GenerateRandomData + li $5,32 # 0x20 + +$L149: + addiu $2,$16,472 +$L152: + sw $2,16($sp) + addiu $4,$16,456 + li $2,16 # 0x10 + addiu $6,$sp,24 + li $5,16 # 0x10 + li $7,12 # 0xc + jal KD_hmac_sha256 + sw $2,20($sp) + + li $2,5 # 0x5 + sw $2,364($16) + lw $31,188($sp) + lw $20,184($sp) + lw $19,180($sp) + lw $18,176($sp) + lw $17,172($sp) + lw $16,168($sp) + j $31 + addiu $sp,$sp,192 + + .set macro + .set reorder + .end wapiSetBK + .section .text.WapiRecvMulticastKeyNotification,"ax",@progbits + .align 2 + .ent WapiRecvMulticastKeyNotification + .type WapiRecvMulticastKeyNotification, @function +WapiRecvMulticastKeyNotification: + .set nomips16 + .frame $sp,104,$31 # vars= 32, regs= 9/0, args= 32, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-104 + sw $18,72($sp) + sw $31,96($sp) + sw $23,92($sp) + sw $22,88($sp) + sw $21,84($sp) + sw $20,80($sp) + sw $19,76($sp) + sw $17,68($sp) + sw $16,64($sp) + lbu $23,3($4) + li $2,11 # 0xb + move $18,$4 + li $7,-1 # 0xffffffffffffffff + bne $23,$2,$L153 + move $4,$5 + + lbu $2,12($18) + lw $16,6676($4) + addiu $21,$18,12 + andi $2,$2,0x20 + addiu $22,$sp,32 + li $5,16 # 0x10 + move $6,$21 + lw $20,652($16) + bne $2,$0,$L153 + addiu $4,$16,568 + + lhu $7,6($18) + li $2,20 # 0x14 + sw $2,20($sp) + addiu $7,$7,-32 + jal sha256_hmac + sw $22,16($sp) + + lhu $5,6($18) + move $4,$22 + li $6,20 # 0x14 + addu $5,$18,$5 + jal memcmp + addiu $5,$5,-20 + + addiu $17,$20,960 + addiu $19,$18,43 + move $4,$19 + move $5,$17 + bne $2,$0,$L153 + li $7,-1 # 0xffffffffffffffff + + jal WapiComparePN + nop + + li $3,-1 # 0xffffffffffffffff + move $5,$19 + move $4,$17 + li $6,16 # 0x10 + beq $2,$3,$L153 + li $7,-1 # 0xffffffffffffffff + + jal memcpy + nop + + lbu $7,47($21) + addiu $2,$20,912 + sw $2,16($sp) + addiu $2,$sp,56 + move $5,$17 + addiu $6,$18,60 + addiu $4,$16,552 + sw $2,20($sp) + li $2,1 # 0x1 + jal WapiSMS4ForMNKEncrypt + sw $2,24($sp) + + jal wapiInstallMCastKey + move $4,$20 + + lw $3,364($16) + li $2,9 # 0x9 + bne $3,$2,$L158 + nop + + lw $2,352($16) + sw $23,364($16) + ori $2,$2,0x800 + sw $2,352($16) +$L158: + lw $3,652($16) + nop + lw $2,1304($3) + nop + bne $2,$0,$L159 + move $7,$0 + + lw $2,8($3) + nop + lw $2,5260($2) + nop + sw $2,1304($3) +$L159: + lw $2,352($16) + li $3,-253 # 0xffffffffffffff03 + and $2,$2,$3 + sw $2,352($16) +$L153: + lw $31,96($sp) + lw $23,92($sp) + lw $22,88($sp) + lw $21,84($sp) + lw $20,80($sp) + lw $19,76($sp) + lw $18,72($sp) + lw $17,68($sp) + lw $16,64($sp) + move $2,$7 + j $31 + addiu $sp,$sp,104 + + .set macro + .set reorder + .end WapiRecvMulticastKeyNotification + .section .text.wapiRecvUnicastKeyAgreementResponse,"ax",@progbits + .align 2 + .ent wapiRecvUnicastKeyAgreementResponse + .type wapiRecvUnicastKeyAgreementResponse, @function +wapiRecvUnicastKeyAgreementResponse: + .set nomips16 + .frame $sp,176,$31 # vars= 120, regs= 8/0, args= 24, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-176 + sw $22,168($sp) + sw $21,164($sp) + sw $20,160($sp) + sw $31,172($sp) + sw $19,156($sp) + sw $18,152($sp) + sw $17,148($sp) + sw $16,144($sp) + lbu $3,3($4) + li $2,9 # 0x9 + move $20,$4 + move $21,$5 + move $22,$6 + bne $3,$2,$L160 + li $4,-1 # 0xffffffffffffffff + + lbu $2,12($20) + lw $17,6676($5) + andi $2,$2,0x10 + beq $2,$0,$L162 + addiu $18,$20,12 + + lw $2,352($17) + lbu $3,17($18) + srl $2,$2,15 + andi $2,$2,0x1 + beq $3,$2,$L160 + nop + +$L162: + lw $2,352($17) + nop + srl $3,$2,15 + andi $2,$2,0x1000 + beq $2,$0,$L165 + andi $19,$3,0x1 + + xori $2,$3,0x1 + andi $19,$2,0x1 +$L165: + addiu $4,$18,1 + addiu $5,$17,472 + jal memcmp + li $6,16 # 0x10 + + bne $2,$0,$L160 + li $4,-1 # 0xffffffffffffffff + + lbu $2,17($18) + nop + beq $2,$19,$L179 + addiu $4,$18,62 + + lw $2,352($17) + nop + andi $2,$2,0x1000 + beq $2,$0,$L160 + li $4,-1 # 0xffffffffffffffff + + addiu $4,$18,62 +$L179: + addiu $5,$17,288 + jal memcmp + li $6,32 # 0x20 + + bne $2,$0,$L160 + li $4,-1 # 0xffffffffffffffff + + lw $2,652($17) + addiu $4,$18,18 + li $6,6 # 0x6 + lw $5,4($2) + jal memcmp + addiu $5,$5,320 + + bne $2,$0,$L160 + li $4,-1 # 0xffffffffffffffff + + addiu $4,$18,24 + addiu $5,$21,6070 + jal memcmp + li $6,6 # 0x6 + + beq $2,$0,$L166 + nop + + j $L160 + li $4,-1 # 0xffffffffffffffff + +$L166: + li $6,32 # 0x20 + addiu $4,$17,256 + jal memcpy + addiu $5,$18,30 + + move $4,$21 + jal wapiDerivedUCastKey + addiu $5,$sp,24 + + lhu $7,6($20) + li $2,20 # 0x14 + addiu $16,$sp,120 + addiu $4,$sp,56 + addiu $7,$7,-32 + li $5,16 # 0x10 + move $6,$18 + sw $2,20($sp) + jal sha256_hmac + sw $16,16($sp) + + lhu $5,6($20) + move $4,$16 + li $6,20 # 0x14 + addu $5,$20,$5 + jal memcmp + addiu $5,$5,-20 + + bne $2,$0,$L160 + li $4,-1 # 0xffffffffffffffff + + lbu $6,352($17) + addiu $4,$18,94 + jal memcmp + move $5,$17 + + beq $2,$0,$L170 + li $2,27 # 0x1b + + li $4,-2 # 0xfffffffffffffffe + j $L160 + sw $2,0($22) + +$L170: + move $4,$21 + move $5,$19 + jal wapiInstallUCastKey + addiu $6,$sp,24 + + lw $4,656($17) + nop + beq $4,$0,$L171 + nop + + jal kfree + nop + + sw $0,656($17) + sw $0,592($17) +$L171: + lw $3,364($17) + li $2,6 # 0x6 + bne $3,$2,$L172 + li $3,8 # 0x8 + + lw $2,352($17) + sw $3,364($17) + ori $2,$2,0x6000 + sw $2,352($17) +$L172: + lw $2,652($17) + nop + lw $4,8($2) + li $2,2 # 0x2 + lw $3,5240($4) + nop + beq $3,$2,$L174 + li $2,4 # 0x4 + + bne $3,$2,$L173 + addiu $16,$17,624 + +$L174: + lw $3,5244($4) + lui $5,%hi(jiffies) + sll $2,$3,1 + addu $2,$2,$3 + sll $2,$2,3 + addu $2,$2,$3 + sll $2,$2,2 + bgez $2,$L175 + addiu $4,$17,624 + + lw $2,%lo(jiffies)($5) + li $5,2147418112 # 0x7fff0000 + ori $5,$5,0xffff + j $L178 + addu $5,$2,$5 + +$L175: + lw $5,%lo(jiffies)($5) + nop + addu $5,$5,$2 +$L178: + jal mod_timer + nop + + j $L177 + nop + +$L173: + jal del_timer + move $4,$16 + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lui $2,%hi(wapiUCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiUCastUpdateKeyTimeout) + sw $21,640($17) + sw $2,636($17) +$L177: + lw $2,352($17) + lw $4,652($17) + li $3,-253 # 0xffffffffffffff03 + and $2,$2,$3 + sw $2,352($17) + lw $2,8($4) + move $4,$0 + lw $2,5248($2) + nop + sw $2,596($17) +$L160: + lw $31,172($sp) + lw $22,168($sp) + lw $21,164($sp) + lw $20,160($sp) + lw $19,156($sp) + lw $18,152($sp) + lw $17,148($sp) + lw $16,144($sp) + move $2,$4 + j $31 + addiu $sp,$sp,176 + + .set macro + .set reorder + .end wapiRecvUnicastKeyAgreementResponse + .section .text.wapiRecvMulticastKeyResponse,"ax",@progbits + .align 2 + .ent wapiRecvMulticastKeyResponse + .type wapiRecvMulticastKeyResponse, @function +wapiRecvMulticastKeyResponse: + .set nomips16 + .frame $sp,72,$31 # vars= 24, regs= 6/0, args= 24, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + sw $20,64($sp) + sw $19,60($sp) + sw $31,68($sp) + sw $18,56($sp) + sw $17,52($sp) + sw $16,48($sp) + lbu $3,3($4) + li $2,12 # 0xc + move $19,$4 + move $20,$5 + bne $3,$2,$L180 + li $4,-1 # 0xffffffffffffffff + + lw $17,6676($5) + addiu $16,$19,12 + lbu $3,2($16) + lw $2,352($17) + lw $18,652($17) + srl $2,$2,15 + andi $2,$2,0x1 + bne $3,$2,$L180 + nop + + lw $4,1232($18) + lbu $3,1($16) + srl $2,$4,15 + andi $2,$2,0x1 + beq $3,$2,$L184 + andi $2,$4,0x2000 + + beq $2,$0,$L180 + li $4,-1 # 0xffffffffffffffff + +$L184: + addiu $4,$19,27 + addiu $5,$18,960 + jal memcmp + li $6,16 # 0x10 + + bne $2,$0,$L180 + li $4,-1 # 0xffffffffffffffff + + lw $5,4($18) + addiu $4,$19,15 + li $6,6 # 0x6 + jal memcmp + addiu $5,$5,320 + + bne $2,$0,$L180 + li $4,-1 # 0xffffffffffffffff + + addiu $4,$19,21 + addiu $5,$20,6070 + jal memcmp + li $6,6 # 0x6 + + beq $2,$0,$L182 + li $2,20 # 0x14 + + j $L180 + li $4,-1 # 0xffffffffffffffff + +$L182: + move $6,$16 + addiu $16,$sp,24 + addiu $4,$17,568 + li $5,16 # 0x10 + li $7,31 # 0x1f + sw $2,20($sp) + jal sha256_hmac + sw $16,16($sp) + + move $4,$16 + addiu $5,$19,43 + jal memcmp + li $6,20 # 0x14 + + bne $2,$0,$L180 + li $4,-1 # 0xffffffffffffffff + + addiu $16,$17,600 + li $2,13 # 0xd + move $4,$16 + jal del_timer + sw $2,364($17) + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lw $2,352($17) + li $3,-253 # 0xffffffffffffff03 + sw $20,616($17) + and $2,$2,$3 + ori $2,$2,0x800 + sw $2,352($17) + lui $2,%hi(wapiResendTimeout) + addiu $2,$2,%lo(wapiResendTimeout) + sw $2,612($17) + lw $2,1304($18) + nop + bne $2,$0,$L186 + nop + + lw $2,8($18) + nop + lw $2,5260($2) + nop + sw $2,1304($18) +$L186: + lw $2,1232($18) + nop + andi $2,$2,0x1000 + beq $2,$0,$L180 + move $4,$0 + + lw $4,8($18) + li $2,2 # 0x2 + lw $3,5252($4) + nop + beq $3,$2,$L188 + li $2,4 # 0x4 + + bne $3,$2,$L187 + nop + +$L188: + lw $3,5256($4) + lui $5,%hi(jiffies) + sll $2,$3,1 + addu $2,$2,$3 + sll $2,$2,3 + addu $2,$2,$3 + sll $2,$2,2 + bgez $2,$L189 + addiu $4,$18,1308 + + lw $2,%lo(jiffies)($5) + li $5,2147418112 # 0x7fff0000 + ori $5,$5,0xffff + j $L191 + addu $5,$2,$5 + +$L189: + lw $5,%lo(jiffies)($5) + nop + addu $5,$5,$2 +$L191: + jal mod_timer + nop + + lw $2,1232($18) + li $3,-4097 # 0xffffffffffffefff + and $2,$2,$3 + sw $2,1232($18) +$L187: + move $4,$0 +$L180: + lw $31,68($sp) + lw $20,64($sp) + lw $19,60($sp) + lw $18,56($sp) + lw $17,52($sp) + lw $16,48($sp) + move $2,$4 + j $31 + addiu $sp,$sp,72 + + .set macro + .set reorder + .end wapiRecvMulticastKeyResponse + .section .text.wapiIEInfoInstall,"ax",@progbits + .align 2 + .globl wapiIEInfoInstall + .ent wapiIEInfoInstall + .type wapiIEInfoInstall, @function +wapiIEInfoInstall: + .set nomips16 + .frame $sp,40,$31 # vars= 0, regs= 6/0, args= 16, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + addiu $sp,$sp,-40 + sw $20,32($sp) + sw $19,28($sp) + sw $18,24($sp) + sw $16,16($sp) + sw $31,36($sp) + sw $17,20($sp) + lw $17,6676($5) + lui $20,%hi(WAPI_KM_OUI) + move $19,$5 + addiu $16,$17,6 + move $18,$4 + addiu $5,$20,%lo(WAPI_KM_OUI) + move $4,$16 + .set noreorder + .set nomacro + jal memcmp + li $6,3 # 0x3 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L192 + li $2,31 # 0x1f + .set macro + .set reorder + + lw $2,8($18) + lbu $3,3($16) + lw $2,5192($2) + #nop + and $2,$3,$2 + .set noreorder + .set nomacro + beq $2,$0,$L192 + li $2,31 # 0x1f + .set macro + .set reorder + + lw $2,6676($19) + addiu $16,$17,12 + move $4,$16 + sw $3,360($2) + addiu $5,$20,%lo(WAPI_KM_OUI) + .set noreorder + .set nomacro + jal memcmp + li $6,3 # 0x3 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L192 + li $2,28 # 0x1c + .set macro + .set reorder + + lbu $19,3($16) + li $2,1 # 0x1 + .set noreorder + .set nomacro + bne $19,$2,$L192 + li $2,28 # 0x1c + .set macro + .set reorder + + addiu $16,$17,16 + addiu $5,$20,%lo(WAPI_KM_OUI) + move $4,$16 + .set noreorder + .set nomacro + jal memcmp + li $6,3 # 0x3 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L192 + li $2,29 # 0x1d + .set macro + .set reorder + + lbu $2,3($16) + #nop + .set noreorder + .set nomacro + bne $2,$19,$L192 + li $2,29 # 0x1d + .set macro + .set reorder + +#APP + raw_local_irq_save $16 +#NO_APP + addiu $2,$18,978 + sw $2,908($18) + .set noreorder + .set nomacro + jal wapiSetIE + move $4,$18 + .set macro + .set reorder + + lbu $4,1232($18) + #nop + addiu $2,$4,2 + sb $2,1233($18) + li $2,68 + sb $2,976($18) + sb $4,977($18) +#APP + raw_local_irq_restore $16 +#NO_APP + move $2,$0 +$L192: + lw $31,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + .set noreorder + .set nomacro + j $31 + addiu $sp,$sp,40 + .set macro + .set reorder + + .end wapiIEInfoInstall + .section .text.wapiSetBKByCA,"ax",@progbits + .align 2 + .globl wapiSetBKByCA + .ent wapiSetBKByCA + .type wapiSetBKByCA, @function +wapiSetBKByCA: + .set nomips16 + .frame $sp,64,$31 # vars= 16, regs= 6/0, args= 24, gp= 0 + .mask 0x801f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $31,60($sp) + sw $20,56($sp) + sw $19,52($sp) + sw $16,40($sp) + sw $18,48($sp) + sw $17,44($sp) + lw $17,6676($4) + lui $16,%hi($LC3) + addiu $16,$16,%lo($LC3) + lw $18,652($17) + move $19,$4 + jal strlen + move $4,$16 + + lw $4,8($18) + move $7,$2 + move $6,$16 + lw $5,5236($4) + addiu $16,$17,456 + li $20,16 # 0x10 + addiu $4,$4,5204 + sw $16,16($sp) + jal KD_hmac_sha256 + sw $20,20($sp) + + lw $5,4($18) + addiu $4,$sp,24 + li $6,6 # 0x6 + jal memcpy + addiu $5,$5,320 + + addiu $4,$sp,30 + addiu $5,$19,6070 + jal memcpy + li $6,6 # 0x6 + + addiu $2,$17,472 + move $4,$16 + addiu $6,$sp,24 + li $5,16 # 0x10 + li $7,12 # 0xc + sw $2,16($sp) + jal KD_hmac_sha256 + sw $20,20($sp) + + addiu $4,$17,288 + jal GenerateRandomData + li $5,32 # 0x20 + + lw $3,6676($19) + lw $31,60($sp) + lw $20,56($sp) + lw $19,52($sp) + lw $18,48($sp) + lw $17,44($sp) + lw $16,40($sp) + li $2,5 # 0x5 + addiu $sp,$sp,64 + j $31 + sw $2,364($3) + + .set macro + .set reorder + .end wapiSetBKByCA + .section .text.wapiSendMulticastKeyNotification,"ax",@progbits + .align 2 + .globl wapiSendMulticastKeyNotification + .ent wapiSendMulticastKeyNotification + .type wapiSendMulticastKeyNotification, @function +wapiSendMulticastKeyNotification: + .set nomips16 + .frame $sp,72,$31 # vars= 0, regs= 9/0, args= 32, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-72 + sw $23,60($sp) + sw $21,52($sp) + sw $20,48($sp) + sw $16,32($sp) + sw $31,64($sp) + sw $22,56($sp) + sw $19,44($sp) + sw $18,40($sp) + sw $17,36($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + addiu $21,$4,960 + move $16,$5 + move $20,$4 + li $5,1 # 0x1 + move $4,$21 + lw $19,6676($16) + jal WapiIncreasePN + addiu $23,$2,100 + + bne $2,$0,$L223 + move $4,$20 + + jal wapiFreeAllSta + li $5,1 # 0x1 + + j $L222 + nop + +$L223: + jal alloc_skb_from_queue + move $4,$20 + + bne $2,$0,$L238 + move $18,$2 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L227 + move $18,$2 + +$L238: + lw $4,176($18) + addiu $22,$16,6070 + li $16,-30540 + sh $16,106($18) + move $5,$22 + jal memcpy + li $6,6 # 0x6 + + lw $4,176($18) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($18) + move $4,$18 + li $5,14 # 0xe + jal skb_put + sh $16,12($2) + + lw $2,84($18) + lw $4,176($18) + lw $3,4($20) + addu $16,$4,$2 + li $2,12 + sw $3,24($18) + sh $2,6($16) + li $2,1 # 0x1 + sh $2,0($16) + sb $2,2($16) + li $2,11 # 0xb + sb $2,3($16) + sh $0,4($16) + sb $0,10($16) + sb $0,11($16) + lhu $2,356($19) + nop + addiu $2,$2,1 + sh $2,356($19) + lhu $3,6($16) + sh $2,8($16) + addu $17,$16,$3 + sb $0,0($17) + lw $2,364($19) + lw $3,1232($20) + addiu $2,$2,-9 + sltu $2,$2,2 + bne $2,$0,$L239 + srl $2,$3,15 + + xori $2,$2,0x1 +$L239: + andi $2,$2,0x1 + sb $2,1($17) + lw $2,352($19) + addiu $4,$17,3 + li $6,6 # 0x6 + srl $2,$2,15 + andi $2,$2,0x1 + sb $2,2($17) + lw $5,4($20) + jal memcpy + addiu $5,$5,320 + + move $5,$22 + addiu $4,$17,9 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$17,15 + addiu $5,$20,928 + jal memcpy + li $6,16 # 0x10 + + addiu $4,$17,31 + move $5,$21 + jal memcpy + li $6,16 # 0x10 + + lhu $2,6($16) + addiu $3,$17,47 + move $5,$21 + addiu $2,$2,47 + sh $2,6($16) + addiu $4,$19,552 + addiu $2,$17,48 + addiu $6,$20,912 + li $7,16 # 0x10 + sw $2,16($sp) + sw $3,20($sp) + jal WapiSMS4ForMNKEncrypt + sw $0,24($sp) + + lbu $3,47($17) + lhu $2,6($16) + move $6,$17 + addiu $4,$19,568 + addu $2,$2,$3 + addiu $2,$2,1 + andi $7,$2,0xffff + addu $3,$17,$7 + sh $2,6($16) + addiu $3,$3,-12 + li $2,20 # 0x14 + addiu $7,$7,-12 + li $5,16 # 0x10 + sw $3,16($sp) + jal sha256_hmac + sw $2,20($sp) + + lhu $5,6($16) + move $4,$18 + addiu $5,$5,20 + sh $5,6($16) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($18) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L231 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$18 + + li $3,1 # 0x1 + beq $2,$3,$L234 + nop + + j $L240 + nop + +$L231: + jal rtl8192cd_start_xmit + move $4,$18 + + beq $2,$0,$L234 + nop + +$L240: + jal dev_kfree_skb_any + move $4,$18 + +$L234: + lw $3,364($19) + li $2,9 # 0x9 + bne $3,$2,$L241 + addiu $4,$19,600 + + li $2,10 # 0xa + sw $2,364($19) +$L227: + addiu $4,$19,600 +$L241: + jal mod_timer + move $5,$23 + +$L222: + lw $31,64($sp) + lw $23,60($sp) + lw $22,56($sp) + lw $21,52($sp) + lw $20,48($sp) + lw $19,44($sp) + lw $18,40($sp) + lw $17,36($sp) + lw $16,32($sp) + move $2,$0 + j $31 + addiu $sp,$sp,72 + + .set macro + .set reorder + .end wapiSendMulticastKeyNotification + .section .text.wapiUpdateMSK,"ax",@progbits + .align 2 + .globl wapiUpdateMSK + .ent wapiUpdateMSK + .type wapiUpdateMSK, @function +wapiUpdateMSK: + .set nomips16 + .frame $sp,48,$31 # vars= 0, regs= 8/0, args= 16, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-48 + sw $21,36($sp) + sw $17,20($sp) + sw $31,44($sp) + sw $22,40($sp) + sw $20,32($sp) + sw $19,28($sp) + sw $18,24($sp) + sw $16,16($sp) + lw $2,8($4) + move $17,$4 + li $3,65536 # 0x10000 + lw $4,5256($2) + ori $3,$3,0x2b6c + addu $3,$17,$3 + sll $2,$4,1 + addu $2,$2,$4 + lw $5,0($3) + sll $2,$2,3 + addu $2,$2,$4 + beq $5,$3,$L245 + sll $21,$2,2 + + addiu $4,$17,912 + jal GenerateRandomData + li $5,16 # 0x10 + + lw $2,1232($17) + li $3,-16385 # 0xffffffffffffbfff + move $20,$17 + and $2,$2,$3 + li $3,-8193 # 0xffffffffffffdfff + and $2,$2,$3 + sw $2,1232($17) + li $22,30 # 0x1e +$L253: + li $2,65536 # 0x10000 + ori $2,$2,0x2a74 + addu $19,$20,$2 + lw $18,0($19) + nop +$L265: + beq $18,$19,$L262 + move $16,$18 + + lw $2,6676($18) + move $5,$18 + lw $2,364($2) + move $4,$17 + sltu $2,$2,13 + lw $18,0($18) + beq $2,$0,$L251 + li $6,25 # 0x19 + + jal wapiDeauthSta + nop + + j $L265 + nop + +$L251: + lw $2,1232($17) + li $3,-1025 # 0xfffffffffffffbff + ori $2,$2,0x2000 + sw $2,1232($17) + lw $4,6676($16) + nop + lw $2,352($4) + nop + and $2,$2,$3 + sw $2,352($4) + lw $2,6676($16) + nop + sh $0,358($2) + lhu $2,1236($17) + lw $3,6676($16) + nop + sh $2,356($3) + lhu $2,1236($17) + nop + addiu $2,$2,8 + sh $2,1236($17) + lw $4,6676($16) + jal wapiReleaseFragementQueue + nop + + move $4,$17 + jal wapiSendMulticastKeyNotification + move $5,$16 + + j $L265 + nop + +$L262: + addiu $22,$22,-1 + bgez $22,$L253 + addiu $20,$20,8 + + lw $2,1232($17) + li $3,600 # 0x258 + andi $2,$2,0x2000 + movn $21,$3,$2 #RLX4181/RLX4281:conditional move +$L245: + addiu $16,$17,1308 + jal del_timer + move $4,$16 + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lw $2,8($17) + lui $3,%hi(wapiMCastUpdateKeyTimeout) + addiu $3,$3,%lo(wapiMCastUpdateKeyTimeout) + sw $3,1320($17) + sw $17,1324($17) + lw $3,5252($2) + li $2,2 # 0x2 + beq $3,$2,$L256 + li $2,4 # 0x4 + + bne $3,$2,$L255 + nop + +$L256: + bgez $21,$L257 + lui $2,%hi(jiffies) + + lw $2,%lo(jiffies)($2) + li $5,2147418112 # 0x7fff0000 + ori $5,$5,0xffff + addu $5,$2,$5 + j $L264 + move $4,$16 + +$L257: + lw $5,%lo(jiffies)($2) + move $4,$16 + addu $5,$5,$21 +$L264: + jal mod_timer + nop + +$L255: + lw $31,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + li $2,1 # 0x1 + j $31 + addiu $sp,$sp,48 + + .set macro + .set reorder + .end wapiUpdateMSK + .section .text.wapiMCastUpdateKeyTimeout,"ax",@progbits + .align 2 + .ent wapiMCastUpdateKeyTimeout + .type wapiMCastUpdateKeyTimeout, @function +wapiMCastUpdateKeyTimeout: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 + .mask 0x80070000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-32 + sw $16,16($sp) + sw $31,28($sp) + sw $18,24($sp) + sw $17,20($sp) + lw $2,1232($4) + nop + andi $2,$2,0x2000 + beq $2,$0,$L267 + move $16,$4 + + addiu $17,$4,1308 + jal del_timer + move $4,$17 + + move $4,$17 + move $5,$0 + jal init_timer_key + move $6,$0 + + lw $4,1232($16) + li $18,-8193 # 0xffffffffffffdfff + li $3,65536 # 0x10000 + and $2,$4,$18 + sw $2,1232($16) + lui $2,%hi(wapiMCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiMCastUpdateKeyTimeout) + addu $3,$16,$3 + andi $4,$4,0x4000 + sw $2,1320($16) + sw $16,1324($16) + lw $2,15804($3) + bne $4,$0,$L268 + move $4,$16 + + jal wapiFreeAllSta + move $5,$0 + + bne $2,$0,$L277 + li $3,-16385 # 0xffffffffffffbfff + + lw $2,1232($16) + nop + and $2,$2,$3 + li $3,-65536 # 0xffffffffffff0000 + ori $3,$3,0x7fff + and $2,$2,$3 + and $2,$2,$18 + ori $2,$2,0x1000 + j $L266 + sw $2,1232($16) + +$L268: + beq $2,$0,$L266 + nop + +$L277: + lw $3,8($16) + li $2,2 # 0x2 + lw $5,5252($3) + nop + beq $5,$2,$L271 + li $2,4 # 0x4 + + bne $5,$2,$L266 + nop + +$L271: + lw $3,5256($3) + nop + sll $2,$3,1 + addu $2,$2,$3 + sll $2,$2,3 + addu $2,$2,$3 + sll $2,$2,2 + bgez $2,$L272 + lui $4,%hi(jiffies) + + lw $2,%lo(jiffies)($4) + li $5,2147418112 # 0x7fff0000 + ori $5,$5,0xffff + addu $5,$2,$5 + j $L278 + move $4,$17 + +$L272: + lw $5,%lo(jiffies)($4) + move $4,$17 + j $L278 + addu $5,$5,$2 + +$L267: + li $2,65536 # 0x10000 + addu $2,$4,$2 + lw $2,15776($2) + nop + beq $2,$0,$L275 + nop + + lw $2,6676($2) + nop + beq $2,$0,$L275 + nop + + lw $2,352($2) + nop + andi $2,$2,0x1000 + beq $2,$0,$L275 + lui $2,%hi(jiffies) + + lw $5,%lo(jiffies)($2) + addiu $4,$4,1308 + addiu $5,$5,100 +$L278: + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j mod_timer + addiu $sp,$sp,32 + +$L275: + move $4,$16 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + move $5,$0 + j wapiUpdateMSK + addiu $sp,$sp,32 + +$L266: + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,32 + + .set macro + .set reorder + .end wapiMCastUpdateKeyTimeout + .section .text.wapiSendUnicastKeyAgrementConfirm,"ax",@progbits + .align 2 + .globl wapiSendUnicastKeyAgrementConfirm + .ent wapiSendUnicastKeyAgrementConfirm + .type wapiSendUnicastKeyAgrementConfirm, @function +wapiSendUnicastKeyAgrementConfirm: + .set nomips16 + .frame $sp,56,$31 # vars= 0, regs= 7/0, args= 24, gp= 0 + .mask 0x803f0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $20,40($sp) + sw $18,32($sp) + sw $17,28($sp) + sw $31,48($sp) + sw $21,44($sp) + sw $19,36($sp) + sw $16,24($sp) + move $18,$5 + jal alloc_skb_from_queue + move $20,$4 + + bne $2,$0,$L294 + move $17,$2 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L283 + move $17,$2 + +$L294: + lw $4,176($17) + li $16,-30540 + addiu $21,$18,6070 + sh $16,106($17) + move $5,$21 + jal memcpy + li $6,6 # 0x6 + + lw $4,176($17) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($17) + move $4,$17 + li $5,14 # 0xe + jal skb_put + sh $16,12($2) + + lw $2,4($20) + lw $3,84($17) + lw $4,176($17) + sw $2,24($17) + lw $19,6676($18) + li $2,12 + addu $18,$4,$3 + sh $2,6($18) + li $2,1 # 0x1 + sh $2,0($18) + sb $2,2($18) + li $2,10 # 0xa + sb $2,3($18) + sh $0,4($18) + sb $0,10($18) + sb $0,11($18) + lhu $2,356($19) + nop + addiu $2,$2,1 + sh $2,356($19) + lhu $3,6($18) + sh $2,8($18) + addu $16,$18,$3 + lbu $2,0($16) + nop + andi $3,$2,0x10 + sb $3,0($16) + lw $2,364($19) + nop + addiu $2,$2,-8 + sltu $2,$2,2 + beq $2,$0,$L285 + ori $2,$3,0x10 + + sb $0,0($16) + j $L286 + sb $0,17($16) + +$L285: + sb $2,0($16) + lw $2,352($19) + nop + srl $2,$2,15 + xori $2,$2,0x1 + andi $2,$2,0x1 + sb $2,17($16) +$L286: + addiu $4,$16,1 + addiu $5,$19,472 + jal memcpy + li $6,16 # 0x10 + + lw $5,4($20) + addiu $4,$16,18 + li $6,6 # 0x6 + jal memcpy + addiu $5,$5,320 + + move $5,$21 + addiu $4,$16,24 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$16,30 + addiu $5,$19,256 + jal memcpy + li $6,32 # 0x20 + + lw $5,652($19) + lbu $6,1233($20) + addiu $4,$16,62 + jal memcpy + addiu $5,$5,976 + + lbu $7,1233($20) + move $6,$16 + addiu $4,$19,568 + addu $2,$16,$7 + addiu $2,$2,62 + addiu $7,$7,62 + li $5,16 # 0x10 + sw $2,16($sp) + li $2,20 # 0x14 + jal sha256_hmac + sw $2,20($sp) + + lbu $2,1233($20) + lhu $5,6($18) + move $4,$17 + addu $5,$5,$2 + addiu $5,$5,82 + sh $5,6($18) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($17) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L287 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$17 + + li $3,1 # 0x1 + beq $2,$3,$L290 + nop + + j $L295 + nop + +$L287: + jal rtl8192cd_start_xmit + move $4,$17 + + beq $2,$0,$L290 + nop + +$L295: + jal dev_kfree_skb_any + move $4,$17 + +$L290: + lw $3,364($19) + li $2,8 # 0x8 + bne $3,$2,$L283 + li $2,9 # 0x9 + + sw $2,364($19) +$L283: + lw $31,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + move $2,$0 + j $31 + addiu $sp,$sp,56 + + .set macro + .set reorder + .end wapiSendUnicastKeyAgrementConfirm + .section .text.wapiSendUnicastKeyAgrementRequeset,"ax",@progbits + .align 2 + .globl wapiSendUnicastKeyAgrementRequeset + .ent wapiSendUnicastKeyAgrementRequeset + .type wapiSendUnicastKeyAgrementRequeset, @function +wapiSendUnicastKeyAgrementRequeset: + .set nomips16 + .frame $sp,48,$31 # vars= 0, regs= 8/0, args= 16, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-48 + sw $22,40($sp) + sw $20,32($sp) + sw $17,20($sp) + sw $16,16($sp) + sw $31,44($sp) + sw $21,36($sp) + sw $19,28($sp) + sw $18,24($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + move $16,$5 + move $20,$4 + lw $19,6676($5) + jal alloc_skb_from_queue + addiu $22,$2,100 + + bne $2,$0,$L311 + move $17,$2 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L300 + move $17,$2 + +$L311: + lw $4,176($17) + addiu $21,$16,6070 + li $16,-30540 + sh $16,106($17) + move $5,$21 + jal memcpy + li $6,6 # 0x6 + + lw $4,176($17) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($17) + move $4,$17 + li $5,14 # 0xe + jal skb_put + sh $16,12($2) + + lw $2,84($17) + lw $4,176($17) + lw $3,4($20) + addu $18,$4,$2 + li $2,12 + sw $3,24($17) + sh $2,6($18) + li $2,1 # 0x1 + sh $2,0($18) + sb $2,2($18) + li $2,8 # 0x8 + sb $2,3($18) + sh $0,4($18) + sb $0,10($18) + sb $0,11($18) + lhu $2,356($19) + nop + addiu $2,$2,1 + sh $2,356($19) + lhu $3,6($18) + sh $2,8($18) + addu $16,$18,$3 + lbu $2,0($16) + nop + andi $3,$2,0x10 + sb $3,0($16) + lw $2,364($19) + nop + addiu $2,$2,-5 + sltu $2,$2,2 + beq $2,$0,$L302 + ori $2,$3,0x10 + + sb $0,0($16) + sb $0,17($16) + lw $2,352($19) + li $3,-65536 # 0xffffffffffff0000 + ori $3,$3,0x7fff + and $2,$2,$3 + li $3,-4097 # 0xffffffffffffefff + and $2,$2,$3 + j $L303 + sw $2,352($19) + +$L302: + sb $2,0($16) + lw $2,352($19) + nop + srl $2,$2,15 + xori $2,$2,0x1 + andi $2,$2,0x1 + sb $2,17($16) +$L303: + addiu $4,$16,1 + addiu $5,$19,472 + jal memcpy + li $6,16 # 0x10 + + lw $5,4($20) + addiu $4,$16,18 + li $6,6 # 0x6 + jal memcpy + addiu $5,$5,320 + + move $5,$21 + addiu $4,$16,24 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$16,30 + addiu $5,$19,288 + jal memcpy + li $6,32 # 0x20 + + lhu $5,6($18) + move $4,$17 + addiu $5,$5,62 + sh $5,6($18) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($17) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L304 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$17 + + li $3,1 # 0x1 + beq $2,$3,$L307 + nop + + j $L312 + nop + +$L304: + jal rtl8192cd_start_xmit + move $4,$17 + + beq $2,$0,$L307 + nop + +$L312: + jal dev_kfree_skb_any + move $4,$17 + +$L307: + lw $3,364($19) + li $2,5 # 0x5 + bne $3,$2,$L313 + addiu $4,$19,600 + + li $2,6 # 0x6 + sw $2,364($19) +$L300: + addiu $4,$19,600 +$L313: + jal mod_timer + move $5,$22 + + lw $31,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + move $2,$0 + j $31 + addiu $sp,$sp,48 + + .set macro + .set reorder + .end wapiSendUnicastKeyAgrementRequeset + .section .text.wapiUpdateUSK,"ax",@progbits + .align 2 + .globl wapiUpdateUSK + .ent wapiUpdateUSK + .type wapiUpdateUSK, @function +wapiUpdateUSK: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 + .mask 0x80070000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-32 + sw $31,28($sp) + sw $18,24($sp) + sw $17,20($sp) + sw $16,16($sp) + lw $16,6676($5) + move $18,$4 + move $17,$5 + lw $2,352($16) + lw $3,652($16) + sh $0,358($16) + ori $2,$2,0x1000 + sw $2,352($16) + lhu $2,1236($3) + move $4,$16 + sh $2,356($16) + lhu $2,1236($3) + nop + addiu $2,$2,8 + jal wapiReleaseFragementQueue + sh $2,1236($3) + + lui $2,%hi(jiffies) + lw $5,%lo(jiffies)($2) + addiu $4,$16,624 + jal mod_timer + addiu $5,$5,600 + + move $4,$18 + move $5,$17 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j wapiSendUnicastKeyAgrementRequeset + addiu $sp,$sp,32 + + .set macro + .set reorder + .end wapiUpdateUSK + .section .text.wapiUCastUpdateKeyTimeout,"ax",@progbits + .align 2 + .ent wapiUCastUpdateKeyTimeout + .type wapiUCastUpdateKeyTimeout, @function +wapiUCastUpdateKeyTimeout: + .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 + + lw $7,6676($4) + move $8,$4 + move $5,$4 + lw $2,352($7) + lw $3,652($7) + li $6,25 # 0x19 + andi $2,$2,0x1000 + beq $2,$0,$L316 + move $4,$3 + + j wapiDeauthSta + nop + +$L316: + lw $2,1232($3) + addiu $4,$7,624 + andi $2,$2,0x2000 + beq $2,$0,$L318 + move $5,$8 + + lui $2,%hi(jiffies) + lw $5,%lo(jiffies)($2) + j mod_timer + addiu $5,$5,100 + +$L318: + j wapiUpdateUSK + move $4,$3 + + .set macro + .set reorder + .end wapiUCastUpdateKeyTimeout + .section .text.WapiSendActivateAuthenticationPacket,"ax",@progbits + .align 2 + .ent WapiSendActivateAuthenticationPacket + .type WapiSendActivateAuthenticationPacket, @function +WapiSendActivateAuthenticationPacket: + .set nomips16 + .frame $sp,64,$31 # vars= 8, regs= 9/0, args= 16, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $22,48($sp) + sw $21,44($sp) + sw $20,40($sp) + sw $18,32($sp) + sw $31,56($sp) + sw $23,52($sp) + sw $19,36($sp) + sw $17,28($sp) + sw $16,24($sp) + move $22,$7 + lhu $7,2($7) + move $18,$5 + move $21,$6 + addu $2,$22,$7 + addiu $2,$2,4 + lhu $5,2($2) + move $20,$4 + lw $19,6676($18) + addu $2,$2,$5 + addiu $2,$2,4 + lbu $3,1($2) + lbu $2,2($2) + addu $7,$7,$5 + sll $3,$3,8 + or $2,$2,$3 + addu $7,$7,$2 + addiu $7,$7,11 + bne $7,$6,$L320 + li $2,-1 # 0xffffffffffffffff + + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + jal alloc_skb_from_queue + addiu $23,$2,100 + + bne $2,$0,$L387 + move $17,$2 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L325 + move $17,$2 + +$L387: + lw $2,656($19) + nop + bne $2,$0,$L326 + lui $2,%hi(malloc_sizes+76) + +$L331: +$L372: + lw $4,%lo(malloc_sizes+76)($2) + jal kmem_cache_alloc + li $5,32 # 0x20 + + bne $2,$0,$L326 + sw $2,656($19) + + jal dev_kfree_skb_any + move $4,$17 + + j $L389 + addiu $4,$19,600 + +$L326: + lw $4,176($17) + li $16,-30540 + addiu $5,$18,6070 + sh $16,106($17) + jal memcpy + li $6,6 # 0x6 + + lw $4,176($17) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($17) + move $4,$17 + li $5,14 # 0xe + sh $16,12($2) + lw $2,4($20) + jal skb_put + sw $2,24($17) + + lw $3,176($17) + lw $2,84($17) + li $4,1 + addu $16,$3,$2 + li $2,12 + sh $2,6($16) + li $2,3 # 0x3 + sb $4,2($16) + sb $2,3($16) + sh $4,0($16) + sh $0,4($16) + sb $0,10($16) + sb $0,11($16) + lhu $2,356($19) + nop + addiu $2,$2,1 + sh $2,356($19) + lhu $3,6($16) + sh $2,8($16) + addu $18,$16,$3 + lbu $2,0($18) + nop + andi $3,$2,0x1 + sb $3,0($18) + lw $2,364($19) + nop + addiu $2,$2,-1 + sltu $2,$2,2 + beq $2,$0,$L378 + ori $2,$3,0x1 + + sb $0,0($18) + addiu $4,$19,320 + jal GenerateRandomData + li $5,32 # 0x20 + + j $L390 + addiu $4,$18,1 + +$L378: + sb $2,0($18) + addiu $4,$18,1 +$L390: + addiu $5,$19,320 + jal memcpy + li $6,32 # 0x20 + + addiu $4,$18,33 + move $5,$22 + jal memcpy + move $6,$21 + + lhu $5,6($16) + move $4,$17 + addu $5,$21,$5 + addiu $5,$5,33 + sh $5,6($16) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($17) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L380 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$17 + + li $3,1 # 0x1 + beq $2,$3,$L383 + nop + + j $L388 + nop + +$L380: + jal rtl8192cd_start_xmit + move $4,$17 + + beq $2,$0,$L383 + nop + +$L388: + jal dev_kfree_skb_any + move $4,$17 + +$L383: + lw $3,364($19) + li $2,1 # 0x1 + bne $3,$2,$L389 + addiu $4,$19,600 + + lw $4,656($19) + move $5,$22 + jal memcpy + move $6,$21 + + li $2,2 # 0x2 + sw $21,592($19) + sw $2,364($19) +$L325: + addiu $4,$19,600 +$L389: + jal mod_timer + move $5,$23 + + move $2,$0 +$L320: + lw $31,56($sp) + lw $23,52($sp) + lw $22,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + j $31 + addiu $sp,$sp,64 + + .set macro + .set reorder + .end WapiSendActivateAuthenticationPacket + .section .text.WapiSendAuthenticationRspPacket,"ax",@progbits + .align 2 + .ent WapiSendAuthenticationRspPacket + .type WapiSendAuthenticationRspPacket, @function +WapiSendAuthenticationRspPacket: + .set nomips16 + .frame $sp,56,$31 # vars= 0, regs= 10/0, args= 16, gp= 0 + .mask 0xc0ff0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $fp,48($sp) + sw $23,44($sp) + sw $22,40($sp) + sw $21,36($sp) + sw $20,32($sp) + sw $19,28($sp) + sw $17,20($sp) + sw $31,52($sp) + sw $18,24($sp) + sw $16,16($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + move $19,$5 + move $21,$6 + move $fp,$7 + addiu $23,$2,100 + lw $18,6676($5) + jal alloc_skb_from_queue + move $20,$4 + + move $17,$2 + bne $2,$0,$L406 + li $22,1 # 0x1 + + jal dev_alloc_skb + li $4,2688 # 0xa80 + + beq $2,$0,$L395 + move $17,$2 + +$L406: + lw $2,656($18) + nop + bne $2,$0,$L396 + li $16,-30540 + + jal dev_kfree_skb_any + move $4,$17 + + j $L408 + addiu $4,$18,600 + +$L396: + lw $4,176($17) + addiu $5,$19,6070 + sh $16,106($17) + jal memcpy + li $6,6 # 0x6 + + lw $4,176($17) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($17) + move $4,$17 + li $5,14 # 0xe + sh $16,12($2) + lw $2,4($20) + jal skb_put + sw $2,24($17) + + lw $2,84($17) + lw $16,176($17) + move $5,$fp + move $6,$21 + addu $16,$16,$2 + li $2,12 + sh $2,6($16) + li $2,1 + sb $2,2($16) + li $2,5 # 0x5 + sb $2,3($16) + sh $22,0($16) + sh $0,4($16) + sb $0,10($16) + sb $0,11($16) + lhu $2,356($18) + nop + addiu $2,$2,1 + sh $2,356($18) + lhu $4,6($16) + sh $2,8($16) + jal memcpy + addu $4,$16,$4 + + lhu $5,6($16) + move $4,$17 + addu $5,$21,$5 + sh $5,6($16) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($17) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L399 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$17 + + beq $2,$22,$L402 + nop + + j $L407 + nop + +$L399: + jal rtl8192cd_start_xmit + move $4,$17 + + beq $2,$0,$L402 + nop + +$L407: + jal dev_kfree_skb_any + move $4,$17 + +$L402: + lw $3,364($18) + li $2,5 # 0x5 + bne $3,$2,$L408 + addiu $4,$18,600 + + lw $4,656($18) + move $5,$fp + jal memcpy + move $6,$21 + + sw $21,592($18) +$L395: + addiu $4,$18,600 +$L408: + jal mod_timer + move $5,$23 + + lw $31,52($sp) + lw $fp,48($sp) + lw $23,44($sp) + lw $22,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + move $2,$0 + j $31 + addiu $sp,$sp,56 + + .set macro + .set reorder + .end WapiSendAuthenticationRspPacket + .section .text.DOT11_Process_WAPI_Info,"ax",@progbits + .align 2 + .globl DOT11_Process_WAPI_Info + .ent DOT11_Process_WAPI_Info + .type DOT11_Process_WAPI_Info, @function +DOT11_Process_WAPI_Info: + .set nomips16 + .frame $sp,48,$31 # vars= 0, regs= 7/0, args= 16, gp= 0 + .mask 0x803f0000,-8 + .fmask 0x00000000,0 + addiu $sp,$sp,-48 + sw $21,36($sp) + sw $20,32($sp) + sw $19,28($sp) + sw $31,40($sp) + sw $18,24($sp) + sw $17,20($sp) + sw $16,16($sp) + lw $18,4($5) + move $20,$5 + move $19,$4 + lw $17,6676($18) + move $21,$6 + .set noreorder + .set nomacro + beq $17,$0,$L409 + li $3,-1 # 0xffffffffffffffff + .set macro + .set reorder + + addiu $16,$5,8 + .set noreorder + .set nomacro + jal strlen + move $4,$16 + .set macro + .set reorder + + lw $4,4($19) + move $5,$16 + .set noreorder + .set nomacro + jal memcmp + move $6,$2 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L409 + li $3,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lhu $3,2($20) + li $4,1 # 0x1 + .set noreorder + .set nomacro + beq $3,$4,$L415 + slt $2,$3,2 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $2,$0,$L437 + li $2,2 # 0x2 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $3,$0,$L413 + move $3,$0 + .set macro + .set reorder + + j $L409 +$L437: + .set noreorder + .set nomacro + beq $3,$2,$L432 + move $3,$0 + .set macro + .set reorder + + j $L409 +$L413: + lw $2,364($17) + #nop + .set noreorder + .set nomacro + bne $2,$4,$L412 + addiu $16,$17,624 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal del_timer + move $4,$16 + .set macro + .set reorder + + move $4,$16 + move $5,$0 + .set noreorder + .set nomacro + jal init_timer_key + move $6,$0 + .set macro + .set reorder + + lw $2,352($17) + li $3,-253 # 0xffffffffffffff03 + sw $18,640($17) + and $2,$2,$3 + sw $2,352($17) + lui $2,%hi(wapiUCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiUCastUpdateKeyTimeout) + sw $2,636($17) + move $4,$19 + move $5,$18 + addiu $6,$21,-24 + .set noreorder + .set nomacro + jal WapiSendActivateAuthenticationPacket + addiu $7,$20,24 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L409 + move $3,$0 + .set macro + .set reorder + +$L415: + lw $3,364($17) + li $2,3 # 0x3 + bne $3,$2,$L412 +#APP + raw_local_irq_save $16 +#NO_APP + addiu $2,$20,24 + sw $2,908($19) + .set noreorder + .set nomacro + jal wapiSetBK + move $4,$18 + .set macro + .set reorder + + sw $0,908($19) +#APP + raw_local_irq_restore $16 +#NO_APP + .set noreorder + .set nomacro + j $L409 + move $3,$0 + .set macro + .set reorder + +$L432: + lw $3,364($17) + li $2,5 # 0x5 + .set noreorder + .set nomacro + bne $3,$2,$L409 + move $3,$0 + .set macro + .set reorder + + addiu $16,$20,24 + addiu $6,$21,-24 + move $4,$19 + move $5,$18 + .set noreorder + .set nomacro + jal WapiSendAuthenticationRspPacket + move $7,$16 + .set macro + .set reorder + + lbu $2,65($16) + #nop + .set noreorder + .set nomacro + bne $2,$0,$L434 + move $4,$19 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal wapiSendUnicastKeyAgrementRequeset + move $5,$18 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L409 + move $3,$0 + .set macro + .set reorder + +$L434: + move $5,$18 + .set noreorder + .set nomacro + jal wapiDeauthSta + li $6,24 # 0x18 + .set macro + .set reorder + +$L412: + move $3,$0 +$L409: + lw $31,40($sp) + lw $21,36($sp) + lw $20,32($sp) + lw $19,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + move $2,$3 + .set noreorder + .set nomacro + j $31 + addiu $sp,$sp,48 + .set macro + .set reorder + + .end DOT11_Process_WAPI_Info + .section .text.WapiSendUnicastKeyAggrementResponse,"ax",@progbits + .align 2 + .ent WapiSendUnicastKeyAggrementResponse + .type WapiSendUnicastKeyAggrementResponse, @function +WapiSendUnicastKeyAggrementResponse: + .set nomips16 + .frame $sp,56,$31 # vars= 0, regs= 8/0, args= 24, gp= 0 + .mask 0x807f0000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-56 + sw $22,48($sp) + sw $20,40($sp) + sw $17,28($sp) + sw $16,24($sp) + sw $31,52($sp) + sw $21,44($sp) + sw $19,36($sp) + sw $18,32($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + move $16,$5 + move $20,$4 + lw $18,6676($5) + jal alloc_skb_from_queue + addiu $22,$2,100 + + bne $2,$0,$L454 + move $17,$2 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L442 + move $17,$2 + +$L454: + lw $4,176($17) + addiu $21,$16,6070 + li $16,-30540 + sh $16,106($17) + move $5,$21 + jal memcpy + li $6,6 # 0x6 + + lw $4,176($17) + lw $5,4($20) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($17) + move $4,$17 + li $5,14 # 0xe + sh $16,12($2) + lw $2,4($20) + jal skb_put + sw $2,24($17) + + lw $3,176($17) + lw $2,84($17) + nop + addu $19,$3,$2 + li $2,12 + sh $2,6($19) + li $2,1 # 0x1 + sh $2,0($19) + sb $2,2($19) + li $2,9 # 0x9 + sb $2,3($19) + sh $0,4($19) + sb $0,10($19) + sb $0,11($19) + lhu $2,356($18) + nop + addiu $2,$2,1 + sh $2,356($18) + lhu $3,6($19) + sh $2,8($19) + addu $16,$19,$3 + lbu $2,0($16) + nop + andi $4,$2,0x10 + sb $4,0($16) + lw $3,364($18) + li $2,5 # 0x5 + beq $3,$2,$L445 + li $2,7 # 0x7 + + bne $3,$2,$L444 + ori $2,$4,0x10 + +$L445: + sb $0,0($16) + lw $2,352($18) + nop + srl $2,$2,15 + andi $2,$2,0x1 + sb $2,17($16) + lw $3,352($18) + li $2,-65536 # 0xffffffffffff0000 + ori $2,$2,0x7fff + and $3,$3,$2 + li $2,-4097 # 0xffffffffffffefff + and $3,$3,$2 + j $L446 + sw $3,352($18) + +$L444: + sb $2,0($16) + lw $2,352($18) + nop + srl $2,$2,15 + xori $2,$2,0x1 + andi $2,$2,0x1 + sb $2,17($16) +$L446: + addiu $4,$16,1 + addiu $5,$18,472 + jal memcpy + li $6,16 # 0x10 + + lw $5,4($20) + addiu $4,$16,24 + li $6,6 # 0x6 + jal memcpy + addiu $5,$5,320 + + move $5,$21 + addiu $4,$16,18 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$16,30 + addiu $5,$18,256 + jal memcpy + li $6,32 # 0x20 + + addiu $4,$16,62 + addiu $5,$18,288 + jal memcpy + li $6,32 # 0x20 + + lbu $6,352($18) + addiu $4,$16,94 + jal memcpy + move $5,$18 + + lbu $7,352($18) + move $6,$16 + addiu $4,$18,568 + addu $2,$16,$7 + addiu $2,$2,94 + addiu $7,$7,94 + li $5,16 # 0x10 + sw $2,16($sp) + li $2,20 # 0x14 + jal sha256_hmac + sw $2,20($sp) + + lbu $2,352($18) + lhu $5,6($19) + move $4,$17 + addu $5,$5,$2 + addiu $5,$5,114 + sh $5,6($19) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($20) + lw $3,84($17) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L447 + nop + + move $5,$20 + jal wapiFragementSend + move $4,$17 + + li $3,1 # 0x1 + beq $2,$3,$L450 + nop + + j $L455 + nop + +$L447: + jal rtl8192cd_start_xmit + move $4,$17 + + beq $2,$0,$L450 + nop + +$L455: + jal dev_kfree_skb_any + move $4,$17 + +$L450: + lw $3,364($18) + li $2,5 # 0x5 + bne $3,$2,$L456 + addiu $4,$18,600 + + li $2,7 # 0x7 + sw $2,364($18) +$L442: + addiu $4,$18,600 +$L456: + jal mod_timer + move $5,$22 + + lw $31,52($sp) + lw $22,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + move $2,$0 + j $31 + addiu $sp,$sp,56 + + .set macro + .set reorder + .end WapiSendUnicastKeyAggrementResponse + .section .text.WapiSendMulticastKeyResponse,"ax",@progbits + .align 2 + .ent WapiSendMulticastKeyResponse + .type WapiSendMulticastKeyResponse, @function +WapiSendMulticastKeyResponse: + .set nomips16 + .frame $sp,64,$31 # vars= 0, regs= 9/0, args= 24, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-64 + sw $23,52($sp) + sw $22,48($sp) + sw $21,44($sp) + sw $19,36($sp) + sw $16,24($sp) + sw $31,56($sp) + sw $20,40($sp) + sw $18,32($sp) + sw $17,28($sp) + lui $2,%hi(jiffies) + lw $2,%lo(jiffies)($2) + move $22,$5 + move $21,$4 + lw $20,6676($5) + jal alloc_skb_from_queue + addiu $16,$2,100 + + move $19,$2 + bne $2,$0,$L470 + li $23,1 # 0x1 + + jal dev_alloc_skb + li $4,1560 # 0x618 + + beq $2,$0,$L461 + move $19,$2 + +$L470: + lw $4,176($19) + li $16,-30540 + addiu $18,$22,6070 + sh $16,106($19) + move $5,$18 + jal memcpy + li $6,6 # 0x6 + + lw $4,176($19) + lw $5,4($21) + li $6,6 # 0x6 + addiu $4,$4,6 + jal memcpy + addiu $5,$5,320 + + lw $2,176($19) + move $4,$19 + li $5,14 # 0xe + jal skb_put + sh $16,12($2) + + lw $2,84($19) + lw $17,176($19) + lw $3,4($21) + li $4,12 # 0xc + addu $17,$17,$2 + li $2,1 + sw $3,24($19) + sh $4,6($17) + sb $4,3($17) + sb $2,2($17) + sh $23,0($17) + sh $0,4($17) + sb $0,10($17) + sb $0,11($17) + lhu $2,356($20) + li $6,6 # 0x6 + addiu $2,$2,1 + sh $2,356($20) + lhu $16,6($17) + sh $2,8($17) + addu $16,$17,$16 + sb $0,0($16) + lw $2,1232($21) + addiu $4,$16,9 + srl $2,$2,15 + andi $2,$2,0x1 + sb $2,1($16) + lw $2,352($20) + nop + srl $2,$2,15 + andi $2,$2,0x1 + sb $2,2($16) + lw $5,4($21) + jal memcpy + addiu $5,$5,320 + + addiu $4,$16,3 + move $5,$18 + jal memcpy + li $6,6 # 0x6 + + addiu $4,$16,15 + addiu $5,$21,960 + jal memcpy + li $6,16 # 0x10 + + move $6,$16 + li $2,20 # 0x14 + addiu $4,$20,568 + li $5,16 # 0x10 + li $7,31 # 0x1f + addiu $16,$16,31 + sw $2,20($sp) + jal sha256_hmac + sw $16,16($sp) + + lhu $5,6($17) + move $4,$19 + addiu $5,$5,51 + sh $5,6($17) + jal skb_put + andi $5,$5,0xffff + + lw $5,4($21) + lw $3,84($19) + lw $2,208($5) + addiu $3,$3,-14 + addiu $2,$2,-26 + sltu $2,$2,$3 + beq $2,$0,$L463 + nop + + move $5,$21 + jal wapiFragementSend + move $4,$19 + + beq $2,$23,$L466 + nop + + j $L471 + nop + +$L463: + jal rtl8192cd_start_xmit + move $4,$19 + + beq $2,$0,$L466 + nop + +$L471: + jal dev_kfree_skb_any + move $4,$19 + +$L466: + lw $3,364($20) + li $2,11 # 0xb + bne $3,$2,$L472 + addiu $16,$20,600 + + li $2,13 # 0xd + sw $2,364($20) +$L472: + jal del_timer + move $4,$16 + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lw $2,352($20) + li $3,-253 # 0xffffffffffffff03 + sw $22,616($20) + and $2,$2,$3 + sw $2,352($20) + lui $2,%hi(wapiResendTimeout) + addiu $2,$2,%lo(wapiResendTimeout) + j $L457 + sw $2,612($20) + +$L461: + addiu $4,$20,600 + jal mod_timer + move $5,$16 + +$L457: + lw $31,56($sp) + lw $23,52($sp) + lw $22,48($sp) + lw $21,44($sp) + lw $20,40($sp) + lw $19,36($sp) + lw $18,32($sp) + lw $17,28($sp) + lw $16,24($sp) + move $2,$0 + j $31 + addiu $sp,$sp,64 + + .set macro + .set reorder + .end WapiSendMulticastKeyResponse + .section .text.wapiHandleRecvPacket,"ax",@progbits + .align 2 + .globl wapiHandleRecvPacket + .ent wapiHandleRecvPacket + .type wapiHandleRecvPacket, @function +wapiHandleRecvPacket: + .set nomips16 + .frame $sp,200,$31 # vars= 136, regs= 9/0, args= 24, gp= 0 + .mask 0x80ff0000,-8 + .fmask 0x00000000,0 + addiu $sp,$sp,-200 + sw $22,184($sp) + sw $31,192($sp) + sw $23,188($sp) + sw $21,180($sp) + sw $20,176($sp) + sw $19,172($sp) + sw $18,168($sp) + sw $17,164($sp) + sw $16,160($sp) + lw $19,6676($5) + move $22,$5 + .set noreorder + .set nomacro + beq $19,$0,$L473 + li $5,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lw $2,360($19) + lw $23,652($19) + beq $2,$0,$L473 + lw $21,0($4) + li $5,32 # 0x20 + li $4,30 # 0x1e + lw $6,176($21) + lw $2,84($21) + lhu $3,0($6) + #nop + srl $3,$3,8 + andi $3,$3,0x88 + xori $3,$3,0x88 + movn $5,$4,$3 #RLX4181/RLX4281:conditional move + addiu $4,$5,2 + sltu $2,$2,$4 + .set noreorder + .set nomacro + bne $2,$0,$L483 + li $7,-1 # 0xffffffffffffffff + .set macro + .set reorder + + addu $2,$6,$5 + lhu $3,0($2) + li $2,34996 # 0x88b4 + .set noreorder + .set nomacro + bne $3,$2,$L646 + li $2,-1 # 0xffffffffffffffff + .set macro + .set reorder + + sw $4,152($sp) + li $7,1 # 0x1 +$L483: + li $2,-1 # 0xffffffffffffffff +$L646: + .set noreorder + .set nomacro + bne $7,$2,$L476 + li $2,13 # 0xd + .set macro + .set reorder + + lw $3,364($19) + #nop + .set noreorder + .set nomacro + beq $3,$2,$L473 + li $5,-1 # 0xffffffffffffffff + .set macro + .set reorder + + j $L487 +$L476: + lw $2,176($21) + lw $20,152($sp) + lhu $3,358($19) + addu $18,$2,$20 + lhu $2,8($18) + #nop + sltu $3,$3,$2 + .set noreorder + .set nomacro + beq $3,$0,$L643 + li $2,1 # 0x1 + .set macro + .set reorder + + lhu $3,0($18) + #nop + bne $3,$2,$L487 + lbu $2,2($18) + #nop + bne $2,$3,$L487 + lhu $3,6($18) + lw $2,84($21) + #nop + sltu $2,$2,$3 + bne $2,$0,$L487 + lbu $2,11($18) + #nop + andi $2,$2,0x1 + bne $2,$0,$L492 + lbu $2,10($18) + #nop + beq $2,$0,$L491 +$L492: + lbu $4,353($19) + lbu $3,10($18) + andi $2,$4,0x00ff + .set noreorder + .set nomacro + beq $3,$2,$L494 + addiu $2,$4,1 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal wapiReleaseFragementQueue + move $4,$19 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L473 + li $5,1 # 0x1 + .set macro + .set reorder + +$L494: + sb $2,353($19) + lbu $2,11($18) + #nop + xori $2,$2,0x1 + andi $2,$2,0x1 + beq $2,$0,$L497 + lw $4,652($19) + lw $16,584($19) + jal alloc_skb_from_queue + .set noreorder + .set nomacro + bne $2,$0,$L500 + move $17,$2 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal dev_alloc_skb + move $4,$16 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L500 + move $17,$2 + .set macro + .set reorder + +$L643: + .set noreorder + .set nomacro + jal wapiReleaseFragementQueue + move $4,$19 + .set macro + .set reorder + + j $L487 +$L500: + lw $16,648($19) +$L502: + lw $2,176($17) + lw $4,84($17) + lw $5,176($16) + lw $6,84($16) + .set noreorder + .set nomacro + jal memcpy + addu $4,$2,$4 + .set macro + .set reorder + + lw $5,84($16) + .set noreorder + .set nomacro + jal skb_put + move $4,$17 + .set macro + .set reorder + + lw $16,0($16) + lw $2,648($19) + #nop + bne $16,$2,$L502 + j $L634 +$L497: + lw $16,648($19) + #nop + beq $16,$0,$L507 + lw $2,176($21) + lw $3,84($21) + lw $4,0($16) + addu $2,$2,$20 + subu $3,$3,$20 + addiu $3,$3,-12 + addiu $2,$2,12 + sw $4,0($21) + sw $21,4($4) + sw $2,176($21) + sw $3,84($21) + sw $16,4($21) + sw $21,0($16) + lw $2,584($19) + .set noreorder + .set nomacro + j $L638 + addu $2,$2,$3 + .set macro + .set reorder + +$L507: + sw $21,648($19) + lw $2,84($21) + sw $21,4($21) + sw $21,0($21) +$L638: + .set noreorder + .set nomacro + j $L641 + sw $2,584($19) + .set macro + .set reorder + +$L634: + lw $5,176($21) + lw $6,84($21) + lw $2,176($17) + lw $4,84($17) + addu $5,$5,$20 + subu $6,$6,$20 + addiu $6,$6,-12 + addu $4,$2,$4 + .set noreorder + .set nomacro + jal memcpy + addiu $5,$5,12 + .set macro + .set reorder + + lw $5,84($21) + move $4,$17 + subu $5,$5,$20 + .set noreorder + .set nomacro + jal skb_put + addiu $5,$5,-12 + .set macro + .set reorder + + lw $2,24($21) + move $4,$19 + .set noreorder + .set nomacro + jal wapiReleaseFragementQueue + sw $2,24($17) + .set macro + .set reorder + + move $4,$21 + .set noreorder + .set nomacro + jal dev_kfree_skb_any + move $21,$17 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $17,$0,$L473 + li $5,1 # 0x1 + .set macro + .set reorder + + lw $3,176($17) + lw $2,152($sp) + #nop + addu $18,$3,$2 +$L491: + lhu $2,8($18) + #nop + sh $2,358($19) + lw $2,8($23) + #nop + lw $3,892($2) + #nop + andi $2,$3,0x10 + .set noreorder + .set nomacro + beq $2,$0,$L510 + andi $2,$3,0x8 + .set macro + .set reorder + + lw $4,364($19) + li $2,6 # 0x6 + .set noreorder + .set nomacro + beq $4,$2,$L521 + sltu $2,$4,7 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $2,$0,$L573 + li $2,10 # 0xa + .set macro + .set reorder + + li $2,2 # 0x2 + beq $4,$2,$L512 + j $L487 +$L573: + .set noreorder + .set nomacro + beq $4,$2,$L526 + li $2,13 # 0xd + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $4,$2,$L529 + li $2,12 # 0xc + .set macro + .set reorder + + j $L487 +$L512: + lw $19,6676($22) + #nop + lw $2,364($19) + #nop + .set noreorder + .set nomacro + bne $2,$4,$L647 + lui $2,%hi(jiffies) + .set macro + .set reorder + + lbu $3,3($18) + li $2,4 # 0x4 + bne $3,$2,$L487 + lbu $2,12($18) + #nop + andi $23,$2,0x7 + .set noreorder + .set nomacro + bne $23,$3,$L487 + addiu $20,$18,12 + .set macro + .set reorder + + lbu $2,65($20) + lw $5,656($19) + addu $2,$20,$2 + addiu $4,$2,66 + lhu $2,2($4) + lhu $3,2($5) + addu $2,$4,$2 + addu $3,$5,$3 + addiu $4,$2,4 + addiu $5,$3,4 + lhu $2,2($4) + lhu $3,2($5) + addu $2,$4,$2 + addu $3,$5,$3 + addiu $7,$2,4 + addiu $8,$3,4 + lbu $4,1($8) + lbu $3,1($7) + lbu $5,2($7) + lbu $2,2($8) + sll $3,$3,8 + sll $4,$4,8 + or $6,$5,$3 + or $2,$2,$4 + .set noreorder + .set nomacro + bne $6,$2,$L487 + move $4,$7 + .set macro + .set reorder + + move $5,$8 + .set noreorder + .set nomacro + jal memcmp + addiu $6,$6,3 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L487 + li $2,-253 # 0xffffffffffffff03 + .set macro + .set reorder + + lw $3,352($19) + lw $16,656($19) + and $3,$3,$2 + addiu $17,$16,8 + li $2,3 # 0x3 + sw $3,352($19) + sw $2,364($19) + move $5,$0 + li $6,16 # 0x10 + sh $23,2($16) + sw $22,4($16) + .set noreorder + .set nomacro + jal memset + move $4,$17 + .set macro + .set reorder + + lw $2,652($19) + #nop + lw $4,4($2) + .set noreorder + .set nomacro + jal strlen + addiu $16,$16,24 + .set macro + .set reorder + + lw $3,652($19) + move $4,$17 + lw $5,4($3) + .set noreorder + .set nomacro + jal memcpy + move $6,$2 + .set macro + .set reorder + + lhu $2,6($18) + move $5,$20 + move $4,$16 + addiu $2,$2,-12 + move $6,$2 + .set noreorder + .set nomacro + jal memcpy + sw $2,592($19) + .set macro + .set reorder + + addiu $4,$sp,24 + .set noreorder + .set nomacro + jal GenerateRandomData + li $5,32 # 0x20 + .set macro + .set reorder + + lw $4,592($19) + addiu $5,$sp,24 + li $6,32 # 0x20 + .set noreorder + .set nomacro + jal memcpy + addu $4,$16,$4 + .set macro + .set reorder + + lw $2,592($19) + #nop + addiu $2,$2,56 + sw $2,592($19) + lui $2,%hi(jiffies) +$L647: + lw $5,%lo(jiffies)($2) + addiu $4,$19,600 + .set noreorder + .set nomacro + jal mod_timer + addiu $5,$5,1000 + .set macro + .set reorder + + lw $4,652($19) + lw $6,656($19) + lw $7,592($19) + lw $5,36($4) + jal DOT11_EnQueue + lw $4,652($19) + jal wapi_event_indicate + j $L487 +$L521: + move $4,$18 + move $5,$22 + .set noreorder + .set nomacro + jal wapiRecvUnicastKeyAgreementResponse + addiu $6,$sp,156 + .set macro + .set reorder + + move $3,$2 + li $2,-2 # 0xfffffffffffffffe + .set noreorder + .set nomacro + beq $3,$2,$L525 + li $2,-1 # 0xffffffffffffffff + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $3,$2,$L487 + move $4,$23 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal wapiSendUnicastKeyAgrementConfirm + move $5,$22 + .set macro + .set reorder + + move $4,$23 + .set noreorder + .set nomacro + jal wapiSendMulticastKeyNotification + move $5,$22 + .set macro + .set reorder + + j $L487 +$L526: + move $4,$18 + move $5,$22 + .set noreorder + .set nomacro + jal wapiRecvMulticastKeyResponse + addiu $6,$sp,156 + .set macro + .set reorder + + j $L487 +$L529: + lbu $3,3($18) + lw $17,6676($22) + .set noreorder + .set nomacro + bne $3,$2,$L532 + addiu $6,$sp,156 + .set macro + .set reorder + + lw $2,652($17) + #nop + lw $2,1232($2) + #nop + andi $2,$2,0x2000 + .set noreorder + .set nomacro + beq $2,$0,$L487 + move $4,$18 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal wapiRecvMulticastKeyResponse + move $5,$22 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L487 + li $20,1 # 0x1 + .set macro + .set reorder + + lw $2,352($17) + move $19,$0 + ori $2,$2,0x400 + .set noreorder + .set nomacro + j $L535 + sw $2,352($17) + .set macro + .set reorder + +$L544: + lw $3,652($17) + #nop + addu $3,$3,$2 + li $2,65536 # 0x10000 + ori $2,$2,0x2a74 + addu $18,$3,$2 + lw $16,0($18) + .set noreorder + .set nomacro + j $L645 + move $2,$16 + .set macro + .set reorder + +$L542: + lw $3,6676($2) + lw $16,0($16) + lw $2,364($3) + #nop + sltu $2,$2,13 + beq $2,$0,$L540 + lw $4,652($17) + jal wapiDeauthSta + .set noreorder + .set nomacro + j $L645 + move $2,$16 + .set macro + .set reorder + +$L540: + lw $2,352($3) + #nop + andi $2,$2,0x400 + .set noreorder + .set nomacro + bne $2,$0,$L644 + move $2,$16 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L536 + move $20,$0 + .set macro + .set reorder + +$L644: +$L645: + move $5,$16 + .set noreorder + .set nomacro + bne $16,$18,$L542 + li $6,25 # 0x19 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $20,$0,$L536 + addiu $19,$19,1 + .set macro + .set reorder + +$L535: + sltu $2,$19,31 + .set noreorder + .set nomacro + bne $2,$0,$L544 + sll $2,$19,3 + .set macro + .set reorder + +$L536: + li $2,1 # 0x1 + .set noreorder + .set nomacro + bne $20,$2,$L487 + li $2,-65536 # 0xffffffffffff0000 + .set macro + .set reorder + + lw $5,652($17) + ori $2,$2,0x7fff + lw $4,1232($5) + #nop + srl $3,$4,15 + xori $3,$3,0x1 + andi $3,$3,0x1 + and $4,$4,$2 + sll $3,$3,15 + or $4,$4,$3 + sw $4,1232($5) + lw $3,652($17) + #nop + lw $2,1232($3) + #nop + ori $2,$2,0x4000 + sw $2,1232($3) + lw $4,652($17) + jal wapiInit + lui $2,%hi(jiffies) + lw $4,652($17) + lw $5,%lo(jiffies)($2) + addiu $4,$4,1308 + .set noreorder + .set nomacro + jal mod_timer + addiu $5,$5,100 + .set macro + .set reorder + + j $L487 +$L532: + li $2,9 # 0x9 + bne $3,$2,$L487 + lw $4,352($17) + #nop + andi $2,$4,0x1000 + beq $2,$0,$L548 + move $4,$18 + .set noreorder + .set nomacro + jal wapiRecvUnicastKeyAgreementResponse + move $5,$22 + .set macro + .set reorder + + bne $2,$0,$L487 + lw $4,652($17) + .set noreorder + .set nomacro + jal wapiSendUnicastKeyAgrementConfirm + move $5,$22 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L487 + addiu $16,$17,600 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal del_timer + move $4,$16 + .set macro + .set reorder + + move $4,$16 + move $5,$0 + .set noreorder + .set nomacro + jal init_timer_key + move $6,$0 + .set macro + .set reorder + + lw $4,352($17) + li $2,-65536 # 0xffffffffffff0000 + ori $2,$2,0x7fff + srl $3,$4,15 + xori $3,$3,0x1 + andi $3,$3,0x1 + and $4,$4,$2 + sll $3,$3,15 + lui $2,%hi(wapiResendTimeout) + or $4,$4,$3 + addiu $2,$2,%lo(wapiResendTimeout) + li $18,16 # 0x10 + sw $22,616($17) + sw $2,612($17) + .set noreorder + .set nomacro + j $L552 + sw $4,352($17) + .set macro + .set reorder + +$L555: + li $2,54 + sb $2,366($3) + li $2,92 + sb $2,367($3) + addiu $18,$18,-2 +$L552: + .set noreorder + .set nomacro + bgtz $18,$L555 + addu $3,$18,$17 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L556 + li $16,1 # 0x1 + .set macro + .set reorder + +$L559: + jal memcpy +$L556: + sll $4,$16,4 + addu $4,$17,$4 + slt $2,$16,4 + addiu $3,$17,368 + addiu $4,$4,368 + li $6,16 # 0x10 + addiu $16,$16,1 + .set noreorder + .set nomacro + bne $2,$0,$L559 + move $5,$3 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal memcpy + addiu $4,$17,432 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L560 + move $16,$0 + .set macro + .set reorder + +$L563: + li $2,55 + sb $2,368($3) +$L560: + sll $2,$16,4 + addu $2,$2,$17 + addu $3,$2,$18 + slt $2,$16,4 + .set noreorder + .set nomacro + bne $2,$0,$L563 + addiu $16,$16,1 + .set macro + .set reorder + + addu $3,$18,$17 + li $2,55 + sb $2,432($3) + addiu $4,$17,448 + move $5,$0 + .set noreorder + .set nomacro + jal memset + li $6,8 # 0x8 + .set macro + .set reorder + + lw $2,352($17) + li $3,-4097 # 0xffffffffffffefff + and $2,$2,$3 + .set noreorder + .set nomacro + j $L487 + sw $2,352($17) + .set macro + .set reorder + +$L548: + lbu $2,12($18) + #nop + andi $2,$2,0x10 + .set noreorder + .set nomacro + beq $2,$0,$L487 + addiu $3,$18,12 + .set macro + .set reorder + + lbu $3,17($3) + srl $2,$4,15 + andi $2,$2,0x1 + beq $3,$2,$L487 + lw $4,652($17) + .set noreorder + .set nomacro + jal wapiUpdateUSK + move $5,$22 + .set macro + .set reorder + + j $L487 +$L510: + .set noreorder + .set nomacro + beq $2,$0,$L525 + li $2,7 # 0x7 + .set macro + .set reorder + + lw $4,364($19) + #nop + .set noreorder + .set nomacro + beq $4,$2,$L604 + sltu $2,$4,8 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $2,$0,$L631 + li $2,9 # 0x9 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $4,$0,$L577 + li $2,8 # 0x8 + .set macro + .set reorder + + j $L626 +$L631: + .set noreorder + .set nomacro + beq $4,$2,$L648 + move $4,$18 + .set macro + .set reorder + + j $L626 +$L577: + lbu $3,3($18) + #nop + .set noreorder + .set nomacro + bne $3,$2,$L581 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lw $17,6676($22) + addiu $4,$18,13 + li $6,16 # 0x10 + .set noreorder + .set nomacro + jal memcmp + addiu $5,$17,472 + .set macro + .set reorder + + addiu $3,$18,12 + .set noreorder + .set nomacro + bne $2,$0,$L581 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lbu $2,12($18) + #nop + andi $2,$2,0x10 + .set noreorder + .set nomacro + beq $2,$0,$L583 + addiu $5,$18,42 + .set macro + .set reorder + + lw $2,352($17) + lbu $3,17($3) + srl $2,$2,15 + andi $2,$2,0x1 + .set noreorder + .set nomacro + beq $3,$2,$L581 + addiu $5,$17,288 + .set macro + .set reorder + + addiu $4,$18,42 + .set noreorder + .set nomacro + jal memcmp + li $6,32 # 0x20 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L581 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + j $L586 +$L583: + addiu $4,$17,288 + .set noreorder + .set nomacro + jal memcpy + li $6,32 # 0x20 + .set macro + .set reorder + +$L586: + lw $2,352($17) + #nop + srl $3,$2,15 + andi $2,$2,0x1000 + .set noreorder + .set nomacro + beq $2,$0,$L588 + andi $18,$3,0x1 + .set macro + .set reorder + + xori $2,$3,0x1 + andi $18,$2,0x1 +$L588: + addiu $4,$17,256 + addiu $16,$sp,56 + .set noreorder + .set nomacro + jal GenerateRandomData + li $5,32 # 0x20 + .set macro + .set reorder + + move $4,$22 + .set noreorder + .set nomacro + jal wapiDerivedUCastKey + move $5,$16 + .set macro + .set reorder + + move $4,$22 + move $5,$18 + .set noreorder + .set nomacro + jal wapiInstallUCastKey + move $6,$16 + .set macro + .set reorder + + lw $2,352($17) + #nop + ori $2,$2,0x4000 + sw $2,352($17) +#APP + raw_local_irq_save $16 +#NO_APP + lw $2,6676($22) + lw $3,652($17) + addiu $2,$2,2 + sw $2,908($3) + lw $4,652($17) + jal wapiSetIE + lw $4,652($17) + li $2,68 + sb $2,0($17) + lbu $2,1232($4) + #nop + sb $2,1($17) + lbu $2,1232($4) + #nop + addiu $2,$2,2 + sb $2,352($17) +#APP + raw_local_irq_restore $16 +#NO_APP + move $4,$0 +$L581: + li $2,-1 # 0xffffffffffffffff + .set noreorder + .set nomacro + beq $4,$2,$L487 + move $4,$23 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal WapiSendUnicastKeyAggrementResponse + move $5,$22 + .set macro + .set reorder + + j $L487 +$L604: + lbu $3,3($18) + li $2,10 # 0xa + .set noreorder + .set nomacro + bne $3,$2,$L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lbu $2,12($18) + lw $17,6676($22) + andi $2,$2,0x10 + .set noreorder + .set nomacro + beq $2,$0,$L610 + addiu $19,$18,12 + .set macro + .set reorder + + lw $2,352($17) + lbu $3,17($19) + srl $2,$2,15 + andi $2,$2,0x1 + .set noreorder + .set nomacro + beq $3,$2,$L649 + li $2,-2 # 0xfffffffffffffffe + .set macro + .set reorder + +$L610: + addiu $4,$19,1 + addiu $5,$17,472 + .set noreorder + .set nomacro + jal memcmp + li $6,16 # 0x10 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + addiu $4,$19,30 + addiu $5,$17,256 + .set noreorder + .set nomacro + jal memcmp + li $6,32 # 0x20 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + addiu $4,$19,18 + addiu $5,$22,6070 + .set noreorder + .set nomacro + jal memcmp + li $6,6 # 0x6 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lw $2,652($17) + addiu $4,$19,24 + li $6,6 # 0x6 + lw $5,4($2) + .set noreorder + .set nomacro + jal memcmp + addiu $5,$5,320 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $2,$0,$L612 + li $2,20 # 0x14 + .set macro + .set reorder + + .set noreorder + .set nomacro + j $L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + +$L612: + lhu $7,6($18) + addiu $16,$sp,24 + addiu $4,$17,568 + addiu $7,$7,-32 + li $5,16 # 0x10 + move $6,$19 + sw $2,20($sp) + .set noreorder + .set nomacro + jal sha256_hmac + sw $16,16($sp) + .set macro + .set reorder + + lhu $5,6($18) + move $4,$16 + li $6,20 # 0x14 + addu $5,$18,$5 + .set noreorder + .set nomacro + jal memcmp + addiu $5,$5,-20 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $2,$0,$L609 + li $4,-1 # 0xffffffffffffffff + .set macro + .set reorder + + lw $5,652($17) + addiu $4,$19,62 + lbu $6,1233($5) + .set noreorder + .set nomacro + jal memcmp + addiu $5,$5,976 + .set macro + .set reorder + + .set noreorder + .set nomacro + beq $2,$0,$L615 + li $2,27 # 0x1b + .set macro + .set reorder + + li $4,-2 # 0xfffffffffffffffe + .set noreorder + .set nomacro + j $L609 + sw $2,156($sp) + .set macro + .set reorder + +$L615: + lw $4,656($17) + #nop + beq $4,$0,$L616 + jal kfree + sw $0,656($17) + sw $0,592($17) +$L616: + lw $3,364($17) + li $2,7 # 0x7 + .set noreorder + .set nomacro + bne $3,$2,$L617 + li $3,9 # 0x9 + .set macro + .set reorder + + lw $2,352($17) + sw $3,364($17) + ori $2,$2,0x6000 + sw $2,352($17) +$L617: + lw $2,652($17) + #nop + lw $4,8($2) + li $2,2 # 0x2 + lw $3,5240($4) + #nop + .set noreorder + .set nomacro + beq $3,$2,$L619 + li $2,4 # 0x4 + .set macro + .set reorder + + .set noreorder + .set nomacro + bne $3,$2,$L618 + addiu $16,$17,624 + .set macro + .set reorder + +$L619: + lw $3,5244($4) + lui $5,%hi(jiffies) + sll $2,$3,1 + addu $2,$2,$3 + sll $2,$2,3 + addu $2,$2,$3 + sll $2,$2,2 + .set noreorder + .set nomacro + bgez $2,$L620 + addiu $4,$17,624 + .set macro + .set reorder + + lw $2,%lo(jiffies)($5) + li $5,2147418112 # 0x7fff0000 + ori $5,$5,0xffff + .set noreorder + .set nomacro + j $L639 + addu $5,$2,$5 + .set macro + .set reorder + +$L620: + lw $5,%lo(jiffies)($5) + #nop + addu $5,$5,$2 +$L639: + jal mod_timer + j $L622 +$L618: + .set noreorder + .set nomacro + jal del_timer + move $4,$16 + .set macro + .set reorder + + move $4,$16 + move $5,$0 + .set noreorder + .set nomacro + jal init_timer_key + move $6,$0 + .set macro + .set reorder + + lui $2,%hi(wapiUCastUpdateKeyTimeout) + addiu $2,$2,%lo(wapiUCastUpdateKeyTimeout) + sw $2,636($17) + sw $22,640($17) +$L622: + lw $2,352($17) + lw $4,652($17) + li $3,-253 # 0xffffffffffffff03 + and $2,$2,$3 + sw $2,352($17) + lw $2,8($4) + move $4,$0 + lw $2,5248($2) + #nop + sw $2,596($17) +$L609: + li $2,-2 # 0xfffffffffffffffe +$L649: + beq $4,$2,$L525 + j $L487 +$L626: + lbu $3,3($18) + li $2,11 # 0xb + .set noreorder + .set nomacro + bne $3,$2,$L487 + move $4,$18 + .set macro + .set reorder + +$L648: + move $5,$22 + .set noreorder + .set nomacro + jal WapiRecvMulticastKeyNotification + addiu $6,$sp,156 + .set macro + .set reorder + + li $3,-1 # 0xffffffffffffffff + .set noreorder + .set nomacro + beq $2,$3,$L487 + move $4,$23 + .set macro + .set reorder + + .set noreorder + .set nomacro + jal WapiSendMulticastKeyResponse + move $5,$22 + .set macro + .set reorder + + j $L487 +$L525: + lw $6,156($sp) + move $4,$23 + .set noreorder + .set nomacro + jal wapiDeauthSta + move $5,$22 + .set macro + .set reorder + +$L487: + .set noreorder + .set nomacro + jal dev_kfree_skb_any + move $4,$21 + .set macro + .set reorder + +$L641: + li $5,1 # 0x1 +$L473: + lw $31,192($sp) + lw $23,188($sp) + lw $22,184($sp) + lw $21,180($sp) + lw $20,176($sp) + lw $19,172($sp) + lw $18,168($sp) + lw $17,164($sp) + lw $16,160($sp) + move $2,$5 + .set noreorder + .set nomacro + j $31 + addiu $sp,$sp,200 + .set macro + .set reorder + + .end wapiHandleRecvPacket + .section .text.wapiResendTimeout,"ax",@progbits + .align 2 + .ent wapiResendTimeout + .type wapiResendTimeout, @function +wapiResendTimeout: + .set nomips16 + .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 + .mask 0x80070000,-4 + .fmask 0x00000000,0 + .set noreorder + .set nomacro + + addiu $sp,$sp,-32 + sw $18,24($sp) + sw $31,28($sp) + sw $17,20($sp) + sw $16,16($sp) + lw $17,6676($4) + move $18,$4 + li $3,-253 # 0xffffffffffffff03 + lw $4,352($17) + lw $16,652($17) + srl $2,$4,2 + andi $2,$2,0x3f + addiu $2,$2,1 + andi $2,$2,0x3f + sll $2,$2,2 + and $4,$4,$3 + or $4,$4,$2 + srl $2,$4,2 + andi $2,$2,0x3f + sltu $2,$2,7 + bne $2,$0,$L651 + sw $4,352($17) + + move $4,$16 + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + li $6,25 # 0x19 + j wapiDeauthSta + addiu $sp,$sp,32 + +$L651: + lw $3,364($17) + nop + sltu $2,$3,14 + beq $2,$0,$L650 + sll $2,$3,2 + + lui $3,%hi($L676) + addiu $3,$3,%lo($L676) + addu $2,$2,$3 + lw $2,0($2) + nop + j $2 + nop + + .rdata + .align 2 +$L676: + .word $L653 + .word $L650 + .word $L655 + .word $L657 + .word $L650 + .word $L650 + .word $L659 + .word $L671 + .word $L650 + .word $L650 + .word $L662 + .word $L650 + .word $L650 + .word $L663 + .section .text.wapiResendTimeout +$L653: + lw $3,360($17) + li $2,1 # 0x1 + bne $3,$2,$L650 + move $4,$18 + + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j wapiReqActiveCA + addiu $sp,$sp,32 + +$L655: + lw $3,360($17) + li $2,1 # 0x1 + bne $3,$2,$L650 + move $4,$16 + + lw $7,656($17) + lw $6,592($17) + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j WapiSendActivateAuthenticationPacket + addiu $sp,$sp,32 + +$L657: + lw $3,360($17) + li $2,1 # 0x1 + bne $3,$2,$L650 + lui $2,%hi(jiffies) + + lw $5,%lo(jiffies)($2) + addiu $4,$17,600 + jal mod_timer + addiu $5,$5,1000 + + lw $4,652($17) + lw $6,656($17) + lw $7,592($17) + lw $5,36($4) + jal DOT11_EnQueue + nop + + lw $4,652($17) + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j wapi_event_indicate + addiu $sp,$sp,32 + +$L659: + lw $3,360($17) + li $2,1 # 0x1 + bne $3,$2,$L678 + move $4,$16 + + lw $7,656($17) + lw $6,592($17) + jal WapiSendAuthenticationRspPacket + move $5,$18 + + j $L679 + move $4,$16 + +$L662: + move $4,$16 + jal wapiSendUnicastKeyAgrementConfirm + move $5,$18 + + j $L680 + move $4,$16 + +$L663: + lw $2,1232($16) + nop + andi $2,$2,0x2000 + beq $2,$0,$L664 + move $4,$16 + +$L680: + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j wapiSendMulticastKeyNotification + addiu $sp,$sp,32 + +$L664: + lw $2,352($17) + nop + andi $2,$2,0x1000 + beq $2,$0,$L666 + nop + +$L678: + move $4,$16 +$L679: + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j wapiSendUnicastKeyAgrementRequeset + addiu $sp,$sp,32 + +$L666: + lw $2,8($16) + nop + lw $3,892($2) + nop + andi $2,$3,0x8 + beq $2,$0,$L668 + andi $2,$3,0x10 + + move $4,$16 + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j WapiSendMulticastKeyResponse + addiu $sp,$sp,32 + +$L668: + beq $2,$0,$L650 + move $4,$16 + + move $5,$18 + jal wapiSendUnicastKeyAgrementConfirm + addiu $16,$17,600 + + jal del_timer + move $4,$16 + + move $4,$16 + move $5,$0 + jal init_timer_key + move $6,$0 + + lui $2,%hi(wapiResendTimeout) + addiu $2,$2,%lo(wapiResendTimeout) + sw $2,612($17) + j $L650 + sw $18,616($17) + +$L671: + move $4,$16 + move $5,$18 + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j WapiSendUnicastKeyAggrementResponse + addiu $sp,$sp,32 + +$L650: + lw $31,28($sp) + lw $18,24($sp) + lw $17,20($sp) + lw $16,16($sp) + j $31 + addiu $sp,$sp,32 + + .set macro + .set reorder + .end wapiResendTimeout + .ident "GCC: (GNU) 3.4.6-1.3.6" |