summaryrefslogtreecommitdiffstats
path: root/target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D
diff options
context:
space:
mode:
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.S7065
-rw-r--r--target/linux/realtek/files/drivers/net/wireless/rtl8192cd/96C_92D/wapi_wai.S6180
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"