Disassembled binary SDK output, direct from xtobjdis with a couple of tweaks
Tweaks to xtobjdis are hg-git sha 6da80c11f Everything works except for wpa_auth.o & phy_chip_v6_ana.o disassemble with some functions not correctly detected.
This commit is contained in:
parent
419f252d80
commit
a9e3928c8d
77 changed files with 73774 additions and 0 deletions
587
binary_sdk/libmain/ets_timer.S
Normal file
587
binary_sdk/libmain/ets_timer.S
Normal file
|
@ -0,0 +1,587 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .text+0x4
|
||||
.Lfunc001: movi a5, .Ldata001 # 4: 51ffff
|
||||
l8ui a2, a5, 0 /* [.Ldata001] */ # 7: 220500
|
||||
addi a3, a5, 32 /* .bss+0x20 */ # a: 32c520
|
||||
addi a2, a2, 1 /* [.Ldata001]+0x1 */ # d: 1b22
|
||||
extui a2, a2, 0, 8 # f: 202074
|
||||
bltui a2, 5, .Lbr001 # 12: b65208
|
||||
addi a3, a2, -1 # 15: 0b32
|
||||
s8i a3, a5, 0 /* a3 -> [.Ldata001] */ # 17: 324500
|
||||
movi a2, 0 /* 0x00000000 */ # 1a: 0c02
|
||||
ret /* 0x00000000 */ # 1c: 0df0
|
||||
.Lbr001: s8i a2, a5, 0 /* a2 -> [.Ldata001] */ # 1e: 224500
|
||||
l8ui a2, a5, 1 /* [.Ldata002] */ # 21: 220501
|
||||
addi a4, a2, 1 /* [.Ldata002]+0x1 */ # 24: 1b42
|
||||
addx8 a2, a2, a3 # 26: 3022b0
|
||||
extui a4, a4, 0, 8 # 29: 404074
|
||||
bltui a4, 4, .Lbr002 # 2c: b64401
|
||||
movi a4, 0 /* 0x00000000 */ # 2f: 0c04
|
||||
.Lbr002: s8i a4, a5, 1 /* a4 -> [.Ldata002] */ # 31: 424501
|
||||
ret # 34: 0df0
|
||||
|
||||
.literal_position # 38: 24000000
|
||||
# 3c: 00000000
|
||||
# 40: 30000000
|
||||
# 44: 00000000
|
||||
# 48: 00000000
|
||||
# 4c: 00000000
|
||||
# 50: 00000000
|
||||
|
||||
# Function @ .text+0x54
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.Lfunc002: addi sp, sp, -16 /* (local0) */ # 54: 12c1f0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 57: 0921
|
||||
call0 .Lfunc001 # 59: 85faff
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 5c: 2901
|
||||
bnez a2, .Lbr003 # 5e: cca2
|
||||
movi a2, .Lstr004 # 60: 21f6ff
|
||||
call0 printf # 63: 01f8ffc0
|
||||
# 67: 0000
|
||||
j .Lbr005 # 69: 060b00
|
||||
.Lbr003: mov a3, sp /* (local0) */ # 6c: 3d01
|
||||
addi a4, sp, 4 /* (local1) */ # 6e: 4b41
|
||||
movi a5, 0 /* 0x00000000 */ # 70: 0c05
|
||||
s32i a5, a2, 0 # 72: 5902
|
||||
movi a2, .Ldata001 # 74: 21f2ff
|
||||
s32i a5, sp, 4 /* 0x00000000 -> [(local1)] */ # 77: 5911
|
||||
l32i a2, a2, 16 /* [.Ldata004] */ # 79: 2842
|
||||
call0 xQueueGenericSendFromISR # 7b: 01f3ffc0
|
||||
# 7f: 0000
|
||||
mov a3, a2 # 81: 3d02
|
||||
beqi a2, 1, .Lbr004 # 83: 261208
|
||||
movi a2, .Lstr005 # 86: 21eeff
|
||||
call0 printf # 89: 01f0ffc0
|
||||
# 8d: 0000
|
||||
.Lbr004: l32i a3, sp, 4 /* [(local1)] */ # 8f: 3811
|
||||
beqz a3, .Lbr005 # 91: 8c43
|
||||
call0 vTaskSwitchContext # 93: 01efffc0
|
||||
# 97: 0000
|
||||
.Lbr005: l32i a0, sp, 8 /* [(local2)] */ # 99: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 9b: 12c110
|
||||
ret # 9e: 0df0
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .byte 0x00
|
||||
.Ldata002: .byte 0x00
|
||||
.byte 0x00, 0x00
|
||||
.Ldata003: .word 0x00000000 # 4: 00000000
|
||||
.global sdk_debug_timer
|
||||
.type sdk_debug_timer, @object
|
||||
sdk_debug_timer:
|
||||
.word 0x00000000 # 8: 00000000
|
||||
.global sdk_debug_timerfn
|
||||
.type sdk_debug_timerfn, @object
|
||||
sdk_debug_timerfn:
|
||||
.word 0x00000000 # c: 00000000
|
||||
.Ldata004: .word 0x00000000 # 10: 00000000
|
||||
.space 44
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc003: addi sp, sp, -16 /* (local0) */ # c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # f: 0901
|
||||
call0 vPortEnterCritical # 11: 01fcffc0
|
||||
# 15: 0000
|
||||
movi a2, .Ldata001 # 17: 21faff
|
||||
l8ui a0, a2, 0 /* [.Ldata001] */ # 1a: 020200
|
||||
addi a0, a0, -1 /* [.Ldata001]-0x1 */ # 1d: 0b00
|
||||
s8i a0, a2, 0 /* [.Ldata001]-0x1 -> [.Ldata001] */ # 1f: 024200
|
||||
call0 vPortExitCritical # 22: 01f9ffc0
|
||||
# 26: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 28: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2a: 12c110
|
||||
ret # 2d: 0df0
|
||||
|
||||
.literal_position # 30: 00060060
|
||||
|
||||
# Function @ .irom0.text+0x34
|
||||
.Lfunc004: movi a3, 0x60000600 # 34: 31ffff
|
||||
memw # 37: c02000
|
||||
s32i a2, a3, 48 /* arg0 -> [0x60000630] */ # 3a: 29c3
|
||||
ret /* arg0 */ # 3c: 0df0
|
||||
|
||||
.literal_position # 40: 00060060
|
||||
|
||||
# Function @ .irom0.text+0x44
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc005: addi sp, sp, -16 /* (local0) */ # 44: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 47: 0901
|
||||
movi a4, 0x60000600 # 49: 41fdff
|
||||
memw # 4c: c02000
|
||||
l32i a4, a4, 36 /* [0x60000624] */ # 4f: 4894
|
||||
sub a0, a2, a4 # 51: 4002c0
|
||||
addi a3, a0, -40 # 54: 32c0d8
|
||||
bgei a3, 1, .Lbr007 # 57: e61314
|
||||
bgei a0, 1, .Lbr006 # 5a: e61008
|
||||
addi a2, a4, 40 /* [0x60000624]+0x28 */ # 5d: 22c428
|
||||
call0 .Lfunc004 # 60: 05fdff
|
||||
j .Lbr008 # 63: c60200
|
||||
.Lbr006: addi a2, a2, 44 /* arg0+0x2c */ # 66: 22c22c
|
||||
call0 .Lfunc004 # 69: 85fcff
|
||||
j .Lbr008 # 6c: 860000
|
||||
.Lbr007: call0 .Lfunc004 # 6f: 45fcff
|
||||
.Lbr008: l32i a0, sp, 0 /* [(local0)] */ # 72: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 74: 12c110
|
||||
ret # 77: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x7c
|
||||
.global sdk_ets_timer_setfn
|
||||
.type sdk_ets_timer_setfn, @function
|
||||
sdk_ets_timer_setfn:
|
||||
s32i a3, a2, 16 /* arg1 -> [arg0+0x10] */ # 7c: 3942
|
||||
s32i a4, a2, 24 /* arg2 -> [arg0+0x18] */ # 7e: 4962
|
||||
movi a5, -1 /* 0xffffffff */ # 80: 7cf5
|
||||
movi a6, 0 /* 0x00000000 */ # 82: 0c06
|
||||
s32i a6, a2, 8 /* 0x00000000 -> [arg0+0x8] */ # 84: 6922
|
||||
s32i a6, a2, 12 /* 0x00000000 -> [arg0+0xc] */ # 86: 6932
|
||||
s32i a5, a2, 0 /* 0xffffffff -> [arg0] */ # 88: 5902
|
||||
ret /* arg0 */ # 8a: 0df0
|
||||
|
||||
.literal_position # 8c: 00000000
|
||||
# 90: 00000000
|
||||
# 94: 08000000
|
||||
# 98: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x9c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc006: addi sp, sp, -16 /* (local0) */ # 9c: 12c1f0
|
||||
movi a6, .Ldata001 # 9f: 61fbff
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # a2: 0911
|
||||
l32i a0, a6, 4 /* [.Ldata003] */ # a4: 0816
|
||||
movi a5, 0 /* 0x00000000 */ # a6: 0c05
|
||||
beqz a0, .Lbr010 # a8: 9c00
|
||||
.Lbr009: l32i a4, a0, 8 # aa: 4820
|
||||
sub a4, a2, a4 # ac: 4042c0
|
||||
blti a4, 1, .Lbr011 # af: a6140b
|
||||
mov a5, a0 # b2: 5d00
|
||||
l32i a0, a0, 0 # b4: 0800
|
||||
bnez a0, .Lbr009 # b6: 5600ff
|
||||
j .Lbr011 # b9: 460000
|
||||
.Lbr010: movi a5, 0 /* 0x00000000 */ # bc: 0c05
|
||||
.Lbr011: s32i a3, sp, 0 /* arg1 -> [(local0)] */ # be: 3901
|
||||
s32i a0, a3, 0 /* a0 -> [arg1] */ # c0: 0903
|
||||
s32i a2, a3, 8 /* arg0 -> [arg1+0x8] */ # c2: 2923
|
||||
beqz a5, .Lbr012 # c4: 8c35
|
||||
s32i a3, a5, 0 # c6: 3905
|
||||
j .Lbr013 # c8: 060200
|
||||
.Lbr012: l32i a5, sp, 0 /* [(local0)] */ # cb: 5801
|
||||
s32i a5, a6, 4 /* [(local0)] -> [.Ldata003] */ # cd: 5916
|
||||
call0 .Lfunc005 # cf: 45f7ff
|
||||
l32i a3, sp, 0 /* [(local0)] */ # d2: 3801
|
||||
.Lbr013: l32i a6, a3, 0 # d4: 6803
|
||||
l32i a0, sp, 4 /* [(local1)] */ # d6: 0811
|
||||
bne a6, a3, .Lbr015 # d8: 379611
|
||||
movi a2, .Lstr001 # db: 21edff
|
||||
movi a3, .Lstr002 # de: 31edff
|
||||
movi a4, 209 /* 0x000000d1 */ # e1: 42a0d1
|
||||
call0 ets_printf # e4: 01edffc0
|
||||
# e8: 0000
|
||||
.Lbr014: j .Lbr014 /* (halt) */ # ea: 06ffff
|
||||
.Lbr015: addi sp, sp, 16 /* (top of frame) */ # ed: 12c110
|
||||
ret # f0: 0df0
|
||||
|
||||
.literal_position # f4: 14000000
|
||||
# f8: 404b4c00
|
||||
# fc: 40420f00
|
||||
# 100: 00060060
|
||||
# 104: 00000000
|
||||
# 108: 00000000
|
||||
# 10c: 00000000
|
||||
# 110: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x114
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_ets_timer_arm_ms_us
|
||||
.type sdk_ets_timer_arm_ms_us, @function
|
||||
sdk_ets_timer_arm_ms_us:
|
||||
addi sp, sp, -16 /* (local0) */ # 114: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 117: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 119: d921
|
||||
mov a12, a2 /* arg0 */ # 11b: cd02
|
||||
mov a2, a3 /* arg1 */ # 11d: 2d03
|
||||
mov a3, a4 /* arg2 */ # 11f: 3d04
|
||||
l32i a4, a12, 0 /* [arg0] */ # 121: 480c
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 123: 0901
|
||||
beqi a4, -1, .Lbr017 # 125: 26040d
|
||||
movi a2, .Lstr003 # 128: 21f3ff
|
||||
mov a3, a12 /* arg0 */ # 12b: 3d0c
|
||||
call0 printf # 12d: 01f5ffc0
|
||||
# 131: 0000
|
||||
.Lbr016: j .Lbr016 /* (halt) */ # 133: 06ffff
|
||||
.Lbr017: bnei a5, 1, .Lbr018 # 136: 661505
|
||||
movi a0, 1000 /* 0x000003e8 */ # 139: 02a3e8
|
||||
mull a2, a2, a0 # 13c: 002282
|
||||
.Lbr018: beqz a2, .Lbr020 # 13f: ace2
|
||||
s32i a3, sp, 12 /* arg2 -> [(local3)] */ # 141: 3931
|
||||
movi a4, 858 /* 0x0000035a */ # 143: 42a35a
|
||||
bgeu a4, a2, .Lbr019 # 146: 27b411
|
||||
srli a13, a2, 2 # 149: 20d241
|
||||
extui a0, a2, 0, 2 # 14c: 200014
|
||||
addx4 a0, a0, a0 # 14f: 0000a0
|
||||
addx4 a13, a13, a13 # 152: d0dda0
|
||||
addx4 a13, a13, a0 # 155: 00dda0
|
||||
j .Lbr021 # 158: c60500
|
||||
.Lbr019: movi a4, 0x004c4b40 # 15b: 41e7ff
|
||||
movi a3, 0x000f4240 # 15e: 31e7ff
|
||||
mull a2, a2, a4 # 161: 402282
|
||||
call0 __udivsi3 # 164: 01e9ffc0
|
||||
# 168: 0000
|
||||
mov a13, a2 # 16a: dd02
|
||||
l32i a3, sp, 12 /* [(local3)] */ # 16c: 3831
|
||||
j .Lbr021 # 16e: 460000
|
||||
.Lbr020: movi a13, 0 /* 0x00000000 */ # 171: 0c0d
|
||||
.Lbr021: beqz a3, .Lbr022 # 173: 8c03
|
||||
s32i a13, a12, 12 /* a13 -> [arg0+0xc] */ # 175: d93c
|
||||
.Lbr022: call0 vPortEnterCritical # 177: 01e5ffc0
|
||||
# 17b: 0000
|
||||
mov a3, a12 /* arg0 */ # 17d: 3d0c
|
||||
movi a2, 0x60000600 # 17f: 21e0ff
|
||||
memw # 182: c02000
|
||||
l32i a2, a2, 36 /* [0x60000624] */ # 185: 2892
|
||||
add a2, a13, a2 # 187: 2a2d
|
||||
call0 .Lfunc006 # 189: 05f1ff
|
||||
call0 vPortExitCritical # 18c: 01e1ffc0
|
||||
# 190: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 192: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 194: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 196: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 198: 12c110
|
||||
ret # 19b: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x1a0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ets_timer_arm_us
|
||||
.type sdk_ets_timer_arm_us, @function
|
||||
sdk_ets_timer_arm_us:
|
||||
movi a5, 0 /* 0x00000000 */ # 1a0: 0c05
|
||||
addi sp, sp, -16 /* (local0) */ # 1a2: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1a5: 0901
|
||||
call0 sdk_ets_timer_arm_ms_us # 1a7: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1aa: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1ac: 12c110
|
||||
ret # 1af: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x1b4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ets_timer_arm
|
||||
.type sdk_ets_timer_arm, @function
|
||||
sdk_ets_timer_arm:
|
||||
movi a5, 1 /* 0x00000001 */ # 1b4: 0c15
|
||||
addi sp, sp, -16 /* (local0) */ # 1b6: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1b9: 0901
|
||||
call0 sdk_ets_timer_arm_ms_us # 1bb: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1be: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1c0: 12c110
|
||||
ret # 1c3: 0df0
|
||||
|
||||
.literal_position # 1c8: 00000000
|
||||
# 1cc: 00000000
|
||||
# 1d0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1d4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ets_timer_disarm
|
||||
.type sdk_ets_timer_disarm, @function
|
||||
sdk_ets_timer_disarm:
|
||||
addi sp, sp, -16 /* (local0) */ # 1d4: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1d7: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1d9: 0901
|
||||
mov a12, a2 /* arg0 */ # 1db: cd02
|
||||
call0 vPortEnterCritical # 1dd: 01fbffc0
|
||||
# 1e1: 0000
|
||||
movi a5, .Ldata001 # 1e3: 51f9ff
|
||||
l32i a0, a5, 4 /* [.Ldata003] */ # 1e6: 0815
|
||||
movi a2, 0 /* 0x00000000 */ # 1e8: 0c02
|
||||
beqz a0, .Lbr024 # 1ea: 8cb0
|
||||
.Lbr023: beq a12, a0, .Lbr025 # 1ec: 071c0b
|
||||
mov a2, a0 # 1ef: 2d00
|
||||
l32i a0, a0, 0 # 1f1: 0800
|
||||
bnez a0, .Lbr023 # 1f3: 5650ff
|
||||
j .Lbr027 # 1f6: 860300
|
||||
.Lbr024: movi a2, 0 /* 0x00000000 */ # 1f9: 0c02
|
||||
.Lbr025: beqz a0, .Lbr027 # 1fb: 8c90
|
||||
l32i a0, a0, 0 # 1fd: 0800
|
||||
bnez a2, .Lbr026 # 1ff: cc32
|
||||
s32i a0, a5, 4 /* a0 -> [.Ldata003] */ # 201: 0915
|
||||
j .Lbr027 # 203: 460000
|
||||
.Lbr026: s32i a0, a2, 0 # 206: 0902
|
||||
.Lbr027: call0 vPortExitCritical # 208: 01f2ffc0
|
||||
# 20c: 0000
|
||||
movi a0, 0 /* 0x00000000 */ # 20e: 0c00
|
||||
movi a2, -1 /* 0xffffffff */ # 210: 7cf2
|
||||
s32i a2, a12, 0 /* 0xffffffff -> [arg0] */ # 212: 290c
|
||||
s32i a0, a12, 12 /* 0x00000000 -> [arg0+0xc] */ # 214: 093c
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 216: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 218: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 21a: 12c110
|
||||
ret /* 0xffffffff */ # 21d: 0df0
|
||||
|
||||
.literal_position # 220: 00000000
|
||||
# 224: 08000000
|
||||
# 228: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x22c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ets_timer_done
|
||||
.type sdk_ets_timer_done, @function
|
||||
sdk_ets_timer_done:
|
||||
addi sp, sp, -16 /* (local0) */ # 22c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 22f: 0901
|
||||
l32i a0, a2, 0 /* [arg0] */ # 231: 0802
|
||||
beqi a0, -1, .Lbr029 # 233: 260011
|
||||
movi a2, .Lstr001 # 236: 21faff
|
||||
movi a3, .Lstr002 # 239: 31faff
|
||||
movi a4, 288 /* 0x00000120 */ # 23c: 42a120
|
||||
call0 ets_printf # 23f: 01faffc0
|
||||
# 243: 0000
|
||||
.Lbr028: j .Lbr028 /* (halt) */ # 245: 06ffff
|
||||
.Lbr029: movi a3, 0 /* 0x00000000 */ # 248: 0c03
|
||||
movi a4, 0 /* 0x00000000 */ # 24a: 0c04
|
||||
call0 sdk_ets_timer_setfn # 24c: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 24f: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 251: 12c110
|
||||
ret # 254: 0df0
|
||||
|
||||
.literal_position # 258: 00060060
|
||||
# 25c: 00000000
|
||||
# 260: 00000000
|
||||
# 264: 00000000
|
||||
# 268: 00060060
|
||||
# 26c: 00000000
|
||||
# 270: 00000000
|
||||
# 274: 00000000
|
||||
# 278: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x27c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ets_timer_handler_isr
|
||||
.type sdk_ets_timer_handler_isr, @function
|
||||
sdk_ets_timer_handler_isr:
|
||||
addi sp, sp, -16 /* (local0) */ # 27c: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 27f: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 281: 0901
|
||||
call0 vPortEnterCritical # 283: 01faffc0
|
||||
# 287: 0000
|
||||
movi a3, 0x60000600 # 289: 31f3ff
|
||||
memw # 28c: c02000
|
||||
movi a0, .Ldata001 # 28f: 01f3ff
|
||||
l32i a5, a3, 36 /* [0x60000624] */ # 292: 5893
|
||||
.Lbr030: l32i a12, a0, 4 /* [.Ldata003] */ # 294: c810
|
||||
beqz a12, .Lbr033 # 296: 162c05
|
||||
l32i a2, a12, 8 /* [[.Ldata003]+0x8] */ # 299: 282c
|
||||
sub a4, a2, a5 # 29b: 5042c0
|
||||
bgei a4, 1, .Lbr032 # 29e: e61445
|
||||
movi a5, -1 /* 0xffffffff */ # 2a1: 7cf5
|
||||
movi a7, .Ldata001 # 2a3: 71efff
|
||||
l32i a8, a12, 16 /* [[.Ldata003]+0x10] */ # 2a6: 884c
|
||||
s32i a8, a7, 12 /* [[.Ldata003]+0x10] -> [sdk_debug_timerfn] */ # 2a8: 8937
|
||||
s32i a12, a7, 8 /* [.Ldata003] -> [sdk_debug_timer] */ # 2aa: c927
|
||||
l32i a6, a12, 0 /* [[.Ldata003]] */ # 2ac: 680c
|
||||
s32i a6, a7, 4 /* [[.Ldata003]] -> [.Ldata003] */ # 2ae: 6917
|
||||
s32i a5, a12, 0 /* 0xffffffff -> [[.Ldata003]] */ # 2b0: 590c
|
||||
call0 vPortExitCritical # 2b2: 01efffc0
|
||||
# 2b6: 0000
|
||||
l32i a0, a12, 16 /* [[.Ldata003]+0x10] */ # 2b8: 084c
|
||||
l32i a2, a12, 24 /* [[.Ldata003]+0x18] */ # 2ba: 286c
|
||||
callx0 a0 /* [[.Ldata003]+0x10] */ # 2bc: c00000
|
||||
call0 vPortEnterCritical # 2bf: 01edffc0
|
||||
# 2c3: 0000
|
||||
l32i a2, a12, 0 /* [[.Ldata003]] */ # 2c5: 280c
|
||||
l32i a0, a12, 12 /* [[.Ldata003]+0xc] */ # 2c7: 083c
|
||||
bnei a2, -1, .Lbr031 # 2c9: 66020c
|
||||
beqz a0, .Lbr031 # 2cc: 8c90
|
||||
l32i a2, a12, 8 /* [[.Ldata003]+0x8] */ # 2ce: 282c
|
||||
mov a3, a12 /* [.Ldata003] */ # 2d0: 3d0c
|
||||
add a2, a2, a0 # 2d2: 0a22
|
||||
s32i a2, a12, 8 /* a2 -> [[.Ldata003]+0x8] */ # 2d4: 292c
|
||||
call0 .Lfunc006 # 2d6: 45dcff
|
||||
.Lbr031: movi a0, .Ldata001 # 2d9: 01e2ff
|
||||
memw # 2dc: c02000
|
||||
movi a3, 0x60000600 # 2df: 31e2ff
|
||||
l32i a5, a3, 36 /* [0x60000624] */ # 2e2: 5893
|
||||
j .Lbr030 # 2e4: 06ebff
|
||||
.Lbr032: beqz a12, .Lbr033 # 2e7: 8c1c
|
||||
call0 .Lfunc005 # 2e9: 85d5ff
|
||||
.Lbr033: call0 vPortExitCritical # 2ec: 01e3ffc0
|
||||
# 2f0: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 2f2: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 2f4: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2f6: 12c110
|
||||
ret # 2f9: 0df0
|
||||
|
||||
.literal_position # 2fc: 00000000
|
||||
# 300: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x304
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.Lfunc007: addi sp, sp, -16 /* (local0) */ # 304: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 307: c921
|
||||
movi a12, .Ldata001 # 309: c1fcff
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 30c: 0911
|
||||
.Lbr034: l32i a2, a12, 16 /* [.Ldata004] */ # 30e: 284c
|
||||
mov a3, sp /* (local0) */ # 310: 3d01
|
||||
movi a4, -1 /* 0xffffffff */ # 312: 7cf4
|
||||
movi a5, 0 /* 0x00000000 */ # 314: 0c05
|
||||
call0 xQueueGenericReceive # 316: 01faffc0
|
||||
# 31a: 0000
|
||||
bnei a2, 1, .Lbr034 # 31c: 6612ee
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 31f: 0801
|
||||
l32i a0, a0, 0 /* [[(local0)]] */ # 321: 0800
|
||||
bnez a0, .Lbr035 # 323: cc30
|
||||
movi a2, 0 /* 0x00000000 */ # 325: 0c02
|
||||
call0 sdk_ets_timer_handler_isr # 327: 050000
|
||||
.Lbr035: call0 .Lfunc003 # 32a: 05ceff
|
||||
j .Lbr034 # 32d: 46f7ff
|
||||
|
||||
.literal_position # 330: 00000000
|
||||
# 334: 54000000
|
||||
# 338: 00000000
|
||||
# 33c: 40000000
|
||||
# 340: 04030000
|
||||
# 344: 50000000
|
||||
# 348: 00feef3f
|
||||
# 34c: 00060060
|
||||
# 350: 00000000
|
||||
# 354: 00000000
|
||||
# 358: 00000000
|
||||
# 35c: 00000000
|
||||
# 360: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x364
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word[3] @ -0x1c
|
||||
# (local2): word @ -0x10
|
||||
# (local3): word[3] @ -0xc
|
||||
.global sdk_ets_timer_init
|
||||
.type sdk_ets_timer_init, @function
|
||||
sdk_ets_timer_init:
|
||||
movi a3, .Lfunc002 # 364: 31f4ff
|
||||
addi sp, sp, -32 /* (local0) */ # 367: 12c1e0
|
||||
movi a2, .Ldata001 # 36a: 21f1ff
|
||||
s32i a0, sp, 20 /* a0 -> [(local3)] */ # 36d: 0951
|
||||
movi a0, 0 /* 0x00000000 */ # 36f: 0c00
|
||||
s32i a0, a2, 4 /* 0x00000000 -> [.Ldata003] */ # 371: 0912
|
||||
movi a2, 10 /* 0x0000000a */ # 373: 0ca2
|
||||
call0 _xt_isr_attach # 375: 01f6ffc0
|
||||
# 379: 0000
|
||||
movi a2, 4 /* 0x00000004 */ # 37b: 0c42
|
||||
movi a3, 4 /* 0x00000004 */ # 37d: 0c43
|
||||
movi a4, 0 /* 0x00000000 */ # 37f: 0c04
|
||||
call0 xQueueGenericCreate # 381: 01f4ffc0
|
||||
# 385: 0000
|
||||
movi a5, 0 /* 0x00000000 */ # 387: 0c05
|
||||
movi a6, 12 /* 0x0000000c */ # 389: 0cc6
|
||||
addi a7, sp, 16 /* (local2) */ # 38b: 72c110
|
||||
movi a4, .Ldata001 # 38e: 41eaff
|
||||
movi a3, 0 /* 0x00000000 */ # 391: 0c03
|
||||
s32i a2, a4, 16 /* a2 -> [.Ldata004] */ # 393: 2944
|
||||
movi a4, 200 /* 0x000000c8 */ # 395: 42a0c8
|
||||
s32i a3, sp, 0 /* 0x00000000 -> [(local0)] */ # 398: 3901
|
||||
s32i a3, sp, 4 /* 0x00000000 -> [(local1)] */ # 39a: 3911
|
||||
movi a2, .Lfunc007 # 39c: 21e9ff
|
||||
movi a3, .Lstr006 # 39f: 31e7ff
|
||||
call0 xTaskGenericCreate # 3a2: 01edffc0
|
||||
# 3a6: 0000
|
||||
movi a2, .Lstr007 # 3a8: 21e7ff
|
||||
l32i a3, sp, 16 /* [(local2)] */ # 3ab: 3841
|
||||
movi a4, 12 /* 0x0000000c */ # 3ad: 0cc4
|
||||
movi a5, 200 /* 0x000000c8 */ # 3af: 52a0c8
|
||||
call0 printf # 3b2: 01eaffc0
|
||||
# 3b6: 0000
|
||||
movi a6, 0x3feffe00 # 3b8: 61e4ff
|
||||
movi a9, 0x60000600 # 3bb: 91e4ff
|
||||
memw # 3be: c02000
|
||||
movi a8, 0 /* 0x00000000 */ # 3c1: 0c08
|
||||
s32i a8, a9, 48 /* 0x00000000 -> [0x60000630] */ # 3c3: 89c9
|
||||
movi a10, 132 /* 0x00000084 */ # 3c5: a2a084
|
||||
memw # 3c8: c02000
|
||||
s32i a10, a9, 40 /* 0x00000084 -> [0x60000628] */ # 3cb: a9a9
|
||||
memw # 3cd: c02000
|
||||
s32i a8, a9, 32 /* 0x00000000 -> [0x60000620] */ # 3d0: 8989
|
||||
movi a7, 4 /* 0x00000004 */ # 3d2: 0c47
|
||||
memw # 3d4: c02000
|
||||
l32i a5, a6, 0x204 /* [0x3ff00004] */ # 3d7: 522681
|
||||
or a5, a5, a7 # 3da: 705520
|
||||
memw # 3dd: c02000
|
||||
s32i a5, a6, 0x204 /* a5 -> [0x3ff00004] */ # 3e0: 526681
|
||||
movi a2, 1024 /* 0x00000400 */ # 3e3: 22a400
|
||||
call0 sdk__xt_isr_unmask # 3e6: 01deffc0
|
||||
# 3ea: 0000
|
||||
l32i a0, sp, 20 /* [(local3)] */ # 3ec: 0851
|
||||
addi sp, sp, 32 /* (top of frame) */ # 3ee: 12c120
|
||||
ret # 3f1: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "%s %s \n" # 0: 25732025
|
||||
# 4: 73200a00
|
||||
.Lstr002: .asciz "ets_timer.c" # 8: 6574735f
|
||||
# c: 74696d65
|
||||
# 10: 722e6300
|
||||
.Lstr003: .asciz "arm new %x %x\n" # 14: 61726d20
|
||||
# 18: 6e657720
|
||||
# 1c: 25782025
|
||||
# 20: 780a00
|
||||
.balign 4
|
||||
.Lstr004: .asciz "TIMQ_NUL\n" # 24: 54494d51
|
||||
# 28: 5f4e554c
|
||||
# 2c: 0a00
|
||||
.balign 4
|
||||
.Lstr005: .asciz "TIMQ_FL:%d!!" # 30: 54494d51
|
||||
# 34: 5f464c3a
|
||||
# 38: 25642121
|
||||
# 3c: 00
|
||||
.balign 4
|
||||
.Lstr006: .asciz "rtc_timer_task" # 40: 7274635f
|
||||
# 44: 74696d65
|
||||
# 48: 725f7461
|
||||
# 4c: 736b00
|
||||
.balign 4
|
||||
.Lstr007: .asciz "frc2_timer_task_hdl:%x, prio:%d, stack:%d\n" # 50: 66726332
|
||||
# 54: 5f74696d
|
||||
# 58: 65725f74
|
||||
# 5c: 61736b5f
|
||||
# 60: 68646c3a
|
||||
# 64: 25782c20
|
||||
# 68: 7072696f
|
||||
# 6c: 3a25642c
|
||||
# 70: 20737461
|
||||
# 74: 636b3a25
|
||||
# 78: 640a00
|
150
binary_sdk/libmain/misc.S
Normal file
150
binary_sdk/libmain/misc.S
Normal file
|
@ -0,0 +1,150 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .text+0x4
|
||||
.global sdk_os_get_cpu_frequency
|
||||
.type sdk_os_get_cpu_frequency, @function
|
||||
sdk_os_get_cpu_frequency:
|
||||
movi a2, .Ldata001 # 4: 21ffff
|
||||
l32i a2, a2, 0 /* [.Ldata001] */ # 7: 2802
|
||||
ret /* [.Ldata001] */ # 9: 0df0
|
||||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.Ldata001: .word 0x00000050 # 0: 50000000
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.global sdk__putc1
|
||||
.type sdk__putc1, @object
|
||||
sdk__putc1: .word 0x00000000 # 0: 00000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_ets_delay_us
|
||||
.type sdk_ets_delay_us, @function
|
||||
sdk_ets_delay_us:
|
||||
.global sdk_os_delay_us
|
||||
.type sdk_os_delay_us, @function
|
||||
sdk_os_delay_us:
|
||||
addi sp, sp, -16 /* (local0) */ # c: 12c1f0
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # f: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 11: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 13: 0901
|
||||
mov a12, a2 /* arg0 */ # 15: cd02
|
||||
call0 xthal_get_ccount # 17: 01fbffc0
|
||||
# 1b: 0000
|
||||
movi a0, .Ldata001 # 1d: 01f8ff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 20: 0800
|
||||
mov a13, a2 # 22: dd02
|
||||
mull a12, a0, a12 # 24: c0c082
|
||||
.Lbr001: call0 xthal_get_ccount # 27: 01f8ffc0
|
||||
# 2b: 0000
|
||||
sub a3, a2, a13 # 2d: d032c0
|
||||
bltu a3, a12, .Lbr001 # 30: c733f3
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 33: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 35: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 37: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 39: 12c110
|
||||
ret # 3c: 0df0
|
||||
|
||||
.literal_position # 40: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x44
|
||||
.global sdk_ets_update_cpu_frequency
|
||||
.type sdk_ets_update_cpu_frequency, @function
|
||||
sdk_ets_update_cpu_frequency:
|
||||
.global sdk_os_update_cpu_frequency
|
||||
.type sdk_os_update_cpu_frequency, @function
|
||||
sdk_os_update_cpu_frequency:
|
||||
movi a3, .Ldata001 # 44: 31ffff
|
||||
s32i a2, a3, 0 /* arg0 -> [.Ldata001] */ # 47: 2903
|
||||
ret /* arg0 */ # 49: 0df0
|
||||
|
||||
.literal_position # 4c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x50
|
||||
.global sdk_os_install_putc1
|
||||
.type sdk_os_install_putc1, @function
|
||||
sdk_os_install_putc1:
|
||||
movi a3, sdk__putc1 # 50: 31ffff
|
||||
s32i a2, a3, 0 /* arg0 -> [sdk__putc1] */ # 53: 2903
|
||||
ret /* arg0 */ # 55: 0df0
|
||||
|
||||
.literal_position # 58: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x5c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_os_putc
|
||||
.type sdk_os_putc, @function
|
||||
sdk_os_putc:
|
||||
addi sp, sp, -16 /* (local0) */ # 5c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 5f: 0901
|
||||
movi a0, sdk__putc1 # 61: 01fdff
|
||||
l32i a0, a0, 0 /* [sdk__putc1] */ # 64: 0800
|
||||
callx0 a0 /* [sdk__putc1] */ # 66: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 69: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 6b: 12c110
|
||||
ret # 6e: 0df0
|
||||
|
||||
.literal_position # 70: 00020060
|
||||
|
||||
# Function @ .irom0.text+0x74
|
||||
.global sdk_gpio_output_set
|
||||
.type sdk_gpio_output_set, @function
|
||||
sdk_gpio_output_set:
|
||||
movi a6, 0x60000200 # 74: 61ffff
|
||||
memw # 77: c02000
|
||||
s32i a2, a6, 0x104 /* arg0 -> [0x60000304] */ # 7a: 226641
|
||||
memw # 7d: c02000
|
||||
s32i a3, a6, 0x108 /* arg1 -> [0x60000308] */ # 80: 326642
|
||||
memw # 83: c02000
|
||||
s32i a4, a6, 0x110 /* arg2 -> [0x60000310] */ # 86: 426644
|
||||
memw # 89: c02000
|
||||
s32i a5, a6, 0x114 /* arg3 -> [0x60000314] */ # 8c: 526645
|
||||
ret /* arg0 */ # 8f: 0df0
|
||||
|
||||
.literal_position # 94: 00060060
|
||||
# 98: ffffdfff
|
||||
|
||||
# Function @ .irom0.text+0x9c
|
||||
.global sdk_rtc_get_reset_reason
|
||||
.type sdk_rtc_get_reset_reason, @function
|
||||
sdk_rtc_get_reset_reason:
|
||||
movi a4, 0x60000600 # 9c: 41feff
|
||||
memw # 9f: c02000
|
||||
l32i a2, a4, 0x114 /* [0x60000714] */ # a2: 222445
|
||||
extui a2, a2, 0, 4 # a5: 202034
|
||||
bnei a2, 5, .Lbr003 # a8: 665224
|
||||
memw # ab: c02000
|
||||
l32i a3, a4, 0x118 /* [0x60000718] */ # ae: 322446
|
||||
extui a3, a3, 8, 6 # b1: 303854
|
||||
bnei a3, 1, .Lbr002 # b4: 661304
|
||||
movi a2, 6 /* 0x00000006 */ # b7: 0c62
|
||||
j .Lbr003 # b9: c60400
|
||||
.Lbr002: memw # bc: c02000
|
||||
l32i a6, a4, 0x118 /* [0x60000718] */ # bf: 622446
|
||||
movi a5, 0 /* 0x00000000 */ # c2: 0c05
|
||||
extui a6, a6, 8, 6 # c4: 606854
|
||||
addi a6, a6, -8 # c7: 62c6f8
|
||||
movnez a2, a5, a6 # ca: 602593
|
||||
extui a2, a2, 0, 8 # cd: 202074
|
||||
.Lbr003: movi a8, 0xffdfffff # d0: 81f2ff
|
||||
memw # d3: c02000
|
||||
l32i a7, a4, 0x108 /* [0x60000708] */ # d6: 722442
|
||||
and a7, a7, a8 # d9: 807710
|
||||
memw # dc: c02000
|
||||
s32i a7, a4, 0x108 /* a7 -> [0x60000708] */ # df: 726442
|
||||
ret # e2: 0df0
|
217
binary_sdk/libmain/os_cpu_a.S
Normal file
217
binary_sdk/libmain/os_cpu_a.S
Normal file
|
@ -0,0 +1,217 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .text+0x14
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x50
|
||||
# (local1): word @ -0x4c
|
||||
# (local2): word @ -0x48
|
||||
# (local3): word @ -0x44
|
||||
# (local4): word[16] @ -0x40
|
||||
.global vPortYield
|
||||
.type vPortYield, @function
|
||||
vPortYield: wsr a0, excsave1 # 14: 00d113
|
||||
addi sp, sp, -80 /* (local0) */ # 17: 12c1b0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 1a: 0911
|
||||
addi a0, sp, 80 /* (top of frame) */ # 1c: 02c150
|
||||
s32i a0, sp, 16 /* (top of frame) -> [(local4)] */ # 1f: 0941
|
||||
rsr a0, ps # 21: 00e603
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 24: 0921
|
||||
rsr a0, excsave1 # 26: 00d103
|
||||
s32i a0, sp, 12 /* a0 -> [(local3)] */ # 29: 0931
|
||||
movi a0, _xt_user_exit # 2b: 01f5ff
|
||||
s32i a0, sp, 0 /* _xt_user_exit -> [(local0)] */ # 2e: 0901
|
||||
call0 sdk__xt_int_enter # 30: 050000
|
||||
call0 vPortEnterCritical # 33: 01f4ffc0
|
||||
# 37: 0000
|
||||
call0 vTaskSwitchContext # 39: 01f3ffc0
|
||||
# 3d: 0000
|
||||
call0 vPortExitCritical # 3f: 01f3ffc0
|
||||
# 43: 0000
|
||||
call0 sdk__xt_int_exit # 45: 01f2ffc0
|
||||
# 49: 0000
|
||||
ret # 4b: 0df0
|
||||
|
||||
.literal_position # 50: 00000000
|
||||
# 54: 00000000
|
||||
# 58: 00000000
|
||||
# 5c: 00000000
|
||||
# 60: 00000000
|
||||
# 64: 00350c00
|
||||
# 68: 00000000
|
||||
# 6c: 00000000
|
||||
# 70: 00350c00
|
||||
|
||||
# Function @ .text+0x74
|
||||
.global sdk__xt_int_enter
|
||||
.type sdk__xt_int_enter, @function
|
||||
sdk__xt_int_enter:
|
||||
s32i a12, sp, 60 /* a12 -> [(FP)+0x3c] */ # 74: c9f1
|
||||
s32i a13, sp, 64 /* a13 -> [(FP)+0x40] */ # 76: d26110
|
||||
mov a12, a0 # 79: cd00
|
||||
call0 sdk__xt_context_save # 7b: 01f5ffc0
|
||||
# 7f: 0000
|
||||
movi a0, pxCurrentTCB # 81: 01f4ff
|
||||
l32i a0, a0, 0 /* [pxCurrentTCB] */ # 84: 0800
|
||||
s32i sp, a0, 0 /* (top of frame) -> [[pxCurrentTCB]] */ # 86: 1900
|
||||
mov a0, a12 # 88: 0d0c
|
||||
ret # 8a: 0df0
|
||||
|
||||
# Function @ .text+0x8c
|
||||
.global sdk__xt_int_exit
|
||||
.type sdk__xt_int_exit, @function
|
||||
sdk__xt_int_exit:
|
||||
s32i a14, sp, 68 /* a14 -> [(FP)+0x44] */ # 8c: e26111
|
||||
s32i a15, sp, 72 /* a15 -> [(FP)+0x48] */ # 8f: f26112
|
||||
movi sp, pxCurrentTCB # 92: 11f1ff
|
||||
l32i sp, sp, 0 /* [pxCurrentTCB] */ # 95: 1801
|
||||
l32i sp, sp, 0 /* [[pxCurrentTCB]] */ # 97: 1801
|
||||
movi a14, pxCurrentTCB # 99: e1f0ff
|
||||
l32i a14, a14, 0 /* [pxCurrentTCB] */ # 9c: e80e
|
||||
addi a15, sp, 80 /* [[pxCurrentTCB]]+0x50 */ # 9e: f2c150
|
||||
s32i a15, a14, 0 /* [[pxCurrentTCB]]+0x50 -> [[pxCurrentTCB]] */ # a1: f90e
|
||||
call0 sdk__xt_context_restore # a3: 01efffc0
|
||||
# a7: 0000
|
||||
l32i a14, sp, 68 /* [[[pxCurrentTCB]]+0x44] */ # a9: e22111
|
||||
l32i a15, sp, 72 /* [[[pxCurrentTCB]]+0x48] */ # ac: f22112
|
||||
l32i a0, sp, 0 /* [[[pxCurrentTCB]]] */ # af: 0801
|
||||
ret # b1: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .text+0xb4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk__xt_timer_int
|
||||
.type sdk__xt_timer_int, @function
|
||||
sdk__xt_timer_int:
|
||||
addi sp, sp, -16 /* (local0) */ # b4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b7: 0901
|
||||
.Lbr001: movi a2, 0x000c3500 # b9: 21eaff
|
||||
rsr a3, ccompare0 # bc: 30f003
|
||||
add a4, a3, a2 # bf: 2a43
|
||||
wsr a4, ccompare0 # c1: 40f013
|
||||
esync # c4: 202000
|
||||
s32i a2, sp, 4 /* 0x000c3500 -> [(local1)] */ # c7: 2911
|
||||
s32i a3, sp, 8 /* a3 -> [(local2)] */ # c9: 3921
|
||||
call0 xPortSysTickHandle # cb: 01e7ffc0
|
||||
# cf: 0000
|
||||
l32i a2, sp, 4 /* [(local1)] */ # d1: 2811
|
||||
l32i a3, sp, 8 /* [(local2)] */ # d3: 3821
|
||||
esync # d5: 202000
|
||||
rsr a4, ccount # d8: 40ea03
|
||||
sub a4, a4, a3 # db: 3044c0
|
||||
blt a2, a4, .Lbr001 # de: 4722d7
|
||||
l32i a0, sp, 0 /* [(local0)] */ # e1: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # e3: 12c110
|
||||
ret /* [(local1)] */ # e6: 0df0
|
||||
|
||||
# Function @ .text+0xe8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk__xt_timer_int1
|
||||
.type sdk__xt_timer_int1, @function
|
||||
sdk__xt_timer_int1:
|
||||
addi sp, sp, -16 /* (local0) */ # e8: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # eb: 0901
|
||||
s32i a2, sp, 4 /* arg0 -> [(local1)] */ # ed: 2911
|
||||
s32i a3, sp, 8 /* arg1 -> [(local2)] */ # ef: 3921
|
||||
call0 vTaskSwitchContext # f1: 01deffc0
|
||||
# f5: 0000
|
||||
l32i a2, sp, 4 /* [(local1)] */ # f7: 2811
|
||||
l32i a3, sp, 8 /* [(local2)] */ # f9: 3821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # fb: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # fd: 12c110
|
||||
ret /* [(local1)] */ # 100: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .text+0x104
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk__xt_tick_timer_init
|
||||
.type sdk__xt_tick_timer_init, @function
|
||||
sdk__xt_tick_timer_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 104: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 107: 0901
|
||||
movi a3, 0x000c3500 # 109: 31d9ff
|
||||
rsr a2, ccount # 10c: 20ea03
|
||||
add a2, a2, a3 # 10f: 3a22
|
||||
wsr a2, ccompare0 # 111: 20f013
|
||||
movi a2, 0 /* 0x00000000 */ # 114: 0c02
|
||||
xsr a2, intenable # 116: 20e461
|
||||
movi a3, 64 /* 0x00000040 */ # 119: 4c03
|
||||
or a2, a2, a3 # 11b: 302220
|
||||
wsr a2, intenable # 11e: 20e413
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 121: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 123: 12c110
|
||||
ret # 126: 0df0
|
||||
|
||||
# Function @ .text+0x128
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk__xt_isr_unmask
|
||||
.type sdk__xt_isr_unmask, @function
|
||||
sdk__xt_isr_unmask:
|
||||
addi sp, sp, -16 /* (local0) */ # 128: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 12b: 0901
|
||||
movi a3, 0 /* 0x00000000 */ # 12d: 0c03
|
||||
xsr a3, intenable # 12f: 30e461
|
||||
or a3, a2, a3 # 132: 303220
|
||||
wsr a3, intenable # 135: 30e413
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 138: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 13a: 12c110
|
||||
ret /* arg0 */ # 13d: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .text+0x140
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk__xt_isr_mask
|
||||
.type sdk__xt_isr_mask, @function
|
||||
sdk__xt_isr_mask:
|
||||
addi sp, sp, -16 /* (local0) */ # 140: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 143: 0901
|
||||
movi a3, 0 /* 0x00000000 */ # 145: 0c03
|
||||
xsr a3, intenable # 147: 30e461
|
||||
and a3, a2, a3 # 14a: 303210
|
||||
wsr a3, intenable # 14d: 30e413
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 150: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 152: 12c110
|
||||
ret /* arg0 */ # 155: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .text+0x158
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk__xt_read_ints
|
||||
.type sdk__xt_read_ints, @function
|
||||
sdk__xt_read_ints:
|
||||
addi sp, sp, -16 /* (local0) */ # 158: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 15b: 0901
|
||||
rsr a2, interrupt # 15d: 20e203
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 160: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 162: 12c110
|
||||
ret # 165: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .text+0x168
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk__xt_clear_ints
|
||||
.type sdk__xt_clear_ints, @function
|
||||
sdk__xt_clear_ints:
|
||||
addi sp, sp, -16 /* (local0) */ # 168: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 16b: 0901
|
||||
wsr a2, intclear # 16d: 20e313
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 170: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 172: 12c110
|
||||
ret # 175: 0df0
|
538
binary_sdk/libmain/spi_flash.S
Normal file
538
binary_sdk/libmain/spi_flash.S
Normal file
|
@ -0,0 +1,538 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: ff9f6ffe
|
||||
# 4: 00020060
|
||||
# 8: 00200000
|
||||
# c: 00000000
|
||||
# 10: 00020060
|
||||
# 14: 00200001
|
||||
# 18: 00201000
|
||||
# 1c: 00208000
|
||||
# 20: 00600000
|
||||
# 24: 00000000
|
||||
# 28: 00000000
|
||||
|
||||
# Function @ .text+0x2c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_SPIReadModeCnfig
|
||||
.type sdk_SPIReadModeCnfig, @function
|
||||
sdk_SPIReadModeCnfig:
|
||||
addi sp, sp, -16 /* (local0) */ # 2c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2f: 0901
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 31: c911
|
||||
movi a4, 0xfe6f9fff # 33: 41f3ff
|
||||
movi a3, 0x60000200 # 36: 31f3ff
|
||||
memw # 39: c02000
|
||||
l32i a0, a3, 8 /* [0x60000208] */ # 3c: 0823
|
||||
and a0, a0, a4 # 3e: 400010
|
||||
memw # 41: c02000
|
||||
s32i a0, a3, 8 /* a0 -> [0x60000208] */ # 44: 0923
|
||||
movi a0, sdk_flashchip # 46: 01f1ff
|
||||
beqz a2, .Lbr004 # 49: 166204
|
||||
beqi a2, 1, .Lbr005 # 4c: 261249
|
||||
beqi a2, 2, .Lbr006 # 4f: 26224c
|
||||
beqi a2, 3, .Lbr007 # 52: 26324f
|
||||
addi a6, a2, -4 /* arg0-0x4 */ # 55: 62c2fc
|
||||
movi a5, 0x00002000 # 58: 51ecff
|
||||
movi a12, 0 /* 0x00000000 */ # 5b: 0c0c
|
||||
moveqz a12, a5, a6 # 5d: 60c583
|
||||
.Lbr001: beqz a2, .Lbr003 # 60: ac42
|
||||
beqi a2, 1, .Lbr003 # 62: 261222
|
||||
mov a2, a0 /* sdk_flashchip */ # 65: 2d00
|
||||
call0 Disable_QMode # 67: 01efffc0
|
||||
# 6b: 0000
|
||||
.Lbr002: memw # 6d: c02000
|
||||
movi a8, 0x60000200 # 70: 81e8ff
|
||||
l32i a7, a8, 8 /* [0x60000208] */ # 73: 7828
|
||||
or a7, a7, a12 # 75: c07720
|
||||
memw # 78: c02000
|
||||
s32i a7, a8, 8 /* a7 -> [0x60000208] */ # 7b: 7928
|
||||
movi a2, 0 /* 0x00000000 */ # 7d: 0c02
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 7f: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 81: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 83: 12c110
|
||||
ret /* 0x00000000 */ # 86: 0df0
|
||||
.Lbr003: mov a2, a0 /* sdk_flashchip */ # 88: 2d00
|
||||
call0 Enable_QMode # 8a: 01e7ffc0
|
||||
# 8e: 0000
|
||||
j .Lbr002 # 90: 46f6ff
|
||||
.Lbr004: movi a12, 0x01002000 # 93: c1e0ff
|
||||
j .Lbr001 # 96: 86f1ff
|
||||
.Lbr005: movi a12, 0x00102000 # 99: c1dfff
|
||||
j .Lbr001 # 9c: 06f0ff
|
||||
.Lbr006: movi a12, 0x00802000 # 9f: c1dfff
|
||||
j .Lbr001 # a2: 86eeff
|
||||
.Lbr007: movi a12, 0x00006000 # a5: c1deff
|
||||
j .Lbr001 # a8: 06edff
|
||||
|
||||
.literal_position # ac: 00000000
|
||||
# b0: 00000000
|
||||
# b4: 00000000
|
||||
# b8: 00000000
|
||||
# bc: 00000000
|
||||
# c0: 00000000
|
||||
# c4: 00000000
|
||||
# c8: 00000000
|
||||
# cc: 00000000
|
||||
# d0: 00000000
|
||||
# d4: 00000000
|
||||
|
||||
# Function @ .text+0xd8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x30
|
||||
# (local1): word @ -0x2c
|
||||
# (local2): word @ -0x28
|
||||
# (local3): word @ -0x24
|
||||
# (local4): word @ -0x20
|
||||
# (local5): word @ -0x1c
|
||||
# (local6): word @ -0x18
|
||||
# (local7): word @ -0x14
|
||||
# (local8): word @ -0x10
|
||||
# (local9): word[3] @ -0xc
|
||||
.global sdk_SPIWrite
|
||||
.type sdk_SPIWrite, @function
|
||||
sdk_SPIWrite:
|
||||
mov a5, a4 /* arg2 */ # d8: 5d04
|
||||
addi sp, sp, -48 /* (local0) */ # da: 12c1d0
|
||||
s32i a12, sp, 16 /* a12 -> [(local4)] */ # dd: c941
|
||||
s32i a14, sp, 24 /* a14 -> [(local6)] */ # df: e961
|
||||
s32i a3, sp, 36 /* arg1 -> [(local9)] */ # e1: 3991
|
||||
s32i a0, sp, 12 /* a0 -> [(local3)] */ # e3: 0931
|
||||
movi a4, sdk_flashchip # e5: 41f1ff
|
||||
s32i a15, sp, 28 /* a15 -> [(local7)] */ # e8: f971
|
||||
s32i a13, sp, 20 /* a13 -> [(local5)] */ # ea: d951
|
||||
mov a15, a3 /* arg1 */ # ec: fd03
|
||||
mov a13, a2 /* arg0 */ # ee: dd02
|
||||
l32i a0, a4, 4 /* [.Ldata001] */ # f0: 0814
|
||||
add a2, a5, a2 # f2: 2a25
|
||||
bltu a0, a2, .Lbr008 # f4: 273002
|
||||
j .Lbr014 # f7: 462000
|
||||
.Lbr008: movi a2, 1 /* 0x00000001 */ # fa: 0c12
|
||||
j .Lbr013 # fc: 461b00
|
||||
.Lbr009: movi a2, sdk_flashchip # ff: 21ecff
|
||||
mov a3, a13 /* arg0 */ # 102: 3d0d
|
||||
mov a4, a15 /* arg1 */ # 104: 4d0f
|
||||
mov a5, a12 # 106: 5d0c
|
||||
call0 SPI_page_program # 108: 01eeffc0
|
||||
# 10c: 0000
|
||||
bnez a2, .Lbr008 # 10e: 5682fe
|
||||
l32i a2, sp, 8 /* [(local2)] */ # 111: 2821
|
||||
mov a3, a14 /* [.Ldata003] */ # 113: 3d0e
|
||||
sub a2, a2, a12 # 115: c022c0
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 118: 2901
|
||||
call0 __udivsi3 # 11a: 01eaffc0
|
||||
# 11e: 0000
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # 120: 2911
|
||||
beqz a2, .Lbr011 # 122: acf2
|
||||
movi a3, 0 /* 0x00000000 */ # 124: 0c03
|
||||
s32i a3, sp, 32 /* 0x00000000 -> [(local8)] */ # 126: 3981
|
||||
.Lbr010: movi a2, sdk_flashchip # 128: 21e3ff
|
||||
add a3, a13, a12 # 12b: ca3d
|
||||
mov a5, a14 /* [.Ldata003] */ # 12d: 5d0e
|
||||
srli a4, a12, 2 # 12f: c04241
|
||||
addx4 a4, a4, a15 # 132: f044a0
|
||||
call0 SPI_page_program # 135: 01e4ffc0
|
||||
# 139: 0000
|
||||
bnez a2, .Lbr008 # 13b: 56b2fb
|
||||
add a12, a14, a12 # 13e: cace
|
||||
l32i a6, sp, 32 /* [(local8)] */ # 140: 6881
|
||||
l32i a5, sp, 4 /* [(local1)] */ # 142: 5811
|
||||
addi a7, a6, 1 /* [(local8)]+0x1 */ # 144: 1b76
|
||||
extui a6, a7, 0, 8 # 146: 706074
|
||||
s32i a6, sp, 32 /* a6 -> [(local8)] */ # 149: 6981
|
||||
bne a5, a6, .Lbr010 # 14b: 6795d9
|
||||
l32i a8, sp, 8 /* [(local2)] */ # 14e: 8821
|
||||
sub a8, a8, a12 # 150: c088c0
|
||||
s32i a8, sp, 0 /* a8 -> [(local0)] */ # 153: 8901
|
||||
.Lbr011: add a3, a13, a12 # 155: ca3d
|
||||
movi a2, sdk_flashchip # 157: 21d8ff
|
||||
l32i a5, sp, 0 /* [(local0)] */ # 15a: 5801
|
||||
srli a4, a12, 2 # 15c: c04241
|
||||
addx4 a4, a4, a15 # 15f: f044a0
|
||||
call0 SPI_page_program # 162: 01daffc0
|
||||
# 166: 0000
|
||||
bnez a2, .Lbr008 # 168: 56e2f8
|
||||
.Lbr012: movi a2, 0 /* 0x00000000 */ # 16b: 0c02
|
||||
.Lbr013: l32i a12, sp, 16 /* [(local4)] */ # 16d: c841
|
||||
l32i a13, sp, 20 /* [(local5)] */ # 16f: d851
|
||||
l32i a14, sp, 24 /* [(local6)] */ # 171: e861
|
||||
l32i a15, sp, 28 /* [(local7)] */ # 173: f871
|
||||
l32i a0, sp, 12 /* [(local3)] */ # 175: 0831
|
||||
addi sp, sp, 48 /* (top of frame) */ # 177: 12c130
|
||||
ret # 17a: 0df0
|
||||
.Lbr014: mov a2, a13 /* arg0 */ # 17c: 2d0d
|
||||
l32i a14, a4, 16 /* [.Ldata003] */ # 17e: e844
|
||||
s32i a5, sp, 8 /* arg2 -> [(local2)] */ # 180: 5921
|
||||
mov a3, a14 /* [.Ldata003] */ # 182: 3d0e
|
||||
call0 __umodsi3 # 184: 01d3ffc0
|
||||
# 188: 0000
|
||||
l32i a5, sp, 8 /* [(local2)] */ # 18a: 5821
|
||||
sub a12, a14, a2 # 18c: 20cec0
|
||||
bltu a5, a12, .Lbr015 # 18f: c73502
|
||||
j .Lbr009 # 192: 46daff
|
||||
.Lbr015: mov a4, a15 /* arg1 */ # 195: 4d0f
|
||||
mov a3, a13 /* arg0 */ # 197: 3d0d
|
||||
movi a2, sdk_flashchip # 199: 21c8ff
|
||||
call0 SPI_page_program # 19c: 01ceffc0
|
||||
# 1a0: 0000
|
||||
bnez a2, .Lbr008 # 1a2: 5642f5
|
||||
j .Lbr012 # 1a5: 86f0ff
|
||||
|
||||
.literal_position # 1a8: 00000000
|
||||
# 1ac: 00000000
|
||||
|
||||
# Function @ .text+0x1b0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_SPIRead
|
||||
.type sdk_SPIRead, @function
|
||||
sdk_SPIRead:
|
||||
mov a5, a4 /* arg2 */ # 1b0: 5d04
|
||||
mov a7, a3 /* arg1 */ # 1b2: 7d03
|
||||
addi sp, sp, -16 /* (local0) */ # 1b4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1b7: 0901
|
||||
mov a3, a2 /* arg0 */ # 1b9: 3d02
|
||||
mov a4, a7 /* arg1 */ # 1bb: 4d07
|
||||
movi a2, sdk_flashchip # 1bd: 21faff
|
||||
call0 SPI_read_data # 1c0: 01fbffc0
|
||||
# 1c4: 0000
|
||||
movi a4, 0 /* 0x00000000 */ # 1c6: 0c04
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 1c8: 3801
|
||||
movi a0, 1 /* 0x00000001 */ # 1ca: 0c10
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1cc: 12c110
|
||||
moveqz a0, a4, a2 # 1cf: 200483
|
||||
mov a2, a0 # 1d2: 2d00
|
||||
mov a0, a3 /* [(local0)] */ # 1d4: 0d03
|
||||
ret # 1d6: 0df0
|
||||
|
||||
.literal_position # 1d8: 00000000
|
||||
# 1dc: 00000000
|
||||
# 1e0: 00000000
|
||||
# 1e4: 00000000
|
||||
# 1e8: 00000000
|
||||
# 1ec: 00000000
|
||||
|
||||
# Function @ .text+0x1f0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_SPIEraseSector
|
||||
.type sdk_SPIEraseSector, @function
|
||||
sdk_SPIEraseSector:
|
||||
addi sp, sp, -16 /* (local0) */ # 1f0: 12c1f0
|
||||
movi a3, sdk_flashchip # 1f3: 31f9ff
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1f6: c911
|
||||
mov a12, a2 /* arg0 */ # 1f8: cd02
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1fa: 0901
|
||||
l32i a2, a3, 4 /* [.Ldata001] */ # 1fc: 2813
|
||||
l32i a3, a3, 12 /* [.Ldata002] */ # 1fe: 3833
|
||||
call0 __udivsi3 # 200: 01f9ffc0
|
||||
# 204: 0000
|
||||
bgeu a12, a2, .Lbr016 # 206: 27bc1f
|
||||
movi a2, sdk_flashchip # 209: 21f4ff
|
||||
call0 SPI_write_enable # 20c: 01f7ffc0
|
||||
# 210: 0000
|
||||
bnez a2, .Lbr016 # 212: dc32
|
||||
movi a2, sdk_flashchip # 214: 21f3ff
|
||||
l32i a3, a2, 12 /* [.Ldata002] */ # 217: 3832
|
||||
mull a3, a3, a12 # 219: c03382
|
||||
call0 SPI_sector_erase # 21c: 01f4ffc0
|
||||
# 220: 0000
|
||||
bnez a2, .Lbr016 # 222: cc32
|
||||
movi a2, 0 /* 0x00000000 */ # 224: 0c02
|
||||
j .Lbr017 # 226: 460000
|
||||
.Lbr016: movi a2, 1 /* 0x00000001 */ # 229: 0c12
|
||||
.Lbr017: l32i a12, sp, 4 /* [(local1)] */ # 22b: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 22d: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 22f: 12c110
|
||||
ret # 232: 0df0
|
||||
|
||||
.literal_position # 234: 00000000
|
||||
# 238: 00020060
|
||||
# 23c: 00000010
|
||||
# 240: ffffff00
|
||||
# 244: 00000000
|
||||
# 248: 00000000
|
||||
# 24c: 00000000
|
||||
# 250: 00000000
|
||||
# 254: 00000000
|
||||
|
||||
# Function @ .text+0x258
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_spi_flash_get_id
|
||||
.type sdk_spi_flash_get_id, @function
|
||||
sdk_spi_flash_get_id:
|
||||
addi sp, sp, -16 /* (local0) */ # 258: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 25b: 0911
|
||||
call0 vPortEnterCritical # 25d: 01f9ffc0
|
||||
# 261: 0000
|
||||
call0 Cache_Read_Disable # 263: 01f9ffc0
|
||||
# 267: 0000
|
||||
movi a2, sdk_flashchip # 269: 21f2ff
|
||||
call0 Wait_SPI_Idle # 26c: 01f8ffc0
|
||||
# 270: 0000
|
||||
movi a4, 0 /* 0x00000000 */ # 272: 0c04
|
||||
movi a0, 0x60000200 # 274: 01f1ff
|
||||
memw # 277: c02000
|
||||
s32i a4, a0, 64 /* 0x00000000 -> [0x60000240] */ # 27a: 426010
|
||||
movi a3, 0x10000000 # 27d: 31efff
|
||||
memw # 280: c02000
|
||||
s32i a3, a0, 0 /* 0x10000000 -> [0x60000200] */ # 283: 3900
|
||||
memw # 285: c02000
|
||||
l32i a2, a0, 0 /* [0x60000200] */ # 288: 2800
|
||||
beqz a2, .Lbr019 # 28a: 8c62
|
||||
.Lbr018: memw # 28c: c02000
|
||||
l32i a5, a0, 0 /* [0x60000200] */ # 28f: 5800
|
||||
bnez a5, .Lbr018 # 291: 5675ff
|
||||
.Lbr019: movi a7, 0x00ffffff # 294: 71ebff
|
||||
memw # 297: c02000
|
||||
movi a2, 0 /* 0x00000000 */ # 29a: 0c02
|
||||
movi a3, 0 /* 0x00000000 */ # 29c: 0c03
|
||||
l32i a6, a0, 64 /* [0x60000240] */ # 29e: 622010
|
||||
movi a4, 1 /* 0x00000001 */ # 2a1: 0c14
|
||||
and a6, a6, a7 # 2a3: 706610
|
||||
s32i a6, sp, 0 /* a6 -> [(local0)] */ # 2a6: 6901
|
||||
call0 Cache_Read_Enable # 2a8: 01eaffc0
|
||||
# 2ac: 0000
|
||||
call0 vPortExitCritical # 2ae: 01e9ffc0
|
||||
# 2b2: 0000
|
||||
l32i a8, sp, 4 /* [(local1)] */ # 2b4: 8811
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 2b6: 2801
|
||||
mov a0, a8 /* [(local1)] */ # 2b8: 0d08
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2ba: 12c110
|
||||
ret /* [(local0)] */ # 2bd: 0df0
|
||||
|
||||
.literal_position # 2c0: 00000000
|
||||
# 2c4: 00000000
|
||||
# 2c8: 00000000
|
||||
# 2cc: 00000000
|
||||
# 2d0: 00000000
|
||||
# 2d4: 00000000
|
||||
|
||||
# Function @ .text+0x2d8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_spi_flash_read_status
|
||||
.type sdk_spi_flash_read_status, @function
|
||||
sdk_spi_flash_read_status:
|
||||
addi sp, sp, -16 /* (local0) */ # 2d8: 12c1f0
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 2db: 2901
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 2dd: 0921
|
||||
call0 vPortEnterCritical # 2df: 01f9ffc0
|
||||
# 2e3: 0000
|
||||
call0 Cache_Read_Disable # 2e5: 01f8ffc0
|
||||
# 2e9: 0000
|
||||
movi a2, sdk_flashchip # 2eb: 21f5ff
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 2ee: 3801
|
||||
call0 SPI_read_status # 2f0: 01f7ffc0
|
||||
# 2f4: 0000
|
||||
movi a3, 0 /* 0x00000000 */ # 2f6: 0c03
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # 2f8: 2911
|
||||
movi a4, 1 /* 0x00000001 */ # 2fa: 0c14
|
||||
movi a2, 0 /* 0x00000000 */ # 2fc: 0c02
|
||||
call0 Cache_Read_Enable # 2fe: 01f4ffc0
|
||||
# 302: 0000
|
||||
call0 vPortExitCritical # 304: 01f4ffc0
|
||||
# 308: 0000
|
||||
l32i a3, sp, 8 /* [(local2)] */ # 30a: 3821
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 30c: 2811
|
||||
mov a0, a3 /* [(local2)] */ # 30e: 0d03
|
||||
addi sp, sp, 16 /* (top of frame) */ # 310: 12c110
|
||||
ret /* [(local1)] */ # 313: 0df0
|
||||
|
||||
.literal_position # 318: 00000000
|
||||
# 31c: 00000000
|
||||
# 320: 00000000
|
||||
# 324: 00000000
|
||||
# 328: 00000000
|
||||
# 32c: 00000000
|
||||
|
||||
# Function @ .text+0x330
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_spi_flash_write_status
|
||||
.type sdk_spi_flash_write_status, @function
|
||||
sdk_spi_flash_write_status:
|
||||
addi sp, sp, -16 /* (local0) */ # 330: 12c1f0
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 333: 2901
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 335: 0921
|
||||
call0 vPortEnterCritical # 337: 01f9ffc0
|
||||
# 33b: 0000
|
||||
call0 Cache_Read_Disable # 33d: 01f8ffc0
|
||||
# 341: 0000
|
||||
movi a2, sdk_flashchip # 343: 21f5ff
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 346: 3801
|
||||
call0 SPI_write_status # 348: 01f7ffc0
|
||||
# 34c: 0000
|
||||
movi a3, 0 /* 0x00000000 */ # 34e: 0c03
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # 350: 2911
|
||||
movi a4, 1 /* 0x00000001 */ # 352: 0c14
|
||||
movi a2, 0 /* 0x00000000 */ # 354: 0c02
|
||||
call0 Cache_Read_Enable # 356: 01f4ffc0
|
||||
# 35a: 0000
|
||||
call0 vPortExitCritical # 35c: 01f4ffc0
|
||||
# 360: 0000
|
||||
l32i a3, sp, 8 /* [(local2)] */ # 362: 3821
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 364: 2811
|
||||
mov a0, a3 /* [(local2)] */ # 366: 0d03
|
||||
addi sp, sp, 16 /* (top of frame) */ # 368: 12c110
|
||||
ret /* [(local1)] */ # 36b: 0df0
|
||||
|
||||
.literal_position # 370: 00000000
|
||||
# 374: 00000000
|
||||
# 378: 00000000
|
||||
# 37c: 00000000
|
||||
|
||||
# Function @ .text+0x380
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_spi_flash_erase_sector
|
||||
.type sdk_spi_flash_erase_sector, @function
|
||||
sdk_spi_flash_erase_sector:
|
||||
addi sp, sp, -16 /* (local0) */ # 380: 12c1f0
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 383: 2901
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 385: 0921
|
||||
call0 vPortEnterCritical # 387: 01faffc0
|
||||
# 38b: 0000
|
||||
call0 Cache_Read_Disable # 38d: 01f9ffc0
|
||||
# 391: 0000
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 393: 2801
|
||||
call0 sdk_SPIEraseSector # 395: 050000
|
||||
movi a3, 0 /* 0x00000000 */ # 398: 0c03
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # 39a: 2911
|
||||
movi a4, 1 /* 0x00000001 */ # 39c: 0c14
|
||||
movi a2, 0 /* 0x00000000 */ # 39e: 0c02
|
||||
call0 Cache_Read_Enable # 3a0: 01f6ffc0
|
||||
# 3a4: 0000
|
||||
call0 vPortExitCritical # 3a6: 01f5ffc0
|
||||
# 3aa: 0000
|
||||
l32i a3, sp, 8 /* [(local2)] */ # 3ac: 3821
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 3ae: 2811
|
||||
mov a0, a3 /* [(local2)] */ # 3b0: 0d03
|
||||
addi sp, sp, 16 /* (top of frame) */ # 3b2: 12c110
|
||||
ret /* [(local1)] */ # 3b5: 0df0
|
||||
|
||||
.literal_position # 3b8: 00000000
|
||||
# 3bc: 00000000
|
||||
# 3c0: 00000000
|
||||
# 3c4: 00000000
|
||||
|
||||
# Function @ .text+0x3c8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_spi_flash_write
|
||||
.type sdk_spi_flash_write, @function
|
||||
sdk_spi_flash_write:
|
||||
addi sp, sp, -16 /* (local0) */ # 3c8: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 3cb: 0911
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 3cd: d931
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 3cf: c921
|
||||
mov a13, a3 /* arg1 */ # 3d1: dd03
|
||||
mov a12, a4 /* arg2 */ # 3d3: cd04
|
||||
bnez a3, .Lbr020 # 3d5: cc33
|
||||
movi a2, 1 /* 0x00000001 */ # 3d7: 0c12
|
||||
j .Lbr022 # 3d9: 460e00
|
||||
.Lbr020: s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 3dc: 2901
|
||||
movi a0, 3 /* 0x00000003 */ # 3de: 0c30
|
||||
bnone a0, a4, .Lbr021 # 3e0: 470007
|
||||
movi a0, 4 /* 0x00000004 */ # 3e3: 0c40
|
||||
srli a12, a4, 2 # 3e5: 40c241
|
||||
addx4 a12, a12, a0 # 3e8: 00cca0
|
||||
.Lbr021: call0 vPortEnterCritical # 3eb: 01f3ffc0
|
||||
# 3ef: 0000
|
||||
call0 Cache_Read_Disable # 3f1: 01f2ffc0
|
||||
# 3f5: 0000
|
||||
mov a4, a12 # 3f7: 4d0c
|
||||
mov a3, a13 /* arg1 */ # 3f9: 3d0d
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 3fb: 2801
|
||||
call0 sdk_SPIWrite # 3fd: 050000
|
||||
movi a3, 0 /* 0x00000000 */ # 400: 0c03
|
||||
mov a12, a2 # 402: cd02
|
||||
movi a4, 1 /* 0x00000001 */ # 404: 0c14
|
||||
movi a2, 0 /* 0x00000000 */ # 406: 0c02
|
||||
call0 Cache_Read_Enable # 408: 01eeffc0
|
||||
# 40c: 0000
|
||||
call0 vPortExitCritical # 40e: 01edffc0
|
||||
# 412: 0000
|
||||
mov a2, a12 # 414: 2d0c
|
||||
.Lbr022: l32i a12, sp, 8 /* [(local2)] */ # 416: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 418: d831
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 41a: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 41c: 12c110
|
||||
ret # 41f: 0df0
|
||||
|
||||
.literal_position # 424: 00000000
|
||||
# 428: 00000000
|
||||
# 42c: 00000000
|
||||
# 430: 00000000
|
||||
|
||||
# Function @ .text+0x434
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_spi_flash_read
|
||||
.type sdk_spi_flash_read, @function
|
||||
sdk_spi_flash_read:
|
||||
addi sp, sp, -16 /* (local0) */ # 434: 12c1f0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 437: 0921
|
||||
s32i a4, sp, 0 /* arg2 -> [(local0)] */ # 439: 4901
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 43b: c931
|
||||
s32i a2, sp, 4 /* arg0 -> [(local1)] */ # 43d: 2911
|
||||
mov a12, a3 /* arg1 */ # 43f: cd03
|
||||
bnez a3, .Lbr023 # 441: cc33
|
||||
movi a2, 1 /* 0x00000001 */ # 443: 0c12
|
||||
j .Lbr024 # 445: 860a00
|
||||
.Lbr023: call0 vPortEnterCritical # 448: 01f7ffc0
|
||||
# 44c: 0000
|
||||
call0 Cache_Read_Disable # 44e: 01f6ffc0
|
||||
# 452: 0000
|
||||
mov a3, a12 /* arg1 */ # 454: 3d0c
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 456: 2811
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 458: 4801
|
||||
call0 sdk_SPIRead # 45a: 050000
|
||||
movi a3, 0 /* 0x00000000 */ # 45d: 0c03
|
||||
mov a12, a2 # 45f: cd02
|
||||
movi a4, 1 /* 0x00000001 */ # 461: 0c14
|
||||
movi a2, 0 /* 0x00000000 */ # 463: 0c02
|
||||
call0 Cache_Read_Enable # 465: 01f1ffc0
|
||||
# 469: 0000
|
||||
call0 vPortExitCritical # 46b: 01f1ffc0
|
||||
# 46f: 0000
|
||||
mov a2, a12 # 471: 2d0c
|
||||
.Lbr024: l32i a12, sp, 12 /* [(local3)] */ # 473: c831
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 475: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 477: 12c110
|
||||
ret # 47a: 0df0
|
||||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.global sdk_flashchip
|
||||
.type sdk_flashchip, @object
|
||||
sdk_flashchip:
|
||||
.word 0x001640ef # 0: ef401600
|
||||
.Ldata001: .word 0x00400000 # 4: 00004000
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.word 0x00010000 # 8: 00000100
|
||||
|
||||
.Ldata002: .word 0x00001000 # c: 00100000
|
||||
.Ldata003: .word 0x00000100 # 10: 00010000
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.word 0x0000ffff # 14: ffff0000
|
229
binary_sdk/libmain/timers.S
Normal file
229
binary_sdk/libmain/timers.S
Normal file
|
@ -0,0 +1,229 @@
|
|||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .word 0x00000000 # 0: 00000000
|
||||
.Ldata002: .byte 0x00
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_os_timer_setfn
|
||||
.type sdk_os_timer_setfn, @function
|
||||
sdk_os_timer_setfn:
|
||||
addi sp, sp, -32 /* (local0) */ # 14: 12c1e0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 17: 0901
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 19: e931
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 1b: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1d: c911
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 1f: f941
|
||||
movi a15, .Ldata001 # 21: f1f7ff
|
||||
mov a12, a2 /* arg0 */ # 24: cd02
|
||||
l32i a13, a15, 0 /* [.Ldata001] */ # 26: d80f
|
||||
mov a14, a4 /* arg2 */ # 28: ed04
|
||||
beqz a13, .Lbr006 # 2a: 16fd04
|
||||
.Lbr001: l32i a0, a13, 4 # 2d: 081d
|
||||
bne a0, a12, .Lbr005 # 2f: c79041
|
||||
l32i a2, a12, 24 /* [arg0+0x18] */ # 32: 286c
|
||||
l32i a4, a12, 16 /* [arg0+0x10] */ # 34: 484c
|
||||
bne a2, a14, .Lbr002 # 36: e79202
|
||||
beq a4, a3, .Lbr007 # 39: 37145f
|
||||
.Lbr002: l32i a2, a12, 4 /* [arg0+0x4] */ # 3c: 281c
|
||||
s32i a3, sp, 20 /* arg1 -> [(local5)] */ # 3e: 3951
|
||||
beqz a2, .Lbr004 # 40: ac32
|
||||
movi a3, 3 /* 0x00000003 */ # 42: 0c33
|
||||
movi a4, 0 /* 0x00000000 */ # 44: 0c04
|
||||
movi a5, 0 /* 0x00000000 */ # 46: 0c05
|
||||
movi a6, 50 /* 0x00000032 */ # 48: 3c26
|
||||
call0 xTimerGenericCommand # 4a: 01efffc0
|
||||
# 4e: 0000
|
||||
l32i a3, sp, 20 /* [(local5)] */ # 50: 3851
|
||||
bnez a2, .Lbr003 # 52: cc92
|
||||
movi a2, .Lstr001 # 54: 21ecff
|
||||
call0 printf # 57: 01edffc0
|
||||
# 5b: 0000
|
||||
l32i a3, sp, 20 /* [(local5)] */ # 5d: 3851
|
||||
.Lbr003: l8ui a5, a15, 4 /* [.Ldata002] */ # 5f: 520f04
|
||||
addi a5, a5, -1 /* [.Ldata002]-0x1 */ # 62: 0b55
|
||||
s8i a5, a15, 4 /* [.Ldata002]-0x1 -> [.Ldata002] */ # 64: 524f04
|
||||
.Lbr004: s32i a3, a12, 16 /* a3 -> [arg0+0x10] */ # 67: 394c
|
||||
s32i a14, a12, 24 /* arg2 -> [arg0+0x18] */ # 69: e96c
|
||||
movi a6, 0 /* 0x00000000 */ # 6b: 0c06
|
||||
s32i a6, a12, 4 /* 0x00000000 -> [arg0+0x4] */ # 6d: 691c
|
||||
s32i a6, a12, 12 /* 0x00000000 -> [arg0+0xc] */ # 6f: 693c
|
||||
j .Lbr007 # 71: c60900
|
||||
.Lbr005: l32i a0, a13, 0 # 74: 080d
|
||||
beqz a0, .Lbr006 # 76: 8c30
|
||||
mov a13, a0 # 78: dd00
|
||||
bnez a0, .Lbr001 # 7a: 56f0fa
|
||||
.Lbr006: s32i a3, a12, 16 /* arg1 -> [arg0+0x10] */ # 7d: 394c
|
||||
s32i a14, a12, 24 /* arg2 -> [arg0+0x18] */ # 7f: e96c
|
||||
movi a2, 8 /* 0x00000008 */ # 81: 0c82
|
||||
movi a7, 0 /* 0x00000000 */ # 83: 0c07
|
||||
s32i a7, a12, 4 /* 0x00000000 -> [arg0+0x4] */ # 85: 791c
|
||||
s32i a7, a12, 12 /* 0x00000000 -> [arg0+0xc] */ # 87: 793c
|
||||
call0 pvPortMalloc # 89: 01e1ffc0
|
||||
# 8d: 0000
|
||||
s32i a12, a2, 4 # 8f: c912
|
||||
movi a9, 0 /* 0x00000000 */ # 91: 0c09
|
||||
l32i a8, a15, 0 /* [.Ldata001] */ # 93: 880f
|
||||
s32i a9, a2, 0 # 95: 9902
|
||||
movnez a15, a13, a8 # 97: 80fd93
|
||||
s32i a2, a15, 0 # 9a: 290f
|
||||
.Lbr007: l32i a12, sp, 4 /* [(local1)] */ # 9c: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 9e: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # a0: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # a2: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # a4: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # a6: 12c120
|
||||
ret # a9: 0df0
|
||||
|
||||
.literal_position # ac: 00000000
|
||||
# b0: 18000000
|
||||
# b4: 00000000
|
||||
# b8: 00000000
|
||||
# bc: 00000000
|
||||
# c0: 00000000
|
||||
# c4: 00000000
|
||||
# c8: 00000000
|
||||
# cc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xd0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_os_timer_arm
|
||||
.type sdk_os_timer_arm, @function
|
||||
sdk_os_timer_arm:
|
||||
addi sp, sp, -32 /* (local0) */ # d0: 12c1e0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # d3: 0901
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # d5: d921
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # d7: f941
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # d9: c911
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # db: e931
|
||||
mov a12, a2 /* arg0 */ # dd: cd02
|
||||
mov a14, a3 /* arg1 */ # df: ed03
|
||||
l32i a15, a2, 4 /* [arg0+0x4] */ # e1: f812
|
||||
mov a13, a4 /* arg2 */ # e3: dd04
|
||||
bnez a15, .Lbr008 # e5: ecff
|
||||
s8i a4, a2, 20 /* arg2 -> [arg0+0x14] */ # e7: 424214
|
||||
s32i a3, a2, 12 /* arg1 -> [arg0+0xc] */ # ea: 3932
|
||||
mov a2, a3 /* arg1 */ # ec: 2d03
|
||||
movi a3, 10 /* 0x0000000a */ # ee: 0ca3
|
||||
call0 __udivsi3 # f0: 01f1ffc0
|
||||
# f4: 0000
|
||||
mov a4, a13 /* arg2 */ # f6: 4d0d
|
||||
l32i a5, a12, 24 /* [arg0+0x18] */ # f8: 586c
|
||||
mov a3, a2 # fa: 3d02
|
||||
l32i a6, a12, 16 /* [arg0+0x10] */ # fc: 684c
|
||||
movi a2, 0 /* 0x00000000 */ # fe: 0c02
|
||||
call0 xTimerCreate # 100: 01eeffc0
|
||||
# 104: 0000
|
||||
movi a3, .Ldata001 # 106: 31e9ff
|
||||
mov a15, a2 # 109: fd02
|
||||
l8ui a0, a3, 4 /* [.Ldata002] */ # 10b: 020304
|
||||
s32i a2, a12, 4 /* a2 -> [arg0+0x4] */ # 10e: 291c
|
||||
addi a0, a0, 1 /* [.Ldata002]+0x1 */ # 110: 1b00
|
||||
s8i a0, a3, 4 /* [.Ldata002]+0x1 -> [.Ldata002] */ # 112: 024304
|
||||
beqz a2, .Lbr011 # 115: 16c204
|
||||
.Lbr008: l8ui a3, a12, 20 /* [arg0+0x14] */ # 118: 320c14
|
||||
beq a3, a13, .Lbr009 # 11b: d71304
|
||||
s8i a13, a12, 20 /* arg2 -> [arg0+0x14] */ # 11e: d24c14
|
||||
s32i a13, a15, 28 # 121: d97f
|
||||
.Lbr009: l32i a4, a12, 12 /* [arg0+0xc] */ # 123: 483c
|
||||
beq a4, a14, .Lbr010 # 125: e7141b
|
||||
mov a2, a14 /* arg1 */ # 128: 2d0e
|
||||
s32i a14, a12, 12 /* arg1 -> [arg0+0xc] */ # 12a: e93c
|
||||
movi a3, 10 /* 0x0000000a */ # 12c: 0ca3
|
||||
call0 __udivsi3 # 12e: 01e3ffc0
|
||||
# 132: 0000
|
||||
movi a3, 2 /* 0x00000002 */ # 134: 0c23
|
||||
movi a5, 0 /* 0x00000000 */ # 136: 0c05
|
||||
mov a4, a2 # 138: 4d02
|
||||
movi a6, 10 /* 0x0000000a */ # 13a: 0ca6
|
||||
mov a2, a15 # 13c: 2d0f
|
||||
call0 xTimerGenericCommand # 13e: 01e0ffc0
|
||||
# 142: 0000
|
||||
.Lbr010: call0 xTaskGetTickCount # 144: 01e0ffc0
|
||||
# 148: 0000
|
||||
movi a3, 0 /* 0x00000000 */ # 14a: 0c03
|
||||
movi a5, 0 /* 0x00000000 */ # 14c: 0c05
|
||||
mov a4, a2 # 14e: 4d02
|
||||
movi a6, 50 /* 0x00000032 */ # 150: 3c26
|
||||
l32i a2, a12, 4 /* [arg0+0x4] */ # 152: 281c
|
||||
call0 xTimerGenericCommand # 154: 01ddffc0
|
||||
# 158: 0000
|
||||
bnez a2, .Lbr011 # 15a: cc72
|
||||
movi a2, .Lstr002 # 15c: 21d5ff
|
||||
call0 printf # 15f: 01dbffc0
|
||||
# 163: 0000
|
||||
.Lbr011: l32i a12, sp, 4 /* [(local1)] */ # 165: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 167: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 169: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 16b: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 16d: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # 16f: 12c120
|
||||
ret # 172: 0df0
|
||||
|
||||
.literal_position # 174: 2c000000
|
||||
# 178: 00000000
|
||||
# 17c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x180
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_os_timer_disarm
|
||||
.type sdk_os_timer_disarm, @function
|
||||
sdk_os_timer_disarm:
|
||||
addi sp, sp, -16 /* (local0) */ # 180: 12c1f0
|
||||
l32i a2, a2, 4 /* [arg0+0x4] */ # 183: 2812
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 185: 0901
|
||||
beqz a2, .Lbr012 # 187: 9c72
|
||||
movi a3, 1 /* 0x00000001 */ # 189: 0c13
|
||||
movi a4, 0 /* 0x00000000 */ # 18b: 0c04
|
||||
movi a5, 0 /* 0x00000000 */ # 18d: 0c05
|
||||
movi a6, 50 /* 0x00000032 */ # 18f: 3c26
|
||||
call0 xTimerGenericCommand # 191: 01f9ffc0
|
||||
# 195: 0000
|
||||
bnez a2, .Lbr012 # 197: cc72
|
||||
movi a2, .Lstr003 # 199: 21f6ff
|
||||
call0 printf # 19c: 01f8ffc0
|
||||
# 1a0: 0000
|
||||
.Lbr012: l32i a0, sp, 0 /* [(local0)] */ # 1a2: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1a4: 12c110
|
||||
ret # 1a7: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "Timer Delete Failed\n" # 0: 54696d65
|
||||
# 4: 72204465
|
||||
# 8: 6c657465
|
||||
# c: 20466169
|
||||
# 10: 6c65640a
|
||||
# 14: 00
|
||||
.balign 4
|
||||
.Lstr002: .asciz "Timer Start Failed\n" # 18: 54696d65
|
||||
# 1c: 72205374
|
||||
# 20: 61727420
|
||||
# 24: 4661696c
|
||||
# 28: 65640a00
|
||||
.Lstr003: .asciz "Timer Stop Failed\n" # 2c: 54696d65
|
||||
# 30: 72205374
|
||||
# 34: 6f702046
|
||||
# 38: 61696c65
|
||||
# 3c: 640a00
|
44
binary_sdk/libmain/uart.S
Normal file
44
binary_sdk/libmain/uart.S
Normal file
|
@ -0,0 +1,44 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_uart_buff_switch
|
||||
.type sdk_uart_buff_switch, @function
|
||||
sdk_uart_buff_switch:
|
||||
ret /* arg0 */ # 0: 0df0
|
||||
|
||||
.literal_position # 4: 000f0000
|
||||
# 8: 00feff5f
|
||||
# c: 00000600
|
||||
# 10: fffff9ff
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
.global sdk_uart_div_modify
|
||||
.type sdk_uart_div_modify, @function
|
||||
sdk_uart_div_modify:
|
||||
movi a5, 0x00000f00 # 14: 51fcff
|
||||
movi a6, 0x5ffffe00 # 17: 61fcff
|
||||
mul16s a5, a5, a2 # 1a: 2055d1
|
||||
add a5, a5, a6 # 1d: 6a55
|
||||
memw # 1f: c02000
|
||||
s32i a3, a5, 0x214 # 22: 326585
|
||||
movi a8, 0x00060000 # 25: 81f9ff
|
||||
memw # 28: c02000
|
||||
l32i a7, a5, 0x220 # 2b: 722588
|
||||
or a7, a7, a8 # 2e: 807720
|
||||
memw # 31: c02000
|
||||
s32i a7, a5, 0x220 # 34: 726588
|
||||
movi a6, 0xfff9ffff # 37: 61f6ff
|
||||
memw # 3a: c02000
|
||||
l32i a4, a5, 0x220 # 3d: 422588
|
||||
and a4, a4, a6 # 40: 604410
|
||||
memw # 43: c02000
|
||||
s32i a4, a5, 0x220 # 46: 426588
|
||||
ret /* arg0 */ # 49: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x4c
|
||||
.global sdk_Uart_Init
|
||||
.type sdk_Uart_Init, @function
|
||||
sdk_Uart_Init:
|
||||
ret /* arg0 */ # 4c: 0df0
|
4578
binary_sdk/libmain/user_interface.S
Normal file
4578
binary_sdk/libmain/user_interface.S
Normal file
File diff suppressed because it is too large
Load diff
40
binary_sdk/libmain/xtensa_context.S
Normal file
40
binary_sdk/libmain/xtensa_context.S
Normal file
|
@ -0,0 +1,40 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
# Function @ .text+0x0
|
||||
.global sdk__xt_context_save
|
||||
.type sdk__xt_context_save, @function
|
||||
sdk__xt_context_save:
|
||||
s32i a2, sp, 20 /* arg0 -> [(FP)+0x14] */ # 0: 2951
|
||||
s32i a3, sp, 24 /* arg1 -> [(FP)+0x18] */ # 2: 3961
|
||||
s32i a4, sp, 28 /* arg2 -> [(FP)+0x1c] */ # 4: 4971
|
||||
s32i a5, sp, 32 /* arg3 -> [(FP)+0x20] */ # 6: 5981
|
||||
s32i a6, sp, 36 /* arg4 -> [(FP)+0x24] */ # 8: 6991
|
||||
s32i a7, sp, 40 /* arg5 -> [(FP)+0x28] */ # a: 79a1
|
||||
s32i a8, sp, 44 /* a8 -> [(FP)+0x2c] */ # c: 89b1
|
||||
s32i a9, sp, 48 /* a9 -> [(FP)+0x30] */ # e: 99c1
|
||||
s32i a10, sp, 52 /* a10 -> [(FP)+0x34] */ # 10: a9d1
|
||||
s32i a11, sp, 56 /* a11 -> [(FP)+0x38] */ # 12: b9e1
|
||||
rsr a3, sar # 14: 300303
|
||||
s32i a3, sp, 76 /* a3 -> [(FP)+0x4c] */ # 17: 326113
|
||||
ret /* arg0 */ # 1a: 0df0
|
||||
|
||||
# Function @ .text+0x1c
|
||||
.global sdk__xt_context_restore
|
||||
.type sdk__xt_context_restore, @function
|
||||
sdk__xt_context_restore:
|
||||
l32i a3, sp, 76 /* [(FP)+0x4c] */ # 1c: 322113
|
||||
l32i a2, sp, 20 /* [(FP)+0x14] */ # 1f: 2851
|
||||
wsr a3, sar # 21: 300313
|
||||
l32i a3, sp, 24 /* [(FP)+0x18] */ # 24: 3861
|
||||
l32i a4, sp, 28 /* [(FP)+0x1c] */ # 26: 4871
|
||||
l32i a5, sp, 32 /* [(FP)+0x20] */ # 28: 5881
|
||||
l32i a6, sp, 36 /* [(FP)+0x24] */ # 2a: 6891
|
||||
l32i a7, sp, 40 /* [(FP)+0x28] */ # 2c: 78a1
|
||||
l32i a8, sp, 44 /* [(FP)+0x2c] */ # 2e: 88b1
|
||||
l32i a9, sp, 48 /* [(FP)+0x30] */ # 30: 98c1
|
||||
l32i a10, sp, 52 /* [(FP)+0x34] */ # 32: a8d1
|
||||
l32i a11, sp, 56 /* [(FP)+0x38] */ # 34: b8e1
|
||||
l32i a12, sp, 60 /* [(FP)+0x3c] */ # 36: c8f1
|
||||
l32i a13, sp, 64 /* [(FP)+0x40] */ # 38: d22110
|
||||
ret /* [(FP)+0x14] */ # 3b: 0df0
|
0
binary_sdk/libmain/xtensa_init.S
Normal file
0
binary_sdk/libmain/xtensa_init.S
Normal file
435
binary_sdk/libnet80211/ieee80211.S
Normal file
435
binary_sdk/libnet80211/ieee80211.S
Normal file
|
@ -0,0 +1,435 @@
|
|||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.global sdk_g_ic
|
||||
.type sdk_g_ic, @object
|
||||
sdk_g_ic: .space 16
|
||||
.Ldata001: .word 0x00000000 # 10: 00000000
|
||||
.Ldata002: .word 0x00000000 # 14: 00000000
|
||||
|
||||
# NOTE: 1328 non-alignment zero bytes skipped.
|
||||
|
||||
.skip 1328
|
||||
.global sdk_xieee80211Queue
|
||||
.type sdk_xieee80211Queue, @object
|
||||
sdk_xieee80211Queue:
|
||||
.word 0x00000000 # 548: 00000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 6c090000
|
||||
# 4: b4090000
|
||||
# 8: b4090000
|
||||
# c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x10
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.Lfunc001: movi a5, 131 /* 0x00000083 */ # 10: 52a083
|
||||
movi a6, 0x000009b4 # 13: 61fcff
|
||||
addi sp, sp, -32 /* (local0) */ # 16: 12c1e0
|
||||
s32i a2, sp, 24 /* arg0 -> [(local6)] */ # 19: 2961
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 1b: f941
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1d: 0901
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1f: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 21: d921
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 23: e931
|
||||
movi a13, 0x0000096c # 25: d1f6ff
|
||||
movi a14, 0 /* 0x00000000 */ # 28: 0c0e
|
||||
mov a12, a2 /* arg0 */ # 2a: cd02
|
||||
movi a0, 156 /* 0x0000009c */ # 2c: 02a09c
|
||||
mov a15, a2 /* arg0 */ # 2f: fd02
|
||||
add a0, a15, a0 /* arg0+0x9c */ # 31: 0a0f
|
||||
movi a2, 14 /* 0x0000000e */ # 33: 0ce2
|
||||
s32i a2, a15, 128 /* 0x0000000e -> [arg0+0x80] */ # 35: 226f20
|
||||
.Lbr001: s32i a5, a12, 132 # 38: 526c21
|
||||
l8ui a3, a12, 138 # 3b: 320c8a
|
||||
s32i a0, sp, 20 /* a0 -> [(local5)] */ # 3e: 0951
|
||||
bltu a0, a12, .Lbr002 # 40: c73008
|
||||
s16i a13, a12, 136 # 43: d25c44
|
||||
bne a12, a0, .Lbr002 # 46: 079c02
|
||||
s16i a6, a12, 136 # 49: 625c44
|
||||
.Lbr002: bnez a3, .Lbr003 # 4c: dc23
|
||||
l16ui a2, a12, 136 # 4e: 221c44
|
||||
movi a3, 131 /* 0x00000083 */ # 51: 32a083
|
||||
call0 sdk_ieee80211_mhz2ieee # 54: 050000
|
||||
l32i a0, sp, 20 /* [(local5)] */ # 57: 0851
|
||||
movi a5, 131 /* 0x00000083 */ # 59: 52a083
|
||||
movi a6, 0x000009b4 # 5c: 61ebff
|
||||
s8i a2, a12, 138 # 5f: 224c8a
|
||||
.Lbr003: addi a13, a13, 5 # 62: 5bdd
|
||||
l8ui a4, a12, 139 # 64: 420c8b
|
||||
addi a14, a14, 1 # 67: 1bee
|
||||
bnez a4, .Lbr004 # 69: ccd4
|
||||
l8ui a7, a12, 141 # 6b: 720c8d
|
||||
slli a7, a7, 24 # 6e: 807701
|
||||
srai a7, a7, 24 # 71: 707831
|
||||
slli a7, a7, 1 # 74: f07711
|
||||
s8i a7, a12, 139 # 77: 724c8b
|
||||
.Lbr004: l32i a8, a15, 128 /* [arg0+0x80] */ # 7a: 822f20
|
||||
addi a12, a12, 12 # 7d: cbcc
|
||||
blt a14, a8, .Lbr001 # 7f: 872eb5
|
||||
movi a2, 132 /* 0x00000084 */ # 82: 22a084
|
||||
add a2, a15, a2 /* arg0+0x84 */ # 85: 2a2f
|
||||
call0 sdk_ieee80211_get_ratetable # 87: 01e1ffc0
|
||||
# 8b: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 8d: 0801
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 8f: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 91: d821
|
||||
s32i a2, a15, 0x150 /* a2 -> [arg0+0x150] */ # 93: 226f54
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 96: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 98: f841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 9a: 12c120
|
||||
ret # 9d: 0df0
|
||||
|
||||
.literal_position # a0: 00000000
|
||||
# a4: 00000000
|
||||
# a8: 00000000
|
||||
# ac: 00000000
|
||||
# b0: 00000000
|
||||
# b4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xb8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_ifattach
|
||||
.type sdk_ieee80211_ifattach, @function
|
||||
sdk_ieee80211_ifattach:
|
||||
addi sp, sp, -16 /* (local0) */ # b8: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # bb: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # bd: 0901
|
||||
mov a12, a2 /* arg0 */ # bf: cd02
|
||||
call0 .Lfunc001 # c1: c5f4ff
|
||||
mov a2, a12 /* arg0 */ # c4: 2d0c
|
||||
movi a0, 100 /* 0x00000064 */ # c6: 02a064
|
||||
s16i a0, a12, 40 /* 0x0064 -> [arg0+0x28] */ # c9: 025c14
|
||||
call0 sdk_ieee80211_crypto_attach # cc: 01f6ffc0
|
||||
# d0: 0000
|
||||
mov a2, a12 /* arg0 */ # d2: 2d0c
|
||||
call0 sdk_ieee80211_proto_attach # d4: 01f5ffc0
|
||||
# d8: 0000
|
||||
movi a3, 0 /* 0x00000000 */ # da: 0c03
|
||||
addmi a4, a12, 1280 /* arg0+0x500 */ # dc: 42dc05
|
||||
l32i a2, a4, 28 /* [arg0+0x51c] */ # df: 2874
|
||||
s32i a3, a4, 12 /* 0x00000000 -> [arg0+0x50c] */ # e1: 3934
|
||||
bnei a2, 3, .Lbr005 # e3: 663207
|
||||
mov a2, a12 /* arg0 */ # e6: 2d0c
|
||||
call0 sdk_ieee80211_ht_attach # e8: 01f1ffc0
|
||||
# ec: 0000
|
||||
.Lbr005: movi a2, sdk_g_ic # ee: 21ecff
|
||||
call0 sdk_chm_init # f1: 01efffc0
|
||||
# f5: 0000
|
||||
mov a2, a12 /* arg0 */ # f7: 2d0c
|
||||
call0 sdk_ieee80211_scan_attach # f9: 01eeffc0
|
||||
# fd: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # ff: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 101: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 103: 12c110
|
||||
ret # 106: 0df0
|
||||
|
||||
.literal_position # 108: b4090000
|
||||
# 10c: b3090000
|
||||
# 110: 99f6ffff
|
||||
# 114: 30f6ffff
|
||||
# 118: 00000000
|
||||
# 11c: 00000000
|
||||
# 120: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x124
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_mhz2ieee
|
||||
.type sdk_ieee80211_mhz2ieee, @function
|
||||
sdk_ieee80211_mhz2ieee:
|
||||
movi a6, 0x000009b3 # 124: 61faff
|
||||
movi a7, 0xfffff699 # 127: 71faff
|
||||
addi sp, sp, -16 /* (local0) */ # 12a: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 12d: 0901
|
||||
movi a0, 0x000009b4 # 12f: 01f6ff
|
||||
bbci a3, 7, .Lbr006 # 132: 776312
|
||||
beq a2, a0, .Lbr010 # 135: 07123d
|
||||
bltu a6, a2, .Lbr009 # 138: 273628
|
||||
add a2, a2, a7 /* arg0+0xfffff699 */ # 13b: 7a22
|
||||
movi a3, 5 /* 0x00000005 */ # 13d: 0c53
|
||||
call0 __divsi3 # 13f: 01f6ffc0
|
||||
# 143: 0000
|
||||
j .Lbr008 # 145: 060500
|
||||
.Lbr006: beq a2, a0, .Lbr010 # 148: 07122a
|
||||
bltu a6, a2, .Lbr007 # 14b: 27360c
|
||||
add a2, a2, a7 /* arg0+0xfffff699 */ # 14e: 7a22
|
||||
movi a3, 5 /* 0x00000005 */ # 150: 0c53
|
||||
call0 __divsi3 # 152: 01f2ffc0
|
||||
# 156: 0000
|
||||
j .Lbr008 # 158: 460000
|
||||
.Lbr007: movi a2, -1 /* 0xffffffff */ # 15b: 7cf2
|
||||
.Lbr008: l32i a0, sp, 0 /* [(local0)] */ # 15d: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 15f: 12c110
|
||||
ret # 162: 0df0
|
||||
.Lbr009: movi a0, 0xfffff630 # 164: 01ecff
|
||||
movi a3, 20 /* 0x00000014 */ # 167: 1c43
|
||||
add a2, a2, a0 /* arg0+0xfffff630 */ # 169: 0a22
|
||||
call0 __udivsi3 # 16b: 01edffc0
|
||||
# 16f: 0000
|
||||
addi a2, a2, 15 # 171: fb22
|
||||
j .Lbr008 # 173: 86f9ff
|
||||
.Lbr010: movi a2, 14 /* 0x0000000e */ # 176: 0ce2
|
||||
j .Lbr008 # 178: 46f8ff
|
||||
|
||||
.literal_position # 17c: ffff0000
|
||||
|
||||
# Function @ .irom0.text+0x180
|
||||
.global sdk_ieee80211_chan2ieee
|
||||
.type sdk_ieee80211_chan2ieee, @function
|
||||
sdk_ieee80211_chan2ieee:
|
||||
bnez a2, .Lbr011 # 180: cc22
|
||||
movi a2, 0 /* 0x00000000 */ # 182: 0c02
|
||||
ret /* 0x00000000 */ # 184: 0df0
|
||||
.Lbr011: movi a5, 0x0000ffff # 186: 51fdff
|
||||
beq a2, a5, .Lbr012 # 189: 571204
|
||||
l8ui a2, a2, 6 /* [arg0+0x6] */ # 18c: 220206
|
||||
ret /* [arg0+0x6] */ # 18f: 0df0
|
||||
.Lbr012: mov a2, a5 /* 0x0000ffff */ # 191: 2d05
|
||||
ret /* 0x0000ffff */ # 193: 0df0
|
||||
|
||||
.literal_position # 198: 67090000
|
||||
# 19c: a4080000
|
||||
# 1a0: 88130000
|
||||
# 1a4: b4090000
|
||||
|
||||
# Function @ .irom0.text+0x1a8
|
||||
.global sdk_ieee80211_ieee2mhz
|
||||
.type sdk_ieee80211_ieee2mhz, @function
|
||||
sdk_ieee80211_ieee2mhz:
|
||||
movi a7, 14 /* 0x0000000e */ # 1a8: 0ce7
|
||||
movi a8, 13 /* 0x0000000d */ # 1aa: 0cd8
|
||||
movi a6, 0x00000967 # 1ac: 61fbff
|
||||
movi a9, 0x000008a4 # 1af: 91fbff
|
||||
bbci a3, 7, .Lbr014 # 1b2: 77630d
|
||||
beq a2, a7, .Lbr016 # 1b5: 77121f
|
||||
bgeu a8, a2, .Lbr015 # 1b8: 27b815
|
||||
.Lbr013: addx4 a2, a2, a2 # 1bb: 2022a0
|
||||
addx4 a2, a2, a9 # 1be: 9022a0
|
||||
ret # 1c1: 0df0
|
||||
.Lbr014: beq a2, a7, .Lbr016 # 1c3: 771211
|
||||
bgeu a8, a2, .Lbr015 # 1c6: 27b807
|
||||
movi a3, 26 /* 0x0000001a */ # 1c9: 1ca3
|
||||
bgeu a3, a2, .Lbr013 # 1cb: 27b3ec
|
||||
movi a6, 0x00001388 # 1ce: 61f4ff
|
||||
.Lbr015: addx4 a2, a2, a2 # 1d1: 2022a0
|
||||
add a2, a2, a6 # 1d4: 6a22
|
||||
ret # 1d6: 0df0
|
||||
.Lbr016: movi a2, 0x000009b4 # 1d8: 21f3ff
|
||||
ret /* 0x000009b4 */ # 1db: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x1e0
|
||||
.global sdk_ieee80211_find_channel
|
||||
.type sdk_ieee80211_find_channel, @function
|
||||
sdk_ieee80211_find_channel:
|
||||
l32i a6, a2, 128 /* [arg0+0x80] */ # 1e0: 622220
|
||||
blti a6, 1, .Lbr019 # 1e3: a6161d
|
||||
addx2 a7, a6, a6 # 1e6: 607690
|
||||
addx4 a7, a7, a2 # 1e9: 2077a0
|
||||
.Lbr017: l16ui a8, a2, 136 # 1ec: 821244
|
||||
l32i a9, a2, 132 # 1ef: 922221
|
||||
bne a3, a8, .Lbr018 # 1f2: 879309
|
||||
bnone a9, a4, .Lbr018 # 1f5: 470906
|
||||
movi a10, 132 /* 0x00000084 */ # 1f8: a2a084
|
||||
add a2, a2, a10 # 1fb: aa22
|
||||
ret # 1fd: 0df0
|
||||
.Lbr018: addi a2, a2, 12 # 1ff: cb22
|
||||
bne a2, a7, .Lbr017 # 201: 7792e7
|
||||
.Lbr019: movi a2, 0 /* 0x00000000 */ # 204: 0c02
|
||||
ret /* 0x00000000 */ # 206: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x208
|
||||
.global sdk_ieee80211_find_channel_byieee
|
||||
.type sdk_ieee80211_find_channel_byieee, @function
|
||||
sdk_ieee80211_find_channel_byieee:
|
||||
l32i a6, a2, 128 /* [arg0+0x80] */ # 208: 622220
|
||||
blti a6, 1, .Lbr022 # 20b: a6161d
|
||||
addx2 a7, a6, a6 # 20e: 607690
|
||||
addx4 a7, a7, a2 # 211: 2077a0
|
||||
.Lbr020: l8ui a8, a2, 138 # 214: 82028a
|
||||
l32i a9, a2, 132 # 217: 922221
|
||||
bne a3, a8, .Lbr021 # 21a: 879309
|
||||
bnone a9, a4, .Lbr021 # 21d: 470906
|
||||
movi a10, 132 /* 0x00000084 */ # 220: a2a084
|
||||
add a2, a2, a10 # 223: aa22
|
||||
ret # 225: 0df0
|
||||
.Lbr021: addi a2, a2, 12 # 227: cb22
|
||||
bne a2, a7, .Lbr020 # 229: 7792e7
|
||||
.Lbr022: movi a2, 0 /* 0x00000000 */ # 22c: 0c02
|
||||
ret /* 0x00000000 */ # 22e: 0df0
|
||||
|
||||
.literal_position # 230: 00000000
|
||||
# 234: 10000000
|
||||
# 238: 00000000
|
||||
# 23c: 14000000
|
||||
# 240: 00000000
|
||||
# 244: 00000000
|
||||
# 248: 00000000
|
||||
# 24c: 34000000
|
||||
# 250: 3c000000
|
||||
# 254: 00000000
|
||||
# 258: 40000000
|
||||
# 25c: 00000000
|
||||
# 260: 14000000
|
||||
# 264: 34000000
|
||||
# 268: 08000000
|
||||
# 26c: 48000000
|
||||
# 270: 00000000
|
||||
# 274: 00000000
|
||||
# 278: 00000000
|
||||
# 27c: 00000000
|
||||
# 280: 00000000
|
||||
# 284: 00000000
|
||||
# 288: 00000000
|
||||
# 28c: 00000000
|
||||
# 290: 00000000
|
||||
# 294: 00000000
|
||||
# 298: 00000000
|
||||
# 29c: 00000000
|
||||
# 2a0: 00000000
|
||||
# 2a4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2a8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x20
|
||||
# (local1): word @ -0x10
|
||||
# (local2): word[3] @ -0xc
|
||||
.global sdk_wifi_mode_set
|
||||
.type sdk_wifi_mode_set, @function
|
||||
sdk_wifi_mode_set:
|
||||
addi sp, sp, -32 /* (local0) */ # 2a8: 12c1e0
|
||||
s32i a12, sp, 20 /* a12 -> [(local2)] */ # 2ab: c951
|
||||
s32i a0, sp, 16 /* a0 -> [(local1)] */ # 2ad: 0941
|
||||
mov a12, a2 /* arg0 */ # 2af: cd02
|
||||
movi a2, .Lstr001 # 2b1: 21dfff
|
||||
call0 printf # 2b4: 01efffc0
|
||||
# 2b8: 0000
|
||||
beqz a12, .Lbr026 # 2ba: 164c0d
|
||||
beqi a12, 1, .Lbr023 # 2bd: 261c08
|
||||
beqi a12, 2, .Lbr025 # 2c0: 262c72
|
||||
addi a0, a12, -3 /* arg0-0x3 */ # 2c3: 02ccfd
|
||||
bnez a0, .Lbr027 # 2c6: 56100d
|
||||
.Lbr023: movi a2, .Label001 # 2c9: 21daff
|
||||
call0 printf # 2cc: 01eaffc0
|
||||
# 2d0: 0000
|
||||
movi a2, sdk_info # 2d2: 21d9ff
|
||||
l8ui a7, a2, 34 /* [sdk_info+0x22] */ # 2d5: 720222
|
||||
l8ui a6, a2, 33 /* [sdk_info+0x21] */ # 2d8: 620221
|
||||
l8ui a5, a2, 32 /* [sdk_info+0x20] */ # 2db: 520220
|
||||
l8ui a4, a2, 31 /* [sdk_info+0x1f] */ # 2de: 42021f
|
||||
l8ui a3, a2, 30 /* [sdk_info+0x1e] */ # 2e1: 32021e
|
||||
l8ui a2, a2, 35 /* [sdk_info+0x23] */ # 2e4: 220223
|
||||
s32i a2, sp, 0 /* [sdk_info+0x23] -> [(local0)] */ # 2e7: 2901
|
||||
movi a2, .Lstr003 # 2e9: 21d4ff
|
||||
call0 printf # 2ec: 01e3ffc0
|
||||
# 2f0: 0000
|
||||
movi a3, sdk_g_ic # 2f2: 31d3ff
|
||||
l32i a3, a3, 16 /* [.Ldata001] */ # 2f5: 3843
|
||||
bnez a3, .Lbr024 # 2f7: ecf3
|
||||
movi a2, 648 /* 0x00000288 */ # 2f9: 22a288
|
||||
call0 zalloc # 2fc: 01e0ffc0
|
||||
# 300: 0000
|
||||
movi a5, sdk_g_ic # 302: 51d0ff
|
||||
movi a4, 0 /* 0x00000000 */ # 305: 0c04
|
||||
s32i a2, a5, 16 /* a2 -> [.Ldata001] */ # 307: 2945
|
||||
s32i a4, a2, 176 # 309: 42622c
|
||||
s32i a4, a2, 60 # 30c: 49f2
|
||||
movi a2, 272 /* 0x00000110 */ # 30e: 22a110
|
||||
call0 zalloc # 311: 01dbffc0
|
||||
# 315: 0000
|
||||
movi a6, sdk_g_ic # 317: 61ccff
|
||||
movi a3, .Label002 # 31a: 31ccff
|
||||
l32i a6, a6, 16 /* [.Ldata001] */ # 31d: 6846
|
||||
movi a4, 6 /* 0x00000006 */ # 31f: 0c64
|
||||
s32i a2, a6, 140 /* a2 -> [[.Ldata001]+0x8c] */ # 321: 226623
|
||||
call0 memcpy # 324: 01d8ffc0
|
||||
# 328: 0000
|
||||
.Lbr024: beqi a12, 1, .Lbr027 # 32a: 261c6d
|
||||
movi a2, .Label003 # 32d: 21c8ff
|
||||
call0 printf # 330: 01d6ffc0
|
||||
# 334: 0000
|
||||
.Lbr025: movi a12, sdk_g_ic # 336: c1c7ff
|
||||
movi a2, .Lstr004 # 339: 21c7ff
|
||||
call0 printf # 33c: 01d4ffc0
|
||||
# 340: 0000
|
||||
movi a8, sdk_info # 342: 81c6ff
|
||||
movi a2, .Lstr003 # 345: 21c6ff
|
||||
l8ui a7, a8, 28 /* [sdk_info+0x1c] */ # 348: 72081c
|
||||
l8ui a6, a8, 27 /* [sdk_info+0x1b] */ # 34b: 62081b
|
||||
l8ui a5, a8, 26 /* [sdk_info+0x1a] */ # 34e: 52081a
|
||||
l8ui a4, a8, 25 /* [sdk_info+0x19] */ # 351: 420819
|
||||
l8ui a3, a8, 24 /* [sdk_info+0x18] */ # 354: 320818
|
||||
l8ui a8, a8, 29 /* [sdk_info+0x1d] */ # 357: 82081d
|
||||
s32i a8, sp, 0 /* [sdk_info+0x1d] -> [(local0)] */ # 35a: 8901
|
||||
call0 printf # 35c: 01cdffc0
|
||||
# 360: 0000
|
||||
l32i a9, a12, 20 /* [.Ldata002] */ # 362: 985c
|
||||
bnez a9, .Lbr027 # 364: fc39
|
||||
movi a2, 648 /* 0x00000288 */ # 366: 22a288
|
||||
call0 zalloc # 369: 01caffc0
|
||||
# 36d: 0000
|
||||
s32i a2, a12, 20 /* a2 -> [.Ldata002] */ # 36f: 295c
|
||||
movi a10, 1 /* 0x00000001 */ # 371: 0c1a
|
||||
s32i a10, a2, 176 # 373: a2622c
|
||||
movi a2, 272 /* 0x00000110 */ # 376: 22a110
|
||||
call0 zalloc # 379: 01c7ffc0
|
||||
# 37d: 0000
|
||||
movi a3, .Label002 # 37f: 31b9ff
|
||||
l32i a11, a12, 20 /* [.Ldata002] */ # 382: b85c
|
||||
movi a4, 6 /* 0x00000006 */ # 384: 0c64
|
||||
s32i a2, a11, 144 /* a2 -> [[.Ldata002]+0x90] */ # 386: 226b24
|
||||
call0 memcpy # 389: 01c4ffc0
|
||||
# 38d: 0000
|
||||
j .Lbr027 # 38f: 060200
|
||||
.Lbr026: movi a2, .Lstr002 # 392: 21b5ff
|
||||
call0 printf # 395: 01c2ffc0
|
||||
# 399: 0000
|
||||
.Lbr027: movi a2, .Label004 # 39b: 21b4ff
|
||||
call0 printf # 39e: 01c1ffc0
|
||||
# 3a2: 0000
|
||||
movi a2, 1 /* 0x00000001 */ # 3a4: 0c12
|
||||
l32i a12, sp, 20 /* [(local2)] */ # 3a6: c851
|
||||
l32i a0, sp, 16 /* [(local1)] */ # 3a8: 0841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 3aa: 12c120
|
||||
ret /* 0x00000001 */ # 3ad: 0df0
|
||||
|
||||
.section .rodata, "a", @progbits
|
||||
|
||||
.global sdk_ieee80211_opcap
|
||||
.type sdk_ieee80211_opcap, @object
|
||||
sdk_ieee80211_opcap:
|
||||
.byte 0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "mode : " # 0: 6d6f6465
|
||||
# 4: 203a2000
|
||||
.Lstr002: .asciz "null" # 8: 6e756c6c
|
||||
# c: 00
|
||||
.balign 4
|
||||
.Label001: .word 0x00617473 # 10: 73746100
|
||||
.Lstr003: .asciz "(%02x:%02x:%02x:%02x:%02x:%02x)" # 14: 28253032
|
||||
# 18: 783a2530
|
||||
# 1c: 32783a25
|
||||
# 20: 3032783a
|
||||
# 24: 25303278
|
||||
# 28: 3a253032
|
||||
# 2c: 783a2530
|
||||
# 30: 32782900
|
||||
.Label002: .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00
|
||||
.Label003: .word 0x00202b20 # 3c: 202b2000
|
||||
.Lstr004: .asciz "softAP" # 40: 736f6674
|
||||
# 44: 415000
|
||||
.balign 4
|
||||
.Label004: .byte 0x0a, 0x00
|
197
binary_sdk/libnet80211/ieee80211_action.S
Normal file
197
binary_sdk/libnet80211/ieee80211_action.S
Normal file
|
@ -0,0 +1,197 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.Lrel001: .word .irom0.text # 0: 00000000
|
||||
.Lrel002: .word .irom0.text # 4: 00000000
|
||||
.Lrel003: .word .irom0.text # 8: 00000000
|
||||
.Lrel004: .word .irom0.text # c: 00000000
|
||||
.Lrel005: .word .Lfunc002 # 10: bc000000
|
||||
.Lrel006: .word .Lfunc002 # 14: bc000000
|
||||
.Lrel007: .word .Lfunc002 # 18: bc000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.Lfunc001: movi a2, -1 /* 0xffffffff */ # 0: 7cf2
|
||||
ret /* 0xffffffff */ # 2: 0df0
|
||||
|
||||
.literal_position # 4: 0c000000
|
||||
# 8: 00000000
|
||||
# c: 08000000
|
||||
|
||||
# Function @ .irom0.text+0x10
|
||||
.global sdk_ieee80211_send_action_register
|
||||
.type sdk_ieee80211_send_action_register, @function
|
||||
sdk_ieee80211_send_action_register:
|
||||
beqi a2, 3, .Lbr003 # 10: 26321a
|
||||
beqi a2, 7, .Lbr004 # 13: 267220
|
||||
movi a5, 127 /* 0x0000007f */ # 16: 52a07f
|
||||
bne a2, a5, .Lbr002 # 19: 57920d
|
||||
bnez a3, .Lbr002 # 1c: cca3
|
||||
movi a2, .Lrel004 # 1e: 21f9ff
|
||||
.Lbr001: addx4 a6, a3, a2 # 21: 2063a0
|
||||
s32i a4, a6, 0 # 24: 4906
|
||||
movi a2, 0 /* 0x00000000 */ # 26: 0c02
|
||||
ret /* 0x00000000 */ # 28: 0df0
|
||||
.Lbr002: movi a2, -1 /* 0xffffffff */ # 2a: 7cf2
|
||||
ret /* 0xffffffff */ # 2c: 0df0
|
||||
.Lbr003: bgeui a3, 2, .Lbr002 # 2e: f623f8
|
||||
movi a2, .Lrel001 # 31: 21f5ff
|
||||
j .Lbr001 # 34: 46faff
|
||||
.Lbr004: bnez a3, .Lbr002 # 37: 56f3fe
|
||||
movi a2, .Lrel003 # 3a: 21f4ff
|
||||
j .Lbr001 # 3d: 06f8ff
|
||||
|
||||
.literal_position # 40: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x44
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_send_action_unregister
|
||||
.type sdk_ieee80211_send_action_unregister, @function
|
||||
sdk_ieee80211_send_action_unregister:
|
||||
movi a4, .Lfunc001 # 44: 41ffff
|
||||
addi sp, sp, -16 /* (local0) */ # 47: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 4a: 0901
|
||||
call0 sdk_ieee80211_send_action_register # 4c: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 4f: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 51: 12c110
|
||||
ret # 54: 0df0
|
||||
|
||||
.literal_position # 58: 00000000
|
||||
# 5c: 0c000000
|
||||
# 60: 08000000
|
||||
# 64: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x68
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_send_action
|
||||
.type sdk_ieee80211_send_action, @function
|
||||
sdk_ieee80211_send_action:
|
||||
addi sp, sp, -16 /* (local0) */ # 68: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 6b: 0901
|
||||
movi a0, .Lfunc001 # 6d: 01faff
|
||||
beqi a3, 3, .Lbr005 # 70: 263315
|
||||
beqi a3, 7, .Lbr009 # 73: 267326
|
||||
movi a6, 127 /* 0x0000007f */ # 76: 62a07f
|
||||
bne a3, a6, .Lbr006 # 79: 67930f
|
||||
bnez a4, .Lbr008 # 7c: dc84
|
||||
movi a7, .Lrel004 # 7e: 71f7ff
|
||||
addx4 a7, a4, a7 # 81: 7074a0
|
||||
l32i a7, a7, 0 # 84: 7807
|
||||
j .Lbr007 # 86: 060100
|
||||
.Lbr005: bltui a4, 2, .Lbr011 # 89: b62422
|
||||
.Lbr006: mov a7, a0 /* .Lfunc001 */ # 8c: 7d00
|
||||
.Lbr007: callx0 a7 # 8e: c00700
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 91: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 93: 12c110
|
||||
ret # 96: 0df0
|
||||
.Lbr008: mov a7, a0 /* .Lfunc001 */ # 98: 7d00
|
||||
j .Lbr007 # 9a: 06fcff
|
||||
.Lbr009: bnez a4, .Lbr010 # 9d: cc94
|
||||
movi a7, .Lrel003 # 9f: 71f0ff
|
||||
addx4 a7, a4, a7 # a2: 7074a0
|
||||
l32i a7, a7, 0 # a5: 7807
|
||||
j .Lbr007 # a7: c6f8ff
|
||||
.Lbr010: mov a7, a0 /* .Lfunc001 */ # aa: 7d00
|
||||
j .Lbr007 # ac: 86f7ff
|
||||
.Lbr011: movi a7, .Lrel001 # af: 71edff
|
||||
addx4 a7, a4, a7 # b2: 7074a0
|
||||
l32i a7, a7, 0 # b5: 7807
|
||||
j .Lbr007 # b7: c6f4ff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0xbc
|
||||
.Lfunc002: movi a2, -1 /* 0xffffffff */ # bc: 7cf2
|
||||
ret /* 0xffffffff */ # be: 0df0
|
||||
|
||||
.literal_position # c0: 18000000
|
||||
# c4: 10000000
|
||||
# c8: 14000000
|
||||
|
||||
# Function @ .irom0.text+0xcc
|
||||
.global sdk_ieee80211_recv_action_register
|
||||
.type sdk_ieee80211_recv_action_register, @function
|
||||
sdk_ieee80211_recv_action_register:
|
||||
beqi a2, 3, .Lbr014 # cc: 26321a
|
||||
beqi a2, 7, .Lbr015 # cf: 267220
|
||||
movi a5, 127 /* 0x0000007f */ # d2: 52a07f
|
||||
bne a2, a5, .Lbr013 # d5: 57920d
|
||||
bnez a3, .Lbr013 # d8: cca3
|
||||
movi a2, .Lrel007 # da: 21f9ff
|
||||
.Lbr012: addx4 a6, a3, a2 # dd: 2063a0
|
||||
s32i a4, a6, 0 # e0: 4906
|
||||
movi a2, 0 /* 0x00000000 */ # e2: 0c02
|
||||
ret /* 0x00000000 */ # e4: 0df0
|
||||
.Lbr013: movi a2, -1 /* 0xffffffff */ # e6: 7cf2
|
||||
ret /* 0xffffffff */ # e8: 0df0
|
||||
.Lbr014: bnez a3, .Lbr013 # ea: 5683ff
|
||||
movi a2, .Lrel005 # ed: 21f5ff
|
||||
j .Lbr012 # f0: 46faff
|
||||
.Lbr015: bnez a3, .Lbr013 # f3: 56f3fe
|
||||
movi a2, .Lrel006 # f6: 21f4ff
|
||||
j .Lbr012 # f9: 06f8ff
|
||||
|
||||
.literal_position # fc: bc000000
|
||||
|
||||
# Function @ .irom0.text+0x100
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_recv_action_unregister
|
||||
.type sdk_ieee80211_recv_action_unregister, @function
|
||||
sdk_ieee80211_recv_action_unregister:
|
||||
movi a4, .Lfunc002 # 100: 41ffff
|
||||
addi sp, sp, -16 /* (local0) */ # 103: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 106: 0901
|
||||
call0 sdk_ieee80211_recv_action_register # 108: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 10b: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 10d: 12c110
|
||||
ret # 110: 0df0
|
||||
|
||||
.literal_position # 114: bc000000
|
||||
# 118: 18000000
|
||||
# 11c: 14000000
|
||||
# 120: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x124
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_recv_action
|
||||
.type sdk_ieee80211_recv_action, @function
|
||||
sdk_ieee80211_recv_action:
|
||||
addi sp, sp, -16 /* (local0) */ # 124: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 127: 0901
|
||||
l8ui a0, a4, 0 /* [arg2] */ # 129: 020400
|
||||
movi a8, .Lfunc002 # 12c: 81faff
|
||||
beqi a0, 3, .Lbr016 # 12f: 26301a
|
||||
beqi a0, 7, .Lbr020 # 132: 26702b
|
||||
movi a6, 127 /* 0x0000007f */ # 135: 62a07f
|
||||
bne a0, a6, .Lbr017 # 138: 679016
|
||||
l8ui a0, a4, 1 /* [arg2+0x1] */ # 13b: 020401
|
||||
mov a7, a8 /* .Lfunc002 */ # 13e: 7d08
|
||||
bnez a0, .Lbr019 # 140: dca0
|
||||
movi a7, .Lrel007 # 142: 71f5ff
|
||||
addx4 a7, a0, a7 # 145: 7070a0
|
||||
l32i a7, a7, 0 # 148: 7807
|
||||
j .Lbr018 # 14a: 860100
|
||||
.Lbr016: l8ui a0, a4, 1 /* [arg2+0x1] */ # 14d: 020401
|
||||
beqz a0, .Lbr022 # 150: ac20
|
||||
.Lbr017: mov a7, a8 /* .Lfunc002 */ # 152: 7d08
|
||||
.Lbr018: callx0 a7 # 154: c00700
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 157: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 159: 12c110
|
||||
ret # 15c: 0df0
|
||||
.Lbr019: j .Lbr018 # 15e: 86fcff
|
||||
.Lbr020: l8ui a0, a4, 1 /* [arg2+0x1] */ # 161: 020401
|
||||
mov a7, a8 /* .Lfunc002 */ # 164: 7d08
|
||||
bnez a0, .Lbr021 # 166: cc90
|
||||
movi a7, .Lrel006 # 168: 71edff
|
||||
addx4 a7, a0, a7 # 16b: 7070a0
|
||||
l32i a7, a7, 0 # 16e: 7807
|
||||
j .Lbr018 # 170: 06f8ff
|
||||
.Lbr021: j .Lbr018 # 173: 46f7ff
|
||||
.Lbr022: movi a7, .Lrel005 # 176: 71eaff
|
||||
addx4 a7, a0, a7 # 179: 7070a0
|
||||
l32i a7, a7, 0 # 17c: 7807
|
||||
j .Lbr018 # 17e: 86f4ff
|
109
binary_sdk/libnet80211/ieee80211_crypto.S
Normal file
109
binary_sdk/libnet80211/ieee80211_crypto.S
Normal file
|
@ -0,0 +1,109 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_ieee80211_crypto_attach
|
||||
.type sdk_ieee80211_crypto_attach, @function
|
||||
sdk_ieee80211_crypto_attach:
|
||||
ret /* arg0 */ # 0: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x4
|
||||
.global sdk_ieee80211_crypto_available
|
||||
.type sdk_ieee80211_crypto_available, @function
|
||||
sdk_ieee80211_crypto_available:
|
||||
movi a2, 0 /* 0x00000000 */ # 4: 0c02
|
||||
ret /* 0x00000000 */ # 6: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
.global sdk_ieee80211_crypto_setkey
|
||||
.type sdk_ieee80211_crypto_setkey, @function
|
||||
sdk_ieee80211_crypto_setkey:
|
||||
movi a2, 0 /* 0x00000000 */ # 8: 0c02
|
||||
ret /* 0x00000000 */ # a: 0df0
|
||||
|
||||
.literal_position # c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x10
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_crypto_encap
|
||||
.type sdk_ieee80211_crypto_encap, @function
|
||||
sdk_ieee80211_crypto_encap:
|
||||
addi sp, sp, -16 /* (local0) */ # 10: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 13: 0911
|
||||
l32i a4, a3, 32 /* [arg1+0x20] */ # 15: 4883
|
||||
l32i a0, a2, 136 /* [arg0+0x88] */ # 17: 022222
|
||||
l32i a4, a4, 0 /* [[arg1+0x20]] */ # 1a: 4804
|
||||
movi a2, sdk_g_ic # 1c: 21fcff
|
||||
bbci a4, 7, .Lbr003 # 1f: 776434
|
||||
l8ui a0, a0, 233 /* [[arg0+0x88]+0xe9] */ # 22: 0200e9
|
||||
bltui a0, 2, .Lbr001 # 25: b62004
|
||||
addi a6, a0, -1 /* [[arg0+0x88]+0xe9]-0x1 */ # 28: 0b60
|
||||
j .Lbr002 # 2a: 460000
|
||||
.Lbr001: mov a6, a0 /* [[arg0+0x88]+0xe9] */ # 2d: 6d00
|
||||
.Lbr002: addx4 a2, a0, a2 # 2f: 2020a0
|
||||
l32i a2, a2, 0x190 # 32: 222264
|
||||
slli a4, a6, 6 # 35: a04611
|
||||
l32i a0, a2, 152 # 38: 022226
|
||||
extui a4, a4, 0, 8 # 3b: 404074
|
||||
l32i a0, a0, 16 # 3e: 0840
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 40: 2901
|
||||
callx0 a0 # 42: c00000
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 45: 4801
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 47: 3811
|
||||
movi a0, 0 /* 0x00000000 */ # 49: 0c00
|
||||
addi sp, sp, 16 /* (top of frame) */ # 4b: 12c110
|
||||
movnez a0, a4, a2 # 4e: 200493
|
||||
mov a2, a0 # 51: 2d00
|
||||
mov a0, a3 /* [(local1)] */ # 53: 0d03
|
||||
ret # 55: 0df0
|
||||
.Lbr003: movi a6, 0 /* 0x00000000 */ # 57: 0c06
|
||||
l8ui a0, a0, 232 /* [[arg0+0x88]+0xe8] */ # 59: 0200e8
|
||||
j .Lbr002 # 5c: c6f3ff
|
||||
|
||||
.literal_position # 60: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x64
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_crypto_decap
|
||||
.type sdk_ieee80211_crypto_decap, @function
|
||||
sdk_ieee80211_crypto_decap:
|
||||
addi sp, sp, -16 /* (local0) */ # 64: 12c1f0
|
||||
l16ui a5, a3, 22 /* [arg1+0x16] */ # 67: 52130b
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 6a: 0911
|
||||
l16ui a0, a3, 20 /* [arg1+0x14] */ # 6c: 02130a
|
||||
movi a6, sdk_g_ic # 6f: 61fcff
|
||||
add a0, a0, a5 # 72: 5a00
|
||||
bltui a0, 32, .Lbr005 # 74: b6c020
|
||||
l32i a0, a3, 4 /* [arg1+0x4] */ # 77: 0813
|
||||
l32i a0, a0, 4 /* [[arg1+0x4]+0x4] */ # 79: 0810
|
||||
l8ui a7, a0, 4 /* [[[arg1+0x4]+0x4]+0x4] */ # 7b: 720004
|
||||
add a0, a4, a0 # 7e: 0a04
|
||||
bbci a7, 0, .Lbr008 # 80: 076731
|
||||
l8ui a0, a0, 3 # 83: 020003
|
||||
extui a0, a0, 6, 2 # 86: 000614
|
||||
addi a0, a0, -1 # 89: 0b00
|
||||
extui a0, a0, 0, 8 # 8b: 000074
|
||||
.Lbr004: addx4 a2, a0, a6 # 8e: 6020a0
|
||||
l32i a2, a2, 0x190 # 91: 222264
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 94: 2901
|
||||
bnez a2, .Lbr006 # 96: cc32
|
||||
.Lbr005: movi a2, 0 /* 0x00000000 */ # 98: 0c02
|
||||
j .Lbr007 # 9a: 060400
|
||||
.Lbr006: l32i a0, a2, 152 # 9d: 022226
|
||||
l32i a0, a0, 20 # a0: 0850
|
||||
callx0 a0 # a2: c00000
|
||||
mov a4, a2 # a5: 4d02
|
||||
l32i a3, sp, 0 /* [(local0)] */ # a7: 3801
|
||||
movi a2, 0 /* 0x00000000 */ # a9: 0c02
|
||||
movnez a2, a3, a4 # ab: 402393
|
||||
.Lbr007: l32i a0, sp, 4 /* [(local1)] */ # ae: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # b0: 12c110
|
||||
ret # b3: 0df0
|
||||
.Lbr008: l32i a0, a2, 136 /* [arg0+0x88] */ # b5: 022222
|
||||
l8ui a0, a0, 232 /* [[arg0+0x88]+0xe8] */ # b8: 0200e8
|
||||
j .Lbr004 # bb: c6f3ff
|
140
binary_sdk/libnet80211/ieee80211_crypto_ccmp.S
Normal file
140
binary_sdk/libnet80211/ieee80211_crypto_ccmp.S
Normal file
|
@ -0,0 +1,140 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.global sdk_ccmp
|
||||
.type sdk_ccmp, @object
|
||||
sdk_ccmp: .word 0x00000003 # 0: 03000000
|
||||
.Ldata001: .word 0x00000008 # 4: 08000000
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.word 0x00000008 # 8: 08000000
|
||||
.word 0x00000000 # c: 00000000
|
||||
|
||||
.Lrel001: .word .Lfunc001 # 10: 04000000
|
||||
.Lrel002: .word .Lfunc002 # 14: 80000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
.Lfunc001: ssai 8 # 4: 004840
|
||||
l32i a5, a2, 144 /* [arg0+0x90] */ # 7: 522224
|
||||
l16ui a6, a3, 22 /* [arg1+0x16] */ # a: 62130b
|
||||
movi a7, sdk_ccmp # d: 71fcff
|
||||
l32i a9, a3, 4 /* [arg1+0x4] */ # 10: 9813
|
||||
l32i a10, a7, 4 /* [.Ldata001] */ # 12: a817
|
||||
l32i a7, a7, 4 /* [.Ldata001] */ # 14: 7817
|
||||
l32i a8, a9, 4 /* [[arg1+0x4]+0x4] */ # 16: 8819
|
||||
add a6, a6, a7 # 18: 7a66
|
||||
sub a8, a8, a10 # 1a: a088c0
|
||||
addi a7, a5, 1 /* [arg0+0x90]+0x1 */ # 1d: 1b75
|
||||
s32i a8, a9, 4 /* a8 -> [[arg1+0x4]+0x4] */ # 1f: 8919
|
||||
s16i a6, a3, 22 /* a6 -> [arg1+0x16] */ # 21: 62530b
|
||||
movi a9, 32 /* 0x00000020 */ # 24: 2c09
|
||||
or a11, a4, a9 # 26: 90b420
|
||||
s32i a7, a2, 144 /* [arg0+0x90]+0x1 -> [arg0+0x90] */ # 29: 726224
|
||||
l32i a3, a2, 148 /* [arg0+0x94] */ # 2c: 322225
|
||||
bgeu a7, a5, .Lbr001 # 2f: 57b701
|
||||
addi a3, a3, 1 /* [arg0+0x94]+0x1 */ # 32: 1b33
|
||||
.Lbr001: movi a5, 0 /* 0x00000000 */ # 34: 0c05
|
||||
s32i a3, a2, 148 /* a3 -> [arg0+0x94] */ # 36: 326225
|
||||
s8i a7, a8, 0 # 39: 724800
|
||||
l32i a6, a2, 148 /* [arg0+0x94] */ # 3c: 622225
|
||||
l32i a10, a2, 144 /* [arg0+0x90] */ # 3f: a22224
|
||||
s8i a5, a8, 2 # 42: 524802
|
||||
s8i a11, a8, 3 # 45: b24803
|
||||
src a6, a6, a10 # 48: a06681
|
||||
s8i a6, a8, 1 # 4b: 624801
|
||||
l32i a11, a2, 144 /* [arg0+0x90] */ # 4e: b22224
|
||||
l32i a10, a2, 148 /* [arg0+0x94] */ # 51: a22225
|
||||
ssai 16 # 54: 104040
|
||||
src a10, a10, a11 # 57: b0aa81
|
||||
s8i a10, a8, 4 # 5a: a24804
|
||||
l32i a6, a2, 144 /* [arg0+0x90] */ # 5d: 622224
|
||||
l32i a5, a2, 148 /* [arg0+0x94] */ # 60: 522225
|
||||
ssai 24 # 63: 104840
|
||||
src a5, a5, a6 # 66: 605581
|
||||
s8i a5, a8, 5 # 69: 524805
|
||||
l32i a11, a2, 148 /* [arg0+0x94] */ # 6c: b22225
|
||||
s8i a11, a8, 6 # 6f: b24806
|
||||
l32i a10, a2, 148 /* [arg0+0x94] */ # 72: a22225
|
||||
movi a2, 1 /* 0x00000001 */ # 75: 0c12
|
||||
srli a10, a10, 8 # 77: a0a841
|
||||
s8i a10, a8, 7 # 7a: a24807
|
||||
ret /* 0x00000001 */ # 7d: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x80
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc002: addi sp, sp, -16 /* (local0) */ # 80: 12c1f0
|
||||
l32i a8, a3, 4 /* [arg1+0x4] */ # 83: 8813
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 85: 0911
|
||||
l32i a0, a8, 4 /* [[arg1+0x4]+0x4] */ # 87: 0818
|
||||
add a7, a4, a0 # 89: 0a74
|
||||
l8ui a5, a7, 3 # 8b: 520703
|
||||
movi a9, 140 /* 0x0000008c */ # 8e: 92a08c
|
||||
extui a5, a5, 5, 1 # 91: 505504
|
||||
beqz a5, .Lbr006 # 94: 169508
|
||||
l8ui a5, a7, 6 # 97: 520706
|
||||
l8ui a11, a7, 7 # 9a: b20707
|
||||
l8ui a6, a0, 0 /* [[[arg1+0x4]+0x4]] */ # 9d: 620000
|
||||
slli a11, a11, 8 # a0: 80bb11
|
||||
and a6, a6, a9 # a3: 906610
|
||||
or a11, a11, a5 # a6: 50bb20
|
||||
l8ui a5, a7, 4 # a9: 520704
|
||||
movi a9, 136 /* 0x00000088 */ # ac: 92a088
|
||||
slli a5, a5, 16 # af: 005511
|
||||
bne a6, a9, .Lbr002 # b2: 979611
|
||||
l8ui a10, a0, 1 /* [[[arg1+0x4]+0x4]+0x1] */ # b5: a20001
|
||||
extui a10, a10, 0, 2 # b8: a0a014
|
||||
addi a10, a10, -3 # bb: a2cafd
|
||||
bnez a10, .Lbr008 # be: 56aa06
|
||||
l8ui a0, a0, 30 /* [[[arg1+0x4]+0x4]+0x1e] */ # c1: 02001e
|
||||
j .Lbr009 # c4: c61900
|
||||
.Lbr002: movi a0, 16 /* 0x00000010 */ # c7: 1c00
|
||||
.Lbr003: l8ui a9, a7, 0 # c9: 920700
|
||||
l8ui a10, a7, 5 # cc: a20705
|
||||
l8ui a6, a7, 1 # cf: 620701
|
||||
slli a10, a10, 24 # d2: 80aa01
|
||||
slli a6, a6, 8 # d5: 806611
|
||||
or a6, a6, a9 # d8: 906620
|
||||
extui a7, a11, 0, 16 # db: b070f4
|
||||
addx8 a9, a0, a2 # de: 2090b0
|
||||
or a5, a5, a6 # e1: 605520
|
||||
movi a0, 0 /* 0x00000000 */ # e4: 0c00
|
||||
s32i a9, sp, 0 /* a9 -> [(local0)] */ # e6: 9901
|
||||
l32i a11, a9, 8 # e8: b829
|
||||
l32i a9, a9, 12 # ea: 9839
|
||||
or a10, a10, a5 # ec: 50aa20
|
||||
bltu a9, a7, .Lbr005 # ef: 773907
|
||||
bne a9, a7, .Lbr004 # f2: 779902
|
||||
bltu a11, a10, .Lbr005 # f5: a73b01
|
||||
.Lbr004: movi a0, 1 /* 0x00000001 */ # f8: 0c10
|
||||
.Lbr005: bnez a0, .Lbr006 # fa: ec30
|
||||
l32i a11, sp, 0 /* [(local0)] */ # fc: b801
|
||||
l16ui a9, a3, 22 /* [arg1+0x16] */ # fe: 92130b
|
||||
s32i a10, a11, 8 /* a10 -> [[(local0)]+0x8] */ # 101: a92b
|
||||
s32i a7, a11, 12 /* a7 -> [[(local0)]+0xc] */ # 103: 793b
|
||||
l32i a11, a2, 152 /* [arg0+0x98] */ # 105: b22226
|
||||
l32i a5, a8, 4 /* [[arg1+0x4]+0x4] */ # 108: 5818
|
||||
l32i a0, a11, 4 /* [[arg0+0x98]+0x4] */ # 10a: 081b
|
||||
l32i a11, a11, 8 /* [[arg0+0x98]+0x8] */ # 10c: b82b
|
||||
add a6, a4, a0 # 10e: 0a64
|
||||
add a11, a11, a0 # 110: 0abb
|
||||
add a5, a5, a6 # 112: 6a55
|
||||
movi a0, 1 /* 0x00000001 */ # 114: 0c10
|
||||
s32i a5, a8, 4 /* a5 -> [[arg1+0x4]+0x4] */ # 116: 5918
|
||||
sub a9, a9, a11 # 118: b099c0
|
||||
s16i a9, a3, 22 /* a9 -> [arg1+0x16] */ # 11b: 92530b
|
||||
j .Lbr007 # 11e: 460000
|
||||
.Lbr006: movi a0, 0 /* 0x00000000 */ # 121: 0c00
|
||||
.Lbr007: mov a2, a0 # 123: 2d00
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 125: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 127: 12c110
|
||||
ret # 12a: 0df0
|
||||
.Lbr008: l8ui a0, a0, 24 /* [[[arg1+0x4]+0x4]+0x18] */ # 12c: 020018
|
||||
.Lbr009: extui a0, a0, 0, 4 # 12f: 000034
|
||||
j .Lbr003 # 132: c6e4ff
|
163
binary_sdk/libnet80211/ieee80211_crypto_tkip.S
Normal file
163
binary_sdk/libnet80211/ieee80211_crypto_tkip.S
Normal file
|
@ -0,0 +1,163 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.global sdk_tkip
|
||||
.type sdk_tkip, @object
|
||||
sdk_tkip: .word 0x00000002 # 0: 02000000
|
||||
.Ldata001: .word 0x00000008 # 4: 08000000
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.word 0x0000000c # 8: 0c000000
|
||||
.word 0x00000008 # c: 08000000
|
||||
|
||||
.Lrel001: .word .Lfunc001 # 10: 08000000
|
||||
.Lrel002: .word .Lfunc002 # 14: a0000000
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata002: .word 0x00000000 # 0: 00000000
|
||||
.Ldata003: .word 0x00000000 # 4: 00000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
.Lfunc001: movi a5, sdk_g_ic # 8: 51feff
|
||||
ssai 8 # b: 004840
|
||||
l32i a5, a5, 28 /* [sdk_g_ic+0x1c] */ # e: 5875
|
||||
movi a11, sdk_tkip # 10: b1fdff
|
||||
bbci a5, 26, .Lbr001 # 13: a77503
|
||||
movi a2, 0 /* 0x00000000 */ # 16: 0c02
|
||||
ret /* 0x00000000 */ # 18: 0df0
|
||||
.Lbr001: l32i a7, a2, 148 /* [arg0+0x94] */ # 1a: 722225
|
||||
l16ui a10, a3, 22 /* [arg1+0x16] */ # 1d: a2130b
|
||||
l32i a5, a3, 4 /* [arg1+0x4] */ # 20: 5813
|
||||
l32i a9, a11, 4 /* [.Ldata001] */ # 22: 981b
|
||||
l32i a8, a5, 4 /* [[arg1+0x4]+0x4] */ # 24: 8815
|
||||
l32i a11, a11, 4 /* [.Ldata001] */ # 26: b81b
|
||||
sub a8, a8, a9 # 28: 9088c0
|
||||
l32i a9, a2, 144 /* [arg0+0x90] */ # 2b: 922224
|
||||
add a10, a10, a11 # 2e: baaa
|
||||
src a7, a7, a9 # 30: 907781
|
||||
movi a9, 95 /* 0x0000005f */ # 33: 5cf9
|
||||
s32i a8, a5, 4 /* a8 -> [[arg1+0x4]+0x4] */ # 35: 8915
|
||||
s16i a10, a3, 22 /* a10 -> [arg1+0x16] */ # 37: a2530b
|
||||
and a9, a7, a9 # 3a: 909710
|
||||
movi a10, 32 /* 0x00000020 */ # 3d: 2c0a
|
||||
or a6, a4, a10 # 3f: a06420
|
||||
s8i a7, a8, 0 # 42: 724800
|
||||
or a9, a9, a10 # 45: a09920
|
||||
s8i a9, a8, 1 # 48: 924801
|
||||
l32i a5, a2, 144 /* [arg0+0x90] */ # 4b: 522224
|
||||
s8i a6, a8, 3 # 4e: 624803
|
||||
s8i a5, a8, 2 # 51: 524802
|
||||
l32i a4, a2, 144 /* [arg0+0x90] */ # 54: 422224
|
||||
l32i a3, a2, 148 /* [arg0+0x94] */ # 57: 322225
|
||||
ssai 16 # 5a: 104040
|
||||
src a3, a3, a4 # 5d: 403381
|
||||
s8i a3, a8, 4 # 60: 324804
|
||||
l32i a11, a2, 144 /* [arg0+0x90] */ # 63: b22224
|
||||
l32i a10, a2, 148 /* [arg0+0x94] */ # 66: a22225
|
||||
ssai 24 # 69: 104840
|
||||
src a10, a10, a11 # 6c: b0aa81
|
||||
s8i a10, a8, 5 # 6f: a24805
|
||||
l32i a9, a2, 148 /* [arg0+0x94] */ # 72: 922225
|
||||
s8i a9, a8, 6 # 75: 924806
|
||||
l32i a7, a2, 148 /* [arg0+0x94] */ # 78: 722225
|
||||
srli a7, a7, 8 # 7b: 707841
|
||||
s8i a7, a8, 7 # 7e: 724807
|
||||
l32i a6, a2, 144 /* [arg0+0x90] */ # 81: 622224
|
||||
l32i a3, a2, 148 /* [arg0+0x94] */ # 84: 322225
|
||||
addi a4, a6, 1 /* [arg0+0x90]+0x1 */ # 87: 1b46
|
||||
bgeu a4, a6, .Lbr002 # 89: 67b401
|
||||
addi a3, a3, 1 /* [arg0+0x94]+0x1 */ # 8c: 1b33
|
||||
.Lbr002: s32i a3, a2, 148 /* a3 -> [arg0+0x94] */ # 8e: 326225
|
||||
s32i a4, a2, 144 /* [arg0+0x90]+0x1 -> [arg0+0x90] */ # 91: 426224
|
||||
movi a2, 1 /* 0x00000001 */ # 94: 0c12
|
||||
ret /* 0x00000001 */ # 96: 0df0
|
||||
|
||||
.literal_position # 98: 00000000
|
||||
# 9c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xa0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc002: addi sp, sp, -16 /* (local0) */ # a0: 12c1f0
|
||||
l32i a8, a3, 4 /* [arg1+0x4] */ # a3: 8813
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # a5: 0911
|
||||
l32i a0, a8, 4 /* [[arg1+0x4]+0x4] */ # a7: 0818
|
||||
movi a6, sdk_g_ic # a9: 61fbff
|
||||
add a7, a4, a0 # ac: 0a74
|
||||
l8ui a5, a7, 3 # ae: 520703
|
||||
l32i a6, a6, 28 /* [sdk_g_ic+0x1c] */ # b1: 6876
|
||||
extui a5, a5, 5, 1 # b3: 505504
|
||||
beqz a5, .Lbr007 # b6: 169509
|
||||
extui a6, a6, 26, 1 # b9: 606a05
|
||||
bnez a6, .Lbr007 # bc: 563609
|
||||
l8ui a6, a7, 6 # bf: 620706
|
||||
l8ui a5, a7, 7 # c2: 520707
|
||||
l8ui a9, a0, 0 /* [[[arg1+0x4]+0x4]] */ # c5: 920000
|
||||
movi a10, 140 /* 0x0000008c */ # c8: a2a08c
|
||||
and a9, a9, a10 # cb: a09910
|
||||
slli a5, a5, 8 # ce: 805511
|
||||
or a5, a5, a6 # d1: 605520
|
||||
movi a10, 136 /* 0x00000088 */ # d4: a2a088
|
||||
l8ui a6, a7, 0 # d7: 620700
|
||||
bne a9, a10, .Lbr003 # da: a79911
|
||||
l8ui a11, a0, 1 /* [[[arg1+0x4]+0x4]+0x1] */ # dd: b20001
|
||||
extui a11, a11, 0, 2 # e0: b0b014
|
||||
addi a11, a11, -3 # e3: b2cbfd
|
||||
bnez a11, .Lbr009 # e6: 564b07
|
||||
l8ui a0, a0, 30 /* [[[arg1+0x4]+0x4]+0x1e] */ # e9: 02001e
|
||||
j .Lbr010 # ec: 461c00
|
||||
.Lbr003: movi a0, 16 /* 0x00000010 */ # ef: 1c00
|
||||
.Lbr004: slli a6, a6, 8 # f1: 806611
|
||||
l8ui a9, a7, 2 # f4: 920702
|
||||
l8ui a10, a7, 5 # f7: a20705
|
||||
l8ui a11, a7, 4 # fa: b20704
|
||||
slli a10, a10, 24 # fd: 80aa01
|
||||
slli a11, a11, 16 # 100: 00bb11
|
||||
extui a7, a5, 0, 16 # 103: 5070f4
|
||||
or a6, a6, a9 # 106: 906620
|
||||
or a11, a11, a6 # 109: 60bb20
|
||||
addx8 a9, a0, a2 # 10c: 2090b0
|
||||
or a10, a10, a11 # 10f: b0aa20
|
||||
movi a11, .Ldata002 # 112: b1e2ff
|
||||
s32i a9, sp, 0 /* a9 -> [(local0)] */ # 115: 9901
|
||||
s32i a7, a11, 4 /* a7 -> [.Ldata003] */ # 117: 791b
|
||||
s32i a10, a11, 0 /* a10 -> [.Ldata002] */ # 119: a90b
|
||||
l32i a11, a9, 8 # 11b: b829
|
||||
l32i a9, a9, 12 # 11d: 9839
|
||||
movi a0, 0 /* 0x00000000 */ # 11f: 0c00
|
||||
bltu a9, a7, .Lbr006 # 121: 773907
|
||||
bne a9, a7, .Lbr005 # 124: 779902
|
||||
bltu a11, a10, .Lbr006 # 127: a73b01
|
||||
.Lbr005: movi a0, 1 /* 0x00000001 */ # 12a: 0c10
|
||||
.Lbr006: bnez a0, .Lbr007 # 12c: ec30
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 12e: 0801
|
||||
l16ui a11, a3, 22 /* [arg1+0x16] */ # 130: b2130b
|
||||
s32i a10, a0, 8 /* a10 -> [[(local0)]+0x8] */ # 133: a920
|
||||
s32i a7, a0, 12 /* a7 -> [[(local0)]+0xc] */ # 135: 7930
|
||||
l32i a0, a2, 152 /* [arg0+0x98] */ # 137: 022226
|
||||
l32i a6, a8, 4 /* [[arg1+0x4]+0x4] */ # 13a: 6818
|
||||
l32i a5, a0, 4 /* [[arg0+0x98]+0x4] */ # 13c: 5810
|
||||
l32i a0, a0, 8 /* [[arg0+0x98]+0x8] */ # 13e: 0820
|
||||
add a9, a4, a5 # 140: 5a94
|
||||
add a6, a6, a9 # 142: 9a66
|
||||
add a0, a0, a5 # 144: 5a00
|
||||
sub a11, a11, a0 # 146: 00bbc0
|
||||
s32i a6, a8, 4 /* a6 -> [[arg1+0x4]+0x4] */ # 149: 6918
|
||||
movi a0, 1 /* 0x00000001 */ # 14b: 0c10
|
||||
s16i a11, a3, 22 /* a11 -> [arg1+0x16] */ # 14d: b2530b
|
||||
j .Lbr008 # 150: 460000
|
||||
.Lbr007: movi a0, 0 /* 0x00000000 */ # 153: 0c00
|
||||
.Lbr008: mov a2, a0 # 155: 2d00
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 157: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 159: 12c110
|
||||
ret # 15c: 0df0
|
||||
.Lbr009: l8ui a0, a0, 24 /* [[[arg1+0x4]+0x4]+0x18] */ # 15e: 020018
|
||||
.Lbr010: extui a0, a0, 0, 4 # 161: 000034
|
||||
j .Lbr004 # 164: 46e2ff
|
71
binary_sdk/libnet80211/ieee80211_crypto_wep.S
Normal file
71
binary_sdk/libnet80211/ieee80211_crypto_wep.S
Normal file
|
@ -0,0 +1,71 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.global sdk_wep
|
||||
.type sdk_wep, @object
|
||||
sdk_wep: .word 0x00000001 # 0: 01000000
|
||||
.Ldata001: .word 0x00000004 # 4: 04000000
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.word 0x00000004 # 8: 04000000
|
||||
.word 0x00000000 # c: 00000000
|
||||
|
||||
.Lrel001: .word .Lfunc001 # 10: 04000000
|
||||
.Lrel002: .word .Lfunc002 # 14: 60000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
.Lfunc001: bnez a3, .Lbr001 # 4: cc33
|
||||
movi a3, 0 /* 0x00000000 */ # 6: 0c03
|
||||
j .Lbr003 # 8: 461300
|
||||
.Lbr001: l32i a5, a2, 144 /* [arg0+0x90] */ # b: 522224
|
||||
l16ui a6, a3, 22 /* [arg1+0x16] */ # e: 62130b
|
||||
movi a7, sdk_wep # 11: 71fbff
|
||||
l32i a8, a3, 4 /* [arg1+0x4] */ # 14: 8813
|
||||
l32i a10, a7, 4 /* [.Ldata001] */ # 16: a817
|
||||
l32i a7, a7, 4 /* [.Ldata001] */ # 18: 7817
|
||||
l32i a9, a8, 4 /* [[arg1+0x4]+0x4] */ # 1a: 9818
|
||||
add a6, a6, a7 # 1c: 7a66
|
||||
sub a9, a9, a10 # 1e: a099c0
|
||||
l32i a7, a2, 148 /* [arg0+0x94] */ # 21: 722225
|
||||
s32i a9, a8, 4 /* a9 -> [[arg1+0x4]+0x4] */ # 24: 9918
|
||||
s16i a6, a3, 22 /* a6 -> [arg1+0x16] */ # 26: 62530b
|
||||
addi a8, a5, 1 /* [arg0+0x90]+0x1 */ # 29: 1b85
|
||||
bgeu a8, a5, .Lbr002 # 2b: 57b801
|
||||
addi a7, a7, 1 /* [arg0+0x94]+0x1 */ # 2e: 1b77
|
||||
.Lbr002: movi a3, 1 /* 0x00000001 */ # 30: 0c13
|
||||
s32i a7, a2, 148 /* a7 -> [arg0+0x94] */ # 32: 726225
|
||||
s32i a8, a2, 144 /* [arg0+0x90]+0x1 -> [arg0+0x90] */ # 35: 826224
|
||||
ssai 16 # 38: 104040
|
||||
src a6, a7, a8 # 3b: 806781
|
||||
s8i a6, a9, 2 # 3e: 624902
|
||||
l32i a5, a2, 144 /* [arg0+0x90] */ # 41: 522224
|
||||
l32i a11, a2, 148 /* [arg0+0x94] */ # 44: b22225
|
||||
ssai 8 # 47: 004840
|
||||
src a11, a11, a5 # 4a: 50bb81
|
||||
s8i a11, a9, 1 # 4d: b24901
|
||||
l32i a10, a2, 144 /* [arg0+0x90] */ # 50: a22224
|
||||
s8i a10, a9, 0 # 53: a24900
|
||||
s8i a4, a9, 3 # 56: 424903
|
||||
.Lbr003: mov a2, a3 # 59: 2d03
|
||||
ret # 5b: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x60
|
||||
.Lfunc002: l32i a5, a2, 152 /* [arg0+0x98] */ # 60: 522226
|
||||
l32i a8, a3, 4 /* [arg1+0x4] */ # 63: 8813
|
||||
l16ui a2, a3, 22 /* [arg1+0x16] */ # 65: 22130b
|
||||
l32i a7, a8, 4 /* [[arg1+0x4]+0x4] */ # 68: 7818
|
||||
l32i a6, a5, 4 /* [[arg0+0x98]+0x4] */ # 6a: 6815
|
||||
l32i a5, a5, 8 /* [[arg0+0x98]+0x8] */ # 6c: 5825
|
||||
add a9, a4, a6 # 6e: 6a94
|
||||
add a7, a7, a9 # 70: 9a77
|
||||
add a5, a5, a6 # 72: 6a55
|
||||
sub a2, a2, a5 # 74: 5022c0
|
||||
s32i a7, a8, 4 /* a7 -> [[arg1+0x4]+0x4] */ # 77: 7918
|
||||
s16i a2, a3, 22 /* a2 -> [arg1+0x16] */ # 79: 22530b
|
||||
movi a2, 1 /* 0x00000001 */ # 7c: 0c12
|
||||
ret /* 0x00000001 */ # 7e: 0df0
|
43
binary_sdk/libnet80211/ieee80211_ets.S
Normal file
43
binary_sdk/libnet80211/ieee80211_ets.S
Normal file
|
@ -0,0 +1,43 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_ieee80211_getmgtframe
|
||||
.type sdk_ieee80211_getmgtframe, @function
|
||||
sdk_ieee80211_getmgtframe:
|
||||
movi a5, -4 /* 0xfffffffc */ # 4: 7cc5
|
||||
addi sp, sp, -16 /* (local0) */ # 6: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 9: 0911
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # b: c921
|
||||
movi a0, 256 /* 0x00000100 */ # d: 02a100
|
||||
mov a12, a3 /* arg1 */ # 10: cd03
|
||||
add a3, a3, a4 # 12: 4a33
|
||||
addi a3, a3, 3 # 14: 3b33
|
||||
and a4, a3, a5 # 16: 504310
|
||||
bgeu a0, a4, .Lbr001 # 19: 47b004
|
||||
movi a2, 0 /* 0x00000000 */ # 1c: 0c02
|
||||
j .Lbr003 # 1e: 860700
|
||||
.Lbr001: movi a3, 4 /* 0x00000004 */ # 21: 0c43
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 23: 2901
|
||||
movi a5, 65 /* 0x00000041 */ # 25: 4c15
|
||||
bgeu a4, a5, .Lbr002 # 27: 57b401
|
||||
movi a3, 5 /* 0x00000005 */ # 2a: 0c53
|
||||
.Lbr002: movi a2, 0 /* 0x00000000 */ # 2c: 0c02
|
||||
call0 sdk_esf_buf_alloc # 2e: 01f4ffc0
|
||||
# 32: 0000
|
||||
beqz a2, .Lbr003 # 34: 8c82
|
||||
l32i a6, a2, 4 # 36: 6812
|
||||
l32i a6, a6, 4 # 38: 6816
|
||||
l32i a7, sp, 0 /* [(local0)] */ # 3a: 7801
|
||||
add a6, a12, a6 # 3c: 6a6c
|
||||
s32i a6, a7, 0 /* a6 -> [[(local0)]] */ # 3e: 6907
|
||||
.Lbr003: l32i a12, sp, 8 /* [(local2)] */ # 40: c821
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 42: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 44: 12c110
|
||||
ret # 47: 0df0
|
1893
binary_sdk/libnet80211/ieee80211_hostap.S
Normal file
1893
binary_sdk/libnet80211/ieee80211_hostap.S
Normal file
File diff suppressed because it is too large
Load diff
1260
binary_sdk/libnet80211/ieee80211_ht.S
Normal file
1260
binary_sdk/libnet80211/ieee80211_ht.S
Normal file
File diff suppressed because it is too large
Load diff
0
binary_sdk/libnet80211/ieee80211_hwmp.S
Normal file
0
binary_sdk/libnet80211/ieee80211_hwmp.S
Normal file
993
binary_sdk/libnet80211/ieee80211_input.S
Normal file
993
binary_sdk/libnet80211/ieee80211_input.S
Normal file
|
@ -0,0 +1,993 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_ieee80211_deliver_data
|
||||
.type sdk_ieee80211_deliver_data, @function
|
||||
sdk_ieee80211_deliver_data:
|
||||
addi sp, sp, -16 /* (local0) */ # c: 12c1f0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # f: 0921
|
||||
l32i a0, a2, 0 /* [arg0] */ # 11: 0802
|
||||
s32i a0, sp, 0 /* [arg0] -> [(local0)] */ # 13: 0901
|
||||
l8ui a0, a0, 47 /* [[arg0]+0x2f] */ # 15: 02002f
|
||||
s32i a3, sp, 4 /* arg1 -> [(local1)] */ # 18: 3911
|
||||
bbsi a0, 4, .Lbr001 # 1a: 47e00e
|
||||
s32i a3, sp, 4 /* arg1 -> [(local1)] */ # 1d: 3911
|
||||
beqz a3, .Lbr002 # 1f: acc3
|
||||
mov a2, a3 /* arg1 */ # 21: 2d03
|
||||
call0 sdk_ppRecycleRxPkt # 23: 01f7ffc0
|
||||
# 27: 0000
|
||||
j .Lbr002 # 29: 860800
|
||||
.Lbr001: movi a2, 3 /* 0x00000003 */ # 2c: 0c32
|
||||
l16ui a3, a3, 22 /* [arg1+0x16] */ # 2e: 32130b
|
||||
movi a4, 2 /* 0x00000002 */ # 31: 0c24
|
||||
call0 pbuf_alloc # 33: 01f4ffc0
|
||||
# 37: 0000
|
||||
l32i a4, sp, 4 /* [(local1)] */ # 39: 4811
|
||||
l32i a5, a4, 4 /* [[(local1)]+0x4] */ # 3b: 5814
|
||||
mov a3, a2 # 3d: 3d02
|
||||
l32i a5, a5, 4 /* [[[(local1)]+0x4]+0x4] */ # 3f: 5815
|
||||
s32i a5, a2, 4 # 41: 5912
|
||||
s32i a2, a4, 0 /* a2 -> [[(local1)]] */ # 43: 2904
|
||||
s32i a4, a2, 16 # 45: 4942
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 47: 2801
|
||||
call0 ethernetif_input # 49: 01efffc0
|
||||
# 4d: 0000
|
||||
.Lbr002: l32i a0, sp, 8 /* [(local2)] */ # 4f: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 51: 12c110
|
||||
ret # 54: 0df0
|
||||
|
||||
.literal_position # 58: 80f30000
|
||||
# 5c: 81370000
|
||||
# 60: f8ff0000
|
||||
# 64: 00000000
|
||||
# 68: 00000000
|
||||
# 6c: 00000000
|
||||
# 70: 00000000
|
||||
# 74: 00000000
|
||||
# 78: 00000000
|
||||
# 7c: 00000000
|
||||
# 80: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x84
|
||||
# Local variables/stack:
|
||||
# (local0): byte[31] @ -0x2f
|
||||
# (local1): word @ -0x10
|
||||
# (local2): word @ -0xc
|
||||
# (local3): word[2] @ -0x8
|
||||
.global sdk_ieee80211_decap
|
||||
.type sdk_ieee80211_decap, @function
|
||||
sdk_ieee80211_decap:
|
||||
addi sp, sp, -48 /* (FP)-0x30 */ # 84: 12c1d0
|
||||
s32i a12, sp, 40 /* a12 -> [(local3)] */ # 87: c9a1
|
||||
s32i a0, sp, 36 /* a0 -> [(local2)] */ # 89: 0991
|
||||
mov a12, a2 /* arg0 */ # 8b: cd02
|
||||
addi a0, a5, 14 /* arg3+0xe */ # 8d: eb05
|
||||
bgeu a4, a0, .Lbr003 # 8f: 07b40a
|
||||
call0 sdk_ppRecycleRxPkt # 92: 01f4ffc0
|
||||
# 96: 0000
|
||||
movi a12, 0 /* 0x00000000 */ # 98: 0c0c
|
||||
j .Lbr008 # 9a: 063100
|
||||
.Lbr003: mov a4, a5 /* arg3 */ # 9d: 4d05
|
||||
mov a2, sp /* (FP)-0x30 */ # 9f: 2d01
|
||||
call0 memcpy # a1: 01f1ffc0
|
||||
# a5: 0000
|
||||
l32i a3, a12, 4 /* [arg0+0x4] */ # a7: 381c
|
||||
l32i a0, a3, 4 /* [[arg0+0x4]+0x4] */ # a9: 0813
|
||||
movi a2, 170 /* 0x000000aa */ # ab: 22a0aa
|
||||
l8ui a4, a0, 0 /* [[[arg0+0x4]+0x4]] */ # ae: 420000
|
||||
l8ui a5, a0, 1 /* [[[arg0+0x4]+0x4]+0x1] */ # b1: 520001
|
||||
bne a4, a2, .Lbr004 # b4: 27942f
|
||||
bne a5, a2, .Lbr004 # b7: 27952c
|
||||
l8ui a6, a0, 2 /* [[[arg0+0x4]+0x4]+0x2] */ # ba: 620002
|
||||
bnei a6, 3, .Lbr004 # bd: 663626
|
||||
l8ui a7, a0, 3 /* [[[arg0+0x4]+0x4]+0x3] */ # c0: 720003
|
||||
bnez a7, .Lbr004 # c3: ec07
|
||||
l8ui a8, a0, 4 /* [[[arg0+0x4]+0x4]+0x4] */ # c5: 820004
|
||||
bnez a8, .Lbr004 # c8: dcb8
|
||||
l8ui a9, a0, 5 /* [[[arg0+0x4]+0x4]+0x5] */ # ca: 920005
|
||||
bnez a9, .Lbr004 # cd: dc69
|
||||
movi a10, 0x0000f380 # cf: a1e2ff
|
||||
l8ui a4, a0, 7 /* [[[arg0+0x4]+0x4]+0x7] */ # d2: 420007
|
||||
l8ui a5, a0, 6 /* [[[arg0+0x4]+0x4]+0x6] */ # d5: 520006
|
||||
slli a4, a4, 8 # d8: 804411
|
||||
or a4, a4, a5 # db: 504420
|
||||
beq a4, a10, .Lbr004 # de: a71405
|
||||
movi a5, 0x00003781 # e1: 51deff
|
||||
bne a4, a5, .Lbr005 # e4: 579413
|
||||
.Lbr004: l16ui a6, a12, 22 /* [arg0+0x16] */ # e7: 621c0b
|
||||
l32i a7, a3, 4 /* [[arg0+0x4]+0x4] */ # ea: 7813
|
||||
s32i a7, sp, 32 /* [[arg0+0x4]+0x4] -> [(local1)] */ # ec: 7981
|
||||
addi a6, a6, 14 /* [arg0+0x16]+0xe */ # ee: eb66
|
||||
addi a7, a7, -14 /* [[arg0+0x4]+0x4]-0xe */ # f0: 72c7f2
|
||||
s32i a7, a3, 4 /* [[arg0+0x4]+0x4]-0xe -> [[arg0+0x4]+0x4] */ # f3: 7913
|
||||
s16i a6, a12, 22 /* [arg0+0x16]+0xe -> [arg0+0x16] */ # f5: 625c0b
|
||||
j .Lbr006 # f8: 060800
|
||||
.Lbr005: srli a8, a4, 8 # fb: 408841
|
||||
movi a10, 0x0000fff8 # fe: a1d8ff
|
||||
l16ui a9, a12, 22 /* [arg0+0x16] */ # 101: 921c0b
|
||||
addi a2, a0, 8 /* [[arg0+0x4]+0x4]+0x8 */ # 104: 8b20
|
||||
addi a11, a0, -6 /* [[arg0+0x4]+0x4]-0x6 */ # 106: b2c0fa
|
||||
s32i a11, sp, 32 /* [[arg0+0x4]+0x4]-0x6 -> [(local1)] */ # 109: b981
|
||||
s32i a2, a3, 4 /* [[arg0+0x4]+0x4]+0x8 -> [[arg0+0x4]+0x4] */ # 10b: 2913
|
||||
s32i a11, a3, 4 /* [[arg0+0x4]+0x4]-0x6 -> [[arg0+0x4]+0x4] */ # 10d: b913
|
||||
add a9, a9, a10 /* [arg0+0x16]+0xfff8 */ # 10f: aa99
|
||||
addi a9, a9, 14 /* [arg0+0x16]+0x10006 */ # 111: eb99
|
||||
s16i a9, a12, 22 /* [arg0+0x16]+0x10006 -> [arg0+0x16] */ # 113: 925c0b
|
||||
s8i a4, a0, 6 /* a4 -> [[[arg0+0x4]+0x4]+0x6] */ # 116: 424006
|
||||
s8i a8, a0, 7 /* a8 -> [[[arg0+0x4]+0x4]+0x7] */ # 119: 824007
|
||||
.Lbr006: l8ui a0, sp, 1 /* [(local0)] */ # 11c: 020101
|
||||
extui a0, a0, 0, 2 # 11f: 000014
|
||||
beqz a0, .Lbr007 # 122: ac20
|
||||
beqi a0, 1, .Lbr009 # 124: 261045
|
||||
bnei a0, 2, .Lbr008 # 127: 662037
|
||||
l32i a2, sp, 32 /* [(local1)] */ # 12a: 2881
|
||||
addi a3, sp, 4 /* (FP)-0x2c */ # 12c: 4b31
|
||||
movi a4, 6 /* 0x00000006 */ # 12e: 0c64
|
||||
call0 memcpy # 130: 01cfffc0
|
||||
# 134: 0000
|
||||
addi a3, sp, 16 /* (FP)-0x20 */ # 136: 32c110
|
||||
l32i a2, sp, 32 /* [(local1)] */ # 139: 2881
|
||||
movi a4, 6 /* 0x00000006 */ # 13b: 0c64
|
||||
addi a2, a2, 6 /* [(local1)]+0x6 */ # 13d: 6b22
|
||||
call0 memcpy # 13f: 01ccffc0
|
||||
# 143: 0000
|
||||
j .Lbr008 # 145: 460600
|
||||
.Lbr007: l32i a2, sp, 32 /* [(local1)] */ # 148: 2881
|
||||
addi a3, sp, 4 /* (FP)-0x2c */ # 14a: 4b31
|
||||
movi a4, 6 /* 0x00000006 */ # 14c: 0c64
|
||||
call0 memcpy # 14e: 01c9ffc0
|
||||
# 152: 0000
|
||||
addi a3, sp, 10 /* (FP)-0x26 */ # 154: ab31
|
||||
l32i a2, sp, 32 /* [(local1)] */ # 156: 2881
|
||||
movi a4, 6 /* 0x00000006 */ # 158: 0c64
|
||||
addi a2, a2, 6 /* [(local1)]+0x6 */ # 15a: 6b22
|
||||
call0 memcpy # 15c: 01c7ffc0
|
||||
# 160: 0000
|
||||
.Lbr008: mov a2, a12 # 162: 2d0c
|
||||
l32i a0, sp, 36 /* [(local2)] */ # 164: 0891
|
||||
l32i a12, sp, 40 /* [(local3)] */ # 166: c8a1
|
||||
addi sp, sp, 48 /* (top of frame) */ # 168: 12c130
|
||||
ret # 16b: 0df0
|
||||
.Lbr009: l32i a2, sp, 32 /* [(local1)] */ # 16d: 2881
|
||||
addi a3, sp, 16 /* (FP)-0x20 */ # 16f: 32c110
|
||||
movi a4, 6 /* 0x00000006 */ # 172: 0c64
|
||||
call0 memcpy # 174: 01c2ffc0
|
||||
# 178: 0000
|
||||
addi a3, sp, 10 /* (FP)-0x26 */ # 17a: ab31
|
||||
l32i a2, sp, 32 /* [(local1)] */ # 17c: 2881
|
||||
movi a4, 6 /* 0x00000006 */ # 17e: 0c64
|
||||
addi a2, a2, 6 /* [(local1)]+0x6 */ # 180: 6b22
|
||||
call0 memcpy # 182: 01bfffc0
|
||||
# 186: 0000
|
||||
j .Lbr008 # 188: 86f5ff
|
||||
|
||||
.literal_position # 18c: 00000000
|
||||
# 190: 00000000
|
||||
# 194: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x198
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_ieee80211_setup_rates
|
||||
.type sdk_ieee80211_setup_rates, @function
|
||||
sdk_ieee80211_setup_rates:
|
||||
addi sp, sp, -16 /* (local0) */ # 198: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 19b: 0901
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 19d: e931
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 19f: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1a1: c911
|
||||
mov a13, a4 /* arg2 */ # 1a3: dd04
|
||||
mov a12, a2 /* arg0 */ # 1a5: cd02
|
||||
mov a14, a3 /* arg1 */ # 1a7: ed03
|
||||
addi a2, a2, 71 /* arg0+0x47 */ # 1a9: 22c247
|
||||
movi a3, 0 /* 0x00000000 */ # 1ac: 0c03
|
||||
movi a4, 16 /* 0x00000010 */ # 1ae: 1c04
|
||||
call0 memset # 1b0: 01f7ffc0
|
||||
# 1b4: 0000
|
||||
addi a3, a14, 2 /* arg1+0x2 */ # 1b6: 2b3e
|
||||
addi a2, a12, 72 /* arg0+0x48 */ # 1b8: 22cc48
|
||||
l8ui a4, a14, 1 /* [arg1+0x1] */ # 1bb: 420e01
|
||||
s8i a4, a12, 71 /* [arg1+0x1] -> [arg0+0x47] */ # 1be: 424c47
|
||||
call0 memcpy # 1c1: 01f3ffc0
|
||||
# 1c5: 0000
|
||||
beqz a13, .Lbr011 # 1c7: ac8d
|
||||
l8ui a0, a12, 71 /* [arg0+0x47] */ # 1c9: 020c47
|
||||
l8ui a14, a13, 1 /* [arg2+0x1] */ # 1cc: e20d01
|
||||
add a2, a14, a0 # 1cf: 0a2e
|
||||
blti a2, 16, .Lbr010 # 1d1: a6b207
|
||||
movi a14, 15 /* 0x0000000f */ # 1d4: 0cfe
|
||||
sub a14, a14, a0 # 1d6: 00eec0
|
||||
extui a14, a14, 0, 8 # 1d9: e0e074
|
||||
.Lbr010: addi a3, a13, 2 /* arg2+0x2 */ # 1dc: 2b3d
|
||||
mov a4, a14 # 1de: 4d0e
|
||||
add a2, a0, a12 # 1e0: ca20
|
||||
addi a2, a2, 72 # 1e2: 22c248
|
||||
call0 memcpy # 1e5: 01ebffc0
|
||||
# 1e9: 0000
|
||||
l8ui a3, a12, 71 /* [arg0+0x47] */ # 1eb: 320c47
|
||||
add a3, a3, a14 # 1ee: ea33
|
||||
s8i a3, a12, 71 /* a3 -> [arg0+0x47] */ # 1f0: 324c47
|
||||
.Lbr011: movi a2, 0 /* 0x00000000 */ # 1f3: 0c02
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 1f5: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 1f7: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 1f9: e831
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1fb: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1fd: 12c110
|
||||
ret /* 0x00000000 */ # 200: 0df0
|
||||
|
||||
.literal_position # 204: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x208
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_alloc_challenge
|
||||
.type sdk_ieee80211_alloc_challenge, @function
|
||||
sdk_ieee80211_alloc_challenge:
|
||||
addi sp, sp, -16 /* (local0) */ # 208: 12c1f0
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 20b: 2901
|
||||
l32i a2, a2, 84 /* [arg0+0x54] */ # 20d: 222215
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 210: 0911
|
||||
bnez a2, .Lbr012 # 212: ccc2
|
||||
movi a2, 128 /* 0x00000080 */ # 214: 22a080
|
||||
call0 malloc # 217: 01fbffc0
|
||||
# 21b: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 21d: 0801
|
||||
s32i a2, a0, 84 /* a2 -> [[(local0)]+0x54] */ # 21f: 226015
|
||||
.Lbr012: l32i a0, sp, 4 /* [(local1)] */ # 222: 0811
|
||||
movi a3, 1 /* 0x00000001 */ # 224: 0c13
|
||||
movnez a2, a3, a2 # 226: 202393
|
||||
addi sp, sp, 16 /* (top of frame) */ # 229: 12c110
|
||||
ret # 22c: 0df0
|
||||
|
||||
.literal_position # 230: 00000000
|
||||
# 234: 0050f202
|
||||
# 238: 0050f201
|
||||
# 23c: 00904c33
|
||||
# 240: 00904c34
|
||||
# 244: 00000000
|
||||
# 248: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x24c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_ieee80211_parse_beacon
|
||||
.type sdk_ieee80211_parse_beacon, @function
|
||||
sdk_ieee80211_parse_beacon:
|
||||
addi sp, sp, -32 /* (local0) */ # 24c: 12c1e0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 24f: 0911
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 251: c921
|
||||
s32i a15, sp, 20 /* a15 -> [(local5)] */ # 253: f951
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 255: e941
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 257: d931
|
||||
mov a14, a2 /* arg0 */ # 259: ed02
|
||||
l32i a13, a2, 4 /* [arg0+0x4] */ # 25b: d812
|
||||
l16ui a15, a2, 22 /* [arg0+0x16] */ # 25d: f2120b
|
||||
l32i a13, a13, 4 /* [[arg0+0x4]+0x4] */ # 260: d81d
|
||||
mov a12, a3 /* arg1 */ # 262: cd03
|
||||
add a15, a15, a13 # 264: daff
|
||||
addi a15, a15, 24 # 266: f2cf18
|
||||
sub a5, a15, a13 # 269: d05fc0
|
||||
addi a0, a5, -24 # 26c: 02c5e8
|
||||
bgei a0, 12, .Lbr013 # 26f: e6a002
|
||||
j .Lbr044 # 272: 068d00
|
||||
.Lbr013: mov a2, a3 /* arg1 */ # 275: 2d03
|
||||
s32i a5, sp, 0 /* a5 -> [(local0)] */ # 277: 5901
|
||||
movi a3, 72 /* 0x00000048 */ # 279: 4c83
|
||||
call0 bzero # 27b: 01f2ffc0
|
||||
# 27f: 0000
|
||||
addi a5, a13, 24 /* [[arg0+0x4]+0x4]+0x18 */ # 281: 52cd18
|
||||
l16ui a4, a13, 32 /* [[[arg0+0x4]+0x4]+0x20] */ # 284: 421d10
|
||||
s16i a4, a12, 6 /* [[[arg0+0x4]+0x4]+0x20] -> [arg1+0x6] */ # 287: 425c03
|
||||
l16ui a3, a13, 34 /* [[[arg0+0x4]+0x4]+0x22] */ # 28a: 321d11
|
||||
s32i a5, a12, 24 /* [[arg0+0x4]+0x4]+0x18 -> [arg1+0x18] */ # 28d: 596c
|
||||
addi a13, a13, 36 /* [[arg0+0x4]+0x4]+0x24 */ # 28f: d2cd24
|
||||
l32i a2, a14, 32 /* [arg0+0x20] */ # 292: 288e
|
||||
s16i a3, a12, 2 /* [[[arg0+0x4]+0x4]+0x22] -> [arg1+0x2] */ # 294: 325c01
|
||||
l32i a2, a2, 8 /* [[arg0+0x20]+0x8] */ # 297: 2822
|
||||
call0 sdk_ieee80211_chan2ieee # 299: 01ebffc0
|
||||
# 29d: 0000
|
||||
s32i a13, a12, 12 /* [[arg0+0x4]+0x4]+0x24 -> [arg1+0xc] */ # 29f: d93c
|
||||
movi a6, 221 /* 0x000000dd */ # 2a1: 62a0dd
|
||||
s8i a2, a12, 1 /* a2 -> [arg1+0x1] */ # 2a4: 224c01
|
||||
l32i a7, sp, 0 /* [(local0)] */ # 2a7: 7801
|
||||
extui a3, a2, 0, 8 # 2a9: 203074
|
||||
s8i a3, a12, 0 /* a3 -> [arg1] */ # 2ac: 324c00
|
||||
addi a7, a7, -36 /* [(local0)]-0x24 */ # 2af: 72c7dc
|
||||
s32i a7, a12, 16 /* [(local0)]-0x24 -> [arg1+0x10] */ # 2b2: 794c
|
||||
bgei a7, 2, .Lbr014 # 2b4: e62702
|
||||
j .Lbr045 # 2b7: 067d00
|
||||
.Lbr014: movi a8, 0x02f25000 # 2ba: 81deff
|
||||
movi a10, 50 /* 0x00000032 */ # 2bd: 3c2a
|
||||
movi a11, 45 /* 0x0000002d */ # 2bf: 2cdb
|
||||
movi a9, sdk_g_ic+0x1d8 # 2c1: 91dbff
|
||||
sub a2, a15, a13 # 2c4: d02fc0
|
||||
.Lbr015: l8ui a0, a13, 1 # 2c7: 020d01
|
||||
mov a7, a13 # 2ca: 7d0d
|
||||
addi a4, a0, 2 # 2cc: 2b40
|
||||
bge a2, a4, .Lbr016 # 2ce: 47a202
|
||||
j .Lbr044 # 2d1: 467500
|
||||
.Lbr016: l8ui a2, a13, 0 # 2d4: 220d00
|
||||
movi a5, 32 /* 0x00000020 */ # 2d7: 2c05
|
||||
bgei a2, 32, .Lbr017 # 2d9: e6c202
|
||||
j .Lbr037 # 2dc: 065e00
|
||||
.Lbr017: bge a5, a2, .Lbr020 # 2df: 27a50d
|
||||
bge a2, a10, .Lbr018 # 2e2: a7a202
|
||||
j .Lbr034 # 2e5: c64f00
|
||||
.Lbr018: blt a10, a2, .Lbr021 # 2e8: 272a11
|
||||
s32i a13, a12, 40 /* a13 -> [arg1+0x28] */ # 2eb: d9ac
|
||||
.Lbr019: l8ui a0, a7, 1 # 2ed: 020701
|
||||
.Lbr020: add a13, a0, a7 # 2f0: 7ad0
|
||||
addi a13, a13, 2 # 2f2: 2bdd
|
||||
sub a2, a15, a13 # 2f4: d02fc0
|
||||
bgei a2, 2, .Lbr015 # 2f7: e622cc
|
||||
j .Lbr045 # 2fa: 466c00
|
||||
.Lbr021: bge a2, a6, .Lbr022 # 2fd: 67a202
|
||||
j .Lbr033 # 300: 064600
|
||||
.Lbr022: blt a6, a2, .Lbr020 # 303: 2726e9
|
||||
movi a2, 0 /* 0x00000000 */ # 306: 0c02
|
||||
bltui a0, 4, .Lbr023 # 308: b64025
|
||||
l8ui a5, a13, 3 # 30b: 520d03
|
||||
l8ui a4, a13, 2 # 30e: 420d02
|
||||
slli a5, a5, 8 # 311: 805511
|
||||
l8ui a13, a13, 5 # 314: d20d05
|
||||
or a4, a4, a5 # 317: 504420
|
||||
l8ui a5, a7, 4 # 31a: 520704
|
||||
slli a13, a13, 24 # 31d: 80dd01
|
||||
slli a5, a5, 16 # 320: 005511
|
||||
or a5, a5, a13 # 323: d05520
|
||||
or a4, a4, a5 # 326: 504420
|
||||
movi a5, 0x01f25000 # 329: 51c3ff
|
||||
bne a4, a5, .Lbr023 # 32c: 579401
|
||||
movi a2, 1 /* 0x00000001 */ # 32f: 0c12
|
||||
.Lbr023: beqz a2, .Lbr025 # 331: 8c62
|
||||
s32i a7, a12, 48 /* a7 -> [arg1+0x30] */ # 333: 79cc
|
||||
.Lbr024: l8ui a0, a7, 1 # 335: 020701
|
||||
j .Lbr020 # 338: 06edff
|
||||
.Lbr025: movi a2, 0 /* 0x00000000 */ # 33b: 0c02
|
||||
bltui a0, 6, .Lbr026 # 33d: b66028
|
||||
l8ui a5, a7, 5 # 340: 520705
|
||||
l8ui a4, a7, 3 # 343: 420703
|
||||
l8ui a13, a7, 2 # 346: d20702
|
||||
slli a4, a4, 8 # 349: 804411
|
||||
or a13, a13, a4 # 34c: 40dd20
|
||||
l8ui a4, a7, 4 # 34f: 420704
|
||||
slli a5, a5, 24 # 352: 805501
|
||||
slli a4, a4, 16 # 355: 004411
|
||||
or a4, a4, a5 # 358: 504420
|
||||
or a13, a13, a4 # 35b: 40dd20
|
||||
bne a13, a8, .Lbr026 # 35e: 879d07
|
||||
l8ui a5, a7, 6 # 361: 520706
|
||||
bnei a5, 1, .Lbr026 # 364: 661501
|
||||
movi a2, 1 /* 0x00000001 */ # 367: 0c12
|
||||
.Lbr026: bnez a2, .Lbr028 # 369: ece2
|
||||
movi a2, 0 /* 0x00000000 */ # 36b: 0c02
|
||||
bltui a0, 6, .Lbr027 # 36d: b66028
|
||||
l8ui a5, a7, 5 # 370: 520705
|
||||
l8ui a4, a7, 3 # 373: 420703
|
||||
l8ui a13, a7, 2 # 376: d20702
|
||||
slli a4, a4, 8 # 379: 804411
|
||||
or a13, a13, a4 # 37c: 40dd20
|
||||
l8ui a4, a7, 4 # 37f: 420704
|
||||
slli a5, a5, 24 # 382: 805501
|
||||
slli a4, a4, 16 # 385: 004411
|
||||
or a4, a4, a5 # 388: 504420
|
||||
or a13, a13, a4 # 38b: 40dd20
|
||||
bne a13, a8, .Lbr027 # 38e: 879d07
|
||||
l8ui a13, a7, 6 # 391: d20706
|
||||
movi a5, 1 /* 0x00000001 */ # 394: 0c15
|
||||
moveqz a2, a5, a13 # 396: d02583
|
||||
.Lbr027: beqz a2, .Lbr029 # 399: 8c32
|
||||
.Lbr028: s32i a7, a12, 56 /* a7 -> [arg1+0x38] */ # 39b: 79ec
|
||||
j .Lbr024 # 39d: 06e5ff
|
||||
.Lbr029: l32i a2, a9, 0x334 /* [sdk_g_ic+0x50c] */ # 3a0: 2229cd
|
||||
extui a2, a2, 28, 1 # 3a3: 202c05
|
||||
beqz a2, .Lbr020 # 3a6: 1662f4
|
||||
movi a2, 0 /* 0x00000000 */ # 3a9: 0c02
|
||||
bltui a0, 4, .Lbr030 # 3ab: b64025
|
||||
l8ui a13, a7, 5 # 3ae: d20705
|
||||
l8ui a5, a7, 3 # 3b1: 520703
|
||||
l8ui a4, a7, 2 # 3b4: 420702
|
||||
slli a5, a5, 8 # 3b7: 805511
|
||||
or a4, a4, a5 # 3ba: 504420
|
||||
l8ui a5, a7, 4 # 3bd: 520704
|
||||
slli a13, a13, 24 # 3c0: 80dd01
|
||||
slli a5, a5, 16 # 3c3: 005511
|
||||
or a5, a5, a13 # 3c6: d05520
|
||||
or a4, a4, a5 # 3c9: 504420
|
||||
movi a5, 0x334c9000 # 3cc: 519cff
|
||||
bne a4, a5, .Lbr030 # 3cf: 579401
|
||||
movi a2, 1 /* 0x00000001 */ # 3d2: 0c12
|
||||
.Lbr030: beqz a2, .Lbr031 # 3d4: 8cb2
|
||||
l32i a13, a12, 60 /* [arg1+0x3c] */ # 3d6: d8fc
|
||||
bnez a13, .Lbr020 # 3d8: 564df1
|
||||
s32i a7, a12, 60 /* a7 -> [arg1+0x3c] */ # 3db: 79fc
|
||||
l8ui a0, a7, 1 # 3dd: 020701
|
||||
j .Lbr020 # 3e0: 06c3ff
|
||||
.Lbr031: movi a2, 0 /* 0x00000000 */ # 3e3: 0c02
|
||||
bltui a0, 4, .Lbr032 # 3e5: b64025
|
||||
l8ui a13, a7, 5 # 3e8: d20705
|
||||
l8ui a5, a7, 3 # 3eb: 520703
|
||||
l8ui a4, a7, 2 # 3ee: 420702
|
||||
slli a5, a5, 8 # 3f1: 805511
|
||||
or a4, a4, a5 # 3f4: 504420
|
||||
l8ui a5, a7, 4 # 3f7: 520704
|
||||
slli a13, a13, 24 # 3fa: 80dd01
|
||||
slli a5, a5, 16 # 3fd: 005511
|
||||
or a5, a5, a13 # 400: d05520
|
||||
or a4, a4, a5 # 403: 504420
|
||||
movi a5, 0x344c9000 # 406: 518eff
|
||||
bne a4, a5, .Lbr032 # 409: 579401
|
||||
movi a2, 1 /* 0x00000001 */ # 40c: 0c12
|
||||
.Lbr032: beqz a2, .Lbr020 # 40e: 16e2ed
|
||||
l32i a13, a12, 64 /* [arg1+0x40] */ # 411: d22c10
|
||||
bnez a13, .Lbr020 # 414: 568ded
|
||||
s32i a7, a12, 60 /* a7 -> [arg1+0x3c] */ # 417: 79fc
|
||||
j .Lbr024 # 419: 06c6ff
|
||||
.Lbr033: addi a4, a2, -61 # 41c: 42c2c3
|
||||
bnez a4, .Lbr020 # 41f: 56d4ec
|
||||
s32i a13, a12, 64 /* a13 -> [arg1+0x40] */ # 422: d26c10
|
||||
j .Lbr019 # 425: 06b1ff
|
||||
.Lbr034: blt a2, a11, .Lbr036 # 428: b72212
|
||||
blt a11, a2, .Lbr035 # 42b: 272b04
|
||||
s32i a13, a12, 60 /* a13 -> [arg1+0x3c] */ # 42e: d9fc
|
||||
j .Lbr019 # 430: 46aeff
|
||||
.Lbr035: addi a5, a2, -48 # 433: 52c2d0
|
||||
bnez a5, .Lbr020 # 436: 5665eb
|
||||
s32i a13, a12, 52 /* a13 -> [arg1+0x34] */ # 439: d9dc
|
||||
j .Lbr019 # 43b: 86abff
|
||||
.Lbr036: addi a13, a2, -42 # 43e: d2c2d6
|
||||
bnez a13, .Lbr020 # 441: 56bdea
|
||||
addi a2, a0, -1 # 444: 0b20
|
||||
bnez a2, .Lbr020 # 446: 5662ea
|
||||
l8ui a4, a7, 2 # 449: 420702
|
||||
movi a5, 256 /* 0x00000100 */ # 44c: 52a100
|
||||
or a4, a4, a5 # 44f: 504420
|
||||
s16i a4, a12, 4 /* a4 -> [arg1+0x4] */ # 452: 425c02
|
||||
j .Lbr019 # 455: 06a5ff
|
||||
.Lbr037: blti a2, 4, .Lbr041 # 458: a6422c
|
||||
bgei a2, 5, .Lbr038 # 45b: e65202
|
||||
j .Lbr020 # 45e: 86a3ff
|
||||
.Lbr038: blti a2, 6, .Lbr040 # 461: a66210
|
||||
bgei a2, 7, .Lbr039 # 464: e67202
|
||||
j .Lbr020 # 467: 46a1ff
|
||||
.Lbr039: addi a13, a2, -7 # 46a: d2c2f9
|
||||
bnez a13, .Lbr020 # 46d: 56fde7
|
||||
s32i a7, a12, 28 /* a7 -> [arg1+0x1c] */ # 470: 797c
|
||||
j .Lbr019 # 472: c69dff
|
||||
.Lbr040: addi a4, a2, -5 # 475: 42c2fb
|
||||
bnez a4, .Lbr020 # 478: 5644e7
|
||||
s32i a13, a12, 20 /* a13 -> [arg1+0x14] */ # 47b: d95c
|
||||
l32i a5, a14, 16 /* [arg0+0x10] */ # 47d: 584e
|
||||
sub a5, a13, a5 # 47f: 505dc0
|
||||
s8i a5, a12, 8 /* a5 -> [arg1+0x8] */ # 482: 524c08
|
||||
j .Lbr019 # 485: 0699ff
|
||||
.Lbr041: blti a2, 1, .Lbr043 # 488: a61216
|
||||
bgei a2, 2, .Lbr042 # 48b: e62204
|
||||
s32i a13, a12, 36 /* a13 -> [arg1+0x24] */ # 48e: d99c
|
||||
j .Lbr019 # 490: 4696ff
|
||||
.Lbr042: addi a13, a2, -3 # 493: d2c2fd
|
||||
bnez a13, .Lbr020 # 496: 566de5
|
||||
l8ui a3, a7, 2 # 499: 320702
|
||||
s8i a3, a12, 0 /* a3 -> [arg1] */ # 49c: 324c00
|
||||
j .Lbr019 # 49f: 8692ff
|
||||
.Lbr043: bnez a2, .Lbr020 # 4a2: 56a2e4
|
||||
s32i a13, a12, 32 /* a13 -> [arg1+0x20] */ # 4a5: d98c
|
||||
j .Lbr019 # 4a7: 8690ff
|
||||
.Lbr044: movi a2, 1 /* 0x00000001 */ # 4aa: 0c12
|
||||
j .Lbr054 # 4ac: 862100
|
||||
.Lbr045: l32i a0, a12, 36 /* [arg1+0x24] */ # 4af: 089c
|
||||
l32i a7, a12, 40 /* [arg1+0x28] */ # 4b1: 78ac
|
||||
beqz a0, .Lbr055 # 4b3: 16e008
|
||||
l8ui a14, a0, 1 /* [[arg1+0x24]+0x1] */ # 4b6: e20001
|
||||
bltui a14, 16, .Lbr046 # 4b9: b6be02
|
||||
j .Lbr055 # 4bc: 462100
|
||||
.Lbr046: movi a2, 0 /* 0x00000000 */ # 4bf: 0c02
|
||||
.Lbr047: beqz a0, .Lbr048 # 4c1: 9c30
|
||||
beqz a7, .Lbr048 # 4c3: 9c17
|
||||
l8ui a4, a7, 1 /* [[arg1+0x28]+0x1] */ # 4c5: 420701
|
||||
l8ui a5, a0, 1 /* [[arg1+0x24]+0x1] */ # 4c8: 520001
|
||||
movi a15, 15 /* 0x0000000f */ # 4cb: 0cff
|
||||
sub a15, a15, a5 # 4cd: 50ffc0
|
||||
bge a15, a4, .Lbr048 # 4d0: 47af04
|
||||
movi a7, 4 /* 0x00000004 */ # 4d3: 0c47
|
||||
or a2, a2, a7 # 4d5: 702220
|
||||
.Lbr048: movi a7, 8 /* 0x00000008 */ # 4d8: 0c87
|
||||
l32i a0, a12, 32 /* [arg1+0x20] */ # 4da: 088c
|
||||
l8ui a10, a12, 1 /* [arg1+0x1] */ # 4dc: a20c01
|
||||
beqz a0, .Lbr049 # 4df: 8c60
|
||||
l8ui a9, a0, 1 /* [[arg1+0x20]+0x1] */ # 4e1: 920001
|
||||
movi a8, 32 /* 0x00000020 */ # 4e4: 2c08
|
||||
bgeu a8, a9, .Lbr050 # 4e6: 97b802
|
||||
.Lbr049: or a2, a2, a7 # 4e9: 702220
|
||||
.Lbr050: l32i a0, a12, 28 /* [arg1+0x1c] */ # 4ec: 087c
|
||||
beq a10, a3, .Lbr051 # 4ee: 371a04
|
||||
movi a11, 32 /* 0x00000020 */ # 4f1: 2c0b
|
||||
or a2, a2, a11 # 4f3: b02220
|
||||
.Lbr051: movi a3, 0 /* 0x00000000 */ # 4f6: 0c03
|
||||
beqz a0, .Lbr052 # 4f8: 8c60
|
||||
l8ui a13, a0, 1 /* [[arg1+0x1c]+0x1] */ # 4fa: d20001
|
||||
bgeui a13, 3, .Lbr052 # 4fd: f63d01
|
||||
s32i a3, a12, 28 /* 0x00000000 -> [arg1+0x1c] */ # 500: 397c
|
||||
.Lbr052: l32i a0, a12, 60 /* [arg1+0x3c] */ # 502: 08fc
|
||||
movi a8, 26 /* 0x0000001a */ # 504: 1ca8
|
||||
beqz a0, .Lbr053 # 506: 9c30
|
||||
l8ui a14, a0, 1 /* [[arg1+0x3c]+0x1] */ # 508: e20001
|
||||
movi a4, 30 /* 0x0000001e */ # 50b: 1ce4
|
||||
l8ui a5, a0, 0 /* [[arg1+0x3c]] */ # 50d: 520000
|
||||
mov a15, a8 /* 0x0000001a */ # 510: fd08
|
||||
sub a5, a5, a6 /* [[arg1+0x3c]]-0xdd */ # 512: 6055c0
|
||||
moveqz a15, a4, a5 # 515: 50f483
|
||||
bgeu a14, a15, .Lbr053 # 518: f7be01
|
||||
s32i a3, a12, 60 /* 0x00000000 -> [arg1+0x3c] */ # 51b: 39fc
|
||||
.Lbr053: l32i a0, a12, 64 /* [arg1+0x40] */ # 51d: 022c10
|
||||
movi a9, 22 /* 0x00000016 */ # 520: 1c69
|
||||
beqz a0, .Lbr054 # 522: 9c00
|
||||
l8ui a10, a0, 0 /* [[arg1+0x40]] */ # 524: a20000
|
||||
l8ui a7, a0, 1 /* [[arg1+0x40]+0x1] */ # 527: 720001
|
||||
sub a10, a10, a6 /* [[arg1+0x40]]-0xdd */ # 52a: 60aac0
|
||||
moveqz a9, a8, a10 # 52d: a09883
|
||||
bgeu a7, a9, .Lbr054 # 530: 97b702
|
||||
s32i a3, a12, 64 /* 0x00000000 -> [arg1+0x40] */ # 533: 326c10
|
||||
.Lbr054: l32i a12, sp, 8 /* [(local2)] */ # 536: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 538: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 53a: e841
|
||||
l32i a15, sp, 20 /* [(local5)] */ # 53c: f851
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 53e: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 540: 12c120
|
||||
ret # 543: 0df0
|
||||
.Lbr055: movi a2, 2 /* 0x00000002 */ # 545: 0c22
|
||||
j .Lbr047 # 547: 86ddff
|
||||
|
||||
.literal_position # 54c: 0050f200
|
||||
# 550: 0050f201
|
||||
# 554: 0050f202
|
||||
# 558: 0050f204
|
||||
# 55c: 0050f205
|
||||
|
||||
# Function @ .irom0.text+0x560
|
||||
.Lfunc001: movi a4, 0x00f25000 # 560: 41fbff
|
||||
l8ui a7, a2, 3 /* [arg0+0x3] */ # 563: 720203
|
||||
l8ui a6, a2, 1 /* [arg0+0x1] */ # 566: 620201
|
||||
l8ui a5, a2, 0 /* [arg0] */ # 569: 520200
|
||||
slli a6, a6, 8 # 56c: 806611
|
||||
or a5, a5, a6 # 56f: 605520
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # 572: 620202
|
||||
slli a7, a7, 24 # 575: 807701
|
||||
slli a6, a6, 16 # 578: 006611
|
||||
or a6, a6, a7 # 57b: 706620
|
||||
or a2, a5, a6 # 57e: 602520
|
||||
beq a2, a4, .Lbr059 # 581: 471231
|
||||
movi a7, 0x01f25000 # 584: 71f3ff
|
||||
movi a8, 0x02f25000 # 587: 81f3ff
|
||||
beq a2, a7, .Lbr058 # 58a: 77121d
|
||||
beq a2, a8, .Lbr060 # 58d: 871229
|
||||
movi a9, 0x04f25000 # 590: 91f2ff
|
||||
movi a10, 0x05f25000 # 593: a1f2ff
|
||||
beq a2, a9, .Lbr061 # 596: 971224
|
||||
beq a2, a10, .Lbr056 # 599: a71203
|
||||
movi a2, 32 /* 0x00000020 */ # 59c: 2c02
|
||||
ret /* 0x00000020 */ # 59e: 0df0
|
||||
.Lbr056: beqz a3, .Lbr057 # 5a0: 8c33
|
||||
movi a11, 13 /* 0x0000000d */ # 5a2: 0cdb
|
||||
s8i a11, a3, 0 /* 0x0d -> [arg1] */ # 5a4: b24300
|
||||
.Lbr057: movi a2, 6 /* 0x00000006 */ # 5a7: 0c62
|
||||
ret /* 0x00000006 */ # 5a9: 0df0
|
||||
.Lbr058: beqz a3, .Lbr057 # 5ab: 1683ff
|
||||
movi a2, 5 /* 0x00000005 */ # 5ae: 0c52
|
||||
s8i a2, a3, 0 /* 0x05 -> [arg1] */ # 5b0: 224300
|
||||
j .Lbr057 # 5b3: 06fcff
|
||||
.Lbr059: movi a2, 0 /* 0x00000000 */ # 5b6: 0c02
|
||||
ret /* 0x00000000 */ # 5b8: 0df0
|
||||
.Lbr060: movi a2, 1 /* 0x00000001 */ # 5ba: 0c12
|
||||
ret /* 0x00000001 */ # 5bc: 0df0
|
||||
.Lbr061: movi a2, 3 /* 0x00000003 */ # 5be: 0c32
|
||||
ret /* 0x00000003 */ # 5c0: 0df0
|
||||
|
||||
.literal_position # 5c4: 0050f200
|
||||
# 5c8: 0050f201
|
||||
# 5cc: 0050f202
|
||||
|
||||
# Function @ .irom0.text+0x5d0
|
||||
.Lfunc002: movi a3, 0x00f25000 # 5d0: 31fdff
|
||||
l8ui a6, a2, 3 /* [arg0+0x3] */ # 5d3: 620203
|
||||
l8ui a5, a2, 1 /* [arg0+0x1] */ # 5d6: 520201
|
||||
l8ui a4, a2, 0 /* [arg0] */ # 5d9: 420200
|
||||
slli a5, a5, 8 # 5dc: 805511
|
||||
or a4, a4, a5 # 5df: 504420
|
||||
l8ui a5, a2, 2 /* [arg0+0x2] */ # 5e2: 520202
|
||||
slli a6, a6, 24 # 5e5: 806601
|
||||
slli a5, a5, 16 # 5e8: 005511
|
||||
or a5, a5, a6 # 5eb: 605520
|
||||
or a2, a4, a5 # 5ee: 502420
|
||||
beq a2, a3, .Lbr062 # 5f1: 37120b
|
||||
movi a6, 0x01f25000 # 5f4: 61f5ff
|
||||
movi a7, 0x02f25000 # 5f7: 71f5ff
|
||||
beq a2, a6, .Lbr064 # 5fa: 67120a
|
||||
beq a2, a7, .Lbr063 # 5fd: 771203
|
||||
.Lbr062: movi a2, 0 /* 0x00000000 */ # 600: 0c02
|
||||
ret /* 0x00000000 */ # 602: 0df0
|
||||
.Lbr063: movi a2, 2 /* 0x00000002 */ # 604: 0c22
|
||||
ret /* 0x00000002 */ # 606: 0df0
|
||||
.Lbr064: movi a2, 1 /* 0x00000001 */ # 608: 0c12
|
||||
ret /* 0x00000001 */ # 60a: 0df0
|
||||
|
||||
.literal_position # 60c: 000fac00
|
||||
# 610: 000fac01
|
||||
# 614: 000fac02
|
||||
# 618: 000fac03
|
||||
# 61c: 000fac04
|
||||
# 620: 000fac05
|
||||
|
||||
# Function @ .irom0.text+0x624
|
||||
.Lfunc003: movi a4, 0x00ac0f00 # 624: 41faff
|
||||
l8ui a7, a2, 3 /* [arg0+0x3] */ # 627: 720203
|
||||
l8ui a6, a2, 1 /* [arg0+0x1] */ # 62a: 620201
|
||||
l8ui a5, a2, 0 /* [arg0] */ # 62d: 520200
|
||||
slli a6, a6, 8 # 630: 806611
|
||||
or a5, a5, a6 # 633: 605520
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # 636: 620202
|
||||
slli a7, a7, 24 # 639: 807701
|
||||
slli a6, a6, 16 # 63c: 006611
|
||||
or a6, a6, a7 # 63f: 706620
|
||||
or a2, a5, a6 # 642: 602520
|
||||
beq a2, a4, .Lbr068 # 645: 471237
|
||||
movi a7, 0x01ac0f00 # 648: 71f2ff
|
||||
movi a8, 0x02ac0f00 # 64b: 81f2ff
|
||||
beq a2, a7, .Lbr067 # 64e: 771223
|
||||
beq a2, a8, .Lbr069 # 651: 87122f
|
||||
movi a9, 0x03ac0f00 # 654: 91f1ff
|
||||
movi a10, 0x04ac0f00 # 657: a1f1ff
|
||||
beq a2, a9, .Lbr070 # 65a: 97122a
|
||||
beq a2, a10, .Lbr071 # 65d: a7122b
|
||||
movi a11, 0x05ac0f00 # 660: b1f0ff
|
||||
beq a2, a11, .Lbr065 # 663: b71203
|
||||
movi a2, 32 /* 0x00000020 */ # 666: 2c02
|
||||
ret /* 0x00000020 */ # 668: 0df0
|
||||
.Lbr065: beqz a3, .Lbr066 # 66a: 8c33
|
||||
movi a2, 13 /* 0x0000000d */ # 66c: 0cd2
|
||||
s8i a2, a3, 0 /* 0x0d -> [arg1] */ # 66e: 224300
|
||||
.Lbr066: movi a2, 6 /* 0x00000006 */ # 671: 0c62
|
||||
ret /* 0x00000006 */ # 673: 0df0
|
||||
.Lbr067: beqz a3, .Lbr066 # 675: 1683ff
|
||||
movi a4, 5 /* 0x00000005 */ # 678: 0c54
|
||||
s8i a4, a3, 0 /* 0x05 -> [arg1] */ # 67a: 424300
|
||||
j .Lbr066 # 67d: 06fcff
|
||||
.Lbr068: movi a2, 0 /* 0x00000000 */ # 680: 0c02
|
||||
ret /* 0x00000000 */ # 682: 0df0
|
||||
.Lbr069: movi a2, 1 /* 0x00000001 */ # 684: 0c12
|
||||
ret /* 0x00000001 */ # 686: 0df0
|
||||
.Lbr070: movi a2, 2 /* 0x00000002 */ # 688: 0c22
|
||||
ret /* 0x00000002 */ # 68a: 0df0
|
||||
.Lbr071: movi a2, 3 /* 0x00000003 */ # 68c: 0c32
|
||||
ret /* 0x00000003 */ # 68e: 0df0
|
||||
|
||||
.literal_position # 690: 000fac00
|
||||
# 694: 000fac01
|
||||
# 698: 000fac02
|
||||
|
||||
# Function @ .irom0.text+0x69c
|
||||
.Lfunc004: movi a3, 0x00ac0f00 # 69c: 31fdff
|
||||
l8ui a6, a2, 3 /* [arg0+0x3] */ # 69f: 620203
|
||||
l8ui a5, a2, 1 /* [arg0+0x1] */ # 6a2: 520201
|
||||
l8ui a4, a2, 0 /* [arg0] */ # 6a5: 420200
|
||||
slli a5, a5, 8 # 6a8: 805511
|
||||
or a4, a4, a5 # 6ab: 504420
|
||||
l8ui a5, a2, 2 /* [arg0+0x2] */ # 6ae: 520202
|
||||
slli a6, a6, 24 # 6b1: 806601
|
||||
slli a5, a5, 16 # 6b4: 005511
|
||||
or a5, a5, a6 # 6b7: 605520
|
||||
or a2, a4, a5 # 6ba: 502420
|
||||
beq a2, a3, .Lbr072 # 6bd: 37120b
|
||||
movi a6, 0x01ac0f00 # 6c0: 61f5ff
|
||||
movi a7, 0x02ac0f00 # 6c3: 71f5ff
|
||||
beq a2, a6, .Lbr074 # 6c6: 67120a
|
||||
beq a2, a7, .Lbr073 # 6c9: 771203
|
||||
.Lbr072: movi a2, 0 /* 0x00000000 */ # 6cc: 0c02
|
||||
ret /* 0x00000000 */ # 6ce: 0df0
|
||||
.Lbr073: movi a2, 2 /* 0x00000002 */ # 6d0: 0c22
|
||||
ret /* 0x00000002 */ # 6d2: 0df0
|
||||
.Lbr074: movi a2, 1 /* 0x00000001 */ # 6d4: 0c12
|
||||
ret /* 0x00000001 */ # 6d6: 0df0
|
||||
|
||||
.literal_position # 6d8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x6dc
|
||||
# Local variables/stack:
|
||||
# (local0): byte[4] @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word @ -0x8
|
||||
# (local7): word @ -0x4
|
||||
.global sdk_ieee80211_parse_wpa
|
||||
.type sdk_ieee80211_parse_wpa, @function
|
||||
sdk_ieee80211_parse_wpa:
|
||||
movi a5, 0 /* 0x00000000 */ # 6dc: 0c05
|
||||
addi sp, sp, -32 /* (local0) */ # 6de: 12c1e0
|
||||
s32i a0, sp, 24 /* a0 -> [(local6)] */ # 6e1: 0961
|
||||
s8i a5, sp, 0 /* 0x00 -> [(local0)] */ # 6e3: 524100
|
||||
l32i a0, a2, 48 /* [arg0+0x30] */ # 6e6: 08c2
|
||||
beqz a0, .Lbr075 # 6e8: 9c50
|
||||
s32i a0, sp, 16 /* [arg0+0x30] -> [(local4)] */ # 6ea: 0941
|
||||
l8ui a3, a0, 7 /* [[arg0+0x30]+0x7] */ # 6ec: 320007
|
||||
l8ui a2, a0, 6 /* [[arg0+0x30]+0x6] */ # 6ef: 220006
|
||||
slli a3, a3, 8 # 6f2: 803311
|
||||
or a2, a2, a3 # 6f5: 302220
|
||||
slli a2, a2, 16 # 6f8: 002211
|
||||
srai a2, a2, 16 # 6fb: 202031
|
||||
beqi a2, 1, .Lbr078 # 6fe: 261210
|
||||
.Lbr075: mov a2, a5 /* 0x00000000 */ # 701: 2d05
|
||||
j .Lbr077 # 703: 060100
|
||||
.Lbr076: bltz a0, .Lbr087 # 706: 96300e
|
||||
movi a2, 1 /* 0x00000001 */ # 709: 0c12
|
||||
.Lbr077: l32i a0, sp, 24 /* [(local6)] */ # 70b: 0861
|
||||
addi sp, sp, 32 /* (top of frame) */ # 70d: 12c120
|
||||
ret # 710: 0df0
|
||||
.Lbr078: mov a3, sp /* (local0) */ # 712: 3d01
|
||||
addi a2, a0, 8 /* [arg0+0x30]+0x8 */ # 714: 8b20
|
||||
movi a4, 3 /* 0x00000003 */ # 716: 0c34
|
||||
l8ui a6, a0, 1 /* [[arg0+0x30]+0x1] */ # 718: 620001
|
||||
movi a5, sdk_g_ic+0x188 # 71b: 51efff
|
||||
s32i a5, sp, 20 /* sdk_g_ic+0x188 -> [(local5)] */ # 71e: 5951
|
||||
addi a6, a6, -6 /* [[arg0+0x30]+0x1]-0x6 */ # 720: 62c6fa
|
||||
s32i a6, sp, 4 /* [[arg0+0x30]+0x1]-0x6 -> [(local1)] */ # 723: 6911
|
||||
s8i a4, a5, 128 /* 0x03 -> [sdk_g_ic+0x208] */ # 725: 424580
|
||||
call0 .Lfunc001 # 728: 45e3ff
|
||||
movi a5, 0 /* 0x00000000 */ # 72b: 0c05
|
||||
l32i a6, sp, 16 /* [(local4)] */ # 72d: 6841
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 72f: 0811
|
||||
l32i a7, sp, 20 /* [(local5)] */ # 731: 7851
|
||||
addi a0, a0, -6 /* [(local1)]-0x6 */ # 733: 02c0fa
|
||||
s8i a2, a7, 132 /* a2 -> [[(local5)]+0x84] */ # 736: 224784
|
||||
l8ui a7, a6, 13 /* [[(local4)]+0xd] */ # 739: 72060d
|
||||
l8ui a6, a6, 12 /* [[(local4)]+0xc] */ # 73c: 62060c
|
||||
slli a7, a7, 8 # 73f: 807711
|
||||
or a6, a6, a7 # 742: 706620
|
||||
extui a6, a6, 0, 16 # 745: 6060f4
|
||||
.Lbr079: beqz a0, .Lbr082 # 748: bc80
|
||||
s32i a5, sp, 12 /* a5 -> [(local3)] */ # 74a: 5931
|
||||
s32i a6, sp, 28 /* a6 -> [(local7)] */ # 74c: 6971
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 74e: 0911
|
||||
extui a8, a5, 0, 16 # 750: 5080f4
|
||||
bgeu a8, a6, .Lbr082 # 753: 67b82d
|
||||
l32i a3, sp, 16 /* [(local4)] */ # 756: 3841
|
||||
l32i a2, sp, 12 /* [(local3)] */ # 758: 2831
|
||||
addx4 a2, a2, a3 # 75a: 3022a0
|
||||
addi a2, a2, 14 # 75d: eb22
|
||||
mov a3, sp /* (local0) */ # 75f: 3d01
|
||||
call0 .Lfunc001 # 761: c5dfff
|
||||
l32i a0, sp, 20 /* [(local5)] */ # 764: 0851
|
||||
l32i a6, sp, 28 /* [(local7)] */ # 766: 6871
|
||||
l8ui a0, a0, 130 /* [[(local5)]+0x82] */ # 768: 020082
|
||||
l32i a5, sp, 12 /* [(local3)] */ # 76b: 5831
|
||||
beqz a0, .Lbr080 # 76d: 8c10
|
||||
bnei a0, 1, .Lbr081 # 76f: 661004
|
||||
.Lbr080: l32i a3, sp, 20 /* [(local5)] */ # 772: 3851
|
||||
s8i a2, a3, 130 /* a2 -> [[(local5)]+0x82] */ # 774: 224382
|
||||
.Lbr081: l32i a0, sp, 4 /* [(local1)] */ # 777: 0811
|
||||
addi a4, a5, 1 /* [(local3)]+0x1 */ # 779: 1b45
|
||||
extui a5, a4, 0, 8 # 77b: 405074
|
||||
addi a0, a0, -4 /* [(local1)]-0x4 */ # 77e: 02c0fc
|
||||
j .Lbr079 # 781: c6f0ff
|
||||
.Lbr082: blti a0, 1, .Lbr087 # 784: a61065
|
||||
movi a5, 0 /* 0x00000000 */ # 787: 0c05
|
||||
l32i a7, sp, 16 /* [(local4)] */ # 789: 7841
|
||||
addi a0, a0, -2 # 78b: 02c0fe
|
||||
addx4 a6, a6, a7 # 78e: 7066a0
|
||||
addi a2, a6, 16 # 791: 22c610
|
||||
l8ui a7, a6, 15 # 794: 72060f
|
||||
l8ui a6, a6, 14 # 797: 62060e
|
||||
slli a7, a7, 8 # 79a: 807711
|
||||
or a6, a6, a7 # 79d: 706620
|
||||
extui a6, a6, 0, 16 # 7a0: 6060f4
|
||||
.Lbr083: beqz a0, .Lbr076 # 7a3: 16f0f5
|
||||
s32i a6, sp, 28 /* a6 -> [(local7)] */ # 7a6: 6971
|
||||
s32i a5, sp, 12 /* a5 -> [(local3)] */ # 7a8: 5931
|
||||
s32i a2, sp, 8 /* a2 -> [(local2)] */ # 7aa: 2921
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 7ac: 0911
|
||||
extui a9, a5, 0, 16 # 7ae: 5090f4
|
||||
bltu a9, a6, .Lbr084 # 7b1: 673902
|
||||
j .Lbr076 # 7b4: 86d3ff
|
||||
.Lbr084: l32i a2, sp, 8 /* [(local2)] */ # 7b7: 2821
|
||||
call0 .Lfunc002 # 7b9: 45e1ff
|
||||
bnei a2, 1, .Lbr085 # 7bc: 661209
|
||||
l32i a11, sp, 20 /* [(local5)] */ # 7bf: b851
|
||||
movi a10, 2 /* 0x00000002 */ # 7c1: 0c2a
|
||||
s8i a10, a11, 129 /* 0x02 -> [[(local5)]+0x81] */ # 7c3: a24b81
|
||||
j .Lbr086 # 7c6: 860300
|
||||
.Lbr085: l32i a2, sp, 8 /* [(local2)] */ # 7c9: 2821
|
||||
call0 .Lfunc002 # 7cb: 45e0ff
|
||||
bnei a2, 2, .Lbr086 # 7ce: 662206
|
||||
l32i a2, sp, 20 /* [(local5)] */ # 7d1: 2851
|
||||
movi a0, 3 /* 0x00000003 */ # 7d3: 0c30
|
||||
s8i a0, a2, 129 /* 0x03 -> [[(local5)]+0x81] */ # 7d5: 024281
|
||||
.Lbr086: l32i a6, sp, 28 /* [(local7)] */ # 7d8: 6871
|
||||
l32i a5, sp, 12 /* [(local3)] */ # 7da: 5831
|
||||
l32i a2, sp, 8 /* [(local2)] */ # 7dc: 2821
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 7de: 0811
|
||||
addi a2, a2, 4 /* [(local2)]+0x4 */ # 7e0: 4b22
|
||||
addi a0, a0, -4 /* [(local1)]-0x4 */ # 7e2: 02c0fc
|
||||
addi a3, a5, 1 /* [(local3)]+0x1 */ # 7e5: 1b35
|
||||
extui a5, a3, 0, 8 # 7e7: 305074
|
||||
j .Lbr083 # 7ea: 46edff
|
||||
.Lbr087: movi a2, 0 /* 0x00000000 */ # 7ed: 0c02
|
||||
j .Lbr077 # 7ef: 06c6ff
|
||||
|
||||
.literal_position # 7f4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x7f8
|
||||
# Local variables/stack:
|
||||
# (local0): byte[4] @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word @ -0x8
|
||||
# (local7): word @ -0x4
|
||||
.global sdk_ieee80211_parse_rsn
|
||||
.type sdk_ieee80211_parse_rsn, @function
|
||||
sdk_ieee80211_parse_rsn:
|
||||
movi a4, 0 /* 0x00000000 */ # 7f8: 0c04
|
||||
addi sp, sp, -32 /* (local0) */ # 7fa: 12c1e0
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 7fd: d941
|
||||
s32i a14, sp, 20 /* a14 -> [(local5)] */ # 7ff: e951
|
||||
s32i a15, sp, 24 /* a15 -> [(local6)] */ # 801: f961
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 803: c931
|
||||
s8i a4, sp, 0 /* 0x00 -> [(local0)] */ # 805: 424100
|
||||
l32i a12, a2, 52 /* [arg0+0x34] */ # 808: c8d2
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 80a: 0921
|
||||
beqz a12, .Lbr088 # 80c: 9c9c
|
||||
l8ui a5, a12, 1 /* [[arg0+0x34]+0x1] */ # 80e: 520c01
|
||||
l8ui a2, a12, 3 /* [[arg0+0x34]+0x3] */ # 811: 220c03
|
||||
blti a5, 10, .Lbr088 # 814: a69511
|
||||
l8ui a0, a12, 2 /* [[arg0+0x34]+0x2] */ # 817: 020c02
|
||||
slli a2, a2, 8 # 81a: 802211
|
||||
or a0, a0, a2 # 81d: 200020
|
||||
slli a0, a0, 16 # 820: 000011
|
||||
srai a0, a0, 16 # 823: 000031
|
||||
beqi a0, 1, .Lbr092 # 826: 26101b
|
||||
.Lbr088: mov a2, a4 /* 0x00000000 */ # 829: 2d04
|
||||
j .Lbr091 # 82b: c60100
|
||||
.Lbr089: bgei a13, 2, .Lbr090 # 82e: e62d02
|
||||
j .Lbr101 # 831: 862e00
|
||||
.Lbr090: movi a2, 1 /* 0x00000001 */ # 834: 0c12
|
||||
.Lbr091: l32i a12, sp, 12 /* [(local3)] */ # 836: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 838: d841
|
||||
l32i a14, sp, 20 /* [(local5)] */ # 83a: e851
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 83c: f861
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 83e: 0821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 840: 12c120
|
||||
ret # 843: 0df0
|
||||
.Lbr092: addi a2, a12, 4 /* [arg0+0x34]+0x4 */ # 845: 4b2c
|
||||
movi a15, sdk_g_ic+0x188 # 847: f1ebff
|
||||
movi a3, 3 /* 0x00000003 */ # 84a: 0c33
|
||||
s32i a5, sp, 28 /* [[arg0+0x34]+0x1] -> [(local7)] */ # 84c: 5971
|
||||
s8i a3, a15, 128 /* 0x03 -> [sdk_g_ic+0x208] */ # 84e: 324f80
|
||||
mov a3, sp /* (local0) */ # 851: 3d01
|
||||
call0 .Lfunc003 # 853: 05ddff
|
||||
movi a14, 0 /* 0x00000000 */ # 856: 0c0e
|
||||
l32i a13, sp, 28 /* [(local7)] */ # 858: d871
|
||||
s8i a2, a15, 132 /* a2 -> [sdk_g_ic+0x20c] */ # 85a: 224f84
|
||||
l8ui a4, a12, 8 /* [[arg0+0x34]+0x8] */ # 85d: 420c08
|
||||
l8ui a5, a12, 9 /* [[arg0+0x34]+0x9] */ # 860: 520c09
|
||||
addi a13, a13, -8 /* [(local7)]-0x8 */ # 863: d2cdf8
|
||||
addi a12, a12, 10 /* [arg0+0x34]+0xa */ # 866: abcc
|
||||
slli a5, a5, 8 # 868: 805511
|
||||
or a4, a4, a5 # 86b: 504420
|
||||
extui a4, a4, 0, 16 # 86e: 4040f4
|
||||
s32i a4, sp, 4 /* a4 -> [(local1)] */ # 871: 4911
|
||||
.Lbr093: l32i a2, sp, 4 /* [(local1)] */ # 873: 2811
|
||||
extui a0, a14, 0, 16 # 875: e000f4
|
||||
bgeu a0, a2, .Lbr096 # 878: 27b020
|
||||
beqz a13, .Lbr096 # 87b: 9cdd
|
||||
mov a2, a12 # 87d: 2d0c
|
||||
mov a3, sp /* (local0) */ # 87f: 3d01
|
||||
call0 .Lfunc003 # 881: 05daff
|
||||
addi a13, a13, -4 # 884: d2cdfc
|
||||
l8ui a0, a15, 130 /* [sdk_g_ic+0x20a] */ # 887: 020f82
|
||||
addi a12, a12, 4 # 88a: 4bcc
|
||||
beqz a0, .Lbr094 # 88c: 8c10
|
||||
bnei a0, 1, .Lbr095 # 88e: 661002
|
||||
.Lbr094: s8i a2, a15, 130 /* a2 -> [sdk_g_ic+0x20a] */ # 891: 224f82
|
||||
.Lbr095: addi a14, a14, 1 # 894: 1bee
|
||||
extui a14, a14, 0, 8 # 896: e0e074
|
||||
j .Lbr093 # 899: 86f5ff
|
||||
.Lbr096: blti a13, 1, .Lbr101 # 89c: a61d4f
|
||||
movi a14, 0 /* 0x00000000 */ # 89f: 0c0e
|
||||
addi a13, a13, -2 # 8a1: d2cdfe
|
||||
l8ui a0, a12, 0 # 8a4: 020c00
|
||||
l8ui a2, a12, 1 # 8a7: 220c01
|
||||
addi a12, a12, 2 # 8aa: 2bcc
|
||||
slli a2, a2, 8 # 8ac: 802211
|
||||
or a0, a0, a2 # 8af: 200020
|
||||
extui a0, a0, 0, 16 # 8b2: 0000f4
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 8b5: 0911
|
||||
.Lbr097: beqz a13, .Lbr089 # 8b7: 163df7
|
||||
l32i a6, sp, 4 /* [(local1)] */ # 8ba: 6811
|
||||
extui a5, a14, 0, 16 # 8bc: e050f4
|
||||
bltu a5, a6, .Lbr098 # 8bf: 673502
|
||||
j .Lbr089 # 8c2: 06daff
|
||||
.Lbr098: mov a2, a12 # 8c5: 2d0c
|
||||
call0 .Lfunc004 # 8c7: 45ddff
|
||||
bnei a2, 1, .Lbr099 # 8ca: 661207
|
||||
movi a7, 4 /* 0x00000004 */ # 8cd: 0c47
|
||||
s8i a7, a15, 129 /* 0x04 -> [sdk_g_ic+0x209] */ # 8cf: 724f81
|
||||
j .Lbr100 # 8d2: 060300
|
||||
.Lbr099: mov a2, a12 # 8d5: 2d0c
|
||||
call0 .Lfunc004 # 8d7: 45dcff
|
||||
bnei a2, 2, .Lbr100 # 8da: 662204
|
||||
movi a8, 5 /* 0x00000005 */ # 8dd: 0c58
|
||||
s8i a8, a15, 129 /* 0x05 -> [sdk_g_ic+0x209] */ # 8df: 824f81
|
||||
.Lbr100: addi a12, a12, 4 # 8e2: 4bcc
|
||||
addi a13, a13, -4 # 8e4: d2cdfc
|
||||
addi a14, a14, 1 # 8e7: 1bee
|
||||
extui a14, a14, 0, 8 # 8e9: e0e074
|
||||
j .Lbr097 # 8ec: c6f1ff
|
||||
.Lbr101: movi a2, 0 /* 0x00000000 */ # 8ef: 0c02
|
||||
j .Lbr091 # 8f1: 46d0ff
|
||||
|
||||
# Function @ .irom0.text+0x8f4
|
||||
.global sdk_ieee80211_parse_action
|
||||
.type sdk_ieee80211_parse_action, @function
|
||||
sdk_ieee80211_parse_action:
|
||||
l32i a4, a3, 4 /* [arg1+0x4] */ # 8f4: 4813
|
||||
l16ui a2, a3, 22 /* [arg1+0x16] */ # 8f6: 22130b
|
||||
l32i a3, a4, 4 /* [[arg1+0x4]+0x4] */ # 8f9: 3814
|
||||
add a2, a2, a3 # 8fb: 3a22
|
||||
addi a2, a2, 24 # 8fd: 22c218
|
||||
sub a2, a2, a3 # 900: 3022c0
|
||||
addi a2, a2, -24 # 903: 22c2e8
|
||||
bltui a2, 2, .Lbr104 # 906: b6221c
|
||||
l8ui a5, a3, 24 /* [[[arg1+0x4]+0x4]+0x18] */ # 909: 520318
|
||||
beqi a5, 3, .Lbr105 # 90c: 26351a
|
||||
bnei a5, 7, .Lbr102 # 90f: 66750a
|
||||
l8ui a3, a3, 25 /* [[[arg1+0x4]+0x4]+0x19] */ # 912: 320319
|
||||
beqz a3, .Lbr106 # 915: ac33
|
||||
bnei a3, 1, .Lbr102 # 917: 661302
|
||||
bltui a2, 3, .Lbr104 # 91a: b63208
|
||||
.Lbr102: movi a2, 0 /* 0x00000000 */ # 91d: 0c02
|
||||
ret /* 0x00000000 */ # 91f: 0df0
|
||||
.Lbr103: movi a5, 8 /* 0x00000008 */ # 921: 0c85
|
||||
bltu a5, a2, .Lbr102 # 923: 2735f6
|
||||
.Lbr104: movi a2, -1 /* 0xffffffff */ # 926: 7cf2
|
||||
ret /* 0xffffffff */ # 928: 0df0
|
||||
.Lbr105: l8ui a3, a3, 25 /* [[[arg1+0x4]+0x4]+0x19] */ # 92a: 320319
|
||||
beqz a3, .Lbr103 # 92d: 1603ff
|
||||
beqi a3, 1, .Lbr107 # 930: 26130e
|
||||
bnei a3, 2, .Lbr102 # 933: 6623e6
|
||||
bltui a2, 6, .Lbr104 # 936: b662ec
|
||||
j .Lbr102 # 939: 06f8ff
|
||||
.Lbr106: bltui a2, 3, .Lbr104 # 93c: b632e6
|
||||
j .Lbr102 # 93f: 86f6ff
|
||||
.Lbr107: movi a6, 8 /* 0x00000008 */ # 942: 0c86
|
||||
bgeu a6, a2, .Lbr104 # 944: 27b6de
|
||||
j .Lbr102 # 947: 86f4ff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x94c
|
||||
.global sdk_ieee80211_setup_rateset
|
||||
.type sdk_ieee80211_setup_rateset, @function
|
||||
sdk_ieee80211_setup_rateset:
|
||||
movi a2, 0 /* 0x00000000 */ # 94c: 0c02
|
||||
ret /* 0x00000000 */ # 94e: 0df0
|
0
binary_sdk/libnet80211/ieee80211_mesh.S
Normal file
0
binary_sdk/libnet80211/ieee80211_mesh.S
Normal file
0
binary_sdk/libnet80211/ieee80211_node.S
Normal file
0
binary_sdk/libnet80211/ieee80211_node.S
Normal file
2761
binary_sdk/libnet80211/ieee80211_output.S
Normal file
2761
binary_sdk/libnet80211/ieee80211_output.S
Normal file
File diff suppressed because it is too large
Load diff
241
binary_sdk/libnet80211/ieee80211_phy.S
Normal file
241
binary_sdk/libnet80211/ieee80211_phy.S
Normal file
|
@ -0,0 +1,241 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.Ldata001: .byte 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
.word 0x00000000 # 14: 00000000
|
||||
.byte 0xe8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00
|
||||
.byte 0x3a, 0x01, 0x3a, 0x01, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xd0, 0x07, 0x00, 0x00, 0x04, 0x01, 0x84, 0x01
|
||||
.byte 0x02, 0x01, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x7c, 0x15, 0x00, 0x00, 0x04, 0x02, 0x8b, 0x02
|
||||
.byte 0xdf, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xf8, 0x2a, 0x00, 0x00, 0x04, 0x03, 0x96, 0x03
|
||||
.byte 0xd5, 0x00, 0x75, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x70, 0x17, 0x00, 0x00, 0x00, 0x0b, 0x0c, 0x04
|
||||
.byte 0x3c, 0x00, 0x3c, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x28, 0x23, 0x00, 0x00, 0x00, 0x0f, 0x12, 0x04
|
||||
.byte 0x3c, 0x00, 0x3c, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0xe0, 0x2e, 0x00, 0x00, 0x00, 0x0a, 0x18, 0x06
|
||||
.byte 0x30, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x50, 0x46, 0x00, 0x00, 0x00, 0x0e, 0x24, 0x06
|
||||
.byte 0x30, 0x00, 0x30, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0xc0, 0x5d, 0x00, 0x00, 0x00, 0x09, 0x30, 0x08
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0xa0, 0x8c, 0x00, 0x00, 0x00, 0x0d, 0x48, 0x08
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0x80, 0xbb, 0x00, 0x00, 0x00, 0x08, 0x60, 0x08
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x01, 0x00, 0x00, 0x00
|
||||
.byte 0xf0, 0xd2, 0x00, 0x00, 0x00, 0x0c, 0x6c, 0x08
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00
|
||||
.Label001: .byte 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xe8, 0x03, 0x00, 0x00, 0x00, 0x00, 0x82, 0x00
|
||||
.byte 0x3a, 0x01, 0x3a, 0x01, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xd0, 0x07, 0x00, 0x00, 0x04, 0x01, 0x84, 0x01
|
||||
.byte 0x02, 0x01, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x7c, 0x15, 0x00, 0x00, 0x04, 0x02, 0x8b, 0x01
|
||||
.byte 0xdf, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0xf8, 0x2a, 0x00, 0x00, 0x04, 0x03, 0x96, 0x01
|
||||
.byte 0xd5, 0x00, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
.global sdk_ieee80211_get_11g_ratetable
|
||||
.type sdk_ieee80211_get_11g_ratetable, @function
|
||||
sdk_ieee80211_get_11g_ratetable:
|
||||
movi a2, .Ldata001 # 4: 21ffff
|
||||
ret /* .Ldata001 */ # 7: 0df0
|
||||
|
||||
.literal_position # c: d4000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
.global sdk_ieee80211_get_ratetable
|
||||
.type sdk_ieee80211_get_ratetable, @function
|
||||
sdk_ieee80211_get_ratetable:
|
||||
l32i a2, a2, 0 /* [arg0] */ # 14: 2802
|
||||
movi a3, 192 /* 0x000000c0 */ # 16: 32a0c0
|
||||
ball a2, a3, .Lbr001 # 19: 37420a
|
||||
movi a4, 1152 /* 0x00000480 */ # 1c: 42a480
|
||||
ball a2, a4, .Lbr001 # 1f: 474204
|
||||
movi a2, .Label001 # 22: 21faff
|
||||
ret /* .Label001 */ # 25: 0df0
|
||||
.Lbr001: movi a2, .Ldata001 # 27: 21faff
|
||||
ret /* .Ldata001 */ # 2a: 0df0
|
||||
|
||||
.literal_position # 2c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x30
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_phy_init
|
||||
.type sdk_ieee80211_phy_init, @function
|
||||
sdk_ieee80211_phy_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 30: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 33: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 35: 0901
|
||||
mov a12, a2 /* arg0 */ # 37: cd02
|
||||
call0 sdk_ieee80211_setup_ratetable # 39: 050000
|
||||
movi a3, 12 /* 0x0000000c */ # 3c: 0cc3
|
||||
movi a0, 3 /* 0x00000003 */ # 3e: 0c30
|
||||
movi a5, 4 /* 0x00000004 */ # 40: 0c45
|
||||
movi a2, sdk_g_ic # 42: 21faff
|
||||
addi a4, a12, -1 /* arg0-0x1 */ # 45: 0b4c
|
||||
movi a6, 0 /* 0x00000000 */ # 47: 0c06
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 49: c811
|
||||
s8i a6, a2, 125 /* 0x00 -> [sdk_g_ic+0x7d] */ # 4b: 62427d
|
||||
s8i a6, a2, 126 /* 0x00 -> [sdk_g_ic+0x7e] */ # 4e: 62427e
|
||||
s8i a5, a2, 127 /* 0x04 -> [sdk_g_ic+0x7f] */ # 51: 52427f
|
||||
movnez a0, a3, a4 # 54: 400393
|
||||
s8i a0, a2, 124 /* a0 -> [sdk_g_ic+0x7c] */ # 57: 02427c
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 5a: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 5c: 12c110
|
||||
ret /* sdk_g_ic */ # 5f: 0df0
|
||||
|
||||
.literal_position # 64: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x68
|
||||
.global sdk_ieee80211_phy_type_get
|
||||
.type sdk_ieee80211_phy_type_get, @function
|
||||
sdk_ieee80211_phy_type_get:
|
||||
movi a2, sdk_g_ic+0x200 # 68: 21ffff
|
||||
l32i a2, a2, 0x31c /* [sdk_g_ic+0x51c] */ # 6b: 2222c7
|
||||
movi a3, 1 /* 0x00000001 */ # 6e: 0c13
|
||||
addi a2, a2, -1 /* [sdk_g_ic+0x51c]-0x1 */ # 70: 0b22
|
||||
movnez a2, a3, a2 # 72: 202393
|
||||
ret # 75: 0df0
|
||||
|
||||
.literal_position # 78: 00000000
|
||||
# 7c: d4000000
|
||||
# 80: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x84
|
||||
.global sdk_ieee80211_setup_ratetable
|
||||
.type sdk_ieee80211_setup_ratetable, @function
|
||||
sdk_ieee80211_setup_ratetable:
|
||||
movi a4, .Ldata001 # 84: 41fdff
|
||||
movi a5, .Label001 # 87: 51fdff
|
||||
addi a6, a2, -1 /* arg0-0x1 */ # 8a: 0b62
|
||||
movnez a5, a4, a6 # 8c: 605493
|
||||
movi a6, sdk_g_ic # 8f: 61fcff
|
||||
l8ui a3, a5, 0 # 92: 320500
|
||||
s8i a3, a6, 44 /* a3 -> [sdk_g_ic+0x2c] */ # 95: 32462c
|
||||
beqz a3, .Lbr003 # 98: 9c83
|
||||
movi a2, 0 /* 0x00000000 */ # 9a: 0c02
|
||||
.Lbr002: add a4, a2, a6 # 9c: 6a42
|
||||
slli a3, a2, 4 # 9e: c03211
|
||||
add a3, a5, a3 # a1: 3a35
|
||||
addi a2, a2, 1 # a3: 1b22
|
||||
l8ui a3, a3, 30 # a5: 32031e
|
||||
s8i a3, a4, 45 # a8: 32442d
|
||||
l8ui a7, a6, 44 /* [sdk_g_ic+0x2c] */ # ab: 72062c
|
||||
extui a2, a2, 0, 8 # ae: 202074
|
||||
bltu a2, a7, .Lbr002 # b1: 7732e7
|
||||
.Lbr003: ret # b4: 0df0
|
||||
|
||||
.literal_position # b8: 00000000
|
||||
# bc: 00000000
|
||||
# c0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_ieee80211_compute_duration
|
||||
.type sdk_ieee80211_compute_duration, @function
|
||||
sdk_ieee80211_compute_duration:
|
||||
addi sp, sp, -16 /* (local0) */ # c4: 12c1f0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # c7: 0921
|
||||
add a0, a4, a2 # c9: 2a04
|
||||
l8ui a0, a0, 4 # cb: 020004
|
||||
mov a7, a3 /* arg1 */ # ce: 7d03
|
||||
slli a0, a0, 4 # d0: c00011
|
||||
add a0, a2, a0 # d3: 0a02
|
||||
l32i a3, a0, 24 # d5: 3860
|
||||
l8ui a2, a0, 20 # d7: 220014
|
||||
bnez a3, .Lbr004 # da: cc33
|
||||
movi a2, 0 /* 0x00000000 */ # dc: 0c02
|
||||
j .Lbr008 # de: 061400
|
||||
.Lbr004: s32i a7, sp, 4 /* arg1 -> [(local1)] */ # e1: 7911
|
||||
beqz a2, .Lbr005 # e3: ac52
|
||||
bnei a2, 1, .Lbr007 # e5: 661246
|
||||
slli a2, a3, 2 # e8: e02311
|
||||
movi a3, 1000 /* 0x000003e8 */ # eb: 32a3e8
|
||||
call0 __udivsi3 # ee: 01f2ffc0
|
||||
# f2: 0000
|
||||
mov a3, a2 # f4: 3d02
|
||||
l32i a2, sp, 4 /* [(local1)] */ # f6: 2811
|
||||
addx8 a2, a2, a3 # f8: 3022b0
|
||||
addi a2, a2, 21 # fb: 22c215
|
||||
call0 __udivsi3 # fe: 01efffc0
|
||||
# 102: 0000
|
||||
movi a0, 36 /* 0x00000024 */ # 104: 2c40
|
||||
addx4 a0, a2, a0 # 106: 0002a0
|
||||
j .Lbr007 # 109: 860800
|
||||
.Lbr005: beqz a5, .Lbr009 # 10c: ac95
|
||||
l8ui a2, a0, 28 # 10e: 22001c
|
||||
movi a4, 96 /* 0x00000060 */ # 111: 42a060
|
||||
beqz a2, .Lbr009 # 114: ac12
|
||||
s32i a4, sp, 0 /* 0x00000060 -> [(local0)] */ # 116: 4901
|
||||
.Lbr006: l32i a2, sp, 4 /* [(local1)] */ # 118: 2811
|
||||
movi a4, 1000 /* 0x000003e8 */ # 11a: 42a3e8
|
||||
slli a2, a2, 3 # 11d: d02211
|
||||
mull a2, a2, a4 # 120: 402282
|
||||
call0 __udivsi3 # 123: 01e7ffc0
|
||||
# 127: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 129: 0801
|
||||
add a0, a0, a2 # 12b: 2a00
|
||||
addi a0, a0, 10 # 12d: ab00
|
||||
.Lbr007: extui a2, a0, 0, 16 # 12f: 0020f4
|
||||
.Lbr008: l32i a0, sp, 8 /* [(local2)] */ # 132: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 134: 12c110
|
||||
ret # 137: 0df0
|
||||
.Lbr009: movi a2, 192 /* 0x000000c0 */ # 139: 22a0c0
|
||||
s32i a2, sp, 0 /* 0x000000c0 -> [(local0)] */ # 13c: 2901
|
||||
j .Lbr006 # 13e: 86f5ff
|
||||
|
||||
.literal_position # 144: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x148
|
||||
.global sdk_ieee80211_dot11Rate_rix
|
||||
.type sdk_ieee80211_dot11Rate_rix, @function
|
||||
sdk_ieee80211_dot11Rate_rix:
|
||||
movi a6, 0 /* 0x00000000 */ # 148: 0c06
|
||||
movi a8, .Ldata001 # 14a: 81feff
|
||||
.Lbr010: slli a7, a6, 4 # 14d: c07611
|
||||
add a7, a8, a7 # 150: 7a78
|
||||
l8ui a4, a7, 30 # 152: 42071e
|
||||
bne a4, a2, .Lbr011 # 155: 279409
|
||||
mov a2, a6 # 158: 2d06
|
||||
l8ui a8, a7, 29 # 15a: 82071d
|
||||
s8i a8, a3, 0 /* a8 -> [arg1] */ # 15d: 824300
|
||||
ret # 160: 0df0
|
||||
.Lbr011: addi a6, a6, 1 # 162: 1b66
|
||||
extui a6, a6, 0, 8 # 164: 606074
|
||||
bnei a6, 12, .Lbr010 # 167: 66a6e2
|
||||
movi a2, 255 /* 0x000000ff */ # 16a: 22a0ff
|
||||
ret /* 0x000000ff */ # 16d: 0df0
|
189
binary_sdk/libnet80211/ieee80211_power.S
Normal file
189
binary_sdk/libnet80211/ieee80211_power.S
Normal file
|
@ -0,0 +1,189 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_ieee80211_psq_init
|
||||
.type sdk_ieee80211_psq_init, @function
|
||||
sdk_ieee80211_psq_init:
|
||||
movi a6, 0 /* 0x00000000 */ # 0: 0c06
|
||||
movi a5, 0 /* 0x00000000 */ # 2: 0c05
|
||||
movi a4, 1 /* 0x00000001 */ # 4: 0c14
|
||||
.Lbr001: addi a4, a4, -1 # 6: 0b44
|
||||
add a3, a5, a2 # 8: 2a35
|
||||
s32i a6, a3, 0 # a: 6903
|
||||
addi a5, a5, 4 # c: 4b55
|
||||
bgei a4, 1, .Lbr001 # e: e614f4
|
||||
movi a4, 10 /* 0x0000000a */ # 11: 0ca4
|
||||
s32i a4, a2, 4 /* 0x0000000a -> [arg0+0x4] */ # 13: 4912
|
||||
ret /* arg0 */ # 15: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x18
|
||||
.global sdk_ieee80211_psq_cleanup
|
||||
.type sdk_ieee80211_psq_cleanup, @function
|
||||
sdk_ieee80211_psq_cleanup:
|
||||
ret /* arg0 */ # 18: 0df0
|
||||
|
||||
.literal_position # 1c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x20
|
||||
.global sdk_ieee80211_set_tim
|
||||
.type sdk_ieee80211_set_tim, @function
|
||||
sdk_ieee80211_set_tim:
|
||||
movi a10, 1 /* 0x00000001 */ # 20: 0c1a
|
||||
l16ui a6, a2, 26 /* [arg0+0x1a] */ # 22: 62120d
|
||||
movi a8, sdk_g_ic+0x152 # 25: 81fdff
|
||||
extui a7, a6, 0, 3 # 28: 607024
|
||||
extui a6, a6, 3, 11 # 2b: 6063a4
|
||||
add a6, a6, a8 # 2e: 8a66
|
||||
l8ui a5, a6, 128 # 30: 520680
|
||||
ssr a7 # 33: 000740
|
||||
sra a4, a5 # 36: 5040b1
|
||||
extui a4, a4, 0, 1 # 39: 404004
|
||||
sub a2, a3, a4 # 3c: 4023c0
|
||||
movnez a2, a10, a2 # 3f: 202a93
|
||||
beqz a2, .Lbr002 # 42: 9c52
|
||||
movi a11, -1 /* 0xffffffff */ # 44: 7cfb
|
||||
ssl a7 # 46: 001740
|
||||
sll a9, a10 # 49: 009aa1
|
||||
or a8, a9, a5 # 4c: 508920
|
||||
xor a9, a9, a11 # 4f: b09930
|
||||
and a9, a5, a9 # 52: 909510
|
||||
moveqz a8, a9, a3 # 55: 308983
|
||||
s8i a8, a6, 128 # 58: 824680
|
||||
.Lbr002: ret # 5b: 0df0
|
||||
|
||||
.literal_position # 60: 00000000
|
||||
# 64: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x68
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_pwrsave
|
||||
.type sdk_ieee80211_pwrsave, @function
|
||||
sdk_ieee80211_pwrsave:
|
||||
mov a6, a2 /* arg0 */ # 68: 6d02
|
||||
addi sp, sp, -16 /* (local0) */ # 6a: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 6d: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 6f: 0901
|
||||
l32i a2, a2, 196 /* [arg0+0xc4] */ # 71: 222231
|
||||
l32i a0, a6, 192 /* [arg0+0xc0] */ # 74: 022630
|
||||
mov a12, a3 /* arg1 */ # 77: cd03
|
||||
blt a0, a2, .Lbr003 # 79: 27201e
|
||||
l32i a3, a6, 200 /* [arg0+0xc8] */ # 7c: 322632
|
||||
l32i a2, a12, 0 /* [arg1] */ # 7f: 280c
|
||||
addi a3, a3, 1 /* [arg0+0xc8]+0x1 */ # 81: 1b33
|
||||
s32i a3, a6, 200 /* [arg0+0xc8]+0x1 -> [arg0+0xc8] */ # 83: 326632
|
||||
call0 pbuf_free # 86: 01f6ffc0
|
||||
# 8a: 0000
|
||||
mov a2, a12 /* arg1 */ # 8c: 2d0c
|
||||
movi a3, 1 /* 0x00000001 */ # 8e: 0c13
|
||||
call0 sdk_esf_buf_recycle # 90: 01f5ffc0
|
||||
# 94: 0000
|
||||
movi a2, 1 /* 0x00000001 */ # 96: 0c12
|
||||
j .Lbr007 # 98: 060b00
|
||||
.Lbr003: addi a4, a0, 1 /* [arg0+0xc0]+0x1 */ # 9b: 1b40
|
||||
movi a7, 0 /* 0x00000000 */ # 9d: 0c07
|
||||
l32i a5, a6, 212 /* [arg0+0xd4] */ # 9f: 522635
|
||||
l32i a2, a6, 208 /* [arg0+0xd0] */ # a2: 222634
|
||||
addi a5, a5, 1 /* [arg0+0xd4]+0x1 */ # a5: 1b55
|
||||
bnez a2, .Lbr004 # a7: cc42
|
||||
s32i a3, a6, 204 /* arg1 -> [arg0+0xcc] */ # a9: 326633
|
||||
j .Lbr005 # ac: 460000
|
||||
.Lbr004: s32i a3, a2, 28 /* arg1 -> [[arg0+0xd0]+0x1c] */ # af: 3972
|
||||
.Lbr005: s32i a7, a12, 28 /* 0x00000000 -> [arg1+0x1c] */ # b1: 797c
|
||||
s32i a12, a6, 208 /* arg1 -> [arg0+0xd0] */ # b3: c26634
|
||||
s32i a4, a6, 192 /* [arg0+0xc0]+0x1 -> [arg0+0xc0] */ # b6: 426630
|
||||
s32i a5, a6, 212 /* [arg0+0xd4]+0x1 -> [arg0+0xd4] */ # b9: 526635
|
||||
bnei a4, 1, .Lbr006 # bc: 661406
|
||||
mov a2, a6 /* arg0 */ # bf: 2d06
|
||||
movi a3, 1 /* 0x00000001 */ # c1: 0c13
|
||||
call0 sdk_ieee80211_set_tim # c3: 050000
|
||||
.Lbr006: movi a2, 0 /* 0x00000000 */ # c6: 0c02
|
||||
.Lbr007: l32i a12, sp, 4 /* [(local1)] */ # c8: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # ca: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # cc: 12c110
|
||||
ret # cf: 0df0
|
||||
|
||||
.literal_position # d4: 00000000
|
||||
# d8: 00000000
|
||||
# dc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xe0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.Lfunc001: addi sp, sp, -16 /* (local0) */ # e0: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # e3: 0901
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # e5: e931
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # e7: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # e9: d921
|
||||
mov a12, a2 /* arg0 */ # eb: cd02
|
||||
l32i a13, a2, 204 /* [arg0+0xcc] */ # ed: d22233
|
||||
movi a14, 0 /* 0x00000000 */ # f0: 0c0e
|
||||
bnez a13, .Lbr008 # f2: cc1d
|
||||
j .Lbr012 # f4: 061000
|
||||
.Lbr008: l32i a2, a13, 28 /* [[arg0+0xcc]+0x1c] */ # f7: 287d
|
||||
s32i a2, a12, 204 /* [[arg0+0xcc]+0x1c] -> [arg0+0xcc] */ # f9: 226c33
|
||||
call0 sdk_chm_check_same_channel # fc: 01f7ffc0
|
||||
# 100: 0000
|
||||
beqz a2, .Lbr009 # 102: 8c92
|
||||
mov a2, a13 /* [arg0+0xcc] */ # 104: 2d0d
|
||||
call0 sdk_ppTxPkt # 106: 01f5ffc0
|
||||
# 10a: 0000
|
||||
j .Lbr010 # 10c: c60300
|
||||
.Lbr009: movi a5, sdk_g_ic # 10f: 51f1ff
|
||||
addi a4, a13, 28 /* [arg0+0xcc]+0x1c */ # 112: 42cd1c
|
||||
l32i a6, a5, 0x1c4 /* [sdk_g_ic+0x1c4] */ # 115: 622571
|
||||
s32i a14, a13, 28 /* 0x00000000 -> [[arg0+0xcc]+0x1c] */ # 118: e97d
|
||||
s32i a13, a6, 0 /* [arg0+0xcc] -> [[sdk_g_ic+0x1c4]] */ # 11a: d906
|
||||
s32i a4, a5, 0x1c4 /* [arg0+0xcc]+0x1c -> [sdk_g_ic+0x1c4] */ # 11c: 426571
|
||||
.Lbr010: l32i a7, a12, 192 /* [arg0+0xc0] */ # 11f: 722c30
|
||||
l32i a13, a12, 204 /* [arg0+0xcc] */ # 122: d22c33
|
||||
addi a7, a7, -1 /* [arg0+0xc0]-0x1 */ # 125: 0b77
|
||||
s32i a7, a12, 192 /* [arg0+0xc0]-0x1 -> [arg0+0xc0] */ # 127: 726c30
|
||||
beqz a13, .Lbr011 # 12a: 8c1d
|
||||
j .Lbr008 # 12c: c6f1ff
|
||||
.Lbr011: s32i a14, a12, 208 /* 0x00000000 -> [arg0+0xd0] */ # 12f: e26c34
|
||||
s32i a14, a12, 204 /* 0x00000000 -> [arg0+0xcc] */ # 132: e26c33
|
||||
s32i a14, a12, 212 /* 0x00000000 -> [arg0+0xd4] */ # 135: e26c35
|
||||
.Lbr012: l32i a0, sp, 0 /* [(local0)] */ # 138: 0801
|
||||
s32i a14, a12, 192 /* 0x00000000 -> [arg0+0xc0] */ # 13a: e26c30
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 13d: d821
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 13f: c811
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 141: e831
|
||||
addi sp, sp, 16 /* (top of frame) */ # 143: 12c110
|
||||
ret # 146: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x148
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ieee80211_node_pwrsave
|
||||
.type sdk_ieee80211_node_pwrsave, @function
|
||||
sdk_ieee80211_node_pwrsave:
|
||||
addi sp, sp, -16 /* (local0) */ # 148: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 14b: 0911
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 14d: 2901
|
||||
l32i a0, a2, 8 /* [arg0+0x8] */ # 14f: 0822
|
||||
beqz a3, .Lbr013 # 151: 8c83
|
||||
movi a3, 16 /* 0x00000010 */ # 153: 1c03
|
||||
or a3, a0, a3 # 155: 303020
|
||||
s32i a3, a2, 8 /* a3 -> [arg0+0x8] */ # 158: 3922
|
||||
j .Lbr014 # 15a: c60500
|
||||
.Lbr013: movi a3, 0 /* 0x00000000 */ # 15d: 0c03
|
||||
movi a4, -17 /* 0xffffffef */ # 15f: 6cf4
|
||||
and a4, a0, a4 # 161: 404010
|
||||
s32i a4, a2, 8 /* a4 -> [arg0+0x8] */ # 164: 4922
|
||||
call0 sdk_ieee80211_set_tim # 166: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 169: 0801
|
||||
l32i a5, a0, 192 /* [[(local0)]+0xc0] */ # 16b: 522030
|
||||
beqz a5, .Lbr014 # 16e: 8c35
|
||||
mov a2, a0 /* [(local0)] */ # 170: 2d00
|
||||
call0 .Lfunc001 # 172: c5f6ff
|
||||
.Lbr014: l32i a0, sp, 4 /* [(local1)] */ # 175: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 177: 12c110
|
||||
ret # 17a: 0df0
|
227
binary_sdk/libnet80211/ieee80211_proto.S
Normal file
227
binary_sdk/libnet80211/ieee80211_proto.S
Normal file
|
@ -0,0 +1,227 @@
|
|||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.global sdk_ieee80211_addr_bcast
|
||||
.type sdk_ieee80211_addr_bcast, @object
|
||||
sdk_ieee80211_addr_bcast:
|
||||
.byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000400
|
||||
# 8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_proto_attach
|
||||
.type sdk_ieee80211_proto_attach, @function
|
||||
sdk_ieee80211_proto_attach:
|
||||
movi a3, 2 /* 0x00000002 */ # c: 0c23
|
||||
movi a4, 0x00040000 # e: 41fdff
|
||||
movi a6, 1 /* 0x00000001 */ # 11: 0c16
|
||||
mov a5, a2 /* arg0 */ # 13: 5d02
|
||||
addi sp, sp, -16 /* (local0) */ # 15: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 18: 0901
|
||||
movi a2, sdk_ieee80211_tx_mgt_cb # 1a: 21f9ff
|
||||
l32i a0, a5, 28 /* [arg0+0x1c] */ # 1d: 0875
|
||||
s32i a6, a5, 12 /* 0x00000001 -> [arg0+0xc] */ # 1f: 6935
|
||||
or a0, a0, a4 # 21: 400020
|
||||
s32i a0, a5, 28 /* a0 -> [arg0+0x1c] */ # 24: 0975
|
||||
call0 sdk_ppRegisterTxCallback # 26: 01f8ffc0
|
||||
# 2a: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 2c: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2e: 12c110
|
||||
ret # 31: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x34
|
||||
.global sdk_ieee80211_set_shortslottime
|
||||
.type sdk_ieee80211_set_shortslottime, @function
|
||||
sdk_ieee80211_set_shortslottime:
|
||||
movi a6, 1024 /* 0x00000400 */ # 34: 62a400
|
||||
l32i a5, a2, 28 /* [arg0+0x1c] */ # 37: 5872
|
||||
movi a4, -1025 /* 0xfffffbff */ # 39: 42abff
|
||||
and a4, a5, a4 # 3c: 404510
|
||||
or a5, a5, a6 # 3f: 605520
|
||||
moveqz a5, a4, a3 # 42: 305483
|
||||
s32i a5, a2, 28 /* a5 -> [arg0+0x1c] */ # 45: 5972
|
||||
ret /* arg0 */ # 47: 0df0
|
||||
|
||||
.literal_position # 4c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x50
|
||||
.global sdk_ieee80211_iserp_rateset
|
||||
.type sdk_ieee80211_iserp_rateset, @function
|
||||
sdk_ieee80211_iserp_rateset:
|
||||
l8ui a8, a2, 0 /* [arg0] */ # 50: 820200
|
||||
bltui a8, 7, .Lbr003 # 53: b6781e
|
||||
movi a9, .Ldata001 # 56: 91fdff
|
||||
movi a10, 0 /* 0x00000000 */ # 59: 0c0a
|
||||
.Lbr001: blti a8, 1, .Lbr003 # 5b: a61816
|
||||
movi a5, 0 /* 0x00000000 */ # 5e: 0c05
|
||||
l32i a6, a9, 0 # 60: 6809
|
||||
.Lbr002: add a7, a5, a2 # 62: 2a75
|
||||
l8ui a7, a7, 1 # 64: 720701
|
||||
extui a7, a7, 0, 7 # 67: 707064
|
||||
beq a6, a7, .Lbr004 # 6a: 77160b
|
||||
blt a6, a7, .Lbr003 # 6d: 772604
|
||||
addi a5, a5, 1 # 70: 1b55
|
||||
bne a5, a8, .Lbr002 # 72: 8795ec
|
||||
.Lbr003: movi a2, 0 /* 0x00000000 */ # 75: 0c02
|
||||
ret /* 0x00000000 */ # 77: 0df0
|
||||
.Lbr004: addi a9, a9, 4 # 79: 4b99
|
||||
addi a10, a10, 1 # 7b: 1baa
|
||||
bnei a10, 7, .Lbr001 # 7d: 667ada
|
||||
movi a2, 1 /* 0x00000001 */ # 80: 0c12
|
||||
ret /* 0x00000001 */ # 82: 0df0
|
||||
|
||||
.literal_position # 84: 20000000
|
||||
|
||||
# Function @ .irom0.text+0x88
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc001: addi sp, sp, -16 /* (local0) */ # 88: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 8b: 0901
|
||||
l8ui a0, a2, 0 /* [arg0] */ # 8d: 020200
|
||||
beqz a0, .Lbr009 # 90: bcf0
|
||||
movi a9, 0 /* 0x00000000 */ # 92: 0c09
|
||||
movi a11, 128 /* 0x00000080 */ # 94: b2a080
|
||||
movi a8, .Ldata002 # 97: 81fbff
|
||||
slli a10, a3, 4 # 9a: c0a311
|
||||
add a8, a8, a10 # 9d: aa88
|
||||
l8ui a7, a8, 0 # 9f: 720800
|
||||
.Lbr005: bnez a4, .Lbr006 # a2: cc94
|
||||
add a3, a2, a9 # a4: 9a32
|
||||
l8ui a0, a3, 1 # a6: 020301
|
||||
extui a0, a0, 0, 7 # a9: 000064
|
||||
s8i a0, a3, 1 # ac: 024301
|
||||
.Lbr006: beqz a7, .Lbr008 # af: 9c57
|
||||
movi a0, 0 /* 0x00000000 */ # b1: 0c00
|
||||
add a10, a2, a9 # b3: 9aa2
|
||||
l8ui a3, a10, 1 # b5: 320a01
|
||||
.Lbr007: add a5, a8, a0 # b8: 0a58
|
||||
l8ui a5, a5, 1 # ba: 520501
|
||||
addi a0, a0, 1 # bd: 1b00
|
||||
bne a5, a3, .Lbr010 # bf: 379517
|
||||
or a6, a3, a11 # c2: b06320
|
||||
s8i a6, a10, 1 # c5: 624a01
|
||||
.Lbr008: l8ui a10, a2, 0 /* [arg0] */ # c8: a20200
|
||||
addi a9, a9, 1 # cb: 1b99
|
||||
extui a9, a9, 0, 8 # cd: 909074
|
||||
bltu a9, a10, .Lbr005 # d0: a739ce
|
||||
.Lbr009: l32i a0, sp, 0 /* [(local0)] */ # d3: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # d5: 12c110
|
||||
ret /* arg0 */ # d8: 0df0
|
||||
.Lbr010: extui a0, a0, 0, 8 # da: 000074
|
||||
bne a7, a0, .Lbr007 # dd: 0797d7
|
||||
j .Lbr008 # e0: 06f9ff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0xe4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_setbasicrates
|
||||
.type sdk_ieee80211_setbasicrates, @function
|
||||
sdk_ieee80211_setbasicrates:
|
||||
movi a4, 0 /* 0x00000000 */ # e4: 0c04
|
||||
addi sp, sp, -16 /* (local0) */ # e6: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # e9: 0901
|
||||
call0 .Lfunc001 # eb: c5f9ff
|
||||
l32i a0, sp, 0 /* [(local0)] */ # ee: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # f0: 12c110
|
||||
ret # f3: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0xf8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ieee80211_addbasicrates
|
||||
.type sdk_ieee80211_addbasicrates, @function
|
||||
sdk_ieee80211_addbasicrates:
|
||||
movi a4, 1 /* 0x00000001 */ # f8: 0c14
|
||||
addi sp, sp, -16 /* (local0) */ # fa: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # fd: 0901
|
||||
call0 .Lfunc001 # ff: 85f8ff
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 102: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 104: 12c110
|
||||
ret # 107: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x10c
|
||||
.global sdk_ieee80211_wme_initparams
|
||||
.type sdk_ieee80211_wme_initparams, @function
|
||||
sdk_ieee80211_wme_initparams:
|
||||
ret /* arg0 */ # 10c: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x110
|
||||
.global sdk_ieee80211_wme_updateparams
|
||||
.type sdk_ieee80211_wme_updateparams, @function
|
||||
sdk_ieee80211_wme_updateparams:
|
||||
ret /* arg0 */ # 110: 0df0
|
||||
|
||||
.literal_position # 114: 00000000
|
||||
# 118: 00000000
|
||||
# 11c: 00000000
|
||||
# 120: 00000000
|
||||
# 124: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x128
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_ieee80211_mlme_connect_bss
|
||||
.type sdk_ieee80211_mlme_connect_bss, @function
|
||||
sdk_ieee80211_mlme_connect_bss:
|
||||
mov a3, a2 /* arg0 */ # 128: 3d02
|
||||
addi sp, sp, -16 /* (local0) */ # 12a: 12c1f0
|
||||
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 12d: 5911
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 12f: 0921
|
||||
movi a2, sdk_g_ic # 131: 21f8ff
|
||||
s32i a4, sp, 0 /* arg2 -> [(local0)] */ # 134: 4901
|
||||
l32i a2, a2, 16 /* [sdk_g_ic+0x10] */ # 136: 2842
|
||||
movi a4, 6 /* 0x00000006 */ # 138: 0c64
|
||||
s32i a3, a2, 136 /* arg0 -> [[sdk_g_ic+0x10]+0x88] */ # 13a: 326222
|
||||
addi a2, a2, 64 /* [sdk_g_ic+0x10]+0x40 */ # 13d: 22c240
|
||||
call0 memcpy # 140: 01f7ffc0
|
||||
# 144: 0000
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 146: 3811
|
||||
movi a0, sdk_g_ic # 148: 01f4ff
|
||||
beqz a3, .Lbr011 # 14b: 8ce3
|
||||
movi a3, 2 /* 0x00000002 */ # 14d: 0c23
|
||||
movi a4, 176 /* 0x000000b0 */ # 14f: 42a0b0
|
||||
mov a2, a0 /* sdk_g_ic */ # 152: 2d00
|
||||
call0 sdk_ieee80211_sta_new_state # 154: 01f3ffc0
|
||||
# 158: 0000
|
||||
j .Lbr012 # 15a: 860400
|
||||
.Lbr011: movi a3, 3 /* 0x00000003 */ # 15d: 0c33
|
||||
mov a2, a0 /* sdk_g_ic */ # 15f: 2d00
|
||||
l32i a6, sp, 0 /* [(local0)] */ # 161: 6801
|
||||
movi a5, 32 /* 0x00000020 */ # 163: 2c05
|
||||
movi a4, 0 /* 0x00000000 */ # 165: 0c04
|
||||
movnez a4, a5, a6 # 167: 604593
|
||||
call0 sdk_ieee80211_sta_new_state # 16a: 01eeffc0
|
||||
# 16e: 0000
|
||||
.Lbr012: l32i a0, sp, 8 /* [(local2)] */ # 170: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 172: 12c110
|
||||
ret # 175: 0df0
|
||||
|
||||
.section .rodata, "a", @progbits
|
||||
|
||||
.Ldata001: .byte 0x02, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00
|
||||
.byte 0x0b, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x00
|
||||
.byte 0x0c, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00
|
||||
.byte 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.Ldata002: .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x02, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x04, 0x02, 0x04, 0x0b, 0x16, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
|
1762
binary_sdk/libnet80211/ieee80211_scan.S
Normal file
1762
binary_sdk/libnet80211/ieee80211_scan.S
Normal file
File diff suppressed because it is too large
Load diff
1326
binary_sdk/libnet80211/ieee80211_sta.S
Normal file
1326
binary_sdk/libnet80211/ieee80211_sta.S
Normal file
File diff suppressed because it is too large
Load diff
0
binary_sdk/libnet80211/if_eagle.S
Normal file
0
binary_sdk/libnet80211/if_eagle.S
Normal file
486
binary_sdk/libnet80211/wl_chm.S
Normal file
486
binary_sdk/libnet80211/wl_chm.S
Normal file
|
@ -0,0 +1,486 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .text+0x4
|
||||
.global sdk_chm_get_current_channel
|
||||
.type sdk_chm_get_current_channel, @function
|
||||
sdk_chm_get_current_channel:
|
||||
movi a2, .Ldata001 # 4: 21ffff
|
||||
l32i a2, a2, 60 /* [.Ldata009] */ # 7: 28f2
|
||||
ret /* [.Ldata009] */ # 9: 0df0
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .word 0x00000000 # 0: 00000000
|
||||
.Ldata002: .word 0x00000000 # 4: 00000000
|
||||
.Ldata003: .word 0x00000000 # 8: 00000000
|
||||
.Ldata004: .word 0x00000000 # c: 00000000
|
||||
.Ldata005: .word 0x00000000 # 10: 00000000
|
||||
.Ldata006: .word 0x00000000 # 14: 00000000
|
||||
.Ldata007: .word 0x00000000 # 18: 00000000
|
||||
.Ldata008: .word 0x00000000 # 1c: 00000000
|
||||
.Label001: .space 28
|
||||
.Ldata009: .word 0x00000000 # 3c: 00000000
|
||||
.Ldata010: .byte 0x00
|
||||
.Ldata011: .byte 0x00
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00feef3f
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 20000000
|
||||
# 18: 48020000
|
||||
# 1c: 00000000
|
||||
# 20: 00000000
|
||||
# 24: 00000000
|
||||
# 28: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_chm_init
|
||||
.type sdk_chm_init, @function
|
||||
sdk_chm_init:
|
||||
movi a4, -32 /* 0xffffffe0 */ # 2c: 6c04
|
||||
movi a5, sdk_NMIIrqIsOn # 2e: 51f7ff
|
||||
movi a3, sdk_g_ic+0x180 # 31: 31f4ff
|
||||
movi a6, .Ldata001 # 34: 61f5ff
|
||||
addi sp, sp, -32 /* (local0) */ # 37: 12c1e0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 3a: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 3c: d921
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 3e: 0901
|
||||
movi a13, 0x3feffe00 # 40: d1f0ff
|
||||
movi a0, 0 /* 0x00000000 */ # 43: 0c00
|
||||
s32i a2, a6, 0 /* arg0 -> [.Ldata001] */ # 45: 2906
|
||||
mov a12, a2 /* arg0 */ # 47: cd02
|
||||
l8ui a6, a3, 96 /* [sdk_g_ic+0x1e0] */ # 49: 620360
|
||||
l8ui a2, a5, 0 /* [sdk_NMIIrqIsOn] */ # 4c: 220500
|
||||
addmi a3, a3, 256 /* sdk_g_ic+0x280 */ # 4f: 32d301
|
||||
l8ui a3, a3, 141 /* [sdk_g_ic+0x30d] */ # 52: 32038d
|
||||
addi a6, a6, -1 /* [sdk_g_ic+0x1e0]-0x1 */ # 55: 0b66
|
||||
addi a3, a3, -1 /* [sdk_g_ic+0x30d]-0x1 */ # 57: 0b33
|
||||
extui a3, a3, 0, 8 # 59: 303074
|
||||
movnez a0, a3, a6 # 5c: 600393
|
||||
s32i a0, sp, 16 /* a0 -> [(local4)] */ # 5f: 0941
|
||||
bnez a2, .Lbr002 # 61: ec32
|
||||
call0 vPortEnterCritical # 63: 01eeffc0
|
||||
# 67: 0000
|
||||
movi a4, -32 /* 0xffffffe0 */ # 69: 6c04
|
||||
.Lbr001: memw # 6b: c02000
|
||||
l32i a9, a13, 0x200 /* [0x3ff00000] */ # 6e: 922d80
|
||||
and a9, a9, a4 # 71: 409910
|
||||
memw # 74: c02000
|
||||
s32i a9, a13, 0x200 /* a9 -> [0x3ff00000] */ # 77: 926d80
|
||||
memw # 7a: c02000
|
||||
l32i a8, a13, 0x200 /* [0x3ff00000] */ # 7d: 822d80
|
||||
bbsi a8, 0, .Lbr001 # 80: 07e8e7
|
||||
l32i a0, sp, 16 /* [(local4)] */ # 83: 0841
|
||||
movi a5, sdk_NMIIrqIsOn # 85: 51e2ff
|
||||
.Lbr002: movi a2, 132 /* 0x00000084 */ # 88: 22a084
|
||||
addx2 a0, a0, a0 # 8b: 000090
|
||||
addx4 a0, a0, a12 # 8e: c000a0
|
||||
add a0, a0, a2 # 91: 2a00
|
||||
s32i a0, a12, 0x14c /* a0 -> [arg0+0x14c] */ # 93: 026c53
|
||||
l8ui a10, a5, 0 /* [sdk_NMIIrqIsOn] */ # 96: a20500
|
||||
s32i a0, sp, 12 /* a0 -> [(local3)] */ # 99: 0931
|
||||
bnez a10, .Lbr003 # 9b: dcaa
|
||||
memw # 9d: c02000
|
||||
l32i a2, a13, 0x200 /* [0x3ff00000] */ # a0: 222d80
|
||||
movi a3, 1 /* 0x00000001 */ # a3: 0c13
|
||||
and a2, a2, a4 # a5: 402210
|
||||
or a2, a2, a3 # a8: 302220
|
||||
memw # ab: c02000
|
||||
s32i a2, a13, 0x200 /* a2 -> [0x3ff00000] */ # ae: 226d80
|
||||
call0 vPortExitCritical # b1: 01dbffc0
|
||||
# b5: 0000
|
||||
l32i a0, sp, 12 /* [(local3)] */ # b7: 0831
|
||||
.Lbr003: mov a2, a0 # b9: 2d00
|
||||
call0 sdk_chm_set_current_channel # bb: 01daffc0
|
||||
# bf: 0000
|
||||
movi a2, .Label001 # c1: 21d4ff
|
||||
movi a3, .Lfunc002 # c4: 31d5ff
|
||||
movi a4, 0 /* 0x00000000 */ # c7: 0c04
|
||||
call0 sdk_os_timer_setfn # c9: 01d7ffc0
|
||||
# cd: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # cf: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # d1: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # d3: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # d5: 12c120
|
||||
ret # d8: 0df0
|
||||
|
||||
.literal_position # dc: 00000000
|
||||
# e0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xe4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_chm_acquire_lock
|
||||
.type sdk_chm_acquire_lock, @function
|
||||
sdk_chm_acquire_lock:
|
||||
addi sp, sp, -16 /* (local0) */ # e4: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # e7: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # e9: 0901
|
||||
mov a12, a2 /* arg0 */ # eb: cd02
|
||||
movi a0, .Ldata001 # ed: 01fbff
|
||||
mov a2, a4 /* arg2 */ # f0: 2d04
|
||||
l8ui a4, a0, 64 /* [.Ldata010] */ # f2: 420040
|
||||
l8ui a5, a0, 65 /* [.Ldata011] */ # f5: 520041
|
||||
beqz a4, .Lbr005 # f8: 9c44
|
||||
s32i a2, sp, 12 /* arg2 -> [(local3)] */ # fa: 2931
|
||||
s32i a3, sp, 8 /* arg1 -> [(local2)] */ # fc: 3921
|
||||
bgeu a5, a12, .Lbr004 # fe: c7b504
|
||||
movi a2, 3 /* 0x00000003 */ # 101: 0c32
|
||||
j .Lbr006 # 103: c60500
|
||||
.Lbr004: call0 sdk_chm_cancel_op # 106: 050000
|
||||
l32i a2, sp, 12 /* [(local3)] */ # 109: 2831
|
||||
movi a0, .Ldata001 # 10b: 01f5ff
|
||||
l32i a3, sp, 8 /* [(local2)] */ # 10e: 3821
|
||||
.Lbr005: s8i a12, a0, 65 /* arg0 -> [.Ldata011] */ # 110: c24041
|
||||
s32i a3, a0, 24 /* a3 -> [.Ldata007] */ # 113: 3960
|
||||
s32i a2, a0, 28 /* a2 -> [.Ldata008] */ # 115: 2970
|
||||
movi a6, 1 /* 0x00000001 */ # 117: 0c16
|
||||
movi a2, 0 /* 0x00000000 */ # 119: 0c02
|
||||
s8i a6, a0, 64 /* 0x01 -> [.Ldata010] */ # 11b: 624040
|
||||
.Lbr006: l32i a12, sp, 4 /* [(local1)] */ # 11e: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 120: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 122: 12c110
|
||||
ret # 125: 0df0
|
||||
|
||||
.literal_position # 128: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x12c
|
||||
.global sdk_chm_release_lock
|
||||
.type sdk_chm_release_lock, @function
|
||||
sdk_chm_release_lock:
|
||||
movi a3, .Ldata001 # 12c: 31ffff
|
||||
movi a2, 0 /* 0x00000000 */ # 12f: 0c02
|
||||
s32i a2, a3, 28 /* 0x00000000 -> [.Ldata008] */ # 131: 2973
|
||||
s32i a2, a3, 24 /* 0x00000000 -> [.Ldata007] */ # 133: 2963
|
||||
s8i a2, a3, 64 /* 0x00 -> [.Ldata010] */ # 135: 224340
|
||||
s8i a2, a3, 65 /* 0x00 -> [.Ldata011] */ # 138: 224341
|
||||
ret /* 0x00000000 */ # 13b: 0df0
|
||||
|
||||
.literal_position # 140: 00000000
|
||||
# 144: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x148
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_chm_start_op
|
||||
.type sdk_chm_start_op, @function
|
||||
sdk_chm_start_op:
|
||||
addi sp, sp, -16 /* (local0) */ # 148: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 14b: 0901
|
||||
movi a0, .Ldata001 # 14d: 01fcff
|
||||
l32i a7, a0, 4 /* [.Ldata002] */ # 150: 7810
|
||||
beqz a7, .Lbr010 # 152: 8cf7
|
||||
movi a2, 3 /* 0x00000003 */ # 154: 0c32
|
||||
j .Lbr009 # 156: 060100
|
||||
.Lbr007: call0 .Lfunc001 # 159: 450400
|
||||
.Lbr008: movi a2, 0 /* 0x00000000 */ # 15c: 0c02
|
||||
.Lbr009: l32i a0, sp, 0 /* [(local0)] */ # 15e: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 160: 12c110
|
||||
ret # 163: 0df0
|
||||
.Lbr010: s32i a2, a0, 4 /* arg0 -> [.Ldata002] */ # 165: 2910
|
||||
s32i a4, a0, 16 /* arg2 -> [.Ldata005] */ # 167: 4940
|
||||
movi a8, sdk_g_ic # 169: 81f6ff
|
||||
s32i a5, a0, 20 /* arg3 -> [.Ldata006] */ # 16c: 5950
|
||||
l32i a8, a8, 0 /* [sdk_g_ic] */ # 16e: 8808
|
||||
s32i a3, a0, 8 /* arg1 -> [.Ldata003] */ # 170: 3920
|
||||
l32i a8, a8, 0 /* [[sdk_g_ic]] */ # 172: 8808
|
||||
s32i a6, a0, 12 /* arg4 -> [.Ldata004] */ # 174: 6930
|
||||
bbci a8, 1, .Lbr007 # 176: 1768df
|
||||
call0 .Lfunc001 # 179: 450200
|
||||
j .Lbr008 # 17c: 06f7ff
|
||||
|
||||
.literal_position # 180: 00000000
|
||||
# 184: 04000000
|
||||
# 188: 20000000
|
||||
# 18c: 00000000
|
||||
# 190: 00000000
|
||||
# 194: 00000000
|
||||
# 198: 00000000
|
||||
# 19c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1a0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.Lfunc001: addi sp, sp, -16 /* (local0) */ # 1a0: 12c1f0
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 1a3: d931
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 1a5: c921
|
||||
movi a13, .Ldata001 # 1a7: d1f6ff
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 1aa: 0911
|
||||
l32i a12, a13, 16 /* [.Ldata005] */ # 1ac: c84d
|
||||
l32i a0, a13, 12 /* [.Ldata004] */ # 1ae: 083d
|
||||
s32i a0, sp, 0 /* [.Ldata004] -> [(local0)] */ # 1b0: 0901
|
||||
call0 sdk_chm_get_current_channel # 1b2: 01f6ffc0
|
||||
# 1b6: 0000
|
||||
mov a3, a2 # 1b8: 3d02
|
||||
l32i a2, a13, 4 /* [.Ldata002] */ # 1ba: 281d
|
||||
l16ui a3, a3, 4 # 1bc: 321302
|
||||
l16ui a4, a2, 4 /* [[.Ldata002]+0x4] */ # 1bf: 421202
|
||||
beq a3, a4, .Lbr011 # 1c2: 471305
|
||||
call0 sdk_chm_set_current_channel # 1c5: 01f2ffc0
|
||||
# 1c9: 0000
|
||||
.Lbr011: beqz a12, .Lbr012 # 1cb: 8c5c
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 1cd: 2801
|
||||
movi a3, 0 /* 0x00000000 */ # 1cf: 0c03
|
||||
callx0 a12 /* [.Ldata005] */ # 1d1: c00c00
|
||||
.Lbr012: l32i a4, a13, 8 /* [.Ldata003] */ # 1d4: 482d
|
||||
bnez a4, .Lbr013 # 1d6: ccc4
|
||||
movi a2, .Ldata002 # 1d8: 21ebff
|
||||
movi a3, 20 /* 0x00000014 */ # 1db: 1c43
|
||||
call0 bzero # 1dd: 01edffc0
|
||||
# 1e1: 0000
|
||||
j .Lbr014 # 1e3: 860500
|
||||
.Lbr013: movi a12, .Label001 # 1e6: c1e8ff
|
||||
mov a2, a12 /* .Label001 */ # 1e9: 2d0c
|
||||
call0 sdk_os_timer_disarm # 1eb: 01ebffc0
|
||||
# 1ef: 0000
|
||||
mov a2, a12 /* .Label001 */ # 1f1: 2d0c
|
||||
l32i a3, a13, 8 /* [.Ldata003] */ # 1f3: 382d
|
||||
movi a4, 0 /* 0x00000000 */ # 1f5: 0c04
|
||||
call0 sdk_os_timer_arm # 1f7: 01e9ffc0
|
||||
# 1fb: 0000
|
||||
.Lbr014: l32i a12, sp, 8 /* [(local2)] */ # 1fd: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 1ff: d831
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 201: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 203: 12c110
|
||||
ret # 206: 0df0
|
||||
|
||||
.literal_position # 208: 00000000
|
||||
# 20c: 00000000
|
||||
# 210: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x214
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_chm_end_op
|
||||
.type sdk_chm_end_op, @function
|
||||
sdk_chm_end_op:
|
||||
movi a3, -4 /* 0xfffffffc */ # 214: 7cc3
|
||||
addi sp, sp, -16 /* (local0) */ # 216: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 219: 0911
|
||||
movi a0, .Ldata001 # 21b: 01fbff
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 21e: 2901
|
||||
beq a0, a3, .Lbr015 # 220: 37101d
|
||||
mov a2, a0 /* .Ldata001 */ # 223: 2d00
|
||||
l32i a3, a2, 20 /* [.Ldata006] */ # 225: 3852
|
||||
s32i a3, sp, 8 /* [.Ldata006] -> [(local2)] */ # 227: 3921
|
||||
addi a2, a2, 4 /* .Ldata002 */ # 229: 4b22
|
||||
movi a3, 20 /* 0x00000014 */ # 22b: 1c43
|
||||
call0 bzero # 22d: 01f8ffc0
|
||||
# 231: 0000
|
||||
l32i a5, sp, 8 /* [(local2)] */ # 233: 5821
|
||||
beqz a5, .Lbr015 # 235: 8c85
|
||||
movi a2, .Ldata001 # 237: 21f5ff
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 23a: 3801
|
||||
l32i a2, a2, 12 /* [.Ldata004] */ # 23c: 2832
|
||||
callx0 a5 /* [(local2)] */ # 23e: c00500
|
||||
.Lbr015: l32i a0, sp, 4 /* [(local1)] */ # 241: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 243: 12c110
|
||||
ret # 246: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x248
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc002: movi a2, 0 /* 0x00000000 */ # 248: 0c02
|
||||
addi sp, sp, -16 /* (local0) */ # 24a: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 24d: 0901
|
||||
call0 sdk_chm_end_op # 24f: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 252: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 254: 12c110
|
||||
ret # 257: 0df0
|
||||
|
||||
.literal_position # 25c: 00000000
|
||||
# 260: 00000000
|
||||
# 264: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x268
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_chm_cancel_op
|
||||
.type sdk_chm_cancel_op, @function
|
||||
sdk_chm_cancel_op:
|
||||
addi sp, sp, -16 /* (local0) */ # 268: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 26b: 0901
|
||||
movi a0, .Ldata001 # 26d: 01fbff
|
||||
l32i a2, a0, 4 /* [.Ldata002] */ # 270: 2810
|
||||
beqz a2, .Lbr016 # 272: 9c12
|
||||
mov a2, a0 /* .Ldata001 */ # 274: 2d00
|
||||
addi a2, a2, 32 /* .Label001 */ # 276: 22c220
|
||||
call0 sdk_os_timer_disarm # 279: 01faffc0
|
||||
# 27d: 0000
|
||||
movi a2, 4 /* 0x00000004 */ # 27f: 0c42
|
||||
call0 sdk_chm_end_op # 281: 050000
|
||||
movi a0, .Ldata001 # 284: 01f7ff
|
||||
.Lbr016: l32i a5, a0, 24 /* [.Ldata007] */ # 287: 5860
|
||||
beqz a5, .Lbr017 # 289: 8c55
|
||||
movi a3, 4 /* 0x00000004 */ # 28b: 0c43
|
||||
l32i a2, a0, 28 /* [.Ldata008] */ # 28d: 2870
|
||||
callx0 a5 /* [.Ldata007] */ # 28f: c00500
|
||||
.Lbr017: l32i a0, sp, 0 /* [(local0)] */ # 292: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 294: 12c110
|
||||
ret # 297: 0df0
|
||||
|
||||
.literal_position # 29c: 00000000
|
||||
# 2a0: 00000000
|
||||
# 2a4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2a8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_chm_return_home_channel
|
||||
.type sdk_chm_return_home_channel, @function
|
||||
sdk_chm_return_home_channel:
|
||||
addi sp, sp, -16 /* (local0) */ # 2a8: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 2ab: c911
|
||||
movi a12, sdk_g_ic # 2ad: c1fbff
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2b0: 0901
|
||||
l32i a12, a12, 0x14c /* [sdk_g_ic+0x14c] */ # 2b2: c22c53
|
||||
call0 sdk_chm_get_current_channel # 2b5: 01faffc0
|
||||
# 2b9: 0000
|
||||
l16ui a0, a2, 4 # 2bb: 021202
|
||||
l16ui a2, a12, 4 /* [[sdk_g_ic+0x14c]+0x4] */ # 2be: 221c02
|
||||
beq a0, a2, .Lbr018 # 2c1: 271007
|
||||
mov a2, a12 /* [sdk_g_ic+0x14c] */ # 2c4: 2d0c
|
||||
call0 sdk_chm_set_current_channel # 2c6: 01f7ffc0
|
||||
# 2ca: 0000
|
||||
.Lbr018: l32i a12, sp, 4 /* [(local1)] */ # 2cc: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 2ce: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2d0: 12c110
|
||||
ret # 2d3: 0df0
|
||||
|
||||
.literal_position # 2d8: 00000000
|
||||
# 2dc: 00feef3f
|
||||
# 2e0: 00000000
|
||||
# 2e4: 00000000
|
||||
# 2e8: 00000000
|
||||
# 2ec: 00000000
|
||||
# 2f0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2f4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_chm_set_current_channel
|
||||
.type sdk_chm_set_current_channel, @function
|
||||
sdk_chm_set_current_channel:
|
||||
movi a3, 1 /* 0x00000001 */ # 2f4: 0c13
|
||||
movi a4, 0 /* 0x00000000 */ # 2f6: 0c04
|
||||
addi sp, sp, -16 /* (local0) */ # 2f8: 12c1f0
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 2fb: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 2fd: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2ff: 0901
|
||||
mov a12, a2 /* arg0 */ # 301: cd02
|
||||
l16ui a2, a2, 4 /* [arg0+0x4] */ # 303: 221202
|
||||
call0 sdk_phy_change_channel # 306: 01f8ffc0
|
||||
# 30a: 0000
|
||||
movi a2, sdk_NMIIrqIsOn # 30c: 21f3ff
|
||||
movi a0, -32 /* 0xffffffe0 */ # 30f: 6c00
|
||||
l8ui a2, a2, 0 /* [sdk_NMIIrqIsOn] */ # 311: 220200
|
||||
movi a13, 0x3feffe00 # 314: d1f2ff
|
||||
bnez a2, .Lbr020 # 317: ec42
|
||||
call0 vPortEnterCritical # 319: 01f4ffc0
|
||||
# 31d: 0000
|
||||
movi a0, -32 /* 0xffffffe0 */ # 31f: 6c00
|
||||
.Lbr019: memw # 321: c02000
|
||||
l32i a5, a13, 0x200 /* [0x3ff00000] */ # 324: 522d80
|
||||
and a5, a5, a0 # 327: 005510
|
||||
memw # 32a: c02000
|
||||
s32i a5, a13, 0x200 /* a5 -> [0x3ff00000] */ # 32d: 526d80
|
||||
memw # 330: c02000
|
||||
l32i a4, a13, 0x200 /* [0x3ff00000] */ # 333: 422d80
|
||||
bbsi a4, 0, .Lbr019 # 336: 07e4e7
|
||||
movi a2, sdk_NMIIrqIsOn # 339: 21e9ff
|
||||
l8ui a2, a2, 0 /* [sdk_NMIIrqIsOn] */ # 33c: 220200
|
||||
.Lbr020: movi a3, .Ldata001 # 33f: 31e9ff
|
||||
s32i a12, a3, 60 /* arg0 -> [.Ldata009] */ # 342: c9f3
|
||||
bnez a2, .Lbr021 # 344: dc82
|
||||
memw # 346: c02000
|
||||
l32i a4, a13, 0x200 /* [0x3ff00000] */ # 349: 422d80
|
||||
movi a5, 1 /* 0x00000001 */ # 34c: 0c15
|
||||
and a4, a4, a0 # 34e: 004410
|
||||
or a4, a4, a5 # 351: 504420
|
||||
memw # 354: c02000
|
||||
s32i a4, a13, 0x200 /* a4 -> [0x3ff00000] */ # 357: 426d80
|
||||
call0 vPortExitCritical # 35a: 01e5ffc0
|
||||
# 35e: 0000
|
||||
.Lbr021: l32i a12, sp, 4 /* [(local1)] */ # 360: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 362: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 364: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 366: 12c110
|
||||
ret # 369: 0df0
|
||||
|
||||
.literal_position # 36c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x370
|
||||
.global sdk_chm_freq2index
|
||||
.type sdk_chm_freq2index, @function
|
||||
sdk_chm_freq2index:
|
||||
movi a5, 0 /* 0x00000000 */ # 370: 0c05
|
||||
movi a6, .Ldata001 # 372: 61feff
|
||||
movi a7, 14 /* 0x0000000e */ # 375: 0ce7
|
||||
l32i a6, a6, 0 /* [.Ldata001] */ # 377: 6806
|
||||
.Lbr022: addx2 a8, a5, a5 # 379: 508590
|
||||
addx4 a8, a8, a6 # 37c: 6088a0
|
||||
l16ui a8, a8, 136 # 37f: 821844
|
||||
bne a8, a2, .Lbr023 # 382: 279803
|
||||
mov a2, a5 # 385: 2d05
|
||||
ret # 387: 0df0
|
||||
.Lbr023: addi a5, a5, 1 # 389: 1b55
|
||||
extui a5, a5, 0, 8 # 38b: 505074
|
||||
bne a5, a7, .Lbr022 # 38e: 7795e7
|
||||
movi a2, 255 /* 0x000000ff */ # 391: 22a0ff
|
||||
ret /* 0x000000ff */ # 394: 0df0
|
||||
|
||||
.literal_position # 398: 00000000
|
||||
# 39c: 00000000
|
||||
# 3a0: 00000000
|
||||
# 3a4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x3a8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_chm_check_same_channel
|
||||
.type sdk_chm_check_same_channel, @function
|
||||
sdk_chm_check_same_channel:
|
||||
movi a2, sdk_g_ic # 3a8: 21fcff
|
||||
addi sp, sp, -16 /* (local0) */ # 3ab: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 3ae: 0911
|
||||
l32i a2, a2, 0x14c /* [sdk_g_ic+0x14c] */ # 3b0: 222253
|
||||
call0 sdk_ieee80211_chan2ieee # 3b3: 01faffc0
|
||||
# 3b7: 0000
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 3b9: 2901
|
||||
call0 sdk_chm_get_current_channel # 3bb: 01f9ffc0
|
||||
# 3bf: 0000
|
||||
call0 sdk_ieee80211_chan2ieee # 3c1: 01f8ffc0
|
||||
# 3c5: 0000
|
||||
movi a3, 0 /* 0x00000000 */ # 3c7: 0c03
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 3c9: 4801
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 3cb: 0811
|
||||
sub a4, a4, a2 # 3cd: 2044c0
|
||||
addi sp, sp, 16 /* (top of frame) */ # 3d0: 12c110
|
||||
movi a2, 1 /* 0x00000001 */ # 3d3: 0c12
|
||||
movnez a2, a3, a4 # 3d5: 402393
|
||||
ret # 3d8: 0df0
|
2538
binary_sdk/libnet80211/wl_cnx.S
Normal file
2538
binary_sdk/libnet80211/wl_cnx.S
Normal file
File diff suppressed because it is too large
Load diff
0
binary_sdk/libphy/ate_test.S
Normal file
0
binary_sdk/libphy/ate_test.S
Normal file
239
binary_sdk/libphy/phy.S
Normal file
239
binary_sdk/libphy/phy.S
Normal file
|
@ -0,0 +1,239 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_register_phy_ops
|
||||
.type sdk_register_phy_ops, @function
|
||||
sdk_register_phy_ops:
|
||||
movi a3, 0 /* 0x00000000 */ # 8: 0c03
|
||||
addi sp, sp, -16 /* (local0) */ # a: 12c1f0
|
||||
mov a5, a2 /* arg0 */ # d: 5d02
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # f: 0901
|
||||
movi a0, .Ldata001 # 11: 01fbff
|
||||
movi a2, 1 /* 0x00000001 */ # 14: 0c12
|
||||
s32i a5, a0, 0 /* arg0 -> [.Ldata001] */ # 16: 5900
|
||||
call0 sdk_phy_init # 18: 01fbffc0
|
||||
# 1c: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1e: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 20: 12c110
|
||||
ret # 23: 0df0
|
||||
|
||||
.literal_position # 28: 00000000
|
||||
|
||||
# Function @ .text+0x2c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_change_channel
|
||||
.type sdk_phy_change_channel, @function
|
||||
sdk_phy_change_channel:
|
||||
addi sp, sp, -16 /* (local0) */ # 2c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2f: 0901
|
||||
movi a0, .Ldata001 # 31: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 34: 0800
|
||||
l32i a0, a0, 4 /* [[.Ldata001]+0x4] */ # 36: 0810
|
||||
callx0 a0 /* [[.Ldata001]+0x4] */ # 38: c00000
|
||||
movi a2, 0 /* 0x00000000 */ # 3b: 0c02
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 3d: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 3f: 12c110
|
||||
ret /* 0x00000000 */ # 42: 0df0
|
||||
|
||||
.literal_position # 44: 000af23f
|
||||
|
||||
# Function @ .text+0x48
|
||||
.global sdk_phy_get_mactime
|
||||
.type sdk_phy_get_mactime, @function
|
||||
sdk_phy_get_mactime:
|
||||
movi a2, 0x3ff20a00 # 48: 21ffff
|
||||
memw # 4b: c02000
|
||||
l32i a2, a2, 0x200 /* [0x3ff20c00] */ # 4e: 222280
|
||||
ret /* [0x3ff20c00] */ # 51: 0df0
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .word 0x00000000 # 0: 00000000
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_rf_init
|
||||
.type sdk_rf_init, @function
|
||||
sdk_rf_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 7: 0901
|
||||
movi a0, .Ldata001 # 9: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # c: 0800
|
||||
slli a4, a2, 24 # e: 804201
|
||||
l32i a0, a0, 0 /* [[.Ldata001]] */ # 11: 0800
|
||||
srai a2, a4, 24 # 13: 402831
|
||||
callx0 a0 /* [[.Ldata001]] */ # 16: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 19: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1b: 12c110
|
||||
ret # 1e: 0df0
|
||||
|
||||
.literal_position # 20: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x24
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_bb_init
|
||||
.type sdk_bb_init, @function
|
||||
sdk_bb_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 24: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 27: 0901
|
||||
movi a0, .Ldata001 # 29: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 2c: 0800
|
||||
l32i a0, a0, 24 /* [[.Ldata001]+0x18] */ # 2e: 0860
|
||||
callx0 a0 /* [[.Ldata001]+0x18] */ # 30: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 33: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 35: 12c110
|
||||
ret # 38: 0df0
|
||||
|
||||
.literal_position # 3c: 00000000
|
||||
# 40: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x44
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_phy_init
|
||||
.type sdk_phy_init, @function
|
||||
sdk_phy_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 44: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 47: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 49: 0901
|
||||
mov a12, a3 /* arg1 */ # 4b: cd03
|
||||
movi a0, .Ldata001 # 4d: 01fbff
|
||||
slli a3, a2, 24 # 50: 803201
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 53: 0800
|
||||
srai a2, a3, 24 # 55: 302831
|
||||
l32i a0, a0, 0 /* [[.Ldata001]] */ # 58: 0800
|
||||
mov a3, a12 /* arg1 */ # 5a: 3d0c
|
||||
callx0 a0 /* [[.Ldata001]] */ # 5c: c00000
|
||||
movi a0, .Ldata001 # 5f: 01f8ff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 62: 0800
|
||||
l32i a0, a0, 24 /* [[.Ldata001]+0x18] */ # 64: 0860
|
||||
mov a2, a12 /* arg1 */ # 66: 2d0c
|
||||
callx0 a0 /* [[.Ldata001]+0x18] */ # 68: c00000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 6b: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 6d: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 6f: 12c110
|
||||
ret # 72: 0df0
|
||||
|
||||
.literal_position # 74: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x78
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_RFChannelSel
|
||||
.type sdk_RFChannelSel, @function
|
||||
sdk_RFChannelSel:
|
||||
addi sp, sp, -16 /* (local0) */ # 78: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 7b: 0901
|
||||
movi a0, .Ldata001 # 7d: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 80: 0800
|
||||
slli a3, a2, 24 # 82: 803201
|
||||
l32i a0, a0, 8 /* [[.Ldata001]+0x8] */ # 85: 0820
|
||||
srai a2, a3, 24 # 87: 302831
|
||||
callx0 a0 /* [[.Ldata001]+0x8] */ # 8a: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 8d: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 8f: 12c110
|
||||
ret # 92: 0df0
|
||||
|
||||
.literal_position # 94: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x98
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_delete_channel
|
||||
.type sdk_phy_delete_channel, @function
|
||||
sdk_phy_delete_channel:
|
||||
addi sp, sp, -16 /* (local0) */ # 98: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 9b: 0901
|
||||
movi a0, .Ldata001 # 9d: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # a0: 0800
|
||||
l32i a0, a0, 12 /* [[.Ldata001]+0xc] */ # a2: 0830
|
||||
callx0 a0 /* [[.Ldata001]+0xc] */ # a4: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # a7: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # a9: 12c110
|
||||
ret # ac: 0df0
|
||||
|
||||
.literal_position # b0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xb4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_enable_agc
|
||||
.type sdk_phy_enable_agc, @function
|
||||
sdk_phy_enable_agc:
|
||||
addi sp, sp, -16 /* (local0) */ # b4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b7: 0901
|
||||
movi a0, .Ldata001 # b9: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # bc: 0800
|
||||
l32i a0, a0, 16 /* [[.Ldata001]+0x10] */ # be: 0840
|
||||
callx0 a0 /* [[.Ldata001]+0x10] */ # c0: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # c3: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # c5: 12c110
|
||||
ret # c8: 0df0
|
||||
|
||||
.literal_position # cc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xd0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_disable_agc
|
||||
.type sdk_phy_disable_agc, @function
|
||||
sdk_phy_disable_agc:
|
||||
addi sp, sp, -16 /* (local0) */ # d0: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # d3: 0901
|
||||
movi a0, .Ldata001 # d5: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # d8: 0800
|
||||
l32i a0, a0, 20 /* [[.Ldata001]+0x14] */ # da: 0850
|
||||
callx0 a0 /* [[.Ldata001]+0x14] */ # dc: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # df: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # e1: 12c110
|
||||
ret # e4: 0df0
|
||||
|
||||
.literal_position # e8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xec
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_initialize_bb
|
||||
.type sdk_phy_initialize_bb, @function
|
||||
sdk_phy_initialize_bb:
|
||||
addi sp, sp, -16 /* (local0) */ # ec: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # ef: 0901
|
||||
movi a0, .Ldata001 # f1: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # f4: 0800
|
||||
l32i a0, a0, 24 /* [[.Ldata001]+0x18] */ # f6: 0860
|
||||
callx0 a0 /* [[.Ldata001]+0x18] */ # f8: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # fb: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # fd: 12c110
|
||||
ret # 100: 0df0
|
||||
|
||||
.literal_position # 104: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x108
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_phy_set_sense
|
||||
.type sdk_phy_set_sense, @function
|
||||
sdk_phy_set_sense:
|
||||
addi sp, sp, -16 /* (local0) */ # 108: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 10b: 0901
|
||||
movi a0, .Ldata001 # 10d: 01fdff
|
||||
l32i a0, a0, 0 /* [.Ldata001] */ # 110: 0800
|
||||
l32i a0, a0, 28 /* [[.Ldata001]+0x1c] */ # 112: 0870
|
||||
callx0 a0 /* [[.Ldata001]+0x1c] */ # 114: c00000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 117: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 119: 12c110
|
||||
ret # 11c: 0df0
|
1888
binary_sdk/libphy/phy_chip_v5_ana_romfunc.S
Normal file
1888
binary_sdk/libphy/phy_chip_v5_ana_romfunc.S
Normal file
File diff suppressed because it is too large
Load diff
2124
binary_sdk/libphy/phy_chip_v5_cal_romfunc.S
Normal file
2124
binary_sdk/libphy/phy_chip_v5_cal_romfunc.S
Normal file
File diff suppressed because it is too large
Load diff
1345
binary_sdk/libphy/phy_chip_v5_romfunc.S
Normal file
1345
binary_sdk/libphy/phy_chip_v5_romfunc.S
Normal file
File diff suppressed because it is too large
Load diff
6226
binary_sdk/libphy/phy_chip_v6.S
Normal file
6226
binary_sdk/libphy/phy_chip_v6.S
Normal file
File diff suppressed because it is too large
Load diff
2405
binary_sdk/libphy/phy_chip_v6_ana.S
Normal file
2405
binary_sdk/libphy/phy_chip_v6_ana.S
Normal file
File diff suppressed because it is too large
Load diff
BIN
binary_sdk/libphy/phy_chip_v6_ana.o
Normal file
BIN
binary_sdk/libphy/phy_chip_v6_ana.o
Normal file
Binary file not shown.
4500
binary_sdk/libphy/phy_chip_v6_cal.S
Normal file
4500
binary_sdk/libphy/phy_chip_v6_cal.S
Normal file
File diff suppressed because it is too large
Load diff
352
binary_sdk/libphy/phy_chip_v6_unused.S
Normal file
352
binary_sdk/libphy/phy_chip_v6_unused.S
Normal file
|
@ -0,0 +1,352 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_chip_v6_set_sense
|
||||
.type sdk_chip_v6_set_sense, @function
|
||||
sdk_chip_v6_set_sense:
|
||||
ret /* arg0 */ # 0: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x4
|
||||
.global sdk_chip_v6_get_sense
|
||||
.type sdk_chip_v6_get_sense, @function
|
||||
sdk_chip_v6_get_sense:
|
||||
ret /* arg0 */ # 4: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x8
|
||||
.global sdk_chip_v6_unset_chanfreq
|
||||
.type sdk_chip_v6_unset_chanfreq, @function
|
||||
sdk_chip_v6_unset_chanfreq:
|
||||
movi a2, 0 /* 0x00000000 */ # 8: 0c02
|
||||
ret /* 0x00000000 */ # a: 0df0
|
||||
|
||||
.literal_position # c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
# 1c: 000e0060
|
||||
# 20: 00000000
|
||||
# 24: 00000000
|
||||
# 28: 00000000
|
||||
# 2c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x30
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_data_collect
|
||||
.type sdk_data_collect, @function
|
||||
sdk_data_collect:
|
||||
movi a2, .Label001 # 30: 21f7ff
|
||||
addi sp, sp, -32 /* (local0) */ # 33: 12c1e0
|
||||
s32i a12, sp, 20 /* a12 -> [(local5)] */ # 36: c951
|
||||
s32i a13, sp, 24 /* a13 -> [(local6)] */ # 38: d961
|
||||
s32i a0, sp, 16 /* a0 -> [(local4)] */ # 3a: 0941
|
||||
call0 ets_printf # 3c: 01f9ffc0
|
||||
# 40: 0000
|
||||
movi a2, sdk_chip6_sleep_params # 42: 21f3ff
|
||||
movi a3, sdk_chip6_sleep_params+0x168 # 45: 31f3ff
|
||||
movi a4, 0 /* 0x00000000 */ # 48: 0c04
|
||||
call0 sdk_rtc_mem_backup # 4a: 01f6ffc0
|
||||
# 4e: 0000
|
||||
movi a3, 1 /* 0x00000001 */ # 50: 0c13
|
||||
movi a4, 5 /* 0x00000005 */ # 52: 0c54
|
||||
movi a5, 7 /* 0x00000007 */ # 54: 0c75
|
||||
movi a13, sdk_g_phyFuns # 56: d1f0ff
|
||||
movi a6, 0 /* 0x00000000 */ # 59: 0c06
|
||||
l32i a0, a13, 0 /* [sdk_g_phyFuns] */ # 5b: 080d
|
||||
mov a12, a2 # 5d: cd02
|
||||
l32i a0, a0, 148 /* [[sdk_g_phyFuns]+0x94] */ # 5f: 022025
|
||||
movi a2, 98 /* 0x00000062 */ # 62: 22a062
|
||||
callx0 a0 /* [[sdk_g_phyFuns]+0x94] */ # 65: c00000
|
||||
movi a3, 1 /* 0x00000001 */ # 68: 0c13
|
||||
movi a4, 6 /* 0x00000006 */ # 6a: 0c64
|
||||
movi a5, 4 /* 0x00000004 */ # 6c: 0c45
|
||||
movi a6, 0 /* 0x00000000 */ # 6e: 0c06
|
||||
l32i a0, a13, 0 /* [sdk_g_phyFuns] */ # 70: 080d
|
||||
s32i a2, sp, 8 /* a2 -> [(local2)] */ # 72: 2921
|
||||
l32i a0, a0, 148 /* [[sdk_g_phyFuns]+0x94] */ # 74: 022025
|
||||
movi a2, 98 /* 0x00000062 */ # 77: 22a062
|
||||
callx0 a0 /* [[sdk_g_phyFuns]+0x94] */ # 7a: c00000
|
||||
movi a3, 4 /* 0x00000004 */ # 7d: 0c43
|
||||
movi a4, 3 /* 0x00000003 */ # 7f: 0c34
|
||||
movi a5, 4 /* 0x00000004 */ # 81: 0c45
|
||||
movi a6, 0 /* 0x00000000 */ # 83: 0c06
|
||||
l32i a0, a13, 0 /* [sdk_g_phyFuns] */ # 85: 080d
|
||||
s32i a2, sp, 12 /* a2 -> [(local3)] */ # 87: 2931
|
||||
l32i a0, a0, 148 /* [[sdk_g_phyFuns]+0x94] */ # 89: 022025
|
||||
movi a2, 103 /* 0x00000067 */ # 8c: 22a067
|
||||
callx0 a0 /* [[sdk_g_phyFuns]+0x94] */ # 8f: c00000
|
||||
movi a3, 1 /* 0x00000001 */ # 92: 0c13
|
||||
movi a4, 2 /* 0x00000002 */ # 94: 0c24
|
||||
movi a5, 4 /* 0x00000004 */ # 96: 0c45
|
||||
movi a6, 0 /* 0x00000000 */ # 98: 0c06
|
||||
l32i a0, a13, 0 /* [sdk_g_phyFuns] */ # 9a: 080d
|
||||
mov a13, a2 # 9c: dd02
|
||||
l32i a0, a0, 148 /* [[sdk_g_phyFuns]+0x94] */ # 9e: 022025
|
||||
movi a2, 97 /* 0x00000061 */ # a1: 22a061
|
||||
callx0 a0 /* [[sdk_g_phyFuns]+0x94] */ # a4: c00000
|
||||
slli a4, a2, 24 # a7: 804201
|
||||
slli a3, a13, 16 # aa: 003d11
|
||||
l32i a2, sp, 8 /* [(local2)] */ # ad: 2821
|
||||
or a3, a3, a4 # af: 403320
|
||||
l32i a4, sp, 12 /* [(local3)] */ # b2: 4831
|
||||
extui a2, a2, 0, 8 # b4: 202074
|
||||
extui a4, a4, 0, 8 # b7: 404074
|
||||
slli a4, a4, 8 # ba: 804411
|
||||
or a2, a2, a4 # bd: 402220
|
||||
mov a4, a12 # c0: 4d0c
|
||||
or a2, a2, a3 # c2: 302220
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # c5: 2901
|
||||
mov a3, sp /* (local0) */ # c7: 3d01
|
||||
mov a2, sp /* (local0) */ # c9: 2d01
|
||||
call0 sdk_rtc_mem_backup # cb: 01d7ffc0
|
||||
# cf: 0000
|
||||
movi a5, 0x60000e00 # d1: 51d2ff
|
||||
memw # d4: c02000
|
||||
addi a3, sp, 4 /* (local1) */ # d7: 4b31
|
||||
add a12, a12, a2 # d9: 2acc
|
||||
l32i a5, a5, 0x3fc /* [0x600011fc] */ # db: 5225ff
|
||||
s32i a5, sp, 4 /* [0x600011fc] -> [(local1)] */ # de: 5911
|
||||
addi a2, sp, 4 /* (local1) */ # e0: 4b21
|
||||
mov a4, a12 # e2: 4d0c
|
||||
call0 sdk_rtc_mem_backup # e4: 01d2ffc0
|
||||
# e8: 0000
|
||||
l32i a0, sp, 16 /* [(local4)] */ # ea: 0841
|
||||
add a2, a2, a12 # ec: ca22
|
||||
l32i a13, sp, 24 /* [(local6)] */ # ee: d861
|
||||
l32i a12, sp, 20 /* [(local5)] */ # f0: c851
|
||||
addi sp, sp, 32 /* (top of frame) */ # f2: 12c120
|
||||
ret # f5: 0df0
|
||||
|
||||
.literal_position # f8: 000af23f
|
||||
# fc: aa5555aa
|
||||
# 100: 890f0000
|
||||
# 104: ac540000
|
||||
# 108: 20110000
|
||||
# 10c: 6c0d0000
|
||||
# 110: 00000000
|
||||
# 114: 00000000
|
||||
# 118: 00000000
|
||||
# 11c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x120
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_operation_test
|
||||
.type sdk_operation_test, @function
|
||||
sdk_operation_test:
|
||||
addi sp, sp, -16 /* (local0) */ # 120: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 123: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 125: d921
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 127: 0901
|
||||
movi a2, 0x3ff20a00 # 129: 21f3ff
|
||||
memw # 12c: c02000
|
||||
movi a3, 0x00000f89 # 12f: 31f4ff
|
||||
movi a4, 1234 /* 0x000004d2 */ # 132: 42a4d2
|
||||
l32i a2, a2, 0x200 /* [0x3ff20c00] */ # 135: 222280
|
||||
movi a5, 0xaa5555aa # 138: 51f1ff
|
||||
add a4, a2, a4 /* [0x3ff20c00]+0x4d2 */ # 13b: 4a42
|
||||
xor a4, a4, a5 # 13d: 504430
|
||||
mull a2, a2, a4 # 140: 402282
|
||||
mull a2, a2, a3 # 143: 302282
|
||||
movi a3, 0x000054ac # 146: 31efff
|
||||
call0 __udivsi3 # 149: 01f1ffc0
|
||||
# 14d: 0000
|
||||
movi a3, 0x00001120 # 14f: 31eeff
|
||||
mull a2, a2, a3 # 152: 302282
|
||||
movi a3, 0x00000d6c # 155: 31edff
|
||||
call0 __udivsi3 # 158: 01efffc0
|
||||
# 15c: 0000
|
||||
movi a12, 0 /* 0x00000000 */ # 15e: 0c0c
|
||||
movi a13, 1000 /* 0x000003e8 */ # 160: d2a3e8
|
||||
.Lbr001: movi a3, 999 /* 0x000003e7 */ # 163: 32a3e7
|
||||
call0 __udivsi3 # 166: 01ecffc0
|
||||
# 16a: 0000
|
||||
addi a12, a12, 1 # 16c: 1bcc
|
||||
movi a4, 1120 /* 0x00000460 */ # 16e: 42a460
|
||||
mull a2, a2, a4 # 171: 402282
|
||||
bne a12, a13, .Lbr001 # 174: d79ceb
|
||||
movi a12, 0 /* 0x00000000 */ # 177: 0c0c
|
||||
.Lbr002: movi a3, 985 /* 0x000003d9 */ # 179: 32a3d9
|
||||
movi a5, 860 /* 0x0000035c */ # 17c: 52a35c
|
||||
mull a2, a2, a5 # 17f: 502282
|
||||
call0 __udivsi3 # 182: 01e6ffc0
|
||||
# 186: 0000
|
||||
addi a12, a12, 1 # 188: 1bcc
|
||||
bne a12, a13, .Lbr002 # 18a: d79ceb
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 18d: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 18f: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 191: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 193: 12c110
|
||||
ret # 196: 0df0
|
||||
|
||||
.literal_position # 198: 00060060
|
||||
|
||||
# Function @ .irom0.text+0x19c
|
||||
.global sdk_slop_wdt_feed
|
||||
.type sdk_slop_wdt_feed, @function
|
||||
sdk_slop_wdt_feed:
|
||||
movi a2, 115 /* 0x00000073 */ # 19c: 22a073
|
||||
movi a3, 0x60000600 # 19f: 31feff
|
||||
memw # 1a2: c02000
|
||||
s32i a2, a3, 0x314 /* 0x00000073 -> [0x60000914] */ # 1a5: 2263c5
|
||||
ret /* 0x00000073 */ # 1a8: 0df0
|
||||
|
||||
.literal_position # 1ac: 04000000
|
||||
# 1b0: 00feef3f
|
||||
# 1b4: 00000000
|
||||
# 1b8: 000af23f
|
||||
# 1bc: 00060060
|
||||
# 1c0: 00000000
|
||||
# 1c4: 00000000
|
||||
# 1c8: 00000000
|
||||
# 1cc: 00000000
|
||||
# 1d0: 00000000
|
||||
# 1d4: 00000000
|
||||
# 1d8: 00000000
|
||||
# 1dc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1e0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_slop_test
|
||||
.type sdk_slop_test, @function
|
||||
sdk_slop_test:
|
||||
movi a2, .Lstr001 # 1e0: 21f3ff
|
||||
addi sp, sp, -32 /* (local0) */ # 1e3: 12c1e0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1e6: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 1e8: d921
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 1ea: e931
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 1ec: f941
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1ee: 0901
|
||||
call0 ets_printf # 1f0: 01f4ffc0
|
||||
# 1f4: 0000
|
||||
movi a10, 1 /* 0x00000001 */ # 1f6: 0c1a
|
||||
movi a9, 0x3feffe00 # 1f8: 91eeff
|
||||
memw # 1fb: c02000
|
||||
l32i a8, a9, 0x214 /* [0x3ff00014] */ # 1fe: 822985
|
||||
or a8, a8, a10 # 201: a08820
|
||||
memw # 204: c02000
|
||||
movi a2, 106 /* 0x0000006a */ # 207: 22a06a
|
||||
movi a3, 2 /* 0x00000002 */ # 20a: 0c23
|
||||
movi a4, 8 /* 0x00000008 */ # 20c: 0c84
|
||||
movi a5, 4 /* 0x00000004 */ # 20e: 0c45
|
||||
movi a0, sdk_g_phyFuns # 210: 01e9ff
|
||||
movi a6, 0 /* 0x00000000 */ # 213: 0c06
|
||||
l32i a0, a0, 0 /* [sdk_g_phyFuns] */ # 215: 0800
|
||||
movi a7, 0 /* 0x00000000 */ # 217: 0c07
|
||||
l32i a0, a0, 156 /* [[sdk_g_phyFuns]+0x9c] */ # 219: 022027
|
||||
s32i a8, a9, 0x214 /* a8 -> [0x3ff00014] */ # 21c: 826985
|
||||
callx0 a0 /* [[sdk_g_phyFuns]+0x9c] */ # 21f: c00000
|
||||
movi a12, 0x3ff20a00 # 222: c1e5ff
|
||||
memw # 225: c02000
|
||||
l32i a11, a12, 0x200 /* [0x3ff20c00] */ # 228: b22c80
|
||||
movi a2, 14 /* 0x0000000e */ # 22b: 0ce2
|
||||
call0 sdk_RFChannelSel # 22d: 01e5ffc0
|
||||
# 231: 0000
|
||||
movi a13, 0 /* 0x00000000 */ # 233: 0c0d
|
||||
movi a14, 0x60000600 # 235: e1e1ff
|
||||
movi a15, 200 /* 0x000000c8 */ # 238: f2a0c8
|
||||
.Lbr003: call0 sdk_slop_wdt_feed # 23b: 050000
|
||||
call0 sdk_operation_test # 23e: 050000
|
||||
memw # 241: c02000
|
||||
s32i a2, a14, 0x138 /* a2 -> [0x60000738] */ # 244: 226e4e
|
||||
movi a2, 2 /* 0x00000002 */ # 247: 0c22
|
||||
call0 sdk_pm_set_sleep_mode # 249: 01dfffc0
|
||||
# 24d: 0000
|
||||
movi a2, 8 /* 0x00000008 */ # 24f: 0c82
|
||||
movi a3, 0 /* 0x00000000 */ # 251: 0c03
|
||||
call0 sdk_pm_wakeup_opt # 253: 01deffc0
|
||||
# 257: 0000
|
||||
movi a2, 170 /* 0x000000aa */ # 259: 22a0aa
|
||||
call0 sdk_pm_set_sleep_cycles # 25c: 01ddffc0
|
||||
# 260: 0000
|
||||
memw # 262: c02000
|
||||
movi a2, 2 /* 0x00000002 */ # 265: 0c22
|
||||
l32i a0, a12, 0x200 /* [0x3ff20c00] */ # 267: 022c80
|
||||
call0 sdk_pm_goto_sleep # 26a: 01daffc0
|
||||
# 26e: 0000
|
||||
movi a2, 2 /* 0x00000002 */ # 270: 0c22
|
||||
call0 sdk_pm_wait4wakeup # 272: 01d9ffc0
|
||||
# 276: 0000
|
||||
movi a2, 2 /* 0x00000002 */ # 278: 0c22
|
||||
movi a3, 0 /* 0x00000000 */ # 27a: 0c03
|
||||
call0 sdk_pm_wakeup_init # 27c: 01d8ffc0
|
||||
# 280: 0000
|
||||
memw # 282: c02000
|
||||
l32i a3, a12, 0x200 /* [0x3ff20c00] */ # 285: 322c80
|
||||
addi a13, a13, 1 # 288: 1bdd
|
||||
bne a13, a15, .Lbr003 # 28a: f79dad
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 28d: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 28f: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 291: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 293: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 295: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # 297: 12c120
|
||||
ret # 29a: 0df0
|
||||
|
||||
.literal_position # 29c: 000e0060
|
||||
# 2a0: 10000000
|
||||
# 2a4: 10000000
|
||||
# 2a8: 00000000
|
||||
# 2ac: 00000000
|
||||
# 2b0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2b4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wd_reset_cnt
|
||||
.type sdk_wd_reset_cnt, @function
|
||||
sdk_wd_reset_cnt:
|
||||
addi sp, sp, -16 /* (local0) */ # 2b4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2b7: 0901
|
||||
call0 sdk_rtc_get_reset_reason # 2b9: 01fbffc0
|
||||
# 2bd: 0000
|
||||
movi a0, 0x60000e00 # 2bf: 01f7ff
|
||||
bnei a2, 4, .Lbr004 # 2c2: 664219
|
||||
memw # 2c5: c02000
|
||||
l32i a3, a0, 0x3fc /* [0x600011fc] */ # 2c8: 3220ff
|
||||
addi a3, a3, 1 /* [0x600011fc]+0x1 */ # 2cb: 1b33
|
||||
memw # 2cd: c02000
|
||||
movi a2, .Lstr002 # 2d0: 21f4ff
|
||||
s32i a3, a0, 0x3fc /* [0x600011fc]+0x1 -> [0x600011fc] */ # 2d3: 3260ff
|
||||
call0 ets_printf # 2d6: 01f5ffc0
|
||||
# 2da: 0000
|
||||
j .Lbr006 # 2dc: 860500
|
||||
.Lbr004: beqi a2, 2, .Lbr005 # 2df: 262202
|
||||
bnei a2, 1, .Lbr006 # 2e2: 661210
|
||||
.Lbr005: movi a3, 0 /* 0x00000000 */ # 2e5: 0c03
|
||||
memw # 2e7: c02000
|
||||
movi a2, .Lstr002 # 2ea: 21eeff
|
||||
s32i a3, a0, 0x3fc /* 0x00000000 -> [0x600011fc] */ # 2ed: 3260ff
|
||||
call0 ets_printf # 2f0: 01f0ffc0
|
||||
# 2f4: 0000
|
||||
.Lbr006: l32i a0, sp, 0 /* [(local0)] */ # 2f6: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 2f8: 12c110
|
||||
ret # 2fb: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Label001: .word 0x000a6364 # 0: 64630a00
|
||||
.Lstr001: .asciz "slop_test\n" # 4: 736c6f70
|
||||
# 8: 5f746573
|
||||
# c: 740a00
|
||||
.balign 4
|
||||
.Lstr002: .asciz "wd_reset %d\n" # 10: 77645f72
|
||||
# 14: 65736574
|
||||
# 18: 2025640a
|
||||
# 1c: 00
|
1542
binary_sdk/libphy/phy_sleep.S
Normal file
1542
binary_sdk/libphy/phy_sleep.S
Normal file
File diff suppressed because it is too large
Load diff
751
binary_sdk/libpp/esf_buf.S
Normal file
751
binary_sdk/libpp/esf_buf.S
Normal file
|
@ -0,0 +1,751 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00feef3f
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00feef3f
|
||||
# 18: 00000000
|
||||
# 1c: 00000000
|
||||
# 20: 00000000
|
||||
|
||||
# Function @ .text+0x24
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_esf_rx_buf_alloc
|
||||
.type sdk_esf_rx_buf_alloc, @function
|
||||
sdk_esf_rx_buf_alloc:
|
||||
addi sp, sp, -16 /* (local0) */ # 24: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 27: 0901
|
||||
bnei a2, 7, .Lbr001 # 29: 667211
|
||||
movi a5, .Ldata001 # 2c: 51f5ff
|
||||
movi a0, sdk_NMIIrqIsOn # 2f: 01f5ff
|
||||
l32i a2, a5, 16 /* [.Ldata005] */ # 32: 2845
|
||||
l8ui a3, a0, 0 /* [sdk_NMIIrqIsOn] */ # 34: 320000
|
||||
bnez a2, .Lbr004 # 37: cce2
|
||||
movi a2, 0 /* 0x00000000 */ # 39: 0c02
|
||||
j .Lbr003 # 3b: c60000
|
||||
.Lbr001: movi a0, 0 /* 0x00000000 */ # 3e: 0c00
|
||||
.Lbr002: mov a2, a0 # 40: 2d00
|
||||
.Lbr003: l32i a0, sp, 0 /* [(local0)] */ # 42: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 44: 12c110
|
||||
ret # 47: 0df0
|
||||
.Lbr004: bnez a3, .Lbr006 # 49: ec93
|
||||
call0 vPortEnterCritical # 4b: 01f4ffc0
|
||||
# 4f: 0000
|
||||
movi a4, 0x3feffe00 # 51: 41edff
|
||||
movi a5, .Ldata001 # 54: 51eeff
|
||||
movi a6, -32 /* 0xffffffe0 */ # 57: 6c06
|
||||
.Lbr005: memw # 59: c02000
|
||||
l32i a8, a4, 0x200 /* [0x3ff00000] */ # 5c: 822480
|
||||
and a8, a8, a6 # 5f: 608810
|
||||
memw # 62: c02000
|
||||
s32i a8, a4, 0x200 /* a8 -> [0x3ff00000] */ # 65: 826480
|
||||
memw # 68: c02000
|
||||
l32i a7, a4, 0x200 /* [0x3ff00000] */ # 6b: 722480
|
||||
bbsi a7, 0, .Lbr005 # 6e: 07e7e7
|
||||
movi a0, sdk_NMIIrqIsOn # 71: 01e7ff
|
||||
l32i a2, a5, 16 /* [.Ldata005] */ # 74: 2845
|
||||
.Lbr006: s32i a2, sp, 4 /* [.Ldata005] -> [(local1)] */ # 76: 2911
|
||||
movi a10, 0 /* 0x00000000 */ # 78: 0c0a
|
||||
l32i a11, a2, 28 /* [[.Ldata005]+0x1c] */ # 7a: b872
|
||||
s32i a11, a5, 16 /* [[.Ldata005]+0x1c] -> [.Ldata005] */ # 7c: b945
|
||||
s32i a10, a2, 28 /* 0x00000000 -> [[.Ldata005]+0x1c] */ # 7e: a972
|
||||
l8ui a9, a0, 0 /* [sdk_NMIIrqIsOn] */ # 80: 920000
|
||||
mov a0, a2 /* [.Ldata005] */ # 83: 0d02
|
||||
bnez a9, .Lbr007 # 85: ec29
|
||||
memw # 87: c02000
|
||||
movi a2, 0x3feffe00 # 8a: 21e2ff
|
||||
l32i a0, a2, 0x200 /* [0x3ff00000] */ # 8d: 022280
|
||||
movi a3, -32 /* 0xffffffe0 */ # 90: 6c03
|
||||
and a0, a0, a3 # 92: 300010
|
||||
movi a3, 1 /* 0x00000001 */ # 95: 0c13
|
||||
or a0, a0, a3 # 97: 300020
|
||||
memw # 9a: c02000
|
||||
s32i a0, a2, 0x200 /* a0 -> [0x3ff00000] */ # 9d: 026280
|
||||
call0 vPortExitCritical # a0: 01e0ffc0
|
||||
# a4: 0000
|
||||
movi a5, .Ldata001 # a6: 51dcff
|
||||
l32i a0, sp, 4 /* [(local1)] */ # a9: 0811
|
||||
.Lbr007: l32i a4, a5, 20 /* [.Ldata006] */ # ab: 4855
|
||||
addi a4, a4, -1 /* [.Ldata006]-0x1 */ # ad: 0b44
|
||||
s32i a4, a5, 20 /* [.Ldata006]-0x1 -> [.Ldata006] */ # af: 4955
|
||||
j .Lbr002 # b1: c6e2ff
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .word 0x00000000 # 0: 00000000
|
||||
.Ldata002: .word 0x00000000 # 4: 00000000
|
||||
.Ldata003: .word 0x00000000 # 8: 00000000
|
||||
.Ldata004: .word 0x00000000 # c: 00000000
|
||||
.Ldata005: .word 0x00000000 # 10: 00000000
|
||||
.Ldata006: .word 0x00000000 # 14: 00000000
|
||||
.space 8
|
||||
.Ldata007: .space 1116
|
||||
.word 0x00000000 # 47c: 00000000
|
||||
.Ldata008: .space 2144
|
||||
.Ldata009: .space 608
|
||||
.Ldata010: .space 600
|
||||
.space 8
|
||||
.Label001: .space 72
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00feef3f
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00feef3f
|
||||
# 18: 00400000
|
||||
# 1c: 00feef3f
|
||||
# 20: 00000000
|
||||
# 24: 00000000
|
||||
# 28: 00feef3f
|
||||
# 2c: 00800000
|
||||
# 30: 00feef3f
|
||||
# 34: 00000000
|
||||
# 38: 00000000
|
||||
# 3c: 00feef3f
|
||||
# 40: 00002000
|
||||
# 44: 00feef3f
|
||||
# 48: 00000000
|
||||
# 4c: 00000000
|
||||
# 50: 00feef3f
|
||||
# 54: 00200000
|
||||
# 58: 00000000
|
||||
# 5c: 00000000
|
||||
# 60: 00000000
|
||||
# 64: 00000000
|
||||
# 68: 00000000
|
||||
# 6c: 00000000
|
||||
# 70: 00000000
|
||||
# 74: 00000000
|
||||
# 78: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x7c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_esf_buf_alloc
|
||||
.type sdk_esf_buf_alloc, @function
|
||||
sdk_esf_buf_alloc:
|
||||
movi a10, 0 /* 0x00000000 */ # 7c: 0c0a
|
||||
movi a7, sdk_NMIIrqIsOn # 7e: 71e0ff
|
||||
movi a6, .Ldata001 # 81: 61e0ff
|
||||
addi sp, sp, -32 /* (local0) */ # 84: 12c1e0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 87: c921
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 89: 0911
|
||||
bnei a3, 1, .Lbr008 # 8b: 66130e
|
||||
beqz a2, .Lbr008 # 8e: 8cb2
|
||||
l32i a12, a6, 0 /* [.Ldata001] */ # 90: c806
|
||||
l8ui a9, a7, 0 /* [sdk_NMIIrqIsOn] */ # 92: 920700
|
||||
bnez a12, .Lbr022 # 95: 56fc17
|
||||
mov a12, a10 /* 0x00000000 */ # 98: cd0a
|
||||
j .Lbr021 # 9a: c65b00
|
||||
.Lbr008: bnei a3, 4, .Lbr012 # 9d: 664376
|
||||
l32i a12, a6, 4 /* [.Ldata002] */ # a0: c816
|
||||
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # a2: 220700
|
||||
beqz a12, .Lbr027 # a5: 160c20
|
||||
bnez a2, .Lbr010 # a8: ecb2
|
||||
call0 vPortEnterCritical # aa: 01ebffc0
|
||||
# ae: 0000
|
||||
movi a0, 0x3feffe00 # b0: 01d6ff
|
||||
movi a6, .Ldata001 # b3: 61d6ff
|
||||
movi a7, sdk_NMIIrqIsOn # b6: 71d6ff
|
||||
movi a8, -32 /* 0xffffffe0 */ # b9: 6c08
|
||||
movi a10, 0 /* 0x00000000 */ # bb: 0c0a
|
||||
.Lbr009: memw # bd: c02000
|
||||
l32i a4, a0, 0x200 /* [0x3ff00000] */ # c0: 422080
|
||||
and a4, a4, a8 # c3: 804410
|
||||
memw # c6: c02000
|
||||
s32i a4, a0, 0x200 /* a4 -> [0x3ff00000] */ # c9: 426080
|
||||
memw # cc: c02000
|
||||
l32i a3, a0, 0x200 /* [0x3ff00000] */ # cf: 322080
|
||||
bbsi a3, 0, .Lbr009 # d2: 07e3e7
|
||||
l32i a12, a6, 4 /* [.Ldata002] */ # d5: c816
|
||||
.Lbr010: s32i a12, sp, 20 /* [.Ldata002] -> [(local5)] */ # d7: c951
|
||||
mov a2, a12 /* [.Ldata002] */ # d9: 2d0c
|
||||
l32i a9, a12, 28 /* [[.Ldata002]+0x1c] */ # db: 987c
|
||||
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata002]+0x1c] */ # dd: a97c
|
||||
l8ui a5, a7, 0 /* [sdk_NMIIrqIsOn] */ # df: 520700
|
||||
s32i a9, a6, 4 /* [[.Ldata002]+0x1c] -> [.Ldata002] */ # e2: 9916
|
||||
bnez a5, .Lbr011 # e4: dcf5
|
||||
memw # e6: c02000
|
||||
movi a11, 0x3feffe00 # e9: b1caff
|
||||
l32i a10, a11, 0x200 /* [0x3ff00000] */ # ec: a22b80
|
||||
movi a0, -32 /* 0xffffffe0 */ # ef: 6c00
|
||||
and a10, a10, a0 # f1: 00aa10
|
||||
movi a0, 1 /* 0x00000001 */ # f4: 0c10
|
||||
or a10, a10, a0 # f6: 00aa20
|
||||
memw # f9: c02000
|
||||
s32i a10, a11, 0x200 /* a10 -> [0x3ff00000] */ # fc: a26b80
|
||||
call0 vPortExitCritical # ff: 01d7ffc0
|
||||
# 103: 0000
|
||||
l32i a2, sp, 20 /* [(local5)] */ # 105: 2851
|
||||
.Lbr011: l32i a4, a2, 4 # 107: 4812
|
||||
l32i a3, a2, 16 # 109: 3842
|
||||
s32i a3, a4, 4 # 10b: 3914
|
||||
l32i a2, a2, 32 # 10d: 2882
|
||||
movi a3, 0x00004000 # 10f: 31c2ff
|
||||
l32i a0, a2, 0 # 112: 0802
|
||||
j .Lbr026 # 114: 465f00
|
||||
.Lbr012: bnei a3, 5, .Lbr016 # 117: 66537c
|
||||
l32i a12, a6, 8 /* [.Ldata003] */ # 11a: c826
|
||||
l8ui a5, a7, 0 /* [sdk_NMIIrqIsOn] */ # 11c: 520700
|
||||
beqz a12, .Lbr027 # 11f: 166c18
|
||||
bnez a5, .Lbr014 # 122: ecb5
|
||||
call0 vPortEnterCritical # 124: 01cfffc0
|
||||
# 128: 0000
|
||||
movi a0, 0x3feffe00 # 12a: 01bcff
|
||||
movi a6, .Ldata001 # 12d: 61bcff
|
||||
movi a7, sdk_NMIIrqIsOn # 130: 71bdff
|
||||
movi a8, -32 /* 0xffffffe0 */ # 133: 6c08
|
||||
movi a10, 0 /* 0x00000000 */ # 135: 0c0a
|
||||
.Lbr013: memw # 137: c02000
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 13a: b22080
|
||||
and a11, a11, a8 # 13d: 80bb10
|
||||
memw # 140: c02000
|
||||
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 143: b26080
|
||||
memw # 146: c02000
|
||||
l32i a9, a0, 0x200 /* [0x3ff00000] */ # 149: 922080
|
||||
bbsi a9, 0, .Lbr013 # 14c: 07e9e7
|
||||
l32i a12, a6, 8 /* [.Ldata003] */ # 14f: c826
|
||||
.Lbr014: l32i a3, a12, 28 /* [[.Ldata003]+0x1c] */ # 151: 387c
|
||||
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata003]+0x1c] */ # 153: a97c
|
||||
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # 155: 220700
|
||||
s32i a3, a6, 8 /* [[.Ldata003]+0x1c] -> [.Ldata003] */ # 158: 3926
|
||||
bnez a2, .Lbr015 # 15a: dcd2
|
||||
memw # 15c: c02000
|
||||
movi a5, 0x3feffe00 # 15f: 51b2ff
|
||||
l32i a4, a5, 0x200 /* [0x3ff00000] */ # 162: 422580
|
||||
movi a6, -32 /* 0xffffffe0 */ # 165: 6c06
|
||||
and a4, a4, a6 # 167: 604410
|
||||
movi a6, 1 /* 0x00000001 */ # 16a: 0c16
|
||||
or a4, a4, a6 # 16c: 604420
|
||||
memw # 16f: c02000
|
||||
s32i a4, a5, 0x200 /* a4 -> [0x3ff00000] */ # 172: 426580
|
||||
call0 vPortExitCritical # 175: 01bbffc0
|
||||
# 179: 0000
|
||||
.Lbr015: l32i a2, a12, 32 /* [[.Ldata003]+0x20] */ # 17b: 288c
|
||||
movi a3, 0 /* 0x00000000 */ # 17d: 0c03
|
||||
movi a4, 24 /* 0x00000018 */ # 17f: 1c84
|
||||
call0 memset # 181: 01b9ffc0
|
||||
# 185: 0000
|
||||
l32i a8, a12, 4 /* [[.Ldata003]+0x4] */ # 187: 881c
|
||||
l32i a7, a12, 16 /* [[.Ldata003]+0x10] */ # 189: 784c
|
||||
s32i a7, a8, 4 /* [[.Ldata003]+0x10] -> [[[.Ldata003]+0x4]+0x4] */ # 18b: 7918
|
||||
l32i a2, a12, 32 /* [[.Ldata003]+0x20] */ # 18d: 288c
|
||||
movi a3, 0x00008000 # 18f: 31a7ff
|
||||
l32i a0, a2, 0 /* [[[.Ldata003]+0x20]] */ # 192: 0802
|
||||
j .Lbr026 # 194: 463f00
|
||||
.Lbr016: bnei a3, 6, .Lbr020 # 197: 666370
|
||||
l32i a12, a6, 12 /* [.Ldata004] */ # 19a: c836
|
||||
l8ui a9, a7, 0 /* [sdk_NMIIrqIsOn] */ # 19c: 920700
|
||||
beqz a12, .Lbr027 # 19f: 166c10
|
||||
bnez a9, .Lbr018 # 1a2: ecb9
|
||||
call0 vPortEnterCritical # 1a4: 01b2ffc0
|
||||
# 1a8: 0000
|
||||
movi a0, 0x3feffe00 # 1aa: 01a1ff
|
||||
movi a6, .Ldata001 # 1ad: 61a1ff
|
||||
movi a7, sdk_NMIIrqIsOn # 1b0: 71a2ff
|
||||
movi a8, -32 /* 0xffffffe0 */ # 1b3: 6c08
|
||||
movi a10, 0 /* 0x00000000 */ # 1b5: 0c0a
|
||||
.Lbr017: memw # 1b7: c02000
|
||||
l32i a12, a0, 0x200 /* [0x3ff00000] */ # 1ba: c22080
|
||||
and a12, a12, a8 # 1bd: 80cc10
|
||||
memw # 1c0: c02000
|
||||
s32i a12, a0, 0x200 /* a12 -> [0x3ff00000] */ # 1c3: c26080
|
||||
memw # 1c6: c02000
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 1c9: b22080
|
||||
bbsi a11, 0, .Lbr017 # 1cc: 07ebe7
|
||||
l32i a12, a6, 12 /* [.Ldata004] */ # 1cf: c836
|
||||
.Lbr018: s32i a12, sp, 16 /* [.Ldata004] -> [(local4)] */ # 1d1: c941
|
||||
mov a2, a12 /* [.Ldata004] */ # 1d3: 2d0c
|
||||
l32i a4, a12, 28 /* [[.Ldata004]+0x1c] */ # 1d5: 487c
|
||||
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata004]+0x1c] */ # 1d7: a97c
|
||||
l8ui a3, a7, 0 /* [sdk_NMIIrqIsOn] */ # 1d9: 320700
|
||||
s32i a4, a6, 12 /* [[.Ldata004]+0x1c] -> [.Ldata004] */ # 1dc: 4936
|
||||
bnez a3, .Lbr019 # 1de: dcf3
|
||||
memw # 1e0: c02000
|
||||
movi a6, 0x3feffe00 # 1e3: 6196ff
|
||||
l32i a5, a6, 0x200 /* [0x3ff00000] */ # 1e6: 522680
|
||||
movi a7, -32 /* 0xffffffe0 */ # 1e9: 6c07
|
||||
and a5, a5, a7 # 1eb: 705510
|
||||
movi a7, 1 /* 0x00000001 */ # 1ee: 0c17
|
||||
or a5, a5, a7 # 1f0: 705520
|
||||
memw # 1f3: c02000
|
||||
s32i a5, a6, 0x200 /* a5 -> [0x3ff00000] */ # 1f6: 526680
|
||||
call0 vPortExitCritical # 1f9: 019dffc0
|
||||
# 1fd: 0000
|
||||
l32i a2, sp, 16 /* [(local4)] */ # 1ff: 2841
|
||||
.Lbr019: l32i a2, a2, 32 # 201: 2882
|
||||
movi a3, 0x00200000 # 203: 318fff
|
||||
l32i a0, a2, 0 # 206: 0802
|
||||
j .Lbr026 # 208: 462200
|
||||
.Lbr020: movi a12, 0 /* 0x00000000 */ # 20b: 0c0c
|
||||
.Lbr021: mov a2, a12 # 20d: 2d0c
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 20f: 0811
|
||||
l32i a12, sp, 8 /* [(local2)] */ # 211: c821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 213: 12c120
|
||||
ret # 216: 0df0
|
||||
.Lbr022: s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 218: 2901
|
||||
bnez a9, .Lbr024 # 21a: ecb9
|
||||
call0 vPortEnterCritical # 21c: 0196ffc0
|
||||
# 220: 0000
|
||||
movi a0, 0x3feffe00 # 222: 0188ff
|
||||
movi a8, -32 /* 0xffffffe0 */ # 225: 6c08
|
||||
movi a10, 0 /* 0x00000000 */ # 227: 0c0a
|
||||
.Lbr023: memw # 229: c02000
|
||||
l32i a12, a0, 0x200 /* [0x3ff00000] */ # 22c: c22080
|
||||
and a12, a12, a8 # 22f: 80cc10
|
||||
memw # 232: c02000
|
||||
s32i a12, a0, 0x200 /* a12 -> [0x3ff00000] */ # 235: c26080
|
||||
memw # 238: c02000
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 23b: b22080
|
||||
bbsi a11, 0, .Lbr023 # 23e: 07ebe7
|
||||
movi a6, .Ldata001 # 241: 6182ff
|
||||
movi a7, sdk_NMIIrqIsOn # 244: 7181ff
|
||||
l32i a12, a6, 0 /* [.Ldata001] */ # 247: c806
|
||||
.Lbr024: s32i a12, sp, 12 /* [.Ldata001] -> [(local3)] */ # 249: c931
|
||||
l32i a3, a12, 28 /* [[.Ldata001]+0x1c] */ # 24b: 387c
|
||||
s32i a3, a6, 0 /* [[.Ldata001]+0x1c] -> [.Ldata001] */ # 24d: 3906
|
||||
s32i a10, a12, 28 /* 0x00000000 -> [[.Ldata001]+0x1c] */ # 24f: a97c
|
||||
l8ui a2, a7, 0 /* [sdk_NMIIrqIsOn] */ # 251: 220700
|
||||
mov a3, a12 /* [.Ldata001] */ # 254: 3d0c
|
||||
bnez a2, .Lbr025 # 256: dcf2
|
||||
memw # 258: c02000
|
||||
movi a5, 0x3feffe00 # 25b: 517dff
|
||||
l32i a4, a5, 0x200 /* [0x3ff00000] */ # 25e: 422580
|
||||
movi a6, -32 /* 0xffffffe0 */ # 261: 6c06
|
||||
and a4, a4, a6 # 263: 604410
|
||||
movi a6, 1 /* 0x00000001 */ # 266: 0c16
|
||||
or a4, a4, a6 # 268: 604420
|
||||
memw # 26b: c02000
|
||||
s32i a4, a5, 0x200 /* a4 -> [0x3ff00000] */ # 26e: 426580
|
||||
call0 vPortExitCritical # 271: 0181ffc0
|
||||
# 275: 0000
|
||||
l32i a3, sp, 12 /* [(local3)] */ # 277: 3831
|
||||
.Lbr025: l32i a7, sp, 0 /* [(local0)] */ # 279: 7801
|
||||
l32i a9, a3, 4 # 27b: 9813
|
||||
s32i a7, a3, 0 # 27d: 7903
|
||||
l16ui a8, a7, 10 /* [[(local0)]+0xa] */ # 27f: 821705
|
||||
l32i a7, a7, 4 /* [[(local0)]+0x4] */ # 282: 7817
|
||||
s32i a7, a9, 4 # 284: 7919
|
||||
s16i a8, a3, 22 # 286: 82530b
|
||||
addi a7, a7, -36 /* [[(local0)]+0x4]-0x24 */ # 289: 72c7dc
|
||||
l32i a2, a3, 32 # 28c: 2883
|
||||
s32i a7, a3, 16 # 28e: 7943
|
||||
l32i a0, a2, 0 # 290: 0802
|
||||
movi a3, 0x00002000 # 292: 3170ff
|
||||
.Lbr026: extui a8, a0, 0, 6 # 295: 008054
|
||||
srli a9, a0, 6 # 298: 009641
|
||||
or a9, a9, a3 # 29b: 309920
|
||||
slli a9, a9, 6 # 29e: a09911
|
||||
or a8, a8, a9 # 2a1: 908820
|
||||
s32i a8, a2, 0 # 2a4: 8902
|
||||
j .Lbr021 # 2a6: c6d8ff
|
||||
.Lbr027: movi a12, 0 /* 0x00000000 */ # 2a9: 0c0c
|
||||
j .Lbr021 # 2ab: 86d7ff
|
||||
|
||||
.literal_position # 2b0: 00000000
|
||||
# 2b4: 00feef3f
|
||||
# 2b8: 00000000
|
||||
# 2bc: 00000000
|
||||
# 2c0: 00feef3f
|
||||
# 2c4: 00000000
|
||||
# 2c8: 00feef3f
|
||||
# 2cc: 00000000
|
||||
# 2d0: 00000000
|
||||
# 2d4: 00feef3f
|
||||
# 2d8: 00000000
|
||||
# 2dc: 00feef3f
|
||||
# 2e0: 00000000
|
||||
# 2e4: 00000000
|
||||
# 2e8: 00feef3f
|
||||
# 2ec: 00000000
|
||||
# 2f0: 00feef3f
|
||||
# 2f4: 00000000
|
||||
# 2f8: 00000000
|
||||
# 2fc: 00feef3f
|
||||
# 300: 00feef3f
|
||||
# 304: 00000000
|
||||
# 308: 00feef3f
|
||||
# 30c: 00000000
|
||||
# 310: 00000000
|
||||
# 314: 00000000
|
||||
# 318: 00000000
|
||||
# 31c: 00000000
|
||||
# 320: 00000000
|
||||
# 324: 00000000
|
||||
# 328: 00000000
|
||||
# 32c: 00000000
|
||||
# 330: 00000000
|
||||
# 334: 00000000
|
||||
# 338: 00000000
|
||||
# 33c: 00000000
|
||||
# 340: 00000000
|
||||
# 344: 00000000
|
||||
# 348: 00000000
|
||||
# 34c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x350
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_esf_buf_recycle
|
||||
.type sdk_esf_buf_recycle, @function
|
||||
sdk_esf_buf_recycle:
|
||||
addi a4, a3, -1 /* arg1-0x1 */ # 350: 0b43
|
||||
addi sp, sp, -16 /* (local0) */ # 352: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 355: 0911
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 357: 2901
|
||||
beqz a4, .Lbr039 # 359: 16841c
|
||||
addi a9, a3, -2 /* arg1-0x2 */ # 35c: 92c3fe
|
||||
beqz a9, .Lbr039 # 35f: 16291c
|
||||
bnei a3, 4, .Lbr030 # 362: 66436c
|
||||
l32i a2, a2, 32 /* [arg0+0x20] */ # 365: 2882
|
||||
movi a3, 0 /* 0x00000000 */ # 367: 0c03
|
||||
movi a4, 24 /* 0x00000018 */ # 369: 1c84
|
||||
call0 memset # 36b: 01eaffc0
|
||||
# 36f: 0000
|
||||
movi a5, sdk_NMIIrqIsOn # 371: 51cfff
|
||||
l8ui a3, a5, 0 /* [sdk_NMIIrqIsOn] */ # 374: 320500
|
||||
bnez a3, .Lbr029 # 377: ec43
|
||||
call0 vPortEnterCritical # 379: 01e7ffc0
|
||||
# 37d: 0000
|
||||
.Lbr028: memw # 37f: c02000
|
||||
movi a3, 0x3feffe00 # 382: 31ccff
|
||||
l32i a5, a3, 0x200 /* [0x3ff00000] */ # 385: 522380
|
||||
movi a0, -32 /* 0xffffffe0 */ # 388: 6c00
|
||||
and a5, a5, a0 # 38a: 005510
|
||||
memw # 38d: c02000
|
||||
s32i a5, a3, 0x200 /* a5 -> [0x3ff00000] */ # 390: 526380
|
||||
memw # 393: c02000
|
||||
l32i a4, a3, 0x200 /* [0x3ff00000] */ # 396: 422380
|
||||
bbsi a4, 0, .Lbr028 # 399: 07e4e2
|
||||
movi a5, sdk_NMIIrqIsOn # 39c: 51c7ff
|
||||
.Lbr029: movi a8, .Ldata001 # 39f: 81c7ff
|
||||
l32i a7, sp, 0 /* [(local0)] */ # 3a2: 7801
|
||||
l32i a9, a8, 4 /* [.Ldata002] */ # 3a4: 9818
|
||||
s32i a9, a7, 28 /* [.Ldata002] -> [[(local0)]+0x1c] */ # 3a6: 9977
|
||||
l8ui a6, a5, 0 /* [sdk_NMIIrqIsOn] */ # 3a8: 620500
|
||||
s32i a7, a8, 4 /* [(local0)] -> [.Ldata002] */ # 3ab: 7918
|
||||
bnez a6, .Lbr042 # 3ad: 56f61d
|
||||
memw # 3b0: c02000
|
||||
movi a11, 0x3feffe00 # 3b3: b1c3ff
|
||||
l32i a10, a11, 0x200 /* [0x3ff00000] */ # 3b6: a22b80
|
||||
movi a0, -32 /* 0xffffffe0 */ # 3b9: 6c00
|
||||
and a10, a10, a0 # 3bb: 00aa10
|
||||
movi a0, 1 /* 0x00000001 */ # 3be: 0c10
|
||||
or a10, a10, a0 # 3c0: 00aa20
|
||||
memw # 3c3: c02000
|
||||
s32i a10, a11, 0x200 /* a10 -> [0x3ff00000] */ # 3c6: a26b80
|
||||
call0 vPortExitCritical # 3c9: 01d4ffc0
|
||||
# 3cd: 0000
|
||||
j .Lbr042 # 3cf: 466f00
|
||||
.Lbr030: bnei a3, 5, .Lbr033 # 3d2: 66536c
|
||||
l32i a2, a2, 32 /* [arg0+0x20] */ # 3d5: 2882
|
||||
movi a3, 0 /* 0x00000000 */ # 3d7: 0c03
|
||||
movi a4, 24 /* 0x00000018 */ # 3d9: 1c84
|
||||
call0 memset # 3db: 01d1ffc0
|
||||
# 3df: 0000
|
||||
movi a3, sdk_NMIIrqIsOn # 3e1: 31b8ff
|
||||
l8ui a3, a3, 0 /* [sdk_NMIIrqIsOn] */ # 3e4: 320300
|
||||
bnez a3, .Lbr032 # 3e7: ec13
|
||||
call0 vPortEnterCritical # 3e9: 01ceffc0
|
||||
# 3ed: 0000
|
||||
.Lbr031: memw # 3ef: c02000
|
||||
movi a4, 0x3feffe00 # 3f2: 41b5ff
|
||||
l32i a5, a4, 0x200 /* [0x3ff00000] */ # 3f5: 522480
|
||||
movi a6, -32 /* 0xffffffe0 */ # 3f8: 6c06
|
||||
and a5, a5, a6 # 3fa: 605510
|
||||
memw # 3fd: c02000
|
||||
s32i a5, a4, 0x200 /* a5 -> [0x3ff00000] */ # 400: 526480
|
||||
memw # 403: c02000
|
||||
l32i a4, a4, 0x200 /* [0x3ff00000] */ # 406: 422480
|
||||
bbsi a4, 0, .Lbr031 # 409: 07e4e2
|
||||
.Lbr032: movi a7, sdk_NMIIrqIsOn # 40c: 71b1ff
|
||||
movi a9, .Ldata001 # 40f: 91afff
|
||||
l32i a8, sp, 0 /* [(local0)] */ # 412: 8801
|
||||
l32i a10, a9, 8 /* [.Ldata003] */ # 414: a829
|
||||
s32i a10, a8, 28 /* [.Ldata003] -> [[(local0)]+0x1c] */ # 416: a978
|
||||
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 418: 720700
|
||||
s32i a8, a9, 8 /* [(local0)] -> [.Ldata003] */ # 41b: 8929
|
||||
bnez a7, .Lbr042 # 41d: 56f716
|
||||
memw # 420: c02000
|
||||
movi a0, 0x3feffe00 # 423: 01acff
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 426: b22080
|
||||
movi a2, -32 /* 0xffffffe0 */ # 429: 6c02
|
||||
and a11, a11, a2 # 42b: 20bb10
|
||||
movi a2, 1 /* 0x00000001 */ # 42e: 0c12
|
||||
or a11, a11, a2 # 430: 20bb20
|
||||
memw # 433: c02000
|
||||
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 436: b26080
|
||||
call0 vPortExitCritical # 439: 01bbffc0
|
||||
# 43d: 0000
|
||||
j .Lbr042 # 43f: 465300
|
||||
.Lbr033: bnei a3, 6, .Lbr036 # 442: 66636c
|
||||
l32i a2, a2, 32 /* [arg0+0x20] */ # 445: 2882
|
||||
movi a3, 0 /* 0x00000000 */ # 447: 0c03
|
||||
movi a4, 24 /* 0x00000018 */ # 449: 1c84
|
||||
call0 memset # 44b: 01b8ffc0
|
||||
# 44f: 0000
|
||||
movi a3, sdk_NMIIrqIsOn # 451: 31a1ff
|
||||
l8ui a3, a3, 0 /* [sdk_NMIIrqIsOn] */ # 454: 320300
|
||||
bnez a3, .Lbr035 # 457: ec13
|
||||
call0 vPortEnterCritical # 459: 01b5ffc0
|
||||
# 45d: 0000
|
||||
.Lbr034: memw # 45f: c02000
|
||||
movi a4, 0x3feffe00 # 462: 419eff
|
||||
l32i a5, a4, 0x200 /* [0x3ff00000] */ # 465: 522480
|
||||
movi a6, -32 /* 0xffffffe0 */ # 468: 6c06
|
||||
and a5, a5, a6 # 46a: 605510
|
||||
memw # 46d: c02000
|
||||
s32i a5, a4, 0x200 /* a5 -> [0x3ff00000] */ # 470: 526480
|
||||
memw # 473: c02000
|
||||
l32i a4, a4, 0x200 /* [0x3ff00000] */ # 476: 422480
|
||||
bbsi a4, 0, .Lbr034 # 479: 07e4e2
|
||||
.Lbr035: movi a7, sdk_NMIIrqIsOn # 47c: 719aff
|
||||
movi a9, .Ldata001 # 47f: 9198ff
|
||||
l32i a8, sp, 0 /* [(local0)] */ # 482: 8801
|
||||
l32i a10, a9, 12 /* [.Ldata004] */ # 484: a839
|
||||
s32i a10, a8, 28 /* [.Ldata004] -> [[(local0)]+0x1c] */ # 486: a978
|
||||
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 488: 720700
|
||||
s32i a8, a9, 12 /* [(local0)] -> [.Ldata004] */ # 48b: 8939
|
||||
bnez a7, .Lbr042 # 48d: 56f70f
|
||||
memw # 490: c02000
|
||||
movi a0, 0x3feffe00 # 493: 0195ff
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 496: b22080
|
||||
movi a2, -32 /* 0xffffffe0 */ # 499: 6c02
|
||||
and a11, a11, a2 # 49b: 20bb10
|
||||
movi a2, 1 /* 0x00000001 */ # 49e: 0c12
|
||||
or a11, a11, a2 # 4a0: 20bb20
|
||||
memw # 4a3: c02000
|
||||
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 4a6: b26080
|
||||
call0 vPortExitCritical # 4a9: 01a2ffc0
|
||||
# 4ad: 0000
|
||||
j .Lbr042 # 4af: 463700
|
||||
.Lbr036: addi a4, a3, -7 /* arg1-0x7 */ # 4b2: 42c3f9
|
||||
bnez a4, .Lbr042 # 4b5: 56740d
|
||||
l32i a2, a2, 32 /* [arg0+0x20] */ # 4b8: 2882
|
||||
movi a3, 0 /* 0x00000000 */ # 4ba: 0c03
|
||||
movi a4, 12 /* 0x0000000c */ # 4bc: 0cc4
|
||||
call0 memset # 4be: 019effc0
|
||||
# 4c2: 0000
|
||||
movi a3, sdk_NMIIrqIsOn # 4c4: 318aff
|
||||
l8ui a4, a3, 0 /* [sdk_NMIIrqIsOn] */ # 4c7: 420300
|
||||
bnez a4, .Lbr038 # 4ca: ec44
|
||||
call0 vPortEnterCritical # 4cc: 019cffc0
|
||||
# 4d0: 0000
|
||||
.Lbr037: memw # 4d2: c02000
|
||||
movi a0, 0x3feffe00 # 4d5: 0186ff
|
||||
l32i a7, a0, 0x200 /* [0x3ff00000] */ # 4d8: 722080
|
||||
movi a5, -32 /* 0xffffffe0 */ # 4db: 6c05
|
||||
and a7, a7, a5 # 4dd: 507710
|
||||
memw # 4e0: c02000
|
||||
s32i a7, a0, 0x200 /* a7 -> [0x3ff00000] */ # 4e3: 726080
|
||||
memw # 4e6: c02000
|
||||
l32i a6, a0, 0x200 /* [0x3ff00000] */ # 4e9: 622080
|
||||
bbsi a6, 0, .Lbr037 # 4ec: 07e6e2
|
||||
movi a3, sdk_NMIIrqIsOn # 4ef: 3181ff
|
||||
.Lbr038: movi a10, .Ldata001 # 4f2: a181ff
|
||||
l32i a9, sp, 0 /* [(local0)] */ # 4f5: 9801
|
||||
l32i a11, a10, 16 /* [.Ldata005] */ # 4f7: b84a
|
||||
s32i a11, a9, 28 /* [.Ldata005] -> [[(local0)]+0x1c] */ # 4f9: b979
|
||||
l8ui a8, a3, 0 /* [sdk_NMIIrqIsOn] */ # 4fb: 820300
|
||||
s32i a9, a10, 16 /* [(local0)] -> [.Ldata005] */ # 4fe: 994a
|
||||
bnez a8, .Lbr042 # 500: 56c808
|
||||
memw # 503: c02000
|
||||
movi a2, 0x3feffe00 # 506: 217dff
|
||||
l32i a0, a2, 0x200 /* [0x3ff00000] */ # 509: 022280
|
||||
movi a3, -32 /* 0xffffffe0 */ # 50c: 6c03
|
||||
and a0, a0, a3 # 50e: 300010
|
||||
movi a3, 1 /* 0x00000001 */ # 511: 0c13
|
||||
or a0, a0, a3 # 513: 300020
|
||||
memw # 516: c02000
|
||||
s32i a0, a2, 0x200 /* a0 -> [0x3ff00000] */ # 519: 026280
|
||||
call0 vPortExitCritical # 51c: 0189ffc0
|
||||
# 520: 0000
|
||||
j .Lbr042 # 522: 861a00
|
||||
.Lbr039: movi a3, 0 /* 0x00000000 */ # 525: 0c03
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 527: 2801
|
||||
movi a4, 24 /* 0x00000018 */ # 529: 1c84
|
||||
l32i a2, a2, 32 /* [[(local0)]+0x20] */ # 52b: 2882
|
||||
call0 memset # 52d: 0185ffc0
|
||||
# 531: 0000
|
||||
movi a5, sdk_NMIIrqIsOn # 533: 5174ff
|
||||
movi a0, 0x3feffe00 # 536: 0172ff
|
||||
l8ui a4, a5, 0 /* [sdk_NMIIrqIsOn] */ # 539: 420500
|
||||
movi a3, -32 /* 0xffffffe0 */ # 53c: 6c03
|
||||
bnez a4, .Lbr041 # 53e: ec44
|
||||
call0 vPortEnterCritical # 540: 0182ffc0
|
||||
# 544: 0000
|
||||
movi a0, 0x3feffe00 # 546: 0170ff
|
||||
movi a3, -32 /* 0xffffffe0 */ # 549: 6c03
|
||||
.Lbr040: memw # 54b: c02000
|
||||
l32i a6, a0, 0x200 /* [0x3ff00000] */ # 54e: 622080
|
||||
and a6, a6, a3 # 551: 306610
|
||||
memw # 554: c02000
|
||||
s32i a6, a0, 0x200 /* a6 -> [0x3ff00000] */ # 557: 626080
|
||||
memw # 55a: c02000
|
||||
l32i a5, a0, 0x200 /* [0x3ff00000] */ # 55d: 522080
|
||||
bbsi a5, 0, .Lbr040 # 560: 07e5e7
|
||||
movi a5, sdk_NMIIrqIsOn # 563: 516aff
|
||||
.Lbr041: movi a9, .Ldata001 # 566: 916aff
|
||||
l32i a8, sp, 0 /* [(local0)] */ # 569: 8801
|
||||
l32i a10, a9, 0 /* [.Ldata001] */ # 56b: a809
|
||||
s32i a10, a8, 28 /* [.Ldata001] -> [[(local0)]+0x1c] */ # 56d: a978
|
||||
l8ui a7, a5, 0 /* [sdk_NMIIrqIsOn] */ # 56f: 720500
|
||||
s32i a8, a9, 0 /* [(local0)] -> [.Ldata001] */ # 572: 8909
|
||||
bnez a7, .Lbr042 # 574: dc87
|
||||
memw # 576: c02000
|
||||
l32i a11, a0, 0x200 /* [0x3ff00000] */ # 579: b22080
|
||||
movi a2, 1 /* 0x00000001 */ # 57c: 0c12
|
||||
and a11, a11, a3 # 57e: 30bb10
|
||||
or a11, a11, a2 # 581: 20bb20
|
||||
memw # 584: c02000
|
||||
s32i a11, a0, 0x200 /* a11 -> [0x3ff00000] */ # 587: b26080
|
||||
call0 vPortExitCritical # 58a: 0170ffc0
|
||||
# 58e: 0000
|
||||
.Lbr042: l32i a0, sp, 4 /* [(local1)] */ # 590: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 592: 12c110
|
||||
ret # 595: 0df0
|
||||
|
||||
.literal_position # 598: 400f0000
|
||||
# 59c: 20000000
|
||||
# 5a0: 00000000
|
||||
# 5a4: 80040000
|
||||
# 5a8: 00f00000
|
||||
# 5ac: e00c0000
|
||||
# 5b0: a0110000
|
||||
|
||||
# Function @ .irom0.text+0x5b4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_esf_buf_setup
|
||||
.type sdk_esf_buf_setup, @function
|
||||
sdk_esf_buf_setup:
|
||||
addi sp, sp, -32 /* (local0) */ # 5b4: 12c1e0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 5b7: 0901
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 5b9: e931
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 5bb: c911
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 5bd: f941
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 5bf: d921
|
||||
movi a15, 60 /* 0x0000003c */ # 5c1: 3ccf
|
||||
movi a13, .Ldata010 # 5c3: d1f5ff
|
||||
movi a12, .Ldata007 # 5c6: c1f5ff
|
||||
movi a14, 1 /* 0x00000001 */ # 5c9: 0c1e
|
||||
.Lbr043: movi a4, sdk_wDevCtrl # 5cb: 41f5ff
|
||||
mov a2, a12 # 5ce: 2d0c
|
||||
l32i a4, a4, 40 /* [sdk_wDevCtrl+0x28] */ # 5d0: 48a4
|
||||
movi a3, 1 /* 0x00000001 */ # 5d2: 0c13
|
||||
add a5, a15, a4 # 5d4: 4a5f
|
||||
s32i a5, a12, 4 # 5d6: 591c
|
||||
s32i a5, a12, 8 # 5d8: 592c
|
||||
l32i a4, a4, 4 /* [[sdk_wDevCtrl+0x28]+0x4] */ # 5da: 4814
|
||||
s32i a4, a12, 16 # 5dc: 494c
|
||||
s16i a14, a12, 12 # 5de: e25c06
|
||||
s32i a13, a12, 32 # 5e1: d98c
|
||||
call0 sdk_esf_buf_recycle # 5e3: 050000
|
||||
addi a12, a12, 36 # 5e6: c2cc24
|
||||
addi a13, a13, 24 # 5e9: d2cd18
|
||||
addi a15, a15, -12 # 5ec: f2cff4
|
||||
bgei a15, 1, .Lbr043 # 5ef: e61fd8
|
||||
movi a14, 8 /* 0x00000008 */ # 5f2: 0c8e
|
||||
movi a15, 0x0000f000 # 5f4: f1edff
|
||||
movi a7, .Ldata008 # 5f7: 71ebff
|
||||
s32i a7, sp, 20 /* .Ldata008 -> [(local5)] */ # 5fa: 7951
|
||||
.Lbr044: memw # 5fc: c02000
|
||||
l32i a8, sp, 20 /* [(local5)] */ # 5ff: 8851
|
||||
l16ui a10, a8, 0 /* [[(local5)]] */ # 601: a21800
|
||||
movi a11, 256 /* 0x00000100 */ # 604: b2a100
|
||||
and a10, a10, a15 # 607: f0aa10
|
||||
or a10, a10, a11 # 60a: b0aa20
|
||||
memw # 60d: c02000
|
||||
s32i a13, a12, 32 # 610: d98c
|
||||
mov a2, a12 # 612: 2d0c
|
||||
movi a3, 4 /* 0x00000004 */ # 614: 0c43
|
||||
s16i a10, a8, 0 /* a10 -> [[(local5)]] */ # 616: a25800
|
||||
s32i a8, a12, 4 # 619: 891c
|
||||
s32i a8, a12, 8 # 61b: 892c
|
||||
movi a9, 1 /* 0x00000001 */ # 61d: 0c19
|
||||
s16i a9, a12, 12 # 61f: 925c06
|
||||
addi a8, a8, 12 /* [(local5)]+0xc */ # 622: cb88
|
||||
s32i a8, a12, 16 # 624: 894c
|
||||
call0 sdk_esf_buf_recycle # 626: 050000
|
||||
addi a12, a12, 36 # 629: c2cc24
|
||||
addi a13, a13, 24 # 62c: d2cd18
|
||||
addi a14, a14, -1 # 62f: 0bee
|
||||
l32i a11, sp, 20 /* [(local5)] */ # 631: b851
|
||||
movi a0, 268 /* 0x0000010c */ # 633: 02a10c
|
||||
add a11, a11, a0 /* [(local5)]+0x10c */ # 636: 0abb
|
||||
s32i a11, sp, 20 /* [(local5)]+0x10c -> [(local5)] */ # 638: b951
|
||||
bgei a14, 1, .Lbr044 # 63a: e61ebe
|
||||
movi a14, 8 /* 0x00000008 */ # 63d: 0c8e
|
||||
movi a3, .Ldata009 # 63f: 31dbff
|
||||
s32i a3, sp, 24 /* .Ldata009 -> [(local6)] */ # 642: 3961
|
||||
.Lbr045: memw # 644: c02000
|
||||
l32i a4, sp, 24 /* [(local6)] */ # 647: 4861
|
||||
l16ui a6, a4, 0 /* [[(local6)]] */ # 649: 621400
|
||||
movi a7, 64 /* 0x00000040 */ # 64c: 4c07
|
||||
and a6, a6, a15 # 64e: f06610
|
||||
or a6, a6, a7 # 651: 706620
|
||||
memw # 654: c02000
|
||||
s32i a13, a12, 32 # 657: d98c
|
||||
mov a2, a12 # 659: 2d0c
|
||||
movi a3, 5 /* 0x00000005 */ # 65b: 0c53
|
||||
s16i a6, a4, 0 /* a6 -> [[(local6)]] */ # 65d: 625400
|
||||
s32i a4, a12, 4 # 660: 491c
|
||||
s32i a4, a12, 8 # 662: 492c
|
||||
movi a5, 1 /* 0x00000001 */ # 664: 0c15
|
||||
s16i a5, a12, 12 # 666: 525c06
|
||||
addi a4, a4, 12 /* [(local6)]+0xc */ # 669: cb44
|
||||
s32i a4, a12, 16 # 66b: 494c
|
||||
call0 sdk_esf_buf_recycle # 66d: 050000
|
||||
addi a12, a12, 36 # 670: c2cc24
|
||||
addi a13, a13, 24 # 673: d2cd18
|
||||
l32i a7, sp, 24 /* [(local6)] */ # 676: 7861
|
||||
addi a14, a14, -1 # 678: 0bee
|
||||
addi a7, a7, 76 /* [(local6)]+0x4c */ # 67a: 72c74c
|
||||
s32i a7, sp, 24 /* [(local6)]+0x4c -> [(local6)] */ # 67d: 7961
|
||||
bgei a14, 1, .Lbr045 # 67f: e61ec1
|
||||
movi a14, 4 /* 0x00000004 */ # 682: 0c4e
|
||||
.Lbr046: s32i a13, a12, 32 # 684: d98c
|
||||
mov a2, a12 # 686: 2d0c
|
||||
movi a3, 6 /* 0x00000006 */ # 688: 0c63
|
||||
call0 sdk_esf_buf_recycle # 68a: 050000
|
||||
addi a12, a12, 36 # 68d: c2cc24
|
||||
addi a13, a13, 24 # 690: d2cd18
|
||||
addi a14, a14, -1 # 693: 0bee
|
||||
bgei a14, 1, .Lbr046 # 695: e61eeb
|
||||
movi a14, 6 /* 0x00000006 */ # 698: 0c6e
|
||||
movi a13, .Label001 # 69a: d1c5ff
|
||||
.Lbr047: s32i a13, a12, 32 # 69d: d98c
|
||||
mov a2, a12 # 69f: 2d0c
|
||||
movi a3, 7 /* 0x00000007 */ # 6a1: 0c73
|
||||
call0 sdk_esf_buf_recycle # 6a3: 050000
|
||||
addi a12, a12, 36 # 6a6: c2cc24
|
||||
addi a13, a13, 12 # 6a9: cbdd
|
||||
addi a14, a14, -1 # 6ab: 0bee
|
||||
bgei a14, 1, .Lbr047 # 6ad: e61eec
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 6b0: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 6b2: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 6b4: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 6b6: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 6b8: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # 6ba: 12c120
|
||||
ret # 6bd: 0df0
|
582
binary_sdk/libpp/if_hwctrl.S
Normal file
582
binary_sdk/libpp/if_hwctrl.S
Normal file
|
@ -0,0 +1,582 @@
|
|||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.global sdk_interface_mask
|
||||
.type sdk_interface_mask, @object
|
||||
sdk_interface_mask:
|
||||
.byte 0x00
|
||||
.space 15
|
||||
.global sdk_if_ctrl
|
||||
.type sdk_if_ctrl, @object
|
||||
sdk_if_ctrl:
|
||||
.space 32
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
.global sdk_ic_get_addr
|
||||
.type sdk_ic_get_addr, @function
|
||||
sdk_ic_get_addr:
|
||||
movi a3, sdk_if_ctrl # 4: 31ffff
|
||||
slli a2, a2, 4 # 7: c02211
|
||||
add a2, a3, a2 # a: 2a23
|
||||
ret # c: 0df0
|
||||
|
||||
.literal_position # 10: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
.global sdk_ic_set_opmode
|
||||
.type sdk_ic_set_opmode, @function
|
||||
sdk_ic_set_opmode:
|
||||
movi a5, sdk_if_ctrl # 14: 51ffff
|
||||
slli a6, a2, 4 # 17: c06211
|
||||
add a5, a5, a6 # 1a: 6a55
|
||||
s32i a3, a5, 8 # 1c: 3925
|
||||
s8i a4, a5, 12 # 1e: 42450c
|
||||
ret /* arg0 */ # 21: 0df0
|
||||
|
||||
.literal_position # 24: 10000000
|
||||
# 28: 00000000
|
||||
# 2c: 00000000
|
||||
# 30: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x34
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_ic_enable_interface
|
||||
.type sdk_ic_enable_interface, @function
|
||||
sdk_ic_enable_interface:
|
||||
addi sp, sp, -16 /* (local0) */ # 34: 12c1f0
|
||||
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 37: 5911
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 39: 0921
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 3b: c931
|
||||
s32i a4, sp, 0 /* arg2 -> [(local0)] */ # 3d: 4901
|
||||
mov a12, a2 /* arg0 */ # 3f: cd02
|
||||
movi a2, sdk_if_ctrl # 41: 21f8ff
|
||||
slli a4, a12, 4 # 44: c04c11
|
||||
add a2, a2, a4 # 47: 4a22
|
||||
movi a4, 6 /* 0x00000006 */ # 49: 0c64
|
||||
call0 memcpy # 4b: 01f8ffc0
|
||||
# 4f: 0000
|
||||
mov a2, a12 /* arg0 */ # 51: 2d0c
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 53: 3801
|
||||
l32i a4, sp, 4 /* [(local1)] */ # 55: 4811
|
||||
call0 sdk_ic_set_opmode # 57: 050000
|
||||
ssl a12 # 5a: 001c40
|
||||
movi a5, sdk_interface_mask # 5d: 51f2ff
|
||||
movi a3, 1 /* 0x00000001 */ # 60: 0c13
|
||||
l8ui a2, a5, 0 /* [sdk_interface_mask] */ # 62: 220500
|
||||
sll a3, a3 # 65: 0033a1
|
||||
or a2, a2, a3 # 68: 302220
|
||||
extui a2, a2, 0, 8 # 6b: 202074
|
||||
s8i a2, a5, 0 /* a2 -> [sdk_interface_mask] */ # 6e: 224500
|
||||
call0 __popcountsi2 # 71: 01efffc0
|
||||
# 75: 0000
|
||||
extui a2, a2, 0, 8 # 77: 202074
|
||||
l32i a12, sp, 12 /* [(local3)] */ # 7a: c831
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 7c: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 7e: 12c110
|
||||
ret # 81: 0df0
|
||||
|
||||
.literal_position # 84: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x88
|
||||
.global sdk_ic_interface_enabled
|
||||
.type sdk_ic_interface_enabled, @function
|
||||
sdk_ic_interface_enabled:
|
||||
movi a3, sdk_interface_mask # 88: 31ffff
|
||||
l8ui a3, a3, 0 /* [sdk_interface_mask] */ # 8b: 320300
|
||||
ssr a2 # 8e: 000240
|
||||
srl a2, a3 # 91: 302091
|
||||
extui a2, a2, 0, 1 # 94: 202004
|
||||
ret # 97: 0df0
|
||||
|
||||
.literal_position # 9c: 00000000
|
||||
# a0: 00000000
|
||||
# a4: 00000000
|
||||
# a8: 00000000
|
||||
# ac: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xb0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ic_disable_interface
|
||||
.type sdk_ic_disable_interface, @function
|
||||
sdk_ic_disable_interface:
|
||||
addi sp, sp, -16 /* (local0) */ # b0: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b3: 0901
|
||||
movi a0, sdk_interface_mask # b5: 01f9ff
|
||||
movi a4, 1 /* 0x00000001 */ # b8: 0c14
|
||||
l8ui a0, a0, 0 /* [sdk_interface_mask] */ # ba: 020000
|
||||
ssr a2 # bd: 000240
|
||||
srl a3, a0 # c0: 003091
|
||||
bbci a3, 0, .Lbr001 # c3: 07631f
|
||||
ssl a2 # c6: 001240
|
||||
sll a3, a4 # c9: 0034a1
|
||||
movi a4, -1 /* 0xffffffff */ # cc: 7cf4
|
||||
xor a3, a3, a4 # ce: 403330
|
||||
movi a4, sdk_interface_mask # d1: 41f3ff
|
||||
and a3, a0, a3 # d4: 303010
|
||||
s8i a3, a4, 0 /* a3 -> [sdk_interface_mask] */ # d7: 324400
|
||||
call0 sdk_rc_disable_trc_by_interface # da: 01f3ffc0
|
||||
# de: 0000
|
||||
movi a0, sdk_interface_mask # e0: 01f1ff
|
||||
l8ui a0, a0, 0 /* [sdk_interface_mask] */ # e3: 020000
|
||||
.Lbr001: mov a2, a0 /* [sdk_interface_mask] */ # e6: 2d00
|
||||
call0 __popcountsi2 # e8: 01f1ffc0
|
||||
# ec: 0000
|
||||
extui a2, a2, 0, 8 # ee: 202074
|
||||
l32i a0, sp, 0 /* [(local0)] */ # f1: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # f3: 12c110
|
||||
ret # f6: 0df0
|
||||
|
||||
.literal_position # f8: 10000000
|
||||
|
||||
# Function @ .irom0.text+0xfc
|
||||
.global sdk_ic_is_pure_sta
|
||||
.type sdk_ic_is_pure_sta, @function
|
||||
sdk_ic_is_pure_sta:
|
||||
movi a4, sdk_if_ctrl # fc: 41ffff
|
||||
slli a5, a2, 4 # ff: c05211
|
||||
add a4, a4, a5 # 102: 5a44
|
||||
l32i a3, a4, 8 # 104: 3824
|
||||
movi a2, 0 /* 0x00000000 */ # 106: 0c02
|
||||
beqi a3, 1, .Lbr002 # 108: 261307
|
||||
l8ui a7, a4, 12 # 10b: 72040c
|
||||
movi a6, 1 /* 0x00000001 */ # 10e: 0c16
|
||||
moveqz a2, a6, a7 # 110: 702683
|
||||
.Lbr002: extui a2, a2, 0, 8 # 113: 202074
|
||||
ret # 116: 0df0
|
||||
|
||||
.literal_position # 118: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x11c
|
||||
.global sdk_ic_get_ptk_alg
|
||||
.type sdk_ic_get_ptk_alg, @function
|
||||
sdk_ic_get_ptk_alg:
|
||||
movi a3, sdk_if_ctrl # 11c: 31ffff
|
||||
slli a2, a2, 4 # 11f: c02211
|
||||
add a2, a3, a2 # 122: 2a23
|
||||
l8ui a2, a2, 13 # 124: 22020d
|
||||
ret # 127: 0df0
|
||||
|
||||
.literal_position # 12c: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x130
|
||||
.global sdk_ic_get_gtk_alg
|
||||
.type sdk_ic_get_gtk_alg, @function
|
||||
sdk_ic_get_gtk_alg:
|
||||
movi a3, sdk_if_ctrl # 130: 31ffff
|
||||
slli a2, a2, 4 # 133: c02211
|
||||
add a2, a3, a2 # 136: 2a23
|
||||
l8ui a2, a2, 14 # 138: 22020e
|
||||
ret # 13b: 0df0
|
||||
|
||||
.literal_position # 140: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x144
|
||||
.global sdk_ic_set_ptk_alg
|
||||
.type sdk_ic_set_ptk_alg, @function
|
||||
sdk_ic_set_ptk_alg:
|
||||
movi a4, sdk_if_ctrl # 144: 41ffff
|
||||
slli a5, a2, 4 # 147: c05211
|
||||
add a4, a4, a5 # 14a: 5a44
|
||||
s8i a3, a4, 13 # 14c: 32440d
|
||||
ret /* arg0 */ # 14f: 0df0
|
||||
|
||||
.literal_position # 154: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x158
|
||||
.global sdk_ic_set_gtk_alg
|
||||
.type sdk_ic_set_gtk_alg, @function
|
||||
sdk_ic_set_gtk_alg:
|
||||
movi a4, sdk_if_ctrl # 158: 41ffff
|
||||
slli a5, a2, 4 # 15b: c05211
|
||||
add a4, a4, a5 # 15e: 5a44
|
||||
s8i a3, a4, 14 # 160: 32440e
|
||||
ret /* arg0 */ # 163: 0df0
|
||||
|
||||
.literal_position # 168: 10000000
|
||||
|
||||
# Function @ .irom0.text+0x16c
|
||||
.global sdk_ic_interface_is_p2p
|
||||
.type sdk_ic_interface_is_p2p, @function
|
||||
sdk_ic_interface_is_p2p:
|
||||
movi a3, sdk_if_ctrl # 16c: 31ffff
|
||||
slli a2, a2, 4 # 16f: c02211
|
||||
add a2, a3, a2 # 172: 2a23
|
||||
l8ui a2, a2, 12 # 174: 22020c
|
||||
ret # 177: 0df0
|
||||
|
||||
.literal_position # 17c: 00000000
|
||||
# 180: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x184
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc001: movi a3, 0 /* 0x00000000 */ # 184: 0c03
|
||||
addi sp, sp, -16 /* (local0) */ # 186: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 189: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 18b: 0901
|
||||
mov a12, a2 /* arg0 */ # 18d: cd02
|
||||
call0 sdk_ic_set_ptk_alg # 18f: 050000
|
||||
mov a2, a12 /* arg0 */ # 192: 2d0c
|
||||
movi a3, 0 /* 0x00000000 */ # 194: 0c03
|
||||
call0 sdk_ic_set_gtk_alg # 196: 050000
|
||||
mov a2, a12 /* arg0 */ # 199: 2d0c
|
||||
call0 sdk_wDev_Crypto_Disable # 19b: 01f8ffc0
|
||||
# 19f: 0000
|
||||
mov a3, a12 /* arg0 */ # 1a1: 3d0c
|
||||
movi a2, 1 /* 0x00000001 */ # 1a3: 0c12
|
||||
movi a4, 0 /* 0x00000000 */ # 1a5: 0c04
|
||||
call0 sdk_wDev_SetRxPolicy # 1a7: 01f6ffc0
|
||||
# 1ab: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 1ad: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1af: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1b1: 12c110
|
||||
ret # 1b4: 0df0
|
||||
|
||||
.literal_position # 1b8: 00000000
|
||||
# 1bc: 00000000
|
||||
# 1c0: 00000000
|
||||
# 1c4: 00000000
|
||||
# 1c8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1cc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc002: addi sp, sp, -16 /* (local0) */ # 1cc: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1cf: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1d1: 0901
|
||||
mov a12, a2 /* arg0 */ # 1d3: cd02
|
||||
movi a2, .Lstr001 # 1d5: 21f8ff
|
||||
mov a3, a12 /* arg0 */ # 1d8: 3d0c
|
||||
call0 printf # 1da: 01f8ffc0
|
||||
# 1de: 0000
|
||||
movi a2, 0 /* 0x00000000 */ # 1e0: 0c02
|
||||
mov a3, a12 /* arg0 */ # 1e2: 3d0c
|
||||
movi a4, 0 /* 0x00000000 */ # 1e4: 0c04
|
||||
call0 sdk_wDev_SetRxPolicy # 1e6: 01f6ffc0
|
||||
# 1ea: 0000
|
||||
mov a2, a12 /* arg0 */ # 1ec: 2d0c
|
||||
call0 sdk_ic_disable_interface # 1ee: 050000
|
||||
bnez a2, .Lbr003 # 1f1: cca2
|
||||
call0 sdk_wDevDisableRx # 1f3: 01f4ffc0
|
||||
# 1f7: 0000
|
||||
call0 sdk_pm_force_scan_unlock # 1f9: 01f3ffc0
|
||||
# 1fd: 0000
|
||||
.Lbr003: l32i a12, sp, 4 /* [(local1)] */ # 1ff: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 201: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 203: 12c110
|
||||
ret # 206: 0df0
|
||||
|
||||
.literal_position # 208: 0c000000
|
||||
# 20c: 18000000
|
||||
# 210: 00000000
|
||||
# 214: 00000000
|
||||
# 218: 00000000
|
||||
# 21c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x220
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_ic_set_vif
|
||||
.type sdk_ic_set_vif, @function
|
||||
sdk_ic_set_vif:
|
||||
addi sp, sp, -32 /* (local0) */ # 220: 12c1e0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 223: 0921
|
||||
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 225: 5911
|
||||
s32i a6, sp, 0 /* arg4 -> [(local0)] */ # 227: 6901
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 229: c931
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 22b: d941
|
||||
mov a12, a2 /* arg0 */ # 22d: cd02
|
||||
mov a13, a4 /* arg2 */ # 22f: dd04
|
||||
bnei a3, 2, .Lbr004 # 231: 662316
|
||||
movi a2, .Lstr002 # 234: 21f5ff
|
||||
mov a3, a12 /* arg0 */ # 237: 3d0c
|
||||
call0 printf # 239: 01f5ffc0
|
||||
# 23d: 0000
|
||||
mov a2, a12 /* arg0 */ # 23f: 2d0c
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 241: 3811
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 243: 4801
|
||||
call0 sdk_ic_set_opmode # 245: 050000
|
||||
j .Lbr007 # 248: 860d00
|
||||
.Lbr004: bnei a3, 1, .Lbr006 # 24b: 661330
|
||||
movi a2, .Lstr003 # 24e: 21efff
|
||||
mov a3, a12 /* arg0 */ # 251: 3d0c
|
||||
call0 printf # 253: 01f0ffc0
|
||||
# 257: 0000
|
||||
mov a2, a12 /* arg0 */ # 259: 2d0c
|
||||
mov a3, a13 /* arg2 */ # 25b: 3d0d
|
||||
call0 sdk_wDev_SetMacAddress # 25d: 01eeffc0
|
||||
# 261: 0000
|
||||
mov a3, a13 /* arg2 */ # 263: 3d0d
|
||||
mov a2, a12 /* arg0 */ # 265: 2d0c
|
||||
l32i a4, sp, 4 /* [(local1)] */ # 267: 4811
|
||||
l32i a5, sp, 0 /* [(local0)] */ # 269: 5801
|
||||
call0 sdk_ic_enable_interface # 26b: 050000
|
||||
bnei a2, 1, .Lbr005 # 26e: 661205
|
||||
call0 sdk_wDevEnableRx # 271: 01eaffc0
|
||||
# 275: 0000
|
||||
.Lbr005: mov a2, a12 /* arg0 */ # 277: 2d0c
|
||||
call0 .Lfunc001 # 279: 85f0ff
|
||||
j .Lbr007 # 27c: 860000
|
||||
.Lbr006: call0 .Lfunc002 # 27f: c5f4ff
|
||||
.Lbr007: l32i a12, sp, 12 /* [(local3)] */ # 282: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 284: d841
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 286: 0821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 288: 12c120
|
||||
ret # 28b: 0df0
|
||||
|
||||
.literal_position # 290: 24000000
|
||||
# 294: 00000000
|
||||
# 298: 00feef3f
|
||||
# 29c: 00000000
|
||||
# 2a0: 00000000
|
||||
# 2a4: 00000000
|
||||
# 2a8: 00000000
|
||||
# 2ac: 00000000
|
||||
# 2b0: 00000000
|
||||
# 2b4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2b8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_ic_set_sta
|
||||
.type sdk_ic_set_sta, @function
|
||||
sdk_ic_set_sta:
|
||||
addi sp, sp, -32 /* (local0) */ # 2b8: 12c1e0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 2bb: c921
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 2bd: 0911
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 2bf: e941
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 2c1: d931
|
||||
mov a14, a6 /* arg4 */ # 2c3: ed06
|
||||
mov a13, a2 /* arg0 */ # 2c5: dd02
|
||||
beqz a3, .Lbr010 # 2c7: 169308
|
||||
mov a3, a4 /* arg2 */ # 2ca: 3d04
|
||||
s32i a7, sp, 0 /* arg5 -> [(local0)] */ # 2cc: 7901
|
||||
mov a4, a5 /* arg3 */ # 2ce: 4d05
|
||||
mov a5, a6 /* arg4 */ # 2d0: 5d06
|
||||
call0 sdk_rc_enable_trc # 2d2: 01f3ffc0
|
||||
# 2d6: 0000
|
||||
mov a12, a2 # 2d8: cd02
|
||||
mov a3, a14 /* arg4 */ # 2da: 3d0e
|
||||
movi a2, .Lstr004 # 2dc: 21edff
|
||||
call0 printf # 2df: 01f1ffc0
|
||||
# 2e3: 0000
|
||||
beqz a12, .Lbr011 # 2e5: 165c07
|
||||
mov a2, a13 /* arg0 */ # 2e8: 2d0d
|
||||
call0 sdk_ic_interface_is_p2p # 2ea: 050000
|
||||
movi a14, -32 /* 0xffffffe0 */ # 2ed: 6c0e
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 2ef: 4801
|
||||
mov a0, a2 # 2f1: 0d02
|
||||
s32i a2, sp, 20 /* a2 -> [(local5)] */ # 2f3: 2951
|
||||
movi a2, sdk_NMIIrqIsOn # 2f5: 21e7ff
|
||||
s32i a4, a12, 92 # 2f8: 426c17
|
||||
l8ui a2, a2, 0 /* [sdk_NMIIrqIsOn] */ # 2fb: 220200
|
||||
movi a13, 0x3feffe00 # 2fe: d1e6ff
|
||||
bnez a2, .Lbr009 # 301: dce2
|
||||
call0 vPortEnterCritical # 303: 01e9ffc0
|
||||
# 307: 0000
|
||||
.Lbr008: memw # 309: c02000
|
||||
l32i a6, a13, 0x200 /* [0x3ff00000] */ # 30c: 622d80
|
||||
and a6, a6, a14 # 30f: e06610
|
||||
memw # 312: c02000
|
||||
s32i a6, a13, 0x200 /* a6 -> [0x3ff00000] */ # 315: 626d80
|
||||
memw # 318: c02000
|
||||
l32i a5, a13, 0x200 /* [0x3ff00000] */ # 31b: 522d80
|
||||
bbsi a5, 0, .Lbr008 # 31e: 07e5e7
|
||||
l32i a0, sp, 20 /* [(local5)] */ # 321: 0851
|
||||
.Lbr009: mov a2, a12 # 323: 2d0c
|
||||
movi a3, 0 /* 0x00000000 */ # 325: 0c03
|
||||
mov a4, a0 # 327: 4d00
|
||||
call0 sdk_rcUpdatePhyMode # 329: 01e0ffc0
|
||||
# 32d: 0000
|
||||
movi a7, sdk_NMIIrqIsOn # 32f: 71dbff
|
||||
l8ui a7, a7, 0 /* [sdk_NMIIrqIsOn] */ # 332: 720700
|
||||
bnez a7, .Lbr011 # 335: ec57
|
||||
memw # 337: c02000
|
||||
l32i a8, a13, 0x200 /* [0x3ff00000] */ # 33a: 822d80
|
||||
movi a9, 1 /* 0x00000001 */ # 33d: 0c19
|
||||
and a8, a8, a14 # 33f: e08810
|
||||
or a8, a8, a9 # 342: 908820
|
||||
memw # 345: c02000
|
||||
s32i a8, a13, 0x200 /* a8 -> [0x3ff00000] */ # 348: 826d80
|
||||
call0 vPortExitCritical # 34b: 01d9ffc0
|
||||
# 34f: 0000
|
||||
j .Lbr011 # 351: 460200
|
||||
.Lbr010: mov a3, a4 /* arg2 */ # 354: 3d04
|
||||
mov a4, a5 /* arg3 */ # 356: 4d05
|
||||
call0 sdk_rc_disable_trc # 358: 01d7ffc0
|
||||
# 35c: 0000
|
||||
.Lbr011: l32i a12, sp, 8 /* [(local2)] */ # 35e: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 360: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 362: e841
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 364: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 366: 12c120
|
||||
ret # 369: 0df0
|
||||
|
||||
.literal_position # 36c: 34000000
|
||||
# 370: 3c000000
|
||||
# 374: 2c000000
|
||||
# 378: 00000000
|
||||
# 37c: 00000000
|
||||
# 380: 00000000
|
||||
# 384: 00000000
|
||||
# 388: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x38c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_ic_bss_info_update
|
||||
.type sdk_ic_bss_info_update, @function
|
||||
sdk_ic_bss_info_update:
|
||||
addi sp, sp, -16 /* (local0) */ # 38c: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 38f: 0911
|
||||
bnei a4, 2, .Lbr012 # 391: 662412
|
||||
s32i a5, sp, 0 /* arg3 -> [(local0)] */ # 394: 5901
|
||||
beqz a5, .Lbr015 # 396: bcb5
|
||||
mov a4, a3 /* arg1 */ # 398: 4d03
|
||||
mov a3, a2 /* arg0 */ # 39a: 3d02
|
||||
movi a2, 2 /* 0x00000002 */ # 39c: 0c22
|
||||
call0 sdk_wDev_SetRxPolicy # 39e: 01f6ffc0
|
||||
# 3a2: 0000
|
||||
j .Lbr016 # 3a4: 060c00
|
||||
.Lbr012: bnei a4, 1, .Lbr013 # 3a7: 661417
|
||||
mov a4, a3 /* arg1 */ # 3aa: 4d03
|
||||
mov a3, a2 /* arg0 */ # 3ac: 3d02
|
||||
movi a2, 2 /* 0x00000002 */ # 3ae: 0c22
|
||||
call0 sdk_wDev_SetRxPolicy # 3b0: 01f3ffc0
|
||||
# 3b4: 0000
|
||||
movi a2, .Lstr006 # 3b6: 21edff
|
||||
call0 printf # 3b9: 01f1ffc0
|
||||
# 3bd: 0000
|
||||
j .Lbr014 # 3bf: c60200
|
||||
.Lbr013: call0 .Lfunc001 # 3c2: 05dcff
|
||||
movi a2, .Lstr007 # 3c5: 21eaff
|
||||
call0 printf # 3c8: 01efffc0
|
||||
# 3cc: 0000
|
||||
.Lbr014: l32i a0, sp, 4 /* [(local1)] */ # 3ce: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 3d0: 12c110
|
||||
ret # 3d3: 0df0
|
||||
.Lbr015: call0 .Lfunc001 # 3d5: c5daff
|
||||
.Lbr016: movi a2, .Lstr005 # 3d8: 21e7ff
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 3db: 3801
|
||||
call0 printf # 3dd: 01eaffc0
|
||||
# 3e1: 0000
|
||||
j .Lbr014 # 3e3: c6f9ff
|
||||
|
||||
.literal_position # 3e8: 00000000
|
||||
# 3ec: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x3f0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x30
|
||||
# (local1): word @ -0x20
|
||||
# (local2): word @ -0x1c
|
||||
# (local3): word @ -0x18
|
||||
# (local4): word @ -0x14
|
||||
# (local5): word @ -0x10
|
||||
# (local6): word @ -0xc
|
||||
# (local7): word[2] @ -0x8
|
||||
.global sdk_ic_set_key
|
||||
.type sdk_ic_set_key, @function
|
||||
sdk_ic_set_key:
|
||||
addi sp, sp, -48 /* (local0) */ # 3f0: 12c1d0
|
||||
s32i a0, sp, 28 /* a0 -> [(local4)] */ # 3f3: 0971
|
||||
s32i a4, sp, 16 /* arg2 -> [(local1)] */ # 3f5: 4941
|
||||
s32i a5, sp, 20 /* arg3 -> [(local2)] */ # 3f7: 5951
|
||||
s32i a7, sp, 24 /* arg5 -> [(local3)] */ # 3f9: 7961
|
||||
s32i a14, sp, 40 /* a14 -> [(local7)] */ # 3fb: e9a1
|
||||
s32i a13, sp, 36 /* a13 -> [(local6)] */ # 3fd: d991
|
||||
s32i a12, sp, 32 /* a12 -> [(local5)] */ # 3ff: c981
|
||||
mov a13, a2 /* arg0 */ # 401: dd02
|
||||
mov a12, a3 /* arg1 */ # 403: cd03
|
||||
mov a14, a6 /* arg4 */ # 405: ed06
|
||||
bltui a6, 6, .Lbr017 # 407: b66605
|
||||
call0 sdk_ic_set_ptk_alg # 40a: 050000
|
||||
j .Lbr019 # 40d: 460400
|
||||
.Lbr017: bnez a3, .Lbr018 # 410: ccb3
|
||||
call0 sdk_ic_set_ptk_alg # 412: 050000
|
||||
mov a2, a13 /* arg0 */ # 415: 2d0d
|
||||
mov a3, a12 /* arg1 */ # 417: 3d0c
|
||||
call0 sdk_ic_set_gtk_alg # 419: 050000
|
||||
j .Lbr019 # 41c: 860000
|
||||
.Lbr018: call0 sdk_ic_set_gtk_alg # 41f: 050000
|
||||
.Lbr019: mov a6, a14 /* arg4 */ # 422: 6d0e
|
||||
l32i a4, sp, 16 /* [(local1)] */ # 424: 4841
|
||||
l32i a5, sp, 20 /* [(local2)] */ # 426: 5851
|
||||
l32i a7, sp, 24 /* [(local3)] */ # 428: 7861
|
||||
mov a2, a12 /* arg1 */ # 42a: 2d0c
|
||||
mov a3, a13 /* arg0 */ # 42c: 3d0d
|
||||
l8ui a0, sp, 48 /* [(local8)] */ # 42e: 020130
|
||||
s32i a0, sp, 0 /* [(local8)] -> [(local0)] */ # 431: 0901
|
||||
call0 sdk_wDev_Insert_KeyEntry # 433: 01edffc0
|
||||
# 437: 0000
|
||||
mov a3, a12 /* arg1 */ # 439: 3d0c
|
||||
mov a2, a13 /* arg0 */ # 43b: 2d0d
|
||||
call0 sdk_wDev_Crypto_Conf # 43d: 01ebffc0
|
||||
# 441: 0000
|
||||
l32i a12, sp, 32 /* [(local5)] */ # 443: c881
|
||||
l32i a13, sp, 36 /* [(local6)] */ # 445: d891
|
||||
l32i a14, sp, 40 /* [(local7)] */ # 447: e8a1
|
||||
l32i a0, sp, 28 /* [(local4)] */ # 449: 0871
|
||||
addi sp, sp, 48 /* (local8) */ # 44b: 12c130
|
||||
ret # 44e: 0df0
|
||||
|
||||
.literal_position # 450: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x454
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_ic_remove_key
|
||||
.type sdk_ic_remove_key, @function
|
||||
sdk_ic_remove_key:
|
||||
addi sp, sp, -16 /* (local0) */ # 454: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 457: 0901
|
||||
call0 sdk_wDev_remove_KeyEntry # 459: 01fdffc0
|
||||
# 45d: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 45f: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 461: 12c110
|
||||
ret # 464: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "del if%d\n" # 0: 64656c20
|
||||
# 4: 69662564
|
||||
# 8: 0a00
|
||||
.balign 4
|
||||
.Lstr002: .asciz "chg if%d\n" # c: 63686720
|
||||
# 10: 69662564
|
||||
# 14: 0a00
|
||||
.balign 4
|
||||
.Lstr003: .asciz "add if%d\n" # 18: 61646420
|
||||
# 1c: 69662564
|
||||
# 20: 0a00
|
||||
.balign 4
|
||||
.Lstr004: .asciz "aid %d\n" # 24: 61696420
|
||||
# 28: 25640a00
|
||||
.Lstr005: .asciz "bcn %d\n" # 2c: 62636e20
|
||||
# 30: 25640a00
|
||||
.Lstr006: .asciz "cnt \n" # 34: 636e7420
|
||||
# 38: 0a00
|
||||
.balign 4
|
||||
.Lstr007: .asciz "uncnt \n" # 3c: 756e636e
|
||||
# 40: 74200a00
|
2683
binary_sdk/libpp/lmac.S
Normal file
2683
binary_sdk/libpp/lmac.S
Normal file
File diff suppressed because it is too large
Load diff
0
binary_sdk/libpp/mac_frame.S
Normal file
0
binary_sdk/libpp/mac_frame.S
Normal file
3123
binary_sdk/libpp/pm.S
Normal file
3123
binary_sdk/libpp/pm.S
Normal file
File diff suppressed because it is too large
Load diff
3980
binary_sdk/libpp/pp.S
Normal file
3980
binary_sdk/libpp/pp.S
Normal file
File diff suppressed because it is too large
Load diff
557
binary_sdk/libpp/rate_control.S
Normal file
557
binary_sdk/libpp/rate_control.S
Normal file
|
@ -0,0 +1,557 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
# Function @ .text+0x0
|
||||
.Lfunc001: bltui a2, 5, .Lbr003 # 0: b65213
|
||||
bltui a2, 8, .Lbr001 # 3: b68209
|
||||
movi a4, 36 /* 0x00000024 */ # 6: 2c44
|
||||
bgeui a2, 16, .Lbr002 # 8: f6b207
|
||||
movi a4, 20 /* 0x00000014 */ # b: 1c44
|
||||
j .Lbr002 # d: 860000
|
||||
.Lbr001: movi a4, 96 /* 0x00000060 */ # 10: 42a060
|
||||
.Lbr002: mov a2, a4 # 13: 2d04
|
||||
ret # 15: 0df0
|
||||
.Lbr003: movi a2, 192 /* 0x000000c0 */ # 17: 22a0c0
|
||||
ret /* 0x000000c0 */ # 1a: 0df0
|
||||
|
||||
.literal_position # 1c: 00000000
|
||||
|
||||
# Function @ .text+0x20
|
||||
.global sdk_RC_GetAckRate
|
||||
.type sdk_RC_GetAckRate, @function
|
||||
sdk_RC_GetAckRate:
|
||||
movi a3, .Ldata002 # 20: 31ffff
|
||||
addx8 a2, a2, a3 # 23: 3022b0
|
||||
l8ui a2, a2, 5 # 26: 220205
|
||||
ret # 29: 0df0
|
||||
|
||||
.literal_position # 2c: 00000000
|
||||
|
||||
# Function @ .text+0x30
|
||||
.global sdk_RC_GetRtsRate
|
||||
.type sdk_RC_GetRtsRate, @function
|
||||
sdk_RC_GetRtsRate:
|
||||
movi a3, .Ldata002 # 30: 31ffff
|
||||
addx8 a2, a2, a3 # 33: 3022b0
|
||||
l8ui a2, a2, 4 # 36: 220204
|
||||
ret # 39: 0df0
|
||||
|
||||
.literal_position # 3c: 00000000
|
||||
# 40: 00000000
|
||||
|
||||
# Function @ .text+0x44
|
||||
.global sdk_RC_GetAckTime
|
||||
.type sdk_RC_GetAckTime, @function
|
||||
sdk_RC_GetAckTime:
|
||||
movi a3, .Ldata002 # 44: 31feff
|
||||
addx8 a2, a2, a3 # 47: 3022b0
|
||||
movi a3, .Ldata001 # 4a: 31fdff
|
||||
l8ui a2, a2, 5 # 4d: 220205
|
||||
addx2 a2, a2, a3 # 50: 302290
|
||||
l16ui a2, a2, 0 # 53: 221200
|
||||
ret # 56: 0df0
|
||||
|
||||
# Function @ .text+0x58
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_RC_GetCtsTime
|
||||
.type sdk_RC_GetCtsTime, @function
|
||||
sdk_RC_GetCtsTime:
|
||||
addi sp, sp, -32 /* (local0) */ # 58: 12c1e0
|
||||
s32i a3, sp, 0 /* arg1 -> [(local0)] */ # 5b: 3901
|
||||
s32i a4, sp, 4 /* arg2 -> [(local1)] */ # 5d: 4911
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 5f: c931
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 61: 0921
|
||||
mov a12, a2 /* arg0 */ # 63: cd02
|
||||
call0 .Lfunc001 # 65: 85f9ff
|
||||
s32i a2, sp, 16 /* a2 -> [(local4)] */ # 68: 2941
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 6a: 3801
|
||||
mov a2, a12 /* arg0 */ # 6c: 2d0c
|
||||
call0 .Lfunc002 # 6e: 850600
|
||||
l32i a0, sp, 16 /* [(local4)] */ # 71: 0841
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 73: 3811
|
||||
movi a4, 10 /* 0x0000000a */ # 75: 0ca4
|
||||
add a2, a3, a2 # 77: 2a23
|
||||
bltui a12, 8, .Lbr004 # 79: b68c01
|
||||
movi a4, 16 /* 0x00000010 */ # 7c: 1c04
|
||||
.Lbr004: l32i a12, sp, 12 /* [(local3)] */ # 7e: c831
|
||||
add a5, a0, a4 # 80: 4a50
|
||||
add a2, a2, a5 # 82: 5a22
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 84: 0821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 86: 12c120
|
||||
extui a2, a2, 0, 16 # 89: 2020f4
|
||||
ret # 8c: 0df0
|
||||
|
||||
.literal_position # 90: 00000000
|
||||
|
||||
# Function @ .text+0x94
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_RC_GetBlockAckTime
|
||||
.type sdk_RC_GetBlockAckTime, @function
|
||||
sdk_RC_GetBlockAckTime:
|
||||
addi sp, sp, -16 /* (local0) */ # 94: 12c1f0
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 97: c931
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 99: 0921
|
||||
movi a0, .Ldata002 # 9b: 01fdff
|
||||
movi a12, 10 /* 0x0000000a */ # 9e: 0cac
|
||||
addx8 a0, a2, a0 # a0: 0002b0
|
||||
l8ui a2, a0, 5 # a3: 220005
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # a6: 0901
|
||||
bltui a2, 8, .Lbr005 # a8: b68201
|
||||
movi a12, 16 /* 0x00000010 */ # ab: 1c0c
|
||||
.Lbr005: call0 .Lfunc001 # ad: 05f5ff
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # b0: 2911
|
||||
l32i a2, sp, 0 /* [(local0)] */ # b2: 2801
|
||||
movi a3, 32 /* 0x00000020 */ # b4: 2c03
|
||||
l8ui a2, a2, 5 /* [[(local0)]+0x5] */ # b6: 220205
|
||||
call0 .Lfunc002 # b9: c50100
|
||||
l32i a3, sp, 4 /* [(local1)] */ # bc: 3811
|
||||
l32i a0, sp, 8 /* [(local2)] */ # be: 0821
|
||||
add a3, a12, a3 # c0: 3a3c
|
||||
l32i a12, sp, 12 /* [(local3)] */ # c2: c831
|
||||
add a2, a2, a3 # c4: 3a22
|
||||
extui a2, a2, 0, 16 # c6: 2020f4
|
||||
addi sp, sp, 16 /* (top of frame) */ # c9: 12c110
|
||||
ret # cc: 0df0
|
||||
|
||||
.literal_position # d0: 00000000
|
||||
# d4: ffff0300
|
||||
|
||||
# Function @ .text+0xd8
|
||||
.Lfunc002: slli a4, a3, 3 # d8: d04311
|
||||
movi a5, .Ldata002 # db: 51fdff
|
||||
extui a3, a4, 0, 16 # de: 4030f4
|
||||
movi a4, 0x0003ffff # e1: 41fcff
|
||||
addx8 a5, a2, a5 # e4: 5052b0
|
||||
l32i a5, a5, 0 # e7: 5805
|
||||
bltui a2, 8, .Lbr006 # e9: b68205
|
||||
addi a3, a3, 22 # ec: 32c316
|
||||
extui a3, a3, 0, 16 # ef: 3030f4
|
||||
.Lbr006: mull a3, a5, a3 # f2: 303582
|
||||
add a3, a3, a4 # f5: 4a33
|
||||
extui a3, a3, 18, 14 # f7: 3032d5
|
||||
bltui a2, 8, .Lbr007 # fa: b68206
|
||||
movi a4, -4 /* 0xfffffffc */ # fd: 7cc4
|
||||
addi a3, a3, 3 # ff: 3b33
|
||||
and a3, a3, a4 # 101: 403310
|
||||
.Lbr007: extui a2, a3, 0, 16 # 104: 3020f4
|
||||
ret # 107: 0df0
|
||||
|
||||
.section .data, "aw", @progbits
|
||||
|
||||
.Ldata001: .byte 0x3a, 0x01, 0x02, 0x01, 0xdf, 0x00, 0xd5, 0x00
|
||||
.byte 0x3a, 0x01, 0xa2, 0x00, 0x7f, 0x00, 0x75, 0x00
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x30, 0x00, 0x3c, 0x00
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x30, 0x00, 0x3c, 0x00
|
||||
.byte 0x3c, 0x00, 0x30, 0x00, 0x30, 0x00, 0x2c, 0x00
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00
|
||||
.byte 0x3c, 0x00, 0x30, 0x00, 0x30, 0x00, 0x2c, 0x00
|
||||
.byte 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00, 0x2c, 0x00
|
||||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata002: .word 0x00000000 # 0: 00000000
|
||||
.Ldata003: .byte 0x00
|
||||
.Ldata004: .byte 0x00
|
||||
.Ldata005: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata006: .word 0x00000000 # 8: 00000000
|
||||
.Ldata007: .byte 0x00
|
||||
.Ldata008: .byte 0x00
|
||||
.Ldata009: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata010: .word 0x00000000 # 10: 00000000
|
||||
.Ldata011: .byte 0x00
|
||||
.Ldata012: .byte 0x00
|
||||
.Ldata013: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata014: .word 0x00000000 # 18: 00000000
|
||||
.Ldata015: .byte 0x00
|
||||
.Ldata016: .byte 0x00
|
||||
.Ldata017: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata018: .word 0x00000000 # 20: 00000000
|
||||
.Ldata019: .byte 0x00
|
||||
.Ldata020: .byte 0x00
|
||||
.Ldata021: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata022: .word 0x00000000 # 28: 00000000
|
||||
.Ldata023: .byte 0x00
|
||||
.Ldata024: .byte 0x00
|
||||
.Ldata025: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata026: .word 0x00000000 # 30: 00000000
|
||||
.Ldata027: .byte 0x00
|
||||
.Ldata028: .byte 0x00
|
||||
.Ldata029: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata030: .word 0x00000000 # 38: 00000000
|
||||
.Ldata031: .byte 0x00
|
||||
.Ldata032: .byte 0x00
|
||||
.Ldata033: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata034: .word 0x00000000 # 40: 00000000
|
||||
.Ldata035: .byte 0x00
|
||||
.Ldata036: .byte 0x00
|
||||
.Ldata037: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata038: .word 0x00000000 # 48: 00000000
|
||||
.Ldata039: .byte 0x00
|
||||
.Ldata040: .byte 0x00
|
||||
.Ldata041: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata042: .word 0x00000000 # 50: 00000000
|
||||
.Ldata043: .byte 0x00
|
||||
.Ldata044: .byte 0x00
|
||||
.Ldata045: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata046: .word 0x00000000 # 58: 00000000
|
||||
.Ldata047: .byte 0x00
|
||||
.Ldata048: .byte 0x00
|
||||
.Ldata049: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata050: .word 0x00000000 # 60: 00000000
|
||||
.Ldata051: .byte 0x00
|
||||
.Ldata052: .byte 0x00
|
||||
.Ldata053: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata054: .word 0x00000000 # 68: 00000000
|
||||
.Ldata055: .byte 0x00
|
||||
.Ldata056: .byte 0x00
|
||||
.Ldata057: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata058: .word 0x00000000 # 70: 00000000
|
||||
.Ldata059: .byte 0x00
|
||||
.Ldata060: .byte 0x00
|
||||
.Ldata061: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata062: .word 0x00000000 # 78: 00000000
|
||||
.Ldata063: .byte 0x00
|
||||
.Ldata064: .byte 0x00
|
||||
.Ldata065: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata066: .word 0x00000000 # 80: 00000000
|
||||
.Ldata067: .byte 0x00
|
||||
.Ldata068: .byte 0x00
|
||||
.Ldata069: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata070: .word 0x00000000 # 88: 00000000
|
||||
.Ldata071: .byte 0x00
|
||||
.Ldata072: .byte 0x00
|
||||
.Ldata073: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata074: .word 0x00000000 # 90: 00000000
|
||||
.Ldata075: .byte 0x00
|
||||
.Ldata076: .byte 0x00
|
||||
.Ldata077: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata078: .word 0x00000000 # 98: 00000000
|
||||
.Ldata079: .byte 0x00
|
||||
.Ldata080: .byte 0x00
|
||||
.Ldata081: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata082: .word 0x00000000 # a0: 00000000
|
||||
.Ldata083: .byte 0x00
|
||||
.Ldata084: .byte 0x00
|
||||
.Ldata085: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata086: .word 0x00000000 # a8: 00000000
|
||||
.Ldata087: .byte 0x00
|
||||
.Ldata088: .byte 0x00
|
||||
.Ldata089: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata090: .word 0x00000000 # b0: 00000000
|
||||
.Ldata091: .byte 0x00
|
||||
.Ldata092: .byte 0x00
|
||||
.Ldata093: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata094: .word 0x00000000 # b8: 00000000
|
||||
.Ldata095: .byte 0x00
|
||||
.Ldata096: .byte 0x00
|
||||
.Ldata097: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata098: .word 0x00000000 # c0: 00000000
|
||||
.Ldata099: .byte 0x00
|
||||
.Ldata100: .byte 0x00
|
||||
.Ldata101: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata102: .word 0x00000000 # c8: 00000000
|
||||
.Ldata103: .byte 0x00
|
||||
.Ldata104: .byte 0x00
|
||||
.Ldata105: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata106: .word 0x00000000 # d0: 00000000
|
||||
.Ldata107: .byte 0x00
|
||||
.Ldata108: .byte 0x00
|
||||
.Ldata109: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata110: .word 0x00000000 # d8: 00000000
|
||||
.Ldata111: .byte 0x00
|
||||
.Ldata112: .byte 0x00
|
||||
.Ldata113: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata114: .word 0x00000000 # e0: 00000000
|
||||
.Ldata115: .byte 0x00
|
||||
.Ldata116: .byte 0x00
|
||||
.Ldata117: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata118: .word 0x00000000 # e8: 00000000
|
||||
.Ldata119: .byte 0x00
|
||||
.Ldata120: .byte 0x00
|
||||
.Ldata121: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata122: .word 0x00000000 # f0: 00000000
|
||||
.Ldata123: .byte 0x00
|
||||
.Ldata124: .byte 0x00
|
||||
.Ldata125: .byte 0x00
|
||||
.balign 4
|
||||
.Ldata126: .word 0x00000000 # f8: 00000000
|
||||
.Ldata127: .byte 0x00
|
||||
.Ldata128: .byte 0x00
|
||||
.Ldata129: .byte 0x00
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000400
|
||||
# 8: 00000200
|
||||
# c: 2eba0000
|
||||
# 10: 175d0000
|
||||
# 14: c00f0000
|
||||
# 18: aaaa0000
|
||||
# 1c: c7710000
|
||||
# 20: 55550000
|
||||
# 24: e3380000
|
||||
# 28: aa2a0000
|
||||
# 2c: 711c0000
|
||||
# 30: 55150000
|
||||
# 34: f6120000
|
||||
# 38: 899d0000
|
||||
# 3c: c44e0000
|
||||
# 40: 83340000
|
||||
# 44: 62270000
|
||||
# 48: 411a0000
|
||||
# 4c: b1130000
|
||||
# 50: 81110000
|
||||
# 54: c88d0000
|
||||
# 58: e4460000
|
||||
# 5c: 422f0000
|
||||
# 60: 72230000
|
||||
# 64: a1170000
|
||||
# 68: b9110000
|
||||
# 6c: 2d0e0000
|
||||
|
||||
# Function @ .irom0.text+0x70
|
||||
.Lfunc003: movi a9, 0x0000ba2e # 70: 91e7ff
|
||||
movi a4, 0x00040000 # 73: 41e4ff
|
||||
movi a11, 0x00020000 # 76: b1e4ff
|
||||
movi a7, 0x00005d17 # 79: 71e5ff
|
||||
movi a5, 7 /* 0x00000007 */ # 7c: 0c75
|
||||
movi a6, 3 /* 0x00000003 */ # 7e: 0c36
|
||||
movi a2, 0 /* 0x00000000 */ # 80: 0c02
|
||||
movi a10, 1 /* 0x00000001 */ # 82: 0c1a
|
||||
movi a3, .Ldata002 # 84: 31dfff
|
||||
movi a8, 2 /* 0x00000002 */ # 87: 0c28
|
||||
s8i a8, a3, 54 /* 0x02 -> [.Ldata029] */ # 89: 824336
|
||||
s8i a8, a3, 20 /* 0x02 -> [.Ldata011] */ # 8c: 824314
|
||||
s8i a8, a3, 21 /* 0x02 -> [.Ldata012] */ # 8f: 824315
|
||||
s8i a8, a3, 22 /* 0x02 -> [.Ldata013] */ # 92: 824316
|
||||
s8i a10, a3, 46 /* 0x01 -> [.Ldata025] */ # 95: a2432e
|
||||
s8i a10, a3, 12 /* 0x01 -> [.Ldata007] */ # 98: a2430c
|
||||
s8i a10, a3, 13 /* 0x01 -> [.Ldata008] */ # 9b: a2430d
|
||||
s8i a10, a3, 14 /* 0x01 -> [.Ldata009] */ # 9e: a2430e
|
||||
s8i a2, a3, 4 /* 0x00 -> [.Ldata003] */ # a1: 224304
|
||||
s8i a2, a3, 5 /* 0x00 -> [.Ldata004] */ # a4: 224305
|
||||
s8i a2, a3, 6 /* 0x00 -> [.Ldata005] */ # a7: 224306
|
||||
s8i a2, a3, 38 /* 0x00 -> [.Ldata021] */ # aa: 224326
|
||||
s8i a6, a3, 62 /* 0x03 -> [.Ldata033] */ # ad: 62433e
|
||||
s8i a6, a3, 28 /* 0x03 -> [.Ldata015] */ # b0: 62431c
|
||||
s8i a6, a3, 29 /* 0x03 -> [.Ldata016] */ # b3: 62431d
|
||||
s8i a6, a3, 30 /* 0x03 -> [.Ldata017] */ # b6: 62431e
|
||||
s8i a5, a3, 60 /* 0x07 -> [.Ldata031] */ # b9: 52433c
|
||||
s8i a5, a3, 61 /* 0x07 -> [.Ldata032] */ # bc: 52433d
|
||||
s8i a5, a3, 70 /* 0x07 -> [.Ldata037] */ # bf: 524346
|
||||
s8i a5, a3, 102 /* 0x07 -> [.Ldata053] */ # c2: 524366
|
||||
s32i a7, a3, 56 /* 0x00005d17 -> [.Ldata030] */ # c5: 79e3
|
||||
s32i a7, a3, 24 /* 0x00005d17 -> [.Ldata014] */ # c7: 7963
|
||||
s32i a11, a3, 40 /* 0x00020000 -> [.Ldata022] */ # c9: b9a3
|
||||
s32i a11, a3, 8 /* 0x00020000 -> [.Ldata006] */ # cb: b923
|
||||
s32i a4, a3, 0 /* 0x00040000 -> [.Ldata002] */ # cd: 4903
|
||||
s32i a9, a3, 48 /* 0x0000ba2e -> [.Ldata026] */ # cf: 99c3
|
||||
s32i a9, a3, 16 /* 0x0000ba2e -> [.Ldata010] */ # d1: 9943
|
||||
s32i a4, a3, 32 /* 0x00040000 -> [.Ldata018] */ # d3: 4983
|
||||
movi a9, 0x00000fc0 # d5: 91cfff
|
||||
movi a4, 11 /* 0x0000000b */ # d8: 0cb4
|
||||
movi a11, 10 /* 0x0000000a */ # da: 0cab
|
||||
movi a7, 6 /* 0x00000006 */ # dc: 0c67
|
||||
s8i a7, a3, 52 /* 0x06 -> [.Ldata027] */ # de: 724334
|
||||
s8i a7, a3, 53 /* 0x06 -> [.Ldata028] */ # e1: 724335
|
||||
s8i a7, a3, 78 /* 0x06 -> [.Ldata041] */ # e4: 72434e
|
||||
s8i a7, a3, 110 /* 0x06 -> [.Ldata057] */ # e7: 72436e
|
||||
s8i a7, a3, 158 /* 0x06 -> [.Ldata081] */ # ea: 72439e
|
||||
s8i a7, a3, 166 /* 0x06 -> [.Ldata085] */ # ed: 7243a6
|
||||
s8i a7, a3, 174 /* 0x06 -> [.Ldata089] */ # f0: 7243ae
|
||||
s8i a7, a3, 182 /* 0x06 -> [.Ldata093] */ # f3: 7243b6
|
||||
s8i a7, a3, 190 /* 0x06 -> [.Ldata097] */ # f6: 7243be
|
||||
s8i a7, a3, 222 /* 0x06 -> [.Ldata113] */ # f9: 7243de
|
||||
s8i a7, a3, 230 /* 0x06 -> [.Ldata117] */ # fc: 7243e6
|
||||
s8i a7, a3, 238 /* 0x06 -> [.Ldata121] */ # ff: 7243ee
|
||||
s8i a7, a3, 246 /* 0x06 -> [.Ldata125] */ # 102: 7243f6
|
||||
s8i a7, a3, 254 /* 0x06 -> [.Ldata129] */ # 105: 7243fe
|
||||
s8i a11, a3, 84 /* 0x0a -> [.Ldata043] */ # 108: b24354
|
||||
s8i a11, a3, 85 /* 0x0a -> [.Ldata044] */ # 10b: b24355
|
||||
s8i a11, a3, 116 /* 0x0a -> [.Ldata059] */ # 10e: b24374
|
||||
s8i a11, a3, 117 /* 0x0a -> [.Ldata060] */ # 111: b24375
|
||||
s8i a11, a3, 140 /* 0x0a -> [.Ldata071] */ # 114: b2438c
|
||||
s8i a11, a3, 141 /* 0x0a -> [.Ldata072] */ # 117: b2438d
|
||||
s8i a11, a3, 148 /* 0x0a -> [.Ldata075] */ # 11a: b24394
|
||||
s8i a11, a3, 149 /* 0x0a -> [.Ldata076] */ # 11d: b24395
|
||||
s8i a11, a3, 204 /* 0x0a -> [.Ldata103] */ # 120: b243cc
|
||||
s8i a11, a3, 205 /* 0x0a -> [.Ldata104] */ # 123: b243cd
|
||||
s8i a11, a3, 212 /* 0x0a -> [.Ldata107] */ # 126: b243d4
|
||||
s8i a11, a3, 213 /* 0x0a -> [.Ldata108] */ # 129: b243d5
|
||||
s8i a4, a3, 92 /* 0x0b -> [.Ldata047] */ # 12c: 42435c
|
||||
s8i a4, a3, 93 /* 0x0b -> [.Ldata048] */ # 12f: 42435d
|
||||
s8i a4, a3, 124 /* 0x0b -> [.Ldata063] */ # 132: 42437c
|
||||
s8i a4, a3, 125 /* 0x0b -> [.Ldata064] */ # 135: 42437d
|
||||
s8i a4, a3, 132 /* 0x0b -> [.Ldata067] */ # 138: 424384
|
||||
s8i a4, a3, 133 /* 0x0b -> [.Ldata068] */ # 13b: 424385
|
||||
s8i a4, a3, 196 /* 0x0b -> [.Ldata099] */ # 13e: 4243c4
|
||||
s8i a4, a3, 197 /* 0x0b -> [.Ldata100] */ # 141: 4243c5
|
||||
s32i a9, a3, 184 /* 0x00000fc0 -> [.Ldata094] */ # 144: 92632e
|
||||
s32i a9, a3, 240 /* 0x00000fc0 -> [.Ldata122] */ # 147: 92633c
|
||||
movi a5, 0x000071c7 # 14a: 51b4ff
|
||||
movi a6, 0x0000aaaa # 14d: 61b2ff
|
||||
movi a2, 4 /* 0x00000004 */ # 150: 0c42
|
||||
movi a10, 5 /* 0x00000005 */ # 152: 0c5a
|
||||
movi a8, 9 /* 0x00000009 */ # 154: 0c98
|
||||
s8i a8, a3, 76 /* 0x09 -> [.Ldata039] */ # 156: 82434c
|
||||
s8i a8, a3, 77 /* 0x09 -> [.Ldata040] */ # 159: 82434d
|
||||
s8i a8, a3, 108 /* 0x09 -> [.Ldata055] */ # 15c: 82436c
|
||||
s8i a8, a3, 109 /* 0x09 -> [.Ldata056] */ # 15f: 82436d
|
||||
s8i a8, a3, 68 /* 0x09 -> [.Ldata035] */ # 162: 824344
|
||||
s8i a8, a3, 69 /* 0x09 -> [.Ldata036] */ # 165: 824345
|
||||
s8i a8, a3, 100 /* 0x09 -> [.Ldata051] */ # 168: 824364
|
||||
s8i a8, a3, 101 /* 0x09 -> [.Ldata052] */ # 16b: 824365
|
||||
s8i a8, a3, 156 /* 0x09 -> [.Ldata079] */ # 16e: 82439c
|
||||
s8i a8, a3, 157 /* 0x09 -> [.Ldata080] */ # 171: 82439d
|
||||
s8i a8, a3, 164 /* 0x09 -> [.Ldata083] */ # 174: 8243a4
|
||||
s8i a8, a3, 165 /* 0x09 -> [.Ldata084] */ # 177: 8243a5
|
||||
s8i a8, a3, 172 /* 0x09 -> [.Ldata087] */ # 17a: 8243ac
|
||||
s8i a8, a3, 173 /* 0x09 -> [.Ldata088] */ # 17d: 8243ad
|
||||
s8i a8, a3, 180 /* 0x09 -> [.Ldata091] */ # 180: 8243b4
|
||||
s8i a8, a3, 181 /* 0x09 -> [.Ldata092] */ # 183: 8243b5
|
||||
s8i a8, a3, 188 /* 0x09 -> [.Ldata095] */ # 186: 8243bc
|
||||
s8i a8, a3, 189 /* 0x09 -> [.Ldata096] */ # 189: 8243bd
|
||||
s8i a8, a3, 220 /* 0x09 -> [.Ldata111] */ # 18c: 8243dc
|
||||
s8i a8, a3, 221 /* 0x09 -> [.Ldata112] */ # 18f: 8243dd
|
||||
s8i a8, a3, 228 /* 0x09 -> [.Ldata115] */ # 192: 8243e4
|
||||
s8i a8, a3, 229 /* 0x09 -> [.Ldata116] */ # 195: 8243e5
|
||||
s8i a8, a3, 236 /* 0x09 -> [.Ldata119] */ # 198: 8243ec
|
||||
s8i a8, a3, 237 /* 0x09 -> [.Ldata120] */ # 19b: 8243ed
|
||||
s8i a8, a3, 244 /* 0x09 -> [.Ldata123] */ # 19e: 8243f4
|
||||
s8i a8, a3, 245 /* 0x09 -> [.Ldata124] */ # 1a1: 8243f5
|
||||
s8i a8, a3, 252 /* 0x09 -> [.Ldata127] */ # 1a4: 8243fc
|
||||
s8i a8, a3, 253 /* 0x09 -> [.Ldata128] */ # 1a7: 8243fd
|
||||
s8i a10, a3, 44 /* 0x05 -> [.Ldata023] */ # 1aa: a2432c
|
||||
s8i a10, a3, 45 /* 0x05 -> [.Ldata024] */ # 1ad: a2432d
|
||||
s8i a10, a3, 86 /* 0x05 -> [.Ldata045] */ # 1b0: a24356
|
||||
s8i a10, a3, 118 /* 0x05 -> [.Ldata061] */ # 1b3: a24376
|
||||
s8i a10, a3, 142 /* 0x05 -> [.Ldata073] */ # 1b6: a2438e
|
||||
s8i a10, a3, 150 /* 0x05 -> [.Ldata077] */ # 1b9: a24396
|
||||
s8i a10, a3, 206 /* 0x05 -> [.Ldata105] */ # 1bc: a243ce
|
||||
s8i a10, a3, 214 /* 0x05 -> [.Ldata109] */ # 1bf: a243d6
|
||||
s8i a2, a3, 36 /* 0x04 -> [.Ldata019] */ # 1c2: 224324
|
||||
s8i a2, a3, 37 /* 0x04 -> [.Ldata020] */ # 1c5: 224325
|
||||
s8i a2, a3, 94 /* 0x04 -> [.Ldata049] */ # 1c8: 22435e
|
||||
s8i a2, a3, 126 /* 0x04 -> [.Ldata065] */ # 1cb: 22437e
|
||||
s8i a2, a3, 134 /* 0x04 -> [.Ldata069] */ # 1ce: 224386
|
||||
s8i a2, a3, 198 /* 0x04 -> [.Ldata101] */ # 1d1: 2243c6
|
||||
s32i a6, a3, 88 /* 0x0000aaaa -> [.Ldata046] */ # 1d4: 626316
|
||||
s32i a5, a3, 120 /* 0x000071c7 -> [.Ldata062] */ # 1d7: 52631e
|
||||
movi a9, 0x00001555 # 1da: 9195ff
|
||||
s32i a9, a3, 64 /* 0x00001555 -> [.Ldata034] */ # 1dd: 926310
|
||||
movi a5, 0x00003483 # 1e0: 5198ff
|
||||
movi a6, 0x00004ec4 # 1e3: 6196ff
|
||||
s32i a6, a3, 136 /* 0x00004ec4 -> [.Ldata070] */ # 1e6: 626322
|
||||
s32i a5, a3, 144 /* 0x00003483 -> [.Ldata074] */ # 1e9: 526324
|
||||
movi a9, 0x00008dc8 # 1ec: 919aff
|
||||
s32i a9, a3, 192 /* 0x00008dc8 -> [.Ldata098] */ # 1ef: 926330
|
||||
movi a5, 0x000017a1 # 1f2: 519cff
|
||||
movi a6, 0x00002372 # 1f5: 619aff
|
||||
s32i a6, a3, 216 /* 0x00002372 -> [.Ldata110] */ # 1f8: 626336
|
||||
s32i a5, a3, 224 /* 0x000017a1 -> [.Ldata114] */ # 1fb: 526338
|
||||
movi a2, 0x000038e3 # 1fe: 2189ff
|
||||
movi a4, 0x00005555 # 201: 4187ff
|
||||
s32i a4, a3, 80 /* 0x00005555 -> [.Ldata042] */ # 204: 426314
|
||||
s32i a2, a3, 112 /* 0x000038e3 -> [.Ldata058] */ # 207: 22631c
|
||||
movi a4, 0x00002762 # 20a: 418eff
|
||||
movi a2, 0x00001a41 # 20d: 218eff
|
||||
movi a10, 0x00001c71 # 210: a187ff
|
||||
s32i a10, a3, 104 /* 0x00001c71 -> [.Ldata054] */ # 213: a2631a
|
||||
s32i a2, a3, 160 /* 0x00001a41 -> [.Ldata082] */ # 216: 226328
|
||||
s32i a4, a3, 152 /* 0x00002762 -> [.Ldata078] */ # 219: 426326
|
||||
movi a2, 0x00000e2d # 21c: 2194ff
|
||||
movi a11, 0x00002aaa # 21f: b182ff
|
||||
movi a4, 0x000011b9 # 222: 4191ff
|
||||
movi a10, 0x00001181 # 225: a18aff
|
||||
s32i a10, a3, 176 /* 0x00001181 -> [.Ldata090] */ # 228: a2632c
|
||||
s32i a4, a3, 232 /* 0x000011b9 -> [.Ldata118] */ # 22b: 42633a
|
||||
s32i a11, a3, 72 /* 0x00002aaa -> [.Ldata038] */ # 22e: b26312
|
||||
s32i a2, a3, 248 /* 0x00000e2d -> [.Ldata126] */ # 231: 22633e
|
||||
movi a11, 0x000013b1 # 234: b186ff
|
||||
movi a7, 0x00009d89 # 237: 7180ff
|
||||
s32i a7, a3, 128 /* 0x00009d89 -> [.Ldata066] */ # 23a: 726320
|
||||
s32i a11, a3, 168 /* 0x000013b1 -> [.Ldata086] */ # 23d: b2632a
|
||||
movi a7, 0x00002f42 # 240: 7187ff
|
||||
s32i a7, a3, 208 /* 0x00002f42 -> [.Ldata106] */ # 243: 726334
|
||||
movi a8, 0x000012f6 # 246: 817bff
|
||||
s32i a8, a3, 96 /* 0x000012f6 -> [.Ldata050] */ # 249: 826318
|
||||
movi a8, 0x000046e4 # 24c: 8183ff
|
||||
s32i a8, a3, 200 /* 0x000046e4 -> [.Ldata102] */ # 24f: 826332
|
||||
ret /* 0x00000e2d */ # 252: 0df0
|
||||
|
||||
.literal_position # 254: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x258
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_RC_SetBasicRate
|
||||
.type sdk_RC_SetBasicRate, @function
|
||||
sdk_RC_SetBasicRate:
|
||||
addi sp, sp, -16 /* (local0) */ # 258: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 25b: 0901
|
||||
movi a0, 351 /* 0x0000015f */ # 25d: 02a15f
|
||||
bnall a2, a0, .Lbr008 # 260: 07c205
|
||||
call0 .Lfunc003 # 263: c5e0ff
|
||||
j .Lbr009 # 266: c60b00
|
||||
.Lbr008: movi a4, .Ldata002 # 269: 41faff
|
||||
movi a8, 5 /* 0x00000005 */ # 26c: 0c58
|
||||
movi a5, 7 /* 0x00000007 */ # 26e: 0c75
|
||||
movi a2, 3 /* 0x00000003 */ # 270: 0c32
|
||||
addi a9, a3, -1 /* arg1-0x1 */ # 272: 0b93
|
||||
movi a7, 1 /* 0x00000001 */ # 274: 0c17
|
||||
movi a6, 0 /* 0x00000000 */ # 276: 0c06
|
||||
moveqz a6, a7, a9 # 278: 906783
|
||||
movnez a2, a5, a6 # 27b: 602593
|
||||
movnez a7, a8, a6 # 27e: 607893
|
||||
s8i a7, a4, 92 /* a7 -> [.Ldata047] */ # 281: 72445c
|
||||
s8i a7, a4, 124 /* a7 -> [.Ldata063] */ # 284: 72447c
|
||||
s8i a7, a4, 84 /* a7 -> [.Ldata043] */ # 287: 724454
|
||||
s8i a2, a4, 116 /* a2 -> [.Ldata059] */ # 28a: 224474
|
||||
s8i a2, a4, 76 /* a2 -> [.Ldata039] */ # 28d: 22444c
|
||||
s8i a2, a4, 108 /* a2 -> [.Ldata055] */ # 290: 22446c
|
||||
s8i a2, a4, 68 /* a2 -> [.Ldata035] */ # 293: 224444
|
||||
s8i a2, a4, 100 /* a2 -> [.Ldata051] */ # 296: 224464
|
||||
.Lbr009: movi a2, 0 /* 0x00000000 */ # 299: 0c02
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 29b: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 29d: 12c110
|
||||
ret /* 0x00000000 */ # 2a0: 0df0
|
1471
binary_sdk/libpp/trc.S
Normal file
1471
binary_sdk/libpp/trc.S
Normal file
File diff suppressed because it is too large
Load diff
3274
binary_sdk/libpp/wdev.S
Normal file
3274
binary_sdk/libpp/wdev.S
Normal file
File diff suppressed because it is too large
Load diff
566
binary_sdk/libwpa/aes-internal-dec.S
Normal file
566
binary_sdk/libwpa/aes-internal-dec.S
Normal file
|
@ -0,0 +1,566 @@
|
|||
|
||||
.section .bss, "aw", @nobits
|
||||
|
||||
.Ldata001: .space 176
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_rijndaelKeySetupDec
|
||||
.type sdk_rijndaelKeySetupDec, @function
|
||||
sdk_rijndaelKeySetupDec:
|
||||
addi sp, sp, -16 /* (local0) */ # c: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # f: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 11: 0901
|
||||
mov a12, a2 /* arg0 */ # 13: cd02
|
||||
call0 sdk_rijndaelKeySetupEnc # 15: 01fcffc0
|
||||
# 19: 0000
|
||||
mov a6, a12 /* arg0 */ # 1b: 6d0c
|
||||
movi a3, 40 /* 0x00000028 */ # 1d: 2c83
|
||||
movi a2, 0 /* 0x00000000 */ # 1f: 0c02
|
||||
movi a0, 160 /* 0x000000a0 */ # 21: 02a0a0
|
||||
add a0, a12, a0 /* arg0+0xa0 */ # 24: 0a0c
|
||||
.Lbr001: addi a3, a3, -4 # 26: 32c3fc
|
||||
addi a2, a2, 4 # 29: 4b22
|
||||
l32i a11, a6, 0 # 2b: b806
|
||||
l32i a4, a0, 0 # 2d: 4800
|
||||
addi a0, a0, -16 # 2f: 02c0f0
|
||||
s32i a4, a6, 0 # 32: 4906
|
||||
l32i a10, a0, 20 # 34: a850
|
||||
s32i a11, a0, 16 # 36: b940
|
||||
l32i a9, a6, 4 # 38: 9816
|
||||
s32i a10, a6, 4 # 3a: a916
|
||||
l32i a8, a0, 24 # 3c: 8860
|
||||
s32i a9, a0, 20 # 3e: 9950
|
||||
l32i a7, a6, 8 # 40: 7826
|
||||
s32i a8, a6, 8 # 42: 8926
|
||||
l32i a5, a0, 28 # 44: 5870
|
||||
s32i a7, a0, 24 # 46: 7960
|
||||
l32i a4, a6, 12 # 48: 4836
|
||||
s32i a5, a6, 12 # 4a: 5936
|
||||
s32i a4, a0, 28 # 4c: 4970
|
||||
addi a6, a6, 16 # 4e: 62c610
|
||||
blt a2, a3, .Lbr001 # 51: 3722d1
|
||||
movi a2, 1 /* 0x00000001 */ # 54: 0c12
|
||||
movi a9, sdk_Te0 # 56: 91eaff
|
||||
movi a8, sdk_Td0 # 59: 81eaff
|
||||
addi a12, a12, 16 /* arg0+0x10 */ # 5c: c2cc10
|
||||
mov a0, a12 /* arg0+0x10 */ # 5f: 0d0c
|
||||
.Lbr002: addi a2, a2, 1 # 61: 1b22
|
||||
addi a6, a12, 16 # 63: 62cc10
|
||||
addi a12, a12, 16 # 66: c2cc10
|
||||
.Lbr003: l32i a10, a0, 0 # 69: a800
|
||||
ssai 24 # 6b: 104840
|
||||
extui a11, a10, 0, 8 # 6e: a0b074
|
||||
extui a7, a10, 8, 8 # 71: a07874
|
||||
extui a5, a10, 24, 8 # 74: a05875
|
||||
addx4 a5, a5, a9 # 77: 9055a0
|
||||
addx4 a7, a7, a9 # 7a: 9077a0
|
||||
addx4 a11, a11, a9 # 7d: 90bba0
|
||||
l32i a11, a11, 0 # 80: b80b
|
||||
l32i a7, a7, 0 # 82: 7807
|
||||
l32i a5, a5, 0 # 84: 5805
|
||||
extui a10, a10, 16, 8 # 86: a0a075
|
||||
extui a5, a5, 8, 8 # 89: 505874
|
||||
extui a7, a7, 8, 8 # 8c: 707874
|
||||
extui a11, a11, 8, 8 # 8f: b0b874
|
||||
addx4 a10, a10, a9 # 92: 90aaa0
|
||||
l32i a10, a10, 0 # 95: a80a
|
||||
addx4 a11, a11, a8 # 97: 80bba0
|
||||
addx4 a7, a7, a8 # 9a: 8077a0
|
||||
addx4 a5, a5, a8 # 9d: 8055a0
|
||||
l32i a5, a5, 0 # a0: 5805
|
||||
l32i a7, a7, 0 # a2: 7807
|
||||
l32i a11, a11, 0 # a4: b80b
|
||||
extui a10, a10, 8, 8 # a6: a0a874
|
||||
src a11, a11, a11 # a9: b0bb81
|
||||
addx4 a10, a10, a8 # ac: 80aaa0
|
||||
l32i a10, a10, 0 # af: a80a
|
||||
ssai 16 # b1: 104040
|
||||
src a7, a7, a7 # b4: 707781
|
||||
xor a7, a7, a11 # b7: b07730
|
||||
ssai 8 # ba: 004840
|
||||
src a10, a10, a10 # bd: a0aa81
|
||||
xor a5, a5, a10 # c0: a05530
|
||||
xor a5, a5, a7 # c3: 705530
|
||||
s32i a5, a0, 0 # c6: 5900
|
||||
addi a0, a0, 4 # c8: 4b00
|
||||
bne a0, a6, .Lbr003 # ca: 67909b
|
||||
mov a0, a12 # cd: 0d0c
|
||||
bnei a2, 10, .Lbr002 # cf: 66928e
|
||||
l32i a12, sp, 4 /* [(local1)] */ # d2: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # d4: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # d6: 12c110
|
||||
ret # d9: 0df0
|
||||
|
||||
.literal_position # dc: 00000000
|
||||
# e0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xe4
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_aes_decrypt_init
|
||||
.type sdk_aes_decrypt_init, @function
|
||||
sdk_aes_decrypt_init:
|
||||
addi sp, sp, -16 /* (local0) */ # e4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # e7: 0901
|
||||
beqi a3, 16, .Lbr004 # e9: 26b304
|
||||
movi a2, 0 /* 0x00000000 */ # ec: 0c02
|
||||
j .Lbr005 # ee: 860200
|
||||
.Lbr004: mov a3, a2 /* arg0 */ # f1: 3d02
|
||||
movi a2, .Ldata001 # f3: 21faff
|
||||
call0 sdk_rijndaelKeySetupDec # f6: 050000
|
||||
movi a2, .Ldata001 # f9: 21f9ff
|
||||
.Lbr005: l32i a0, sp, 0 /* [(local0)] */ # fc: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # fe: 12c110
|
||||
ret # 101: 0df0
|
||||
|
||||
.literal_position # 104: 00000000
|
||||
# 108: 00000000
|
||||
# 10c: 00000000
|
||||
# 110: 00000000
|
||||
# 114: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x118
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x40
|
||||
# (local1): word @ -0x3c
|
||||
# (local2): word @ -0x38
|
||||
# (local3): word @ -0x34
|
||||
# (local4): word @ -0x30
|
||||
# (local5): word @ -0x2c
|
||||
# (local6): word @ -0x28
|
||||
# (local7): word @ -0x24
|
||||
# (local8): word @ -0x20
|
||||
# (local9): word @ -0x1c
|
||||
# (local10): word[4] @ -0x18
|
||||
# (local11): word[2] @ -0x8
|
||||
.Lfunc001: movi a11, sdk_Td0 # 118: b1fbff
|
||||
mov a5, a12 # 11b: 5d0c
|
||||
addi sp, sp, -64 /* (local0) */ # 11d: 12c1c0
|
||||
mov a12, a2 /* arg0 */ # 120: cd02
|
||||
l8ui a6, a3, 1 /* [arg1+0x1] */ # 122: 620301
|
||||
l8ui a7, a3, 9 /* [arg1+0x9] */ # 125: 720309
|
||||
l8ui a8, a3, 14 /* [arg1+0xe] */ # 128: 82030e
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 12b: 0921
|
||||
s32i a15, sp, 24 /* a15 -> [(local6)] */ # 12d: f961
|
||||
s32i a4, sp, 4 /* arg2 -> [(local1)] */ # 12f: 4911
|
||||
s32i a14, sp, 20 /* a14 -> [(local5)] */ # 131: e951
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 133: d941
|
||||
s32i a5, sp, 12 /* a5 -> [(local3)] */ # 135: 5931
|
||||
l8ui a13, a3, 3 /* [arg1+0x3] */ # 137: d20303
|
||||
l8ui a14, a3, 11 /* [arg1+0xb] */ # 13a: e2030b
|
||||
l8ui a4, a3, 0 /* [arg1] */ # 13d: 420300
|
||||
l32i a15, a2, 8 /* [arg0+0x8] */ # 140: f822
|
||||
l32i a0, a2, 0 /* [arg0] */ # 142: 0802
|
||||
slli a8, a8, 8 # 144: 808811
|
||||
slli a7, a7, 16 # 147: 007711
|
||||
slli a6, a6, 16 # 14a: 006611
|
||||
l32i a2, a2, 4 /* [arg0+0x4] */ # 14d: 2812
|
||||
slli a4, a4, 24 # 14f: 804401
|
||||
xor a14, a14, a15 # 152: f0ee30
|
||||
xor a4, a4, a6 # 155: 604430
|
||||
xor a13, a13, a0 # 158: 00dd30
|
||||
l8ui a6, a3, 8 /* [arg1+0x8] */ # 15b: 620308
|
||||
l8ui a0, a3, 4 /* [arg1+0x4] */ # 15e: 020304
|
||||
l8ui a15, a3, 7 /* [arg1+0x7] */ # 161: f20307
|
||||
slli a0, a0, 24 # 164: 800001
|
||||
xor a15, a15, a2 # 167: 20ff30
|
||||
slli a6, a6, 24 # 16a: 806601
|
||||
xor a6, a6, a7 # 16d: 706630
|
||||
l8ui a2, a3, 5 /* [arg1+0x5] */ # 170: 220305
|
||||
l8ui a7, a3, 13 /* [arg1+0xd] */ # 173: 72030d
|
||||
slli a2, a2, 16 # 176: 002211
|
||||
xor a0, a0, a2 # 179: 200030
|
||||
l8ui a2, a3, 12 /* [arg1+0xc] */ # 17c: 22030c
|
||||
slli a7, a7, 16 # 17f: 007711
|
||||
slli a2, a2, 24 # 182: 802201
|
||||
xor a2, a2, a7 # 185: 702230
|
||||
xor a2, a2, a8 # 188: 802230
|
||||
l8ui a7, a3, 10 /* [arg1+0xa] */ # 18b: 72030a
|
||||
l8ui a8, a3, 6 /* [arg1+0x6] */ # 18e: 820306
|
||||
slli a7, a7, 8 # 191: 807711
|
||||
xor a6, a6, a7 # 194: 706630
|
||||
slli a8, a8, 8 # 197: 808811
|
||||
l8ui a7, a3, 2 /* [arg1+0x2] */ # 19a: 720302
|
||||
xor a0, a0, a8 # 19d: 800030
|
||||
xor a15, a15, a0 # 1a0: 00ff30
|
||||
slli a7, a7, 8 # 1a3: 807711
|
||||
l8ui a0, a3, 15 /* [arg1+0xf] */ # 1a6: 02030f
|
||||
xor a4, a4, a7 # 1a9: 704430
|
||||
xor a13, a13, a4 # 1ac: 40dd30
|
||||
l32i a4, a12, 12 /* [arg0+0xc] */ # 1af: 483c
|
||||
xor a14, a14, a6 # 1b1: 60ee30
|
||||
xor a0, a0, a4 # 1b4: 400030
|
||||
xor a0, a0, a2 # 1b7: 200030
|
||||
movi a2, 5 /* 0x00000005 */ # 1ba: 0c52
|
||||
.Lbr006: addi a2, a2, -1 # 1bc: 0b22
|
||||
ssai 8 # 1be: 004840
|
||||
extui a5, a14, 24, 8 # 1c1: e05875
|
||||
extui a7, a15, 16, 8 # 1c4: f07075
|
||||
extui a8, a14, 0, 8 # 1c7: e08074
|
||||
extui a6, a0, 8, 8 # 1ca: 006874
|
||||
extui a10, a13, 16, 8 # 1cd: d0a075
|
||||
extui a3, a15, 0, 8 # 1d0: f03074
|
||||
extui a9, a0, 16, 8 # 1d3: 009075
|
||||
extui a4, a14, 8, 8 # 1d6: e04874
|
||||
addx4 a4, a4, a11 # 1d9: b044a0
|
||||
addx4 a9, a9, a11 # 1dc: b099a0
|
||||
addx4 a3, a3, a11 # 1df: b033a0
|
||||
addx4 a10, a10, a11 # 1e2: b0aaa0
|
||||
addx4 a6, a6, a11 # 1e5: b066a0
|
||||
addx4 a8, a8, a11 # 1e8: b088a0
|
||||
addx4 a7, a7, a11 # 1eb: b077a0
|
||||
addx4 a5, a5, a11 # 1ee: b055a0
|
||||
l32i a5, a5, 0 # 1f1: 5805
|
||||
l32i a7, a7, 0 # 1f3: 7807
|
||||
l32i a8, a8, 0 # 1f5: 8808
|
||||
l32i a6, a6, 0 # 1f7: 6806
|
||||
l32i a10, a10, 0 # 1f9: a80a
|
||||
l32i a3, a3, 0 # 1fb: 3803
|
||||
l32i a9, a9, 0 # 1fd: 9809
|
||||
l32i a4, a4, 0 # 1ff: 4804
|
||||
src a9, a9, a9 # 201: 909981
|
||||
ssai 16 # 204: 104040
|
||||
src a4, a4, a4 # 207: 404481
|
||||
s32i a4, sp, 32 /* a4 -> [(local8)] */ # 20a: 4981
|
||||
ssai 24 # 20c: 104840
|
||||
extui a4, a13, 8, 8 # 20f: d04874
|
||||
src a3, a3, a3 # 212: 303381
|
||||
s32i a3, sp, 36 /* a3 -> [(local9)] */ # 215: 3991
|
||||
ssai 8 # 217: 004840
|
||||
addx4 a4, a4, a11 # 21a: b044a0
|
||||
l32i a4, a4, 0 # 21d: 4804
|
||||
src a10, a10, a10 # 21f: a0aa81
|
||||
extui a3, a15, 8, 8 # 222: f03874
|
||||
addx4 a3, a3, a11 # 225: b033a0
|
||||
ssai 16 # 228: 104040
|
||||
src a6, a6, a6 # 22b: 606681
|
||||
l32i a3, a3, 0 # 22e: 3803
|
||||
ssai 24 # 230: 104840
|
||||
src a8, a8, a8 # 233: 808881
|
||||
s32i a8, sp, 40 /* a8 -> [(local10)] */ # 236: 89a1
|
||||
ssai 8 # 238: 004840
|
||||
extui a8, a14, 16, 8 # 23b: e08075
|
||||
src a7, a7, a7 # 23e: 707781
|
||||
l32i a14, a12, 24 # 241: e86c
|
||||
xor a5, a5, a7 # 243: 705530
|
||||
ssai 16 # 246: 104040
|
||||
addx4 a8, a8, a11 # 249: b088a0
|
||||
l32i a8, a8, 0 # 24c: 8808
|
||||
src a4, a4, a4 # 24e: 404481
|
||||
extui a7, a0, 24, 8 # 251: 007875
|
||||
ssai 24 # 254: 104840
|
||||
xor a4, a4, a5 # 257: 504430
|
||||
addx4 a7, a7, a11 # 25a: b077a0
|
||||
l32i a7, a7, 0 # 25d: 7807
|
||||
extui a5, a0, 0, 8 # 25f: 005074
|
||||
addx4 a5, a5, a11 # 262: b055a0
|
||||
l32i a5, a5, 0 # 265: 5805
|
||||
l32i a0, a12, 16 # 267: 084c
|
||||
src a5, a5, a5 # 269: 505581
|
||||
xor a14, a14, a5 # 26c: 50ee30
|
||||
ssai 8 # 26f: 004840
|
||||
src a8, a8, a8 # 272: 808881
|
||||
xor a14, a14, a4 # 275: 40ee30
|
||||
ssai 16 # 278: 104040
|
||||
xor a7, a7, a8 # 27b: 807730
|
||||
extui a4, a13, 0, 8 # 27e: d04074
|
||||
addx4 a4, a4, a11 # 281: b044a0
|
||||
extui a8, a15, 24, 8 # 284: f08875
|
||||
src a3, a3, a3 # 287: 303381
|
||||
l32i a15, a12, 20 # 28a: f85c
|
||||
ssai 24 # 28c: 104840
|
||||
l32i a4, a4, 0 # 28f: 4804
|
||||
xor a3, a3, a7 # 291: 703330
|
||||
addx4 a8, a8, a11 # 294: b088a0
|
||||
l32i a8, a8, 0 # 297: 8808
|
||||
l32i a7, sp, 32 /* [(local8)] */ # 299: 7881
|
||||
xor a8, a8, a10 # 29b: a08830
|
||||
src a4, a4, a4 # 29e: 404481
|
||||
xor a6, a6, a8 # 2a1: 806630
|
||||
extui a8, a13, 24, 8 # 2a4: d08875
|
||||
l32i a13, a12, 28 # 2a7: d87c
|
||||
addx4 a8, a8, a11 # 2a9: b088a0
|
||||
addi a12, a12, 32 # 2ac: c2cc20
|
||||
l32i a8, a8, 0 # 2af: 8808
|
||||
xor a13, a13, a4 # 2b1: 40dd30
|
||||
xor a8, a8, a9 # 2b4: 908830
|
||||
xor a7, a7, a8 # 2b7: 807730
|
||||
l32i a8, sp, 36 /* [(local9)] */ # 2ba: 8891
|
||||
xor a13, a13, a3 # 2bc: 30dd30
|
||||
xor a0, a0, a8 # 2bf: 800030
|
||||
xor a0, a0, a7 # 2c2: 700030
|
||||
l32i a7, sp, 40 /* [(local10)] */ # 2c5: 78a1
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2c7: 0901
|
||||
xor a15, a15, a7 # 2c9: 70ff30
|
||||
xor a15, a15, a6 # 2cc: 60ff30
|
||||
beqz a2, .Lbr007 # 2cf: 162210
|
||||
ssai 8 # 2d2: 004840
|
||||
extui a5, a14, 24, 8 # 2d5: e05875
|
||||
extui a4, a15, 16, 8 # 2d8: f04075
|
||||
extui a7, a14, 0, 8 # 2db: e07074
|
||||
extui a6, a13, 8, 8 # 2de: d06874
|
||||
extui a3, a0, 16, 8 # 2e1: 003075
|
||||
extui a8, a15, 0, 8 # 2e4: f08074
|
||||
extui a9, a14, 8, 8 # 2e7: e09874
|
||||
extui a10, a13, 16, 8 # 2ea: d0a075
|
||||
addx4 a10, a10, a11 # 2ed: b0aaa0
|
||||
addx4 a9, a9, a11 # 2f0: b099a0
|
||||
addx4 a8, a8, a11 # 2f3: b088a0
|
||||
addx4 a3, a3, a11 # 2f6: b033a0
|
||||
addx4 a6, a6, a11 # 2f9: b066a0
|
||||
addx4 a7, a7, a11 # 2fc: b077a0
|
||||
addx4 a4, a4, a11 # 2ff: b044a0
|
||||
addx4 a5, a5, a11 # 302: b055a0
|
||||
l32i a5, a5, 0 # 305: 5805
|
||||
l32i a4, a4, 0 # 307: 4804
|
||||
l32i a7, a7, 0 # 309: 7807
|
||||
l32i a6, a6, 0 # 30b: 6806
|
||||
l32i a3, a3, 0 # 30d: 3803
|
||||
l32i a8, a8, 0 # 30f: 8808
|
||||
l32i a9, a9, 0 # 311: 9809
|
||||
l32i a10, a10, 0 # 313: a80a
|
||||
extui a14, a14, 16, 8 # 315: e0e075
|
||||
src a10, a10, a10 # 318: a0aa81
|
||||
addx4 a14, a14, a11 # 31b: b0eea0
|
||||
ssai 16 # 31e: 104040
|
||||
src a9, a9, a9 # 321: 909981
|
||||
ssai 24 # 324: 104840
|
||||
src a8, a8, a8 # 327: 808881
|
||||
l32i a14, a14, 0 # 32a: e80e
|
||||
ssai 8 # 32c: 004840
|
||||
src a3, a3, a3 # 32f: 303381
|
||||
ssai 16 # 332: 104040
|
||||
src a6, a6, a6 # 335: 606681
|
||||
ssai 24 # 338: 104840
|
||||
src a7, a7, a7 # 33b: 707781
|
||||
ssai 8 # 33e: 004840
|
||||
src a4, a4, a4 # 341: 404481
|
||||
xor a5, a5, a4 # 344: 405530
|
||||
extui a4, a0, 8, 8 # 347: 004874
|
||||
addx4 a4, a4, a11 # 34a: b044a0
|
||||
l32i a4, a4, 0 # 34d: 4804
|
||||
ssai 16 # 34f: 104040
|
||||
src a4, a4, a4 # 352: 404481
|
||||
xor a4, a4, a5 # 355: 504430
|
||||
ssai 24 # 358: 104840
|
||||
extui a5, a13, 0, 8 # 35b: d05074
|
||||
extui a13, a13, 24, 8 # 35e: d0d875
|
||||
addx4 a5, a5, a11 # 361: b055a0
|
||||
l32i a5, a5, 0 # 364: 5805
|
||||
addx4 a13, a13, a11 # 366: b0dda0
|
||||
src a5, a5, a5 # 369: 505581
|
||||
l32i a13, a13, 0 # 36c: d80d
|
||||
ssai 8 # 36e: 004840
|
||||
src a14, a14, a14 # 371: e0ee81
|
||||
xor a13, a13, a14 # 374: e0dd30
|
||||
extui a14, a15, 24, 8 # 377: f0e875
|
||||
addx4 a14, a14, a11 # 37a: b0eea0
|
||||
l32i a14, a14, 0 # 37d: e80e
|
||||
ssai 16 # 37f: 104040
|
||||
xor a14, a14, a3 # 382: 30ee30
|
||||
extui a3, a15, 8, 8 # 385: f03874
|
||||
xor a6, a6, a14 # 388: e06630
|
||||
l32i a15, a12, 4 # 38b: f81c
|
||||
extui a14, a0, 24, 8 # 38d: 00e875
|
||||
addx4 a3, a3, a11 # 390: b033a0
|
||||
l32i a3, a3, 0 # 393: 3803
|
||||
addx4 a14, a14, a11 # 395: b0eea0
|
||||
l32i a14, a14, 0 # 398: e80e
|
||||
xor a15, a15, a7 # 39a: 70ff30
|
||||
xor a15, a15, a6 # 39d: 60ff30
|
||||
src a3, a3, a3 # 3a0: 303381
|
||||
xor a3, a3, a13 # 3a3: d03330
|
||||
xor a14, a14, a10 # 3a6: a0ee30
|
||||
l32i a13, a12, 0 # 3a9: d80c
|
||||
xor a14, a9, a14 # 3ab: e0e930
|
||||
xor a13, a13, a8 # 3ae: 80dd30
|
||||
xor a13, a13, a14 # 3b1: e0dd30
|
||||
l32i a14, a12, 8 # 3b4: e82c
|
||||
ssai 24 # 3b6: 104840
|
||||
xor a14, a14, a5 # 3b9: 50ee30
|
||||
xor a14, a14, a4 # 3bc: 40ee30
|
||||
extui a4, a0, 0, 8 # 3bf: 004074
|
||||
addx4 a4, a4, a11 # 3c2: b044a0
|
||||
l32i a4, a4, 0 # 3c5: 4804
|
||||
l32i a0, a12, 12 # 3c7: 083c
|
||||
src a4, a4, a4 # 3c9: 404481
|
||||
xor a0, a0, a4 # 3cc: 400030
|
||||
xor a0, a0, a3 # 3cf: 300030
|
||||
j .Lbr006 # 3d2: 8679ff
|
||||
.Lbr007: movi a2, 256 /* 0x00000100 */ # 3d5: 22a100
|
||||
call0 malloc # 3d8: 014dffc0
|
||||
# 3dc: 0000
|
||||
s32i a2, sp, 28 /* a2 -> [(local7)] */ # 3de: 2971
|
||||
movi a3, sdk_Td4s_rom # 3e0: 314aff
|
||||
movi a4, 256 /* 0x00000100 */ # 3e3: 42a100
|
||||
call0 memcpy # 3e6: 014affc0
|
||||
# 3ea: 0000
|
||||
extui a6, a13, 24, 8 # 3ec: d06875
|
||||
extui a0, a14, 24, 8 # 3ef: e00875
|
||||
extui a4, a13, 0, 8 # 3f2: d04074
|
||||
extui a3, a15, 16, 8 # 3f5: f03075
|
||||
extui a11, a15, 8, 8 # 3f8: f0b874
|
||||
extui a10, a14, 16, 8 # 3fb: e0a075
|
||||
l32i a9, sp, 0 /* [(local0)] */ # 3fe: 9801
|
||||
l32i a2, sp, 28 /* [(local7)] */ # 400: 2871
|
||||
extui a5, a9, 24, 8 # 402: 905875
|
||||
extui a7, a9, 16, 8 # 405: 907075
|
||||
extui a8, a9, 8, 8 # 408: 908874
|
||||
add a10, a2, a10 # 40b: aaa2
|
||||
add a11, a2, a11 # 40d: bab2
|
||||
add a3, a2, a3 # 40f: 3a32
|
||||
add a4, a2, a4 # 411: 4a42
|
||||
add a0, a2, a0 # 413: 0a02
|
||||
add a8, a2, a8 # 415: 8a82
|
||||
add a7, a2, a7 # 417: 7a72
|
||||
add a6, a2, a6 # 419: 6a62
|
||||
add a5, a2, a5 # 41b: 5a52
|
||||
l8ui a5, a5, 0 # 41d: 520500
|
||||
s32i a6, sp, 32 /* a6 -> [(local8)] */ # 420: 6981
|
||||
s32i a7, sp, 56 /* a7 -> [(local11)] */ # 422: 79e1
|
||||
s32i a8, sp, 36 /* a8 -> [(local9)] */ # 424: 8991
|
||||
extui a9, a9, 0, 8 # 426: 909074
|
||||
extui a8, a13, 16, 8 # 429: d08075
|
||||
extui a7, a13, 8, 8 # 42c: d07874
|
||||
extui a6, a14, 0, 8 # 42f: e06074
|
||||
add a6, a2, a6 # 432: 6a62
|
||||
add a7, a2, a7 # 434: 7a72
|
||||
slli a5, a5, 24 # 436: 805501
|
||||
add a8, a2, a8 # 439: 8a82
|
||||
add a9, a2, a9 # 43b: 9a92
|
||||
s32i a9, sp, 40 /* a9 -> [(local10)] */ # 43d: 99a1
|
||||
extui a13, a15, 0, 8 # 43f: f0d074
|
||||
extui a9, a15, 24, 8 # 442: f09875
|
||||
add a13, a2, a13 # 445: dad2
|
||||
extui a15, a14, 8, 8 # 447: e0f874
|
||||
add a9, a2, a9 # 44a: 9a92
|
||||
l8ui a14, a13, 0 # 44c: e20d00
|
||||
add a15, a2, a15 # 44f: faf2
|
||||
l8ui a15, a15, 0 # 451: f20f00
|
||||
l32i a13, a12, 0 # 454: d80c
|
||||
slli a15, a15, 8 # 456: 80ff11
|
||||
xor a14, a14, a15 # 459: f0ee30
|
||||
l8ui a15, a8, 0 # 45c: f20800
|
||||
l32i a8, sp, 4 /* [(local1)] */ # 45f: 8811
|
||||
slli a15, a15, 16 # 461: 00ff11
|
||||
xor a15, a15, a5 # 464: 50ff30
|
||||
xor a14, a14, a15 # 467: f0ee30
|
||||
xor a13, a13, a14 # 46a: e0dd30
|
||||
s8i a13, a8, 3 /* a13 -> [[(local1)]+0x3] */ # 46d: d24803
|
||||
extui a14, a13, 16, 16 # 470: d0e0f5
|
||||
extui a15, a13, 24, 8 # 473: d0f875
|
||||
s8i a15, a8, 0 /* a15 -> [[(local1)]] */ # 476: f24800
|
||||
s8i a14, a8, 1 /* a14 -> [[(local1)]+0x1] */ # 479: e24801
|
||||
l32i a15, sp, 36 /* [(local9)] */ # 47c: f891
|
||||
srli a13, a13, 8 # 47e: d0d841
|
||||
s8i a13, a8, 2 /* a13 -> [[(local1)]+0x2] */ # 481: d24802
|
||||
l32i a5, a12, 4 # 484: 581c
|
||||
l8ui a7, a7, 0 # 486: 720700
|
||||
l8ui a6, a6, 0 # 489: 620600
|
||||
slli a7, a7, 8 # 48c: 807711
|
||||
xor a6, a6, a7 # 48f: 706630
|
||||
l32i a7, sp, 56 /* [(local11)] */ # 492: 78e1
|
||||
l8ui a9, a9, 0 # 494: 920900
|
||||
l8ui a7, a7, 0 /* [[(local11)]] */ # 497: 720700
|
||||
slli a9, a9, 24 # 49a: 809901
|
||||
slli a7, a7, 16 # 49d: 007711
|
||||
xor a7, a7, a9 # 4a0: 907730
|
||||
l32i a9, sp, 40 /* [(local10)] */ # 4a3: 98a1
|
||||
xor a6, a6, a7 # 4a5: 706630
|
||||
xor a5, a5, a6 # 4a8: 605530
|
||||
s8i a5, a8, 7 /* a5 -> [[(local1)]+0x7] */ # 4ab: 524807
|
||||
extui a6, a5, 16, 16 # 4ae: 5060f5
|
||||
extui a7, a5, 24, 8 # 4b1: 507875
|
||||
s8i a7, a8, 4 /* a7 -> [[(local1)]+0x4] */ # 4b4: 724804
|
||||
s8i a6, a8, 5 /* a6 -> [[(local1)]+0x5] */ # 4b7: 624805
|
||||
srli a5, a5, 8 # 4ba: 505841
|
||||
s8i a5, a8, 6 /* a5 -> [[(local1)]+0x6] */ # 4bd: 524806
|
||||
l32i a13, a12, 8 # 4c0: d82c
|
||||
l8ui a0, a0, 0 # 4c2: 020000
|
||||
l8ui a15, a15, 0 /* [[(local9)]] */ # 4c5: f20f00
|
||||
l8ui a14, a4, 0 # 4c8: e20400
|
||||
slli a15, a15, 8 # 4cb: 80ff11
|
||||
xor a14, a14, a15 # 4ce: f0ee30
|
||||
l8ui a15, a3, 0 # 4d1: f20300
|
||||
slli a0, a0, 24 # 4d4: 800001
|
||||
slli a15, a15, 16 # 4d7: 00ff11
|
||||
xor a15, a15, a0 # 4da: 00ff30
|
||||
xor a14, a14, a15 # 4dd: f0ee30
|
||||
xor a13, a13, a14 # 4e0: e0dd30
|
||||
s8i a13, a8, 11 /* a13 -> [[(local1)]+0xb] */ # 4e3: d2480b
|
||||
extui a14, a13, 16, 16 # 4e6: d0e0f5
|
||||
extui a15, a13, 24, 8 # 4e9: d0f875
|
||||
s8i a15, a8, 8 /* a15 -> [[(local1)]+0x8] */ # 4ec: f24808
|
||||
s8i a14, a8, 9 /* a14 -> [[(local1)]+0x9] */ # 4ef: e24809
|
||||
srli a13, a13, 8 # 4f2: d0d841
|
||||
s8i a13, a8, 10 /* a13 -> [[(local1)]+0xa] */ # 4f5: d2480a
|
||||
l32i a7, a12, 12 # 4f8: 783c
|
||||
l8ui a11, a11, 0 # 4fa: b20b00
|
||||
l8ui a9, a9, 0 /* [[(local10)]] */ # 4fd: 920900
|
||||
slli a11, a11, 8 # 500: 80bb11
|
||||
xor a9, a9, a11 # 503: b09930
|
||||
l32i a11, sp, 32 /* [(local8)] */ # 506: b881
|
||||
l8ui a10, a10, 0 # 508: a20a00
|
||||
l8ui a11, a11, 0 /* [[(local8)]] */ # 50b: b20b00
|
||||
slli a10, a10, 16 # 50e: 00aa11
|
||||
slli a11, a11, 24 # 511: 80bb01
|
||||
xor a10, a10, a11 # 514: b0aa30
|
||||
xor a9, a9, a10 # 517: a09930
|
||||
xor a7, a7, a9 # 51a: 907730
|
||||
s8i a7, a8, 15 /* a7 -> [[(local1)]+0xf] */ # 51d: 72480f
|
||||
extui a9, a7, 16, 16 # 520: 7090f5
|
||||
extui a10, a7, 24, 8 # 523: 70a875
|
||||
s8i a10, a8, 12 /* a10 -> [[(local1)]+0xc] */ # 526: a2480c
|
||||
s8i a9, a8, 13 /* a9 -> [[(local1)]+0xd] */ # 529: 92480d
|
||||
srli a7, a7, 8 # 52c: 707841
|
||||
s8i a7, a8, 14 /* a7 -> [[(local1)]+0xe] */ # 52f: 72480e
|
||||
call0 free # 532: 01f8fec0
|
||||
# 536: 0000
|
||||
l32i a12, sp, 12 /* [(local3)] */ # 538: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 53a: d841
|
||||
l32i a14, sp, 20 /* [(local5)] */ # 53c: e851
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 53e: f861
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 540: 0821
|
||||
addi sp, sp, 64 /* (top of frame) */ # 542: 12c140
|
||||
ret # 545: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x548
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_aes_decrypt
|
||||
.type sdk_aes_decrypt, @function
|
||||
sdk_aes_decrypt:
|
||||
addi sp, sp, -16 /* (local0) */ # 548: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 54b: 0901
|
||||
call0 .Lfunc001 # 54d: 85bcff
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 550: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 552: 12c110
|
||||
ret # 555: 0df0
|
||||
|
||||
.literal_position # 558: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x55c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_aes_decrypt_deinit
|
||||
.type sdk_aes_decrypt_deinit, @function
|
||||
sdk_aes_decrypt_deinit:
|
||||
movi a3, 0 /* 0x00000000 */ # 55c: 0c03
|
||||
movi a4, 176 /* 0x000000b0 */ # 55e: 42a0b0
|
||||
addi sp, sp, -16 /* (local0) */ # 561: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 564: 0901
|
||||
call0 memset # 566: 01fcffc0
|
||||
# 56a: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 56c: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 56e: 12c110
|
||||
ret # 571: 0df0
|
468
binary_sdk/libwpa/aes-internal-enc.S
Normal file
468
binary_sdk/libwpa/aes-internal-enc.S
Normal file
|
@ -0,0 +1,468 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 0000ff00
|
||||
# 8: 000000ff
|
||||
# c: 00ff0000
|
||||
|
||||
# Function @ .irom0.text+0x10
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word @ -0x8
|
||||
# (local7): word @ -0x4
|
||||
.global sdk_rijndaelEncrypt
|
||||
.type sdk_rijndaelEncrypt, @function
|
||||
sdk_rijndaelEncrypt:
|
||||
mov a6, a4 /* arg2 */ # 10: 6d04
|
||||
addi sp, sp, -32 /* (local0) */ # 12: 12c1e0
|
||||
s32i a15, sp, 20 /* a15 -> [(local5)] */ # 15: f951
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 17: c921
|
||||
l32i a5, a2, 8 /* [arg0+0x8] */ # 19: 5822
|
||||
l32i a9, a2, 0 /* [arg0] */ # 1b: 9802
|
||||
l8ui a8, a3, 3 /* [arg1+0x3] */ # 1d: 820303
|
||||
l32i a10, a2, 4 /* [arg0+0x4] */ # 20: a812
|
||||
l8ui a7, a3, 7 /* [arg1+0x7] */ # 22: 720307
|
||||
l8ui a11, a3, 0 /* [arg1] */ # 25: b20300
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 28: e941
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 2a: 0911
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 2c: d931
|
||||
movi a0, 5 /* 0x00000005 */ # 2e: 0c50
|
||||
l8ui a4, a3, 11 /* [arg1+0xb] */ # 30: 42030b
|
||||
l8ui a13, a3, 1 /* [arg1+0x1] */ # 33: d20301
|
||||
l8ui a14, a3, 13 /* [arg1+0xd] */ # 36: e2030d
|
||||
s32i a6, sp, 0 /* arg2 -> [(local0)] */ # 39: 6901
|
||||
slli a11, a11, 24 # 3b: 80bb01
|
||||
l8ui a6, a3, 9 /* [arg1+0x9] */ # 3e: 620309
|
||||
slli a14, a14, 16 # 41: 00ee11
|
||||
xor a7, a7, a10 # 44: a07730
|
||||
slli a13, a13, 16 # 47: 00dd11
|
||||
xor a8, a8, a9 # 4a: 908830
|
||||
xor a4, a4, a5 # 4d: 504430
|
||||
slli a6, a6, 16 # 50: 006611
|
||||
l8ui a5, a3, 8 /* [arg1+0x8] */ # 53: 520308
|
||||
l8ui a9, a3, 4 /* [arg1+0x4] */ # 56: 920304
|
||||
xor a11, a11, a13 # 59: d0bb30
|
||||
l8ui a10, a3, 5 /* [arg1+0x5] */ # 5c: a20305
|
||||
l8ui a13, a3, 14 /* [arg1+0xe] */ # 5f: d2030e
|
||||
slli a10, a10, 16 # 62: 00aa11
|
||||
slli a9, a9, 24 # 65: 809901
|
||||
slli a5, a5, 24 # 68: 805501
|
||||
slli a13, a13, 8 # 6b: 80dd11
|
||||
xor a5, a5, a6 # 6e: 605530
|
||||
xor a9, a9, a10 # 71: a09930
|
||||
l8ui a6, a3, 10 /* [arg1+0xa] */ # 74: 62030a
|
||||
l8ui a10, a3, 12 /* [arg1+0xc] */ # 77: a2030c
|
||||
slli a6, a6, 8 # 7a: 806611
|
||||
xor a5, a5, a6 # 7d: 605530
|
||||
slli a10, a10, 24 # 80: 80aa01
|
||||
xor a10, a10, a14 # 83: e0aa30
|
||||
xor a10, a10, a13 # 86: d0aa30
|
||||
l8ui a14, a3, 6 /* [arg1+0x6] */ # 89: e20306
|
||||
l8ui a13, a3, 2 /* [arg1+0x2] */ # 8c: d20302
|
||||
slli a14, a14, 8 # 8f: 80ee11
|
||||
slli a13, a13, 8 # 92: 80dd11
|
||||
xor a9, a9, a14 # 95: e09930
|
||||
xor a7, a7, a9 # 98: 907730
|
||||
xor a11, a11, a13 # 9b: d0bb30
|
||||
xor a8, a8, a11 # 9e: b08830
|
||||
l8ui a9, a3, 15 /* [arg1+0xf] */ # a1: 92030f
|
||||
l32i a11, a2, 12 /* [arg0+0xc] */ # a4: b832
|
||||
xor a4, a4, a5 # a6: 504430
|
||||
xor a9, a9, a11 # a9: b09930
|
||||
xor a3, a9, a10 # ac: a03930
|
||||
movi a9, sdk_Te0 # af: 91d4ff
|
||||
.Lbr001: addi a0, a0, -1 # b2: 0b00
|
||||
ssai 8 # b4: 004840
|
||||
extui a11, a7, 0, 8 # b7: 70b074
|
||||
extui a13, a3, 16, 8 # ba: 30d075
|
||||
extui a12, a8, 0, 8 # bd: 80c074
|
||||
extui a14, a3, 8, 8 # c0: 30e874
|
||||
extui a15, a3, 0, 8 # c3: 30f074
|
||||
extui a5, a4, 8, 8 # c6: 405874
|
||||
extui a10, a7, 16, 8 # c9: 70a075
|
||||
extui a6, a8, 24, 8 # cc: 806875
|
||||
addx4 a6, a6, a9 # cf: 9066a0
|
||||
addx4 a10, a10, a9 # d2: 90aaa0
|
||||
addx4 a5, a5, a9 # d5: 9055a0
|
||||
addx4 a15, a15, a9 # d8: 90ffa0
|
||||
addx4 a14, a14, a9 # db: 90eea0
|
||||
addx4 a12, a12, a9 # de: 90cca0
|
||||
addx4 a13, a13, a9 # e1: 90dda0
|
||||
addx4 a11, a11, a9 # e4: 90bba0
|
||||
l32i a11, a11, 0 # e7: b80b
|
||||
l32i a13, a13, 0 # e9: d80d
|
||||
l32i a12, a12, 0 # eb: c80c
|
||||
l32i a14, a14, 0 # ed: e80e
|
||||
l32i a15, a15, 0 # ef: f80f
|
||||
l32i a5, a5, 0 # f1: 5805
|
||||
l32i a10, a10, 0 # f3: a80a
|
||||
l32i a6, a6, 0 # f5: 6806
|
||||
src a10, a10, a10 # f7: a0aa81
|
||||
xor a6, a6, a10 # fa: a06630
|
||||
ssai 16 # fd: 104040
|
||||
extui a10, a8, 8, 8 # 100: 80a874
|
||||
src a5, a5, a5 # 103: 505581
|
||||
extui a8, a8, 16, 8 # 106: 808075
|
||||
ssai 24 # 109: 104840
|
||||
xor a5, a5, a6 # 10c: 605530
|
||||
addx4 a10, a10, a9 # 10f: 90aaa0
|
||||
l32i a10, a10, 0 # 112: a80a
|
||||
extui a6, a3, 24, 8 # 114: 306875
|
||||
s32i a5, sp, 24 /* a5 -> [(local6)] */ # 117: 5961
|
||||
src a15, a15, a15 # 119: f0ff81
|
||||
addx4 a8, a8, a9 # 11c: 9088a0
|
||||
l32i a8, a8, 0 # 11f: 8808
|
||||
ssai 8 # 121: 004840
|
||||
extui a5, a4, 16, 8 # 124: 405075
|
||||
extui a3, a7, 24, 8 # 127: 703875
|
||||
addx4 a6, a6, a9 # 12a: 9066a0
|
||||
l32i a6, a6, 0 # 12d: 6806
|
||||
addx4 a3, a3, a9 # 12f: 9033a0
|
||||
addx4 a5, a5, a9 # 132: 9055a0
|
||||
l32i a5, a5, 0 # 135: 5805
|
||||
l32i a3, a3, 0 # 137: 3803
|
||||
src a5, a5, a5 # 139: 505581
|
||||
xor a3, a3, a5 # 13c: 503330
|
||||
ssai 16 # 13f: 104040
|
||||
extui a5, a7, 8, 8 # 142: 705874
|
||||
src a14, a14, a14 # 145: e0ee81
|
||||
l32i a7, a2, 20 # 148: 7852
|
||||
addx4 a5, a5, a9 # 14a: 9055a0
|
||||
xor a14, a14, a3 # 14d: 30ee30
|
||||
ssai 24 # 150: 104840
|
||||
l32i a3, a2, 28 # 153: 3872
|
||||
src a12, a12, a12 # 155: c0cc81
|
||||
l32i a5, a5, 0 # 158: 5805
|
||||
ssai 8 # 15a: 004840
|
||||
xor a7, a7, a12 # 15d: c07730
|
||||
xor a7, a7, a14 # 160: e07730
|
||||
src a13, a13, a13 # 163: d0dd81
|
||||
extui a12, a4, 24, 8 # 166: 40c875
|
||||
addx4 a12, a12, a9 # 169: 90cca0
|
||||
ssai 16 # 16c: 104040
|
||||
src a10, a10, a10 # 16f: a0aa81
|
||||
l32i a12, a12, 0 # 172: c80c
|
||||
ssai 24 # 174: 104840
|
||||
src a11, a11, a11 # 177: b0bb81
|
||||
xor a12, a12, a13 # 17a: d0cc30
|
||||
xor a10, a10, a12 # 17d: c0aa30
|
||||
ssai 8 # 180: 004840
|
||||
src a8, a8, a8 # 183: 808881
|
||||
xor a6, a6, a8 # 186: 806630
|
||||
ssai 16 # 189: 104040
|
||||
l32i a8, a2, 16 # 18c: 8842
|
||||
src a5, a5, a5 # 18e: 505581
|
||||
xor a5, a5, a6 # 191: 605530
|
||||
ssai 24 # 194: 104840
|
||||
l32i a6, a2, 24 # 197: 6862
|
||||
xor a8, a8, a15 # 199: f08830
|
||||
addi a2, a2, 32 # 19c: 22c220
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 19f: f861
|
||||
xor a6, a6, a11 # 1a1: b06630
|
||||
xor a6, a6, a10 # 1a4: a06630
|
||||
extui a10, a4, 0, 8 # 1a7: 40a074
|
||||
addx4 a10, a10, a9 # 1aa: 90aaa0
|
||||
l32i a10, a10, 0 # 1ad: a80a
|
||||
xor a8, a8, a15 # 1af: f08830
|
||||
src a10, a10, a10 # 1b2: a0aa81
|
||||
xor a3, a3, a10 # 1b5: a03330
|
||||
xor a3, a3, a5 # 1b8: 503330
|
||||
beqz a0, .Lbr002 # 1bb: 166010
|
||||
ssai 8 # 1be: 004840
|
||||
extui a11, a7, 0, 8 # 1c1: 70b074
|
||||
extui a10, a8, 8, 8 # 1c4: 80a874
|
||||
extui a13, a3, 16, 8 # 1c7: 30d075
|
||||
extui a12, a8, 0, 8 # 1ca: 80c074
|
||||
extui a14, a3, 8, 8 # 1cd: 30e874
|
||||
extui a5, a6, 16, 8 # 1d0: 605075
|
||||
extui a15, a6, 8, 8 # 1d3: 60f874
|
||||
s32i a0, sp, 28 /* a0 -> [(local7)] */ # 1d6: 0971
|
||||
extui a4, a7, 16, 8 # 1d8: 704075
|
||||
extui a0, a8, 24, 8 # 1db: 800875
|
||||
addx4 a4, a4, a9 # 1de: 9044a0
|
||||
addx4 a15, a15, a9 # 1e1: 90ffa0
|
||||
addx4 a5, a5, a9 # 1e4: 9055a0
|
||||
addx4 a14, a14, a9 # 1e7: 90eea0
|
||||
addx4 a12, a12, a9 # 1ea: 90cca0
|
||||
addx4 a13, a13, a9 # 1ed: 90dda0
|
||||
addx4 a10, a10, a9 # 1f0: 90aaa0
|
||||
addx4 a11, a11, a9 # 1f3: 90bba0
|
||||
l32i a11, a11, 0 # 1f6: b80b
|
||||
l32i a10, a10, 0 # 1f8: a80a
|
||||
l32i a13, a13, 0 # 1fa: d80d
|
||||
l32i a12, a12, 0 # 1fc: c80c
|
||||
l32i a14, a14, 0 # 1fe: e80e
|
||||
l32i a5, a5, 0 # 200: 5805
|
||||
l32i a15, a15, 0 # 202: f80f
|
||||
l32i a4, a4, 0 # 204: 4804
|
||||
addx4 a0, a0, a9 # 206: 9000a0
|
||||
l32i a0, a0, 0 # 209: 0800
|
||||
src a4, a4, a4 # 20b: 404481
|
||||
xor a0, a0, a4 # 20e: 400030
|
||||
ssai 16 # 211: 104040
|
||||
extui a4, a8, 16, 8 # 214: 804075
|
||||
src a15, a15, a15 # 217: f0ff81
|
||||
l32i a8, a2, 0 # 21a: 8802
|
||||
ssai 24 # 21c: 104840
|
||||
xor a15, a15, a0 # 21f: 00ff30
|
||||
addx4 a4, a4, a9 # 222: 9044a0
|
||||
extui a0, a3, 0, 8 # 225: 300074
|
||||
l32i a4, a4, 0 # 228: 4804
|
||||
extui a3, a3, 24, 8 # 22a: 303875
|
||||
addx4 a0, a0, a9 # 22d: 9000a0
|
||||
l32i a0, a0, 0 # 230: 0800
|
||||
addx4 a3, a3, a9 # 232: 9033a0
|
||||
l32i a3, a3, 0 # 235: 3803
|
||||
src a0, a0, a0 # 237: 000081
|
||||
xor a8, a8, a0 # 23a: 008830
|
||||
ssai 8 # 23d: 004840
|
||||
src a5, a5, a5 # 240: 505581
|
||||
xor a8, a8, a15 # 243: f08830
|
||||
ssai 16 # 246: 104040
|
||||
src a14, a14, a14 # 249: e0ee81
|
||||
ssai 24 # 24c: 104840
|
||||
src a12, a12, a12 # 24f: c0cc81
|
||||
l32i a0, sp, 28 /* [(local7)] */ # 252: 0871
|
||||
ssai 8 # 254: 004840
|
||||
src a13, a13, a13 # 257: d0dd81
|
||||
ssai 16 # 25a: 104040
|
||||
src a10, a10, a10 # 25d: a0aa81
|
||||
ssai 24 # 260: 104840
|
||||
src a11, a11, a11 # 263: b0bb81
|
||||
ssai 8 # 266: 004840
|
||||
src a4, a4, a4 # 269: 404481
|
||||
xor a3, a3, a4 # 26c: 403330
|
||||
extui a4, a7, 24, 8 # 26f: 704875
|
||||
addx4 a4, a4, a9 # 272: 9044a0
|
||||
l32i a4, a4, 0 # 275: 4804
|
||||
ssai 16 # 277: 104040
|
||||
xor a4, a4, a5 # 27a: 504430
|
||||
extui a5, a7, 8, 8 # 27d: 705874
|
||||
xor a14, a14, a4 # 280: 40ee30
|
||||
l32i a7, a2, 4 # 283: 7812
|
||||
l32i a4, a2, 8 # 285: 4822
|
||||
addx4 a5, a5, a9 # 287: 9055a0
|
||||
l32i a5, a5, 0 # 28a: 5805
|
||||
xor a4, a4, a11 # 28c: b04430
|
||||
xor a7, a7, a12 # 28f: c07730
|
||||
xor a7, a7, a14 # 292: e07730
|
||||
src a5, a5, a5 # 295: 505581
|
||||
extui a12, a6, 24, 8 # 298: 60c875
|
||||
ssai 24 # 29b: 104840
|
||||
addx4 a12, a12, a9 # 29e: 90cca0
|
||||
l32i a12, a12, 0 # 2a1: c80c
|
||||
xor a5, a5, a3 # 2a3: 305530
|
||||
xor a12, a12, a13 # 2a6: d0cc30
|
||||
xor a10, a10, a12 # 2a9: c0aa30
|
||||
xor a4, a4, a10 # 2ac: a04430
|
||||
extui a10, a6, 0, 8 # 2af: 60a074
|
||||
addx4 a10, a10, a9 # 2b2: 90aaa0
|
||||
l32i a10, a10, 0 # 2b5: a80a
|
||||
l32i a3, a2, 12 # 2b7: 3832
|
||||
src a10, a10, a10 # 2b9: a0aa81
|
||||
xor a3, a3, a10 # 2bc: a03330
|
||||
xor a3, a3, a5 # 2bf: 503330
|
||||
j .Lbr001 # 2c2: 067bff
|
||||
.Lbr002: l32i a11, sp, 0 /* [(local0)] */ # 2c5: b801
|
||||
movi a15, 0xff000000 # 2c7: f150ff
|
||||
l32i a13, a2, 0 # 2ca: d802
|
||||
movi a0, 0x0000ff00 # 2cc: 0150ff
|
||||
extui a5, a7, 16, 8 # 2cf: 705075
|
||||
extui a10, a8, 24, 8 # 2d2: 80a875
|
||||
extui a4, a6, 8, 8 # 2d5: 604874
|
||||
extui a14, a3, 0, 8 # 2d8: 30e074
|
||||
extui a12, a8, 0, 8 # 2db: 80c074
|
||||
addx4 a12, a12, a9 # 2de: 90cca0
|
||||
addx4 a14, a14, a9 # 2e1: 90eea0
|
||||
addx4 a4, a4, a9 # 2e4: 9044a0
|
||||
addx4 a10, a10, a9 # 2e7: 90aaa0
|
||||
addx4 a5, a5, a9 # 2ea: 9055a0
|
||||
l32i a5, a5, 0 # 2ed: 5805
|
||||
l32i a10, a10, 0 # 2ef: a80a
|
||||
l32i a4, a4, 0 # 2f1: 4804
|
||||
l32i a14, a14, 0 # 2f3: e80e
|
||||
and a4, a4, a0 # 2f5: 004410
|
||||
extui a14, a14, 8, 8 # 2f8: e0e874
|
||||
slli a10, a10, 8 # 2fb: 80aa11
|
||||
xor a13, a13, a14 # 2fe: e0dd30
|
||||
movi a14, 0x00ff0000 # 301: e140ff
|
||||
and a10, a10, a15 # 304: f0aa10
|
||||
and a5, a5, a14 # 307: e05510
|
||||
xor a5, a5, a10 # 30a: a05530
|
||||
xor a4, a4, a5 # 30d: 504430
|
||||
xor a13, a13, a4 # 310: 40dd30
|
||||
s8i a13, a11, 3 /* a13 -> [[(local0)]+0x3] */ # 313: d24b03
|
||||
extui a5, a13, 24, 8 # 316: d05875
|
||||
extui a4, a13, 16, 16 # 319: d040f5
|
||||
s8i a4, a11, 1 /* a4 -> [[(local0)]+0x1] */ # 31c: 424b01
|
||||
s8i a5, a11, 0 /* a5 -> [[(local0)]] */ # 31f: 524b00
|
||||
extui a4, a7, 24, 8 # 322: 704875
|
||||
extui a5, a7, 0, 8 # 325: 705074
|
||||
addx4 a5, a5, a9 # 328: 9055a0
|
||||
addx4 a4, a4, a9 # 32b: 9044a0
|
||||
srli a13, a13, 8 # 32e: d0d841
|
||||
s8i a13, a11, 2 /* a13 -> [[(local0)]+0x2] */ # 331: d24b02
|
||||
l32i a10, a2, 4 # 334: a812
|
||||
l32i a4, a4, 0 # 336: 4804
|
||||
l32i a12, a12, 0 # 338: c80c
|
||||
extui a13, a6, 16, 8 # 33a: 60d075
|
||||
addx4 a13, a13, a9 # 33d: 90dda0
|
||||
l32i a13, a13, 0 # 340: d80d
|
||||
extui a12, a12, 8, 8 # 342: c0c874
|
||||
slli a4, a4, 8 # 345: 804411
|
||||
and a4, a4, a15 # 348: f04410
|
||||
xor a10, a10, a12 # 34b: c0aa30
|
||||
and a13, a13, a14 # 34e: e0dd10
|
||||
extui a12, a3, 8, 8 # 351: 30c874
|
||||
addx4 a12, a12, a9 # 354: 90cca0
|
||||
l32i a12, a12, 0 # 357: c80c
|
||||
xor a13, a13, a4 # 359: 40dd30
|
||||
and a12, a12, a0 # 35c: 00cc10
|
||||
xor a12, a12, a13 # 35f: d0cc30
|
||||
xor a10, a10, a12 # 362: c0aa30
|
||||
s8i a10, a11, 7 /* a10 -> [[(local0)]+0x7] */ # 365: a24b07
|
||||
extui a13, a10, 24, 8 # 368: a0d875
|
||||
extui a12, a10, 16, 16 # 36b: a0c0f5
|
||||
s8i a12, a11, 5 /* a12 -> [[(local0)]+0x5] */ # 36e: c24b05
|
||||
s8i a13, a11, 4 /* a13 -> [[(local0)]+0x4] */ # 371: d24b04
|
||||
extui a12, a6, 24, 8 # 374: 60c875
|
||||
extui a13, a8, 16, 8 # 377: 80d075
|
||||
addx4 a13, a13, a9 # 37a: 90dda0
|
||||
addx4 a12, a12, a9 # 37d: 90cca0
|
||||
srli a10, a10, 8 # 380: a0a841
|
||||
s8i a10, a11, 6 /* a10 -> [[(local0)]+0x6] */ # 383: a24b06
|
||||
l32i a4, a2, 8 # 386: 4822
|
||||
l32i a5, a5, 0 # 388: 5805
|
||||
l32i a12, a12, 0 # 38a: c80c
|
||||
extui a10, a3, 16, 8 # 38c: 30a075
|
||||
addx4 a10, a10, a9 # 38f: 90aaa0
|
||||
l32i a10, a10, 0 # 392: a80a
|
||||
slli a12, a12, 8 # 394: 80cc11
|
||||
extui a5, a5, 8, 8 # 397: 505874
|
||||
xor a4, a4, a5 # 39a: 504430
|
||||
and a12, a12, a15 # 39d: f0cc10
|
||||
extui a5, a8, 8, 8 # 3a0: 805874
|
||||
and a10, a10, a14 # 3a3: e0aa10
|
||||
xor a10, a10, a12 # 3a6: c0aa30
|
||||
addx4 a5, a5, a9 # 3a9: 9055a0
|
||||
l32i a5, a5, 0 # 3ac: 5805
|
||||
extui a12, a7, 8, 8 # 3ae: 70c874
|
||||
addx4 a12, a12, a9 # 3b1: 90cca0
|
||||
and a5, a5, a0 # 3b4: 005510
|
||||
xor a5, a5, a10 # 3b7: a05530
|
||||
xor a4, a4, a5 # 3ba: 504430
|
||||
s8i a4, a11, 11 /* a4 -> [[(local0)]+0xb] */ # 3bd: 424b0b
|
||||
extui a10, a4, 24, 8 # 3c0: 40a875
|
||||
extui a5, a4, 16, 16 # 3c3: 4050f5
|
||||
s8i a5, a11, 9 /* a5 -> [[(local0)]+0x9] */ # 3c6: 524b09
|
||||
s8i a10, a11, 8 /* a10 -> [[(local0)]+0x8] */ # 3c9: a24b08
|
||||
srli a4, a4, 8 # 3cc: 404841
|
||||
s8i a4, a11, 10 /* a4 -> [[(local0)]+0xa] */ # 3cf: 424b0a
|
||||
l32i a10, a2, 12 # 3d2: a832
|
||||
l32i a13, a13, 0 # 3d4: d80d
|
||||
l32i a12, a12, 0 # 3d6: c80c
|
||||
and a13, a13, a14 # 3d8: e0dd10
|
||||
and a12, a12, a0 # 3db: 00cc10
|
||||
extui a14, a3, 24, 8 # 3de: 30e875
|
||||
extui a0, a6, 0, 8 # 3e1: 600074
|
||||
addx4 a0, a0, a9 # 3e4: 9000a0
|
||||
addx4 a14, a14, a9 # 3e7: 90eea0
|
||||
l32i a14, a14, 0 # 3ea: e80e
|
||||
l32i a0, a0, 0 # 3ec: 0800
|
||||
slli a14, a14, 8 # 3ee: 80ee11
|
||||
extui a0, a0, 8, 8 # 3f1: 000874
|
||||
xor a10, a10, a0 # 3f4: 00aa30
|
||||
and a14, a14, a15 # 3f7: f0ee10
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 3fa: 0811
|
||||
xor a13, a13, a14 # 3fc: e0dd30
|
||||
l32i a15, sp, 20 /* [(local5)] */ # 3ff: f851
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 401: e841
|
||||
xor a12, a12, a13 # 403: d0cc30
|
||||
xor a10, a10, a12 # 406: c0aa30
|
||||
s8i a10, a11, 15 /* a10 -> [[(local0)]+0xf] */ # 409: a24b0f
|
||||
extui a13, a10, 24, 8 # 40c: a0d875
|
||||
extui a12, a10, 16, 16 # 40f: a0c0f5
|
||||
s8i a12, a11, 13 /* a12 -> [[(local0)]+0xd] */ # 412: c24b0d
|
||||
s8i a13, a11, 12 /* a13 -> [[(local0)]+0xc] */ # 415: d24b0c
|
||||
l32i a12, sp, 8 /* [(local2)] */ # 418: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 41a: d831
|
||||
srli a10, a10, 8 # 41c: a0a841
|
||||
s8i a10, a11, 14 /* a10 -> [[(local0)]+0xe] */ # 41f: a24b0e
|
||||
addi sp, sp, 32 /* (top of frame) */ # 422: 12c120
|
||||
ret # 425: 0df0
|
||||
|
||||
.literal_position # 428: 00000000
|
||||
# 42c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x430
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_aes_encrypt_init
|
||||
.type sdk_aes_encrypt_init, @function
|
||||
sdk_aes_encrypt_init:
|
||||
addi sp, sp, -16 /* (local0) */ # 430: 12c1f0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 433: 0921
|
||||
s32i a2, sp, 4 /* arg0 -> [(local1)] */ # 435: 2911
|
||||
bnei a3, 16, .Lbr003 # 437: 66b30c
|
||||
movi a2, 176 /* 0x000000b0 */ # 43a: 22a0b0
|
||||
call0 malloc # 43d: 01faffc0
|
||||
# 441: 0000
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 443: 2901
|
||||
bnez a2, .Lbr004 # 445: cc32
|
||||
.Lbr003: movi a2, 0 /* 0x00000000 */ # 447: 0c02
|
||||
j .Lbr005 # 449: 460200
|
||||
.Lbr004: l32i a3, sp, 4 /* [(local1)] */ # 44c: 3811
|
||||
call0 sdk_rijndaelKeySetupEnc # 44e: 01f7ffc0
|
||||
# 452: 0000
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 454: 2801
|
||||
.Lbr005: l32i a0, sp, 8 /* [(local2)] */ # 456: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 458: 12c110
|
||||
ret # 45b: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x460
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_aes_encrypt
|
||||
.type sdk_aes_encrypt, @function
|
||||
sdk_aes_encrypt:
|
||||
addi sp, sp, -16 /* (local0) */ # 460: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 463: 0901
|
||||
call0 sdk_rijndaelEncrypt # 465: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 468: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 46a: 12c110
|
||||
ret # 46d: 0df0
|
||||
|
||||
.literal_position # 470: 00000000
|
||||
# 474: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x478
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_aes_encrypt_deinit
|
||||
.type sdk_aes_encrypt_deinit, @function
|
||||
sdk_aes_encrypt_deinit:
|
||||
movi a3, 0 /* 0x00000000 */ # 478: 0c03
|
||||
movi a4, 176 /* 0x000000b0 */ # 47a: 42a0b0
|
||||
addi sp, sp, -16 /* (local0) */ # 47d: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 480: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 482: 0901
|
||||
mov a12, a2 /* arg0 */ # 484: cd02
|
||||
call0 memset # 486: 01faffc0
|
||||
# 48a: 0000
|
||||
mov a2, a12 /* arg0 */ # 48c: 2d0c
|
||||
call0 free # 48e: 01f9ffc0
|
||||
# 492: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 494: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 496: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 498: 12c110
|
||||
ret # 49b: 0df0
|
450
binary_sdk/libwpa/aes-internal.S
Normal file
450
binary_sdk/libwpa/aes-internal.S
Normal file
|
@ -0,0 +1,450 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 0000ff00
|
||||
# 4: 00ff0000
|
||||
# 8: 000000ff
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_rijndaelKeySetupEnc
|
||||
.type sdk_rijndaelKeySetupEnc, @function
|
||||
sdk_rijndaelKeySetupEnc:
|
||||
movi a8, 0x00ff0000 # 14: 81fbff
|
||||
movi a7, 0x0000ff00 # 17: 71fbff
|
||||
movi a6, 0xff000000 # 1a: 61fbff
|
||||
addi sp, sp, -16 /* (local0) */ # 1d: 12c1f0
|
||||
movi a11, sdk_Te0 # 20: b1fbff
|
||||
l8ui a5, a3, 3 /* [arg1+0x3] */ # 23: 520303
|
||||
l8ui a4, a3, 2 /* [arg1+0x2] */ # 26: 420302
|
||||
l8ui a9, a3, 0 /* [arg1] */ # 29: 920300
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 2c: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 2e: 0901
|
||||
l8ui a12, a3, 1 /* [arg1+0x1] */ # 30: c20301
|
||||
movi a0, sdk_rcons # 33: 01f7ff
|
||||
slli a9, a9, 24 # 36: 809901
|
||||
slli a4, a4, 8 # 39: 804411
|
||||
addi a10, a0, 10 /* .rodata+0xa */ # 3c: aba0
|
||||
xor a5, a5, a4 # 3e: 405530
|
||||
slli a12, a12, 16 # 41: 00cc11
|
||||
xor a9, a9, a12 # 44: c09930
|
||||
xor a5, a5, a9 # 47: 905530
|
||||
s32i a5, a2, 0 /* a5 -> [arg0] */ # 4a: 5902
|
||||
l8ui a9, a3, 7 /* [arg1+0x7] */ # 4c: 920307
|
||||
l8ui a5, a3, 6 /* [arg1+0x6] */ # 4f: 520306
|
||||
l8ui a4, a3, 5 /* [arg1+0x5] */ # 52: 420305
|
||||
l8ui a12, a3, 4 /* [arg1+0x4] */ # 55: c20304
|
||||
slli a4, a4, 16 # 58: 004411
|
||||
slli a12, a12, 24 # 5b: 80cc01
|
||||
slli a5, a5, 8 # 5e: 805511
|
||||
xor a9, a9, a5 # 61: 509930
|
||||
xor a12, a12, a4 # 64: 40cc30
|
||||
xor a9, a9, a12 # 67: c09930
|
||||
s32i a9, a2, 4 /* a9 -> [arg0+0x4] */ # 6a: 9912
|
||||
l8ui a12, a3, 11 /* [arg1+0xb] */ # 6c: c2030b
|
||||
l8ui a9, a3, 10 /* [arg1+0xa] */ # 6f: 92030a
|
||||
l8ui a5, a3, 9 /* [arg1+0x9] */ # 72: 520309
|
||||
l8ui a4, a3, 8 /* [arg1+0x8] */ # 75: 420308
|
||||
slli a5, a5, 16 # 78: 005511
|
||||
slli a4, a4, 24 # 7b: 804401
|
||||
slli a9, a9, 8 # 7e: 809911
|
||||
xor a12, a12, a9 # 81: 90cc30
|
||||
xor a4, a4, a5 # 84: 504430
|
||||
xor a12, a12, a4 # 87: 40cc30
|
||||
s32i a12, a2, 8 /* a12 -> [arg0+0x8] */ # 8a: c922
|
||||
l8ui a4, a3, 15 /* [arg1+0xf] */ # 8c: 42030f
|
||||
l8ui a12, a3, 14 /* [arg1+0xe] */ # 8f: c2030e
|
||||
l8ui a9, a3, 13 /* [arg1+0xd] */ # 92: 92030d
|
||||
l8ui a5, a3, 12 /* [arg1+0xc] */ # 95: 52030c
|
||||
slli a9, a9, 16 # 98: 009911
|
||||
slli a5, a5, 24 # 9b: 805501
|
||||
slli a12, a12, 8 # 9e: 80cc11
|
||||
xor a4, a4, a12 # a1: c04430
|
||||
xor a5, a5, a9 # a4: 905530
|
||||
xor a4, a4, a5 # a7: 504430
|
||||
s32i a4, a2, 12 /* a4 -> [arg0+0xc] */ # aa: 4932
|
||||
.Lbr001: l32i a4, a2, 12 # ac: 4832
|
||||
l8ui a9, a0, 0 # ae: 920000
|
||||
addi a0, a0, 1 # b1: 1b00
|
||||
slli a9, a9, 24 # b3: 809901
|
||||
extui a3, a4, 0, 8 # b6: 403074
|
||||
extui a12, a4, 24, 8 # b9: 40c875
|
||||
extui a5, a4, 16, 8 # bc: 405075
|
||||
addx4 a5, a5, a11 # bf: b055a0
|
||||
addx4 a12, a12, a11 # c2: b0cca0
|
||||
addx4 a3, a3, a11 # c5: b033a0
|
||||
l32i a3, a3, 0 # c8: 3803
|
||||
l32i a12, a12, 0 # ca: c80c
|
||||
l32i a5, a5, 0 # cc: 5805
|
||||
extui a12, a12, 8, 8 # ce: c0c874
|
||||
slli a5, a5, 8 # d1: 805511
|
||||
xor a9, a9, a12 # d4: c09930
|
||||
extui a12, a4, 8, 8 # d7: 40c874
|
||||
addx4 a12, a12, a11 # da: b0cca0
|
||||
l32i a12, a12, 0 # dd: c80c
|
||||
and a3, a3, a7 # df: 703310
|
||||
and a12, a12, a8 # e2: 80cc10
|
||||
xor a3, a3, a12 # e5: c03330
|
||||
l32i a12, a2, 0 # e8: c802
|
||||
and a5, a5, a6 # ea: 605510
|
||||
xor a12, a12, a5 # ed: 50cc30
|
||||
xor a12, a12, a3 # f0: 30cc30
|
||||
l32i a5, a2, 4 # f3: 5812
|
||||
l32i a3, a2, 8 # f5: 3822
|
||||
xor a9, a9, a12 # f7: c09930
|
||||
s32i a9, a2, 16 # fa: 9942
|
||||
xor a5, a5, a9 # fc: 905530
|
||||
xor a3, a3, a5 # ff: 503330
|
||||
s32i a5, a2, 20 # 102: 5952
|
||||
s32i a3, a2, 24 # 104: 3962
|
||||
xor a3, a3, a4 # 106: 403330
|
||||
s32i a3, a2, 28 # 109: 3972
|
||||
addi a2, a2, 16 # 10b: 22c210
|
||||
bne a0, a10, .Lbr001 # 10e: a7909a
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 111: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 113: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 115: 12c110
|
||||
ret # 118: 0df0
|
||||
|
||||
.section .rodata, "a", @progbits
|
||||
|
||||
.global sdk_rcons
|
||||
.type sdk_rcons, @object
|
||||
sdk_rcons: .byte 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80
|
||||
.byte 0x1b, 0x36
|
||||
|
||||
.section .irom.text, "ax", @progbits
|
||||
|
||||
.global sdk_Te0
|
||||
.type sdk_Te0, @object
|
||||
sdk_Te0: .byte 0xa5, 0x63, 0x63, 0xc6, 0x84, 0x7c, 0x7c, 0xf8
|
||||
.byte 0x99, 0x77, 0x77, 0xee, 0x8d, 0x7b, 0x7b, 0xf6
|
||||
.byte 0x0d, 0xf2, 0xf2, 0xff, 0xbd, 0x6b, 0x6b, 0xd6
|
||||
.byte 0xb1, 0x6f, 0x6f, 0xde, 0x54, 0xc5, 0xc5, 0x91
|
||||
.byte 0x50, 0x30, 0x30, 0x60, 0x03, 0x01, 0x01, 0x02
|
||||
.byte 0xa9, 0x67, 0x67, 0xce, 0x7d, 0x2b, 0x2b, 0x56
|
||||
.byte 0x19, 0xfe, 0xfe, 0xe7, 0x62, 0xd7, 0xd7, 0xb5
|
||||
.byte 0xe6, 0xab, 0xab, 0x4d, 0x9a, 0x76, 0x76, 0xec
|
||||
.byte 0x45, 0xca, 0xca, 0x8f, 0x9d, 0x82, 0x82, 0x1f
|
||||
.byte 0x40, 0xc9, 0xc9, 0x89, 0x87, 0x7d, 0x7d, 0xfa
|
||||
.byte 0x15, 0xfa, 0xfa, 0xef, 0xeb, 0x59, 0x59, 0xb2
|
||||
.byte 0xc9, 0x47, 0x47, 0x8e, 0x0b, 0xf0, 0xf0, 0xfb
|
||||
.byte 0xec, 0xad, 0xad, 0x41, 0x67, 0xd4, 0xd4, 0xb3
|
||||
.byte 0xfd, 0xa2, 0xa2, 0x5f, 0xea, 0xaf, 0xaf, 0x45
|
||||
.byte 0xbf, 0x9c, 0x9c, 0x23, 0xf7, 0xa4, 0xa4, 0x53
|
||||
.byte 0x96, 0x72, 0x72, 0xe4, 0x5b, 0xc0, 0xc0, 0x9b
|
||||
.byte 0xc2, 0xb7, 0xb7, 0x75, 0x1c, 0xfd, 0xfd, 0xe1
|
||||
.byte 0xae, 0x93, 0x93, 0x3d, 0x6a, 0x26, 0x26, 0x4c
|
||||
.byte 0x5a, 0x36, 0x36, 0x6c, 0x41, 0x3f, 0x3f, 0x7e
|
||||
.byte 0x02, 0xf7, 0xf7, 0xf5, 0x4f, 0xcc, 0xcc, 0x83
|
||||
.byte 0x5c, 0x34, 0x34, 0x68, 0xf4, 0xa5, 0xa5, 0x51
|
||||
.byte 0x34, 0xe5, 0xe5, 0xd1, 0x08, 0xf1, 0xf1, 0xf9
|
||||
.byte 0x93, 0x71, 0x71, 0xe2, 0x73, 0xd8, 0xd8, 0xab
|
||||
.byte 0x53, 0x31, 0x31, 0x62, 0x3f, 0x15, 0x15, 0x2a
|
||||
.byte 0x0c, 0x04, 0x04, 0x08, 0x52, 0xc7, 0xc7, 0x95
|
||||
.byte 0x65, 0x23, 0x23, 0x46, 0x5e, 0xc3, 0xc3, 0x9d
|
||||
.byte 0x28, 0x18, 0x18, 0x30, 0xa1, 0x96, 0x96, 0x37
|
||||
.byte 0x0f, 0x05, 0x05, 0x0a, 0xb5, 0x9a, 0x9a, 0x2f
|
||||
.byte 0x09, 0x07, 0x07, 0x0e, 0x36, 0x12, 0x12, 0x24
|
||||
.byte 0x9b, 0x80, 0x80, 0x1b, 0x3d, 0xe2, 0xe2, 0xdf
|
||||
.byte 0x26, 0xeb, 0xeb, 0xcd, 0x69, 0x27, 0x27, 0x4e
|
||||
.byte 0xcd, 0xb2, 0xb2, 0x7f, 0x9f, 0x75, 0x75, 0xea
|
||||
.byte 0x1b, 0x09, 0x09, 0x12, 0x9e, 0x83, 0x83, 0x1d
|
||||
.byte 0x74, 0x2c, 0x2c, 0x58, 0x2e, 0x1a, 0x1a, 0x34
|
||||
.byte 0x2d, 0x1b, 0x1b, 0x36, 0xb2, 0x6e, 0x6e, 0xdc
|
||||
.byte 0xee, 0x5a, 0x5a, 0xb4, 0xfb, 0xa0, 0xa0, 0x5b
|
||||
.byte 0xf6, 0x52, 0x52, 0xa4, 0x4d, 0x3b, 0x3b, 0x76
|
||||
.byte 0x61, 0xd6, 0xd6, 0xb7, 0xce, 0xb3, 0xb3, 0x7d
|
||||
.byte 0x7b, 0x29, 0x29, 0x52, 0x3e, 0xe3, 0xe3, 0xdd
|
||||
.byte 0x71, 0x2f, 0x2f, 0x5e, 0x97, 0x84, 0x84, 0x13
|
||||
.byte 0xf5, 0x53, 0x53, 0xa6, 0x68, 0xd1, 0xd1, 0xb9
|
||||
.byte 0x00, 0x00, 0x00, 0x00, 0x2c, 0xed, 0xed, 0xc1
|
||||
.byte 0x60, 0x20, 0x20, 0x40, 0x1f, 0xfc, 0xfc, 0xe3
|
||||
.byte 0xc8, 0xb1, 0xb1, 0x79, 0xed, 0x5b, 0x5b, 0xb6
|
||||
.byte 0xbe, 0x6a, 0x6a, 0xd4, 0x46, 0xcb, 0xcb, 0x8d
|
||||
.byte 0xd9, 0xbe, 0xbe, 0x67, 0x4b, 0x39, 0x39, 0x72
|
||||
.byte 0xde, 0x4a, 0x4a, 0x94, 0xd4, 0x4c, 0x4c, 0x98
|
||||
.byte 0xe8, 0x58, 0x58, 0xb0, 0x4a, 0xcf, 0xcf, 0x85
|
||||
.byte 0x6b, 0xd0, 0xd0, 0xbb, 0x2a, 0xef, 0xef, 0xc5
|
||||
.byte 0xe5, 0xaa, 0xaa, 0x4f, 0x16, 0xfb, 0xfb, 0xed
|
||||
.byte 0xc5, 0x43, 0x43, 0x86, 0xd7, 0x4d, 0x4d, 0x9a
|
||||
.byte 0x55, 0x33, 0x33, 0x66, 0x94, 0x85, 0x85, 0x11
|
||||
.byte 0xcf, 0x45, 0x45, 0x8a, 0x10, 0xf9, 0xf9, 0xe9
|
||||
.byte 0x06, 0x02, 0x02, 0x04, 0x81, 0x7f, 0x7f, 0xfe
|
||||
.byte 0xf0, 0x50, 0x50, 0xa0, 0x44, 0x3c, 0x3c, 0x78
|
||||
.byte 0xba, 0x9f, 0x9f, 0x25, 0xe3, 0xa8, 0xa8, 0x4b
|
||||
.byte 0xf3, 0x51, 0x51, 0xa2, 0xfe, 0xa3, 0xa3, 0x5d
|
||||
.byte 0xc0, 0x40, 0x40, 0x80, 0x8a, 0x8f, 0x8f, 0x05
|
||||
.byte 0xad, 0x92, 0x92, 0x3f, 0xbc, 0x9d, 0x9d, 0x21
|
||||
.byte 0x48, 0x38, 0x38, 0x70, 0x04, 0xf5, 0xf5, 0xf1
|
||||
.byte 0xdf, 0xbc, 0xbc, 0x63, 0xc1, 0xb6, 0xb6, 0x77
|
||||
.byte 0x75, 0xda, 0xda, 0xaf, 0x63, 0x21, 0x21, 0x42
|
||||
.byte 0x30, 0x10, 0x10, 0x20, 0x1a, 0xff, 0xff, 0xe5
|
||||
.byte 0x0e, 0xf3, 0xf3, 0xfd, 0x6d, 0xd2, 0xd2, 0xbf
|
||||
.byte 0x4c, 0xcd, 0xcd, 0x81, 0x14, 0x0c, 0x0c, 0x18
|
||||
.byte 0x35, 0x13, 0x13, 0x26, 0x2f, 0xec, 0xec, 0xc3
|
||||
.byte 0xe1, 0x5f, 0x5f, 0xbe, 0xa2, 0x97, 0x97, 0x35
|
||||
.byte 0xcc, 0x44, 0x44, 0x88, 0x39, 0x17, 0x17, 0x2e
|
||||
.byte 0x57, 0xc4, 0xc4, 0x93, 0xf2, 0xa7, 0xa7, 0x55
|
||||
.byte 0x82, 0x7e, 0x7e, 0xfc, 0x47, 0x3d, 0x3d, 0x7a
|
||||
.byte 0xac, 0x64, 0x64, 0xc8, 0xe7, 0x5d, 0x5d, 0xba
|
||||
.byte 0x2b, 0x19, 0x19, 0x32, 0x95, 0x73, 0x73, 0xe6
|
||||
.byte 0xa0, 0x60, 0x60, 0xc0, 0x98, 0x81, 0x81, 0x19
|
||||
.byte 0xd1, 0x4f, 0x4f, 0x9e, 0x7f, 0xdc, 0xdc, 0xa3
|
||||
.byte 0x66, 0x22, 0x22, 0x44, 0x7e, 0x2a, 0x2a, 0x54
|
||||
.byte 0xab, 0x90, 0x90, 0x3b, 0x83, 0x88, 0x88, 0x0b
|
||||
.byte 0xca, 0x46, 0x46, 0x8c, 0x29, 0xee, 0xee, 0xc7
|
||||
.byte 0xd3, 0xb8, 0xb8, 0x6b, 0x3c, 0x14, 0x14, 0x28
|
||||
.byte 0x79, 0xde, 0xde, 0xa7, 0xe2, 0x5e, 0x5e, 0xbc
|
||||
.byte 0x1d, 0x0b, 0x0b, 0x16, 0x76, 0xdb, 0xdb, 0xad
|
||||
.byte 0x3b, 0xe0, 0xe0, 0xdb, 0x56, 0x32, 0x32, 0x64
|
||||
.byte 0x4e, 0x3a, 0x3a, 0x74, 0x1e, 0x0a, 0x0a, 0x14
|
||||
.byte 0xdb, 0x49, 0x49, 0x92, 0x0a, 0x06, 0x06, 0x0c
|
||||
.byte 0x6c, 0x24, 0x24, 0x48, 0xe4, 0x5c, 0x5c, 0xb8
|
||||
.byte 0x5d, 0xc2, 0xc2, 0x9f, 0x6e, 0xd3, 0xd3, 0xbd
|
||||
.byte 0xef, 0xac, 0xac, 0x43, 0xa6, 0x62, 0x62, 0xc4
|
||||
.byte 0xa8, 0x91, 0x91, 0x39, 0xa4, 0x95, 0x95, 0x31
|
||||
.byte 0x37, 0xe4, 0xe4, 0xd3, 0x8b, 0x79, 0x79, 0xf2
|
||||
.byte 0x32, 0xe7, 0xe7, 0xd5, 0x43, 0xc8, 0xc8, 0x8b
|
||||
.byte 0x59, 0x37, 0x37, 0x6e, 0xb7, 0x6d, 0x6d, 0xda
|
||||
.byte 0x8c, 0x8d, 0x8d, 0x01, 0x64, 0xd5, 0xd5, 0xb1
|
||||
.byte 0xd2, 0x4e, 0x4e, 0x9c, 0xe0, 0xa9, 0xa9, 0x49
|
||||
.byte 0xb4, 0x6c, 0x6c, 0xd8, 0xfa, 0x56, 0x56, 0xac
|
||||
.byte 0x07, 0xf4, 0xf4, 0xf3, 0x25, 0xea, 0xea, 0xcf
|
||||
.byte 0xaf, 0x65, 0x65, 0xca, 0x8e, 0x7a, 0x7a, 0xf4
|
||||
.byte 0xe9, 0xae, 0xae, 0x47, 0x18, 0x08, 0x08, 0x10
|
||||
.byte 0xd5, 0xba, 0xba, 0x6f, 0x88, 0x78, 0x78, 0xf0
|
||||
.byte 0x6f, 0x25, 0x25, 0x4a, 0x72, 0x2e, 0x2e, 0x5c
|
||||
.byte 0x24, 0x1c, 0x1c, 0x38, 0xf1, 0xa6, 0xa6, 0x57
|
||||
.byte 0xc7, 0xb4, 0xb4, 0x73, 0x51, 0xc6, 0xc6, 0x97
|
||||
.byte 0x23, 0xe8, 0xe8, 0xcb, 0x7c, 0xdd, 0xdd, 0xa1
|
||||
.byte 0x9c, 0x74, 0x74, 0xe8, 0x21, 0x1f, 0x1f, 0x3e
|
||||
.byte 0xdd, 0x4b, 0x4b, 0x96, 0xdc, 0xbd, 0xbd, 0x61
|
||||
.byte 0x86, 0x8b, 0x8b, 0x0d, 0x85, 0x8a, 0x8a, 0x0f
|
||||
.byte 0x90, 0x70, 0x70, 0xe0, 0x42, 0x3e, 0x3e, 0x7c
|
||||
.byte 0xc4, 0xb5, 0xb5, 0x71, 0xaa, 0x66, 0x66, 0xcc
|
||||
.byte 0xd8, 0x48, 0x48, 0x90, 0x05, 0x03, 0x03, 0x06
|
||||
.byte 0x01, 0xf6, 0xf6, 0xf7, 0x12, 0x0e, 0x0e, 0x1c
|
||||
.byte 0xa3, 0x61, 0x61, 0xc2, 0x5f, 0x35, 0x35, 0x6a
|
||||
.byte 0xf9, 0x57, 0x57, 0xae, 0xd0, 0xb9, 0xb9, 0x69
|
||||
.byte 0x91, 0x86, 0x86, 0x17, 0x58, 0xc1, 0xc1, 0x99
|
||||
.byte 0x27, 0x1d, 0x1d, 0x3a, 0xb9, 0x9e, 0x9e, 0x27
|
||||
.byte 0x38, 0xe1, 0xe1, 0xd9, 0x13, 0xf8, 0xf8, 0xeb
|
||||
.byte 0xb3, 0x98, 0x98, 0x2b, 0x33, 0x11, 0x11, 0x22
|
||||
.byte 0xbb, 0x69, 0x69, 0xd2, 0x70, 0xd9, 0xd9, 0xa9
|
||||
.byte 0x89, 0x8e, 0x8e, 0x07, 0xa7, 0x94, 0x94, 0x33
|
||||
.byte 0xb6, 0x9b, 0x9b, 0x2d, 0x22, 0x1e, 0x1e, 0x3c
|
||||
.byte 0x92, 0x87, 0x87, 0x15, 0x20, 0xe9, 0xe9, 0xc9
|
||||
.byte 0x49, 0xce, 0xce, 0x87, 0xff, 0x55, 0x55, 0xaa
|
||||
.byte 0x78, 0x28, 0x28, 0x50, 0x7a, 0xdf, 0xdf, 0xa5
|
||||
.byte 0x8f, 0x8c, 0x8c, 0x03, 0xf8, 0xa1, 0xa1, 0x59
|
||||
.byte 0x80, 0x89, 0x89, 0x09, 0x17, 0x0d, 0x0d, 0x1a
|
||||
.byte 0xda, 0xbf, 0xbf, 0x65, 0x31, 0xe6, 0xe6, 0xd7
|
||||
.byte 0xc6, 0x42, 0x42, 0x84, 0xb8, 0x68, 0x68, 0xd0
|
||||
.byte 0xc3, 0x41, 0x41, 0x82, 0xb0, 0x99, 0x99, 0x29
|
||||
.byte 0x77, 0x2d, 0x2d, 0x5a, 0x11, 0x0f, 0x0f, 0x1e
|
||||
.byte 0xcb, 0xb0, 0xb0, 0x7b, 0xfc, 0x54, 0x54, 0xa8
|
||||
.byte 0xd6, 0xbb, 0xbb, 0x6d, 0x3a, 0x16, 0x16, 0x2c
|
||||
.global sdk_Td0
|
||||
.type sdk_Td0, @object
|
||||
sdk_Td0: .byte 0x50, 0xa7, 0xf4, 0x51, 0x53, 0x65, 0x41, 0x7e
|
||||
.byte 0xc3, 0xa4, 0x17, 0x1a, 0x96, 0x5e, 0x27, 0x3a
|
||||
.byte 0xcb, 0x6b, 0xab, 0x3b, 0xf1, 0x45, 0x9d, 0x1f
|
||||
.byte 0xab, 0x58, 0xfa, 0xac, 0x93, 0x03, 0xe3, 0x4b
|
||||
.byte 0x55, 0xfa, 0x30, 0x20, 0xf6, 0x6d, 0x76, 0xad
|
||||
.byte 0x91, 0x76, 0xcc, 0x88, 0x25, 0x4c, 0x02, 0xf5
|
||||
.byte 0xfc, 0xd7, 0xe5, 0x4f, 0xd7, 0xcb, 0x2a, 0xc5
|
||||
.byte 0x80, 0x44, 0x35, 0x26, 0x8f, 0xa3, 0x62, 0xb5
|
||||
.byte 0x49, 0x5a, 0xb1, 0xde, 0x67, 0x1b, 0xba, 0x25
|
||||
.byte 0x98, 0x0e, 0xea, 0x45, 0xe1, 0xc0, 0xfe, 0x5d
|
||||
.byte 0x02, 0x75, 0x2f, 0xc3, 0x12, 0xf0, 0x4c, 0x81
|
||||
.byte 0xa3, 0x97, 0x46, 0x8d, 0xc6, 0xf9, 0xd3, 0x6b
|
||||
.byte 0xe7, 0x5f, 0x8f, 0x03, 0x95, 0x9c, 0x92, 0x15
|
||||
.byte 0xeb, 0x7a, 0x6d, 0xbf, 0xda, 0x59, 0x52, 0x95
|
||||
.byte 0x2d, 0x83, 0xbe, 0xd4, 0xd3, 0x21, 0x74, 0x58
|
||||
.byte 0x29, 0x69, 0xe0, 0x49, 0x44, 0xc8, 0xc9, 0x8e
|
||||
.byte 0x6a, 0x89, 0xc2, 0x75, 0x78, 0x79, 0x8e, 0xf4
|
||||
.byte 0x6b, 0x3e, 0x58, 0x99, 0xdd, 0x71, 0xb9, 0x27
|
||||
.byte 0xb6, 0x4f, 0xe1, 0xbe, 0x17, 0xad, 0x88, 0xf0
|
||||
.byte 0x66, 0xac, 0x20, 0xc9, 0xb4, 0x3a, 0xce, 0x7d
|
||||
.byte 0x18, 0x4a, 0xdf, 0x63, 0x82, 0x31, 0x1a, 0xe5
|
||||
.byte 0x60, 0x33, 0x51, 0x97, 0x45, 0x7f, 0x53, 0x62
|
||||
.byte 0xe0, 0x77, 0x64, 0xb1, 0x84, 0xae, 0x6b, 0xbb
|
||||
.byte 0x1c, 0xa0, 0x81, 0xfe, 0x94, 0x2b, 0x08, 0xf9
|
||||
.byte 0x58, 0x68, 0x48, 0x70, 0x19, 0xfd, 0x45, 0x8f
|
||||
.byte 0x87, 0x6c, 0xde, 0x94, 0xb7, 0xf8, 0x7b, 0x52
|
||||
.byte 0x23, 0xd3, 0x73, 0xab, 0xe2, 0x02, 0x4b, 0x72
|
||||
.byte 0x57, 0x8f, 0x1f, 0xe3, 0x2a, 0xab, 0x55, 0x66
|
||||
.byte 0x07, 0x28, 0xeb, 0xb2, 0x03, 0xc2, 0xb5, 0x2f
|
||||
.byte 0x9a, 0x7b, 0xc5, 0x86, 0xa5, 0x08, 0x37, 0xd3
|
||||
.byte 0xf2, 0x87, 0x28, 0x30, 0xb2, 0xa5, 0xbf, 0x23
|
||||
.byte 0xba, 0x6a, 0x03, 0x02, 0x5c, 0x82, 0x16, 0xed
|
||||
.byte 0x2b, 0x1c, 0xcf, 0x8a, 0x92, 0xb4, 0x79, 0xa7
|
||||
.byte 0xf0, 0xf2, 0x07, 0xf3, 0xa1, 0xe2, 0x69, 0x4e
|
||||
.byte 0xcd, 0xf4, 0xda, 0x65, 0xd5, 0xbe, 0x05, 0x06
|
||||
.byte 0x1f, 0x62, 0x34, 0xd1, 0x8a, 0xfe, 0xa6, 0xc4
|
||||
.byte 0x9d, 0x53, 0x2e, 0x34, 0xa0, 0x55, 0xf3, 0xa2
|
||||
.byte 0x32, 0xe1, 0x8a, 0x05, 0x75, 0xeb, 0xf6, 0xa4
|
||||
.byte 0x39, 0xec, 0x83, 0x0b, 0xaa, 0xef, 0x60, 0x40
|
||||
.byte 0x06, 0x9f, 0x71, 0x5e, 0x51, 0x10, 0x6e, 0xbd
|
||||
.byte 0xf9, 0x8a, 0x21, 0x3e, 0x3d, 0x06, 0xdd, 0x96
|
||||
.byte 0xae, 0x05, 0x3e, 0xdd, 0x46, 0xbd, 0xe6, 0x4d
|
||||
.byte 0xb5, 0x8d, 0x54, 0x91, 0x05, 0x5d, 0xc4, 0x71
|
||||
.byte 0x6f, 0xd4, 0x06, 0x04, 0xff, 0x15, 0x50, 0x60
|
||||
.byte 0x24, 0xfb, 0x98, 0x19, 0x97, 0xe9, 0xbd, 0xd6
|
||||
.byte 0xcc, 0x43, 0x40, 0x89, 0x77, 0x9e, 0xd9, 0x67
|
||||
.byte 0xbd, 0x42, 0xe8, 0xb0, 0x88, 0x8b, 0x89, 0x07
|
||||
.byte 0x38, 0x5b, 0x19, 0xe7, 0xdb, 0xee, 0xc8, 0x79
|
||||
.byte 0x47, 0x0a, 0x7c, 0xa1, 0xe9, 0x0f, 0x42, 0x7c
|
||||
.byte 0xc9, 0x1e, 0x84, 0xf8, 0x00, 0x00, 0x00, 0x00
|
||||
.byte 0x83, 0x86, 0x80, 0x09, 0x48, 0xed, 0x2b, 0x32
|
||||
.byte 0xac, 0x70, 0x11, 0x1e, 0x4e, 0x72, 0x5a, 0x6c
|
||||
.byte 0xfb, 0xff, 0x0e, 0xfd, 0x56, 0x38, 0x85, 0x0f
|
||||
.byte 0x1e, 0xd5, 0xae, 0x3d, 0x27, 0x39, 0x2d, 0x36
|
||||
.byte 0x64, 0xd9, 0x0f, 0x0a, 0x21, 0xa6, 0x5c, 0x68
|
||||
.byte 0xd1, 0x54, 0x5b, 0x9b, 0x3a, 0x2e, 0x36, 0x24
|
||||
.byte 0xb1, 0x67, 0x0a, 0x0c, 0x0f, 0xe7, 0x57, 0x93
|
||||
.byte 0xd2, 0x96, 0xee, 0xb4, 0x9e, 0x91, 0x9b, 0x1b
|
||||
.byte 0x4f, 0xc5, 0xc0, 0x80, 0xa2, 0x20, 0xdc, 0x61
|
||||
.byte 0x69, 0x4b, 0x77, 0x5a, 0x16, 0x1a, 0x12, 0x1c
|
||||
.byte 0x0a, 0xba, 0x93, 0xe2, 0xe5, 0x2a, 0xa0, 0xc0
|
||||
.byte 0x43, 0xe0, 0x22, 0x3c, 0x1d, 0x17, 0x1b, 0x12
|
||||
.byte 0x0b, 0x0d, 0x09, 0x0e, 0xad, 0xc7, 0x8b, 0xf2
|
||||
.byte 0xb9, 0xa8, 0xb6, 0x2d, 0xc8, 0xa9, 0x1e, 0x14
|
||||
.byte 0x85, 0x19, 0xf1, 0x57, 0x4c, 0x07, 0x75, 0xaf
|
||||
.byte 0xbb, 0xdd, 0x99, 0xee, 0xfd, 0x60, 0x7f, 0xa3
|
||||
.byte 0x9f, 0x26, 0x01, 0xf7, 0xbc, 0xf5, 0x72, 0x5c
|
||||
.byte 0xc5, 0x3b, 0x66, 0x44, 0x34, 0x7e, 0xfb, 0x5b
|
||||
.byte 0x76, 0x29, 0x43, 0x8b, 0xdc, 0xc6, 0x23, 0xcb
|
||||
.byte 0x68, 0xfc, 0xed, 0xb6, 0x63, 0xf1, 0xe4, 0xb8
|
||||
.byte 0xca, 0xdc, 0x31, 0xd7, 0x10, 0x85, 0x63, 0x42
|
||||
.byte 0x40, 0x22, 0x97, 0x13, 0x20, 0x11, 0xc6, 0x84
|
||||
.byte 0x7d, 0x24, 0x4a, 0x85, 0xf8, 0x3d, 0xbb, 0xd2
|
||||
.byte 0x11, 0x32, 0xf9, 0xae, 0x6d, 0xa1, 0x29, 0xc7
|
||||
.byte 0x4b, 0x2f, 0x9e, 0x1d, 0xf3, 0x30, 0xb2, 0xdc
|
||||
.byte 0xec, 0x52, 0x86, 0x0d, 0xd0, 0xe3, 0xc1, 0x77
|
||||
.byte 0x6c, 0x16, 0xb3, 0x2b, 0x99, 0xb9, 0x70, 0xa9
|
||||
.byte 0xfa, 0x48, 0x94, 0x11, 0x22, 0x64, 0xe9, 0x47
|
||||
.byte 0xc4, 0x8c, 0xfc, 0xa8, 0x1a, 0x3f, 0xf0, 0xa0
|
||||
.byte 0xd8, 0x2c, 0x7d, 0x56, 0xef, 0x90, 0x33, 0x22
|
||||
.byte 0xc7, 0x4e, 0x49, 0x87, 0xc1, 0xd1, 0x38, 0xd9
|
||||
.byte 0xfe, 0xa2, 0xca, 0x8c, 0x36, 0x0b, 0xd4, 0x98
|
||||
.byte 0xcf, 0x81, 0xf5, 0xa6, 0x28, 0xde, 0x7a, 0xa5
|
||||
.byte 0x26, 0x8e, 0xb7, 0xda, 0xa4, 0xbf, 0xad, 0x3f
|
||||
.byte 0xe4, 0x9d, 0x3a, 0x2c, 0x0d, 0x92, 0x78, 0x50
|
||||
.byte 0x9b, 0xcc, 0x5f, 0x6a, 0x62, 0x46, 0x7e, 0x54
|
||||
.byte 0xc2, 0x13, 0x8d, 0xf6, 0xe8, 0xb8, 0xd8, 0x90
|
||||
.byte 0x5e, 0xf7, 0x39, 0x2e, 0xf5, 0xaf, 0xc3, 0x82
|
||||
.byte 0xbe, 0x80, 0x5d, 0x9f, 0x7c, 0x93, 0xd0, 0x69
|
||||
.byte 0xa9, 0x2d, 0xd5, 0x6f, 0xb3, 0x12, 0x25, 0xcf
|
||||
.byte 0x3b, 0x99, 0xac, 0xc8, 0xa7, 0x7d, 0x18, 0x10
|
||||
.byte 0x6e, 0x63, 0x9c, 0xe8, 0x7b, 0xbb, 0x3b, 0xdb
|
||||
.byte 0x09, 0x78, 0x26, 0xcd, 0xf4, 0x18, 0x59, 0x6e
|
||||
.byte 0x01, 0xb7, 0x9a, 0xec, 0xa8, 0x9a, 0x4f, 0x83
|
||||
.byte 0x65, 0x6e, 0x95, 0xe6, 0x7e, 0xe6, 0xff, 0xaa
|
||||
.byte 0x08, 0xcf, 0xbc, 0x21, 0xe6, 0xe8, 0x15, 0xef
|
||||
.byte 0xd9, 0x9b, 0xe7, 0xba, 0xce, 0x36, 0x6f, 0x4a
|
||||
.byte 0xd4, 0x09, 0x9f, 0xea, 0xd6, 0x7c, 0xb0, 0x29
|
||||
.byte 0xaf, 0xb2, 0xa4, 0x31, 0x31, 0x23, 0x3f, 0x2a
|
||||
.byte 0x30, 0x94, 0xa5, 0xc6, 0xc0, 0x66, 0xa2, 0x35
|
||||
.byte 0x37, 0xbc, 0x4e, 0x74, 0xa6, 0xca, 0x82, 0xfc
|
||||
.byte 0xb0, 0xd0, 0x90, 0xe0, 0x15, 0xd8, 0xa7, 0x33
|
||||
.byte 0x4a, 0x98, 0x04, 0xf1, 0xf7, 0xda, 0xec, 0x41
|
||||
.byte 0x0e, 0x50, 0xcd, 0x7f, 0x2f, 0xf6, 0x91, 0x17
|
||||
.byte 0x8d, 0xd6, 0x4d, 0x76, 0x4d, 0xb0, 0xef, 0x43
|
||||
.byte 0x54, 0x4d, 0xaa, 0xcc, 0xdf, 0x04, 0x96, 0xe4
|
||||
.byte 0xe3, 0xb5, 0xd1, 0x9e, 0x1b, 0x88, 0x6a, 0x4c
|
||||
.byte 0xb8, 0x1f, 0x2c, 0xc1, 0x7f, 0x51, 0x65, 0x46
|
||||
.byte 0x04, 0xea, 0x5e, 0x9d, 0x5d, 0x35, 0x8c, 0x01
|
||||
.byte 0x73, 0x74, 0x87, 0xfa, 0x2e, 0x41, 0x0b, 0xfb
|
||||
.byte 0x5a, 0x1d, 0x67, 0xb3, 0x52, 0xd2, 0xdb, 0x92
|
||||
.byte 0x33, 0x56, 0x10, 0xe9, 0x13, 0x47, 0xd6, 0x6d
|
||||
.byte 0x8c, 0x61, 0xd7, 0x9a, 0x7a, 0x0c, 0xa1, 0x37
|
||||
.byte 0x8e, 0x14, 0xf8, 0x59, 0x89, 0x3c, 0x13, 0xeb
|
||||
.byte 0xee, 0x27, 0xa9, 0xce, 0x35, 0xc9, 0x61, 0xb7
|
||||
.byte 0xed, 0xe5, 0x1c, 0xe1, 0x3c, 0xb1, 0x47, 0x7a
|
||||
.byte 0x59, 0xdf, 0xd2, 0x9c, 0x3f, 0x73, 0xf2, 0x55
|
||||
.byte 0x79, 0xce, 0x14, 0x18, 0xbf, 0x37, 0xc7, 0x73
|
||||
.byte 0xea, 0xcd, 0xf7, 0x53, 0x5b, 0xaa, 0xfd, 0x5f
|
||||
.byte 0x14, 0x6f, 0x3d, 0xdf, 0x86, 0xdb, 0x44, 0x78
|
||||
.byte 0x81, 0xf3, 0xaf, 0xca, 0x3e, 0xc4, 0x68, 0xb9
|
||||
.byte 0x2c, 0x34, 0x24, 0x38, 0x5f, 0x40, 0xa3, 0xc2
|
||||
.byte 0x72, 0xc3, 0x1d, 0x16, 0x0c, 0x25, 0xe2, 0xbc
|
||||
.byte 0x8b, 0x49, 0x3c, 0x28, 0x41, 0x95, 0x0d, 0xff
|
||||
.byte 0x71, 0x01, 0xa8, 0x39, 0xde, 0xb3, 0x0c, 0x08
|
||||
.byte 0x9c, 0xe4, 0xb4, 0xd8, 0x90, 0xc1, 0x56, 0x64
|
||||
.byte 0x61, 0x84, 0xcb, 0x7b, 0x70, 0xb6, 0x32, 0xd5
|
||||
.byte 0x74, 0x5c, 0x6c, 0x48, 0x42, 0x57, 0xb8, 0xd0
|
||||
|
||||
# NOTE: The following is apparently unreferenced code/data
|
||||
.global sdk_Td4s_rom
|
||||
.type sdk_Td4s_rom, @object
|
||||
sdk_Td4s_rom:
|
||||
.word 0xd56a0952 # 800: 52096ad5
|
||||
.word 0x38a53630 # 804: 3036a538
|
||||
.word 0x9ea340bf # 808: bf40a39e
|
||||
.word 0xfbd7f381 # 80c: 81f3d7fb
|
||||
.word 0x8239e37c # 810: 7ce33982
|
||||
.word 0x87ff2f9b # 814: 9b2fff87
|
||||
.word 0x44438e34 # 818: 348e4344
|
||||
.word 0xcbe9dec4 # 81c: c4dee9cb
|
||||
.word 0x32947b54 # 820: 547b9432
|
||||
.word 0x3d23c2a6 # 824: a6c2233d
|
||||
.word 0x0b954cee # 828: ee4c950b
|
||||
.word 0x4ec3fa42 # 82c: 42fac34e
|
||||
.word 0x66a12e08 # 830: 082ea166
|
||||
.word 0xb224d928 # 834: 28d924b2
|
||||
.word 0x49a25b76 # 838: 765ba249
|
||||
.word 0x25d18b6d # 83c: 6d8bd125
|
||||
.word 0x64f6f872 # 840: 72f8f664
|
||||
.word 0x16986886 # 844: 86689816
|
||||
.word 0xcc5ca4d4 # 848: d4a45ccc
|
||||
.word 0x92b6655d # 84c: 5d65b692
|
||||
.word 0x5048706c # 850: 6c704850
|
||||
.word 0xdab9edfd # 854: fdedb9da
|
||||
.word 0x5746155e # 858: 5e154657
|
||||
.word 0x849d8da7 # 85c: a78d9d84
|
||||
.word 0x00abd890 # 860: 90d8ab00
|
||||
.word 0x0ad3bc8c # 864: 8cbcd30a
|
||||
.word 0x0558e4f7 # 868: f7e45805
|
||||
.word 0x0645b3b8 # 86c: b8b34506
|
||||
.word 0x8f1e2cd0 # 870: d02c1e8f
|
||||
.word 0x020f3fca # 874: ca3f0f02
|
||||
.word 0x03bdafc1 # 878: c1afbd03
|
||||
.word 0x6b8a1301 # 87c: 01138a6b
|
||||
.word 0x4111913a # 880: 3a911141
|
||||
.word 0xeadc674f # 884: 4f67dcea
|
||||
.word 0xcecff297 # 888: 97f2cfce
|
||||
.word 0x73e6b4f0 # 88c: f0b4e673
|
||||
.word 0x2274ac96 # 890: 96ac7422
|
||||
.word 0x8535ade7 # 894: e7ad3585
|
||||
.word 0xe837f9e2 # 898: e2f937e8
|
||||
.word 0x6edf751c # 89c: 1c75df6e
|
||||
.word 0x711af147 # 8a0: 47f11a71
|
||||
.word 0x89c5291d # 8a4: 1d29c589
|
||||
.word 0x0e62b76f # 8a8: 6fb7620e
|
||||
.word 0x1bbe18aa # 8ac: aa18be1b
|
||||
.word 0x4b3e56fc # 8b0: fc563e4b
|
||||
.word 0x2079d2c6 # 8b4: c6d27920
|
||||
.word 0xfec0db9a # 8b8: 9adbc0fe
|
||||
.word 0xf45acd78 # 8bc: 78cd5af4
|
||||
.word 0x33a8dd1f # 8c0: 1fdda833
|
||||
.word 0x31c70788 # 8c4: 8807c731
|
||||
.word 0x591012b1 # 8c8: b1121059
|
||||
.word 0x5fec8027 # 8cc: 2780ec5f
|
||||
.word 0xa97f5160 # 8d0: 60517fa9
|
||||
.word 0x0d4ab519 # 8d4: 19b54a0d
|
||||
.word 0x9f7ae52d # 8d8: 2de57a9f
|
||||
.word 0xef9cc993 # 8dc: 93c99cef
|
||||
.word 0x4d3be0a0 # 8e0: a0e03b4d
|
||||
.word 0xb0f52aae # 8e4: ae2af5b0
|
||||
.word 0x3cbbebc8 # 8e8: c8ebbb3c
|
||||
.word 0x61995383 # 8ec: 83539961
|
||||
.word 0x7e042b17 # 8f0: 172b047e
|
||||
.word 0x26d677ba # 8f4: ba77d626
|
||||
.word 0x631469e1 # 8f8: e1691463
|
||||
.word 0x7d0c2155 # 8fc: 55210c7d
|
126
binary_sdk/libwpa/aes-unwrap.S
Normal file
126
binary_sdk/libwpa/aes-unwrap.S
Normal file
|
@ -0,0 +1,126 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
# 1c: 00000000
|
||||
# 20: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x24
|
||||
# Local variables/stack:
|
||||
# (local0): byte[9] @ -0x39
|
||||
# (local1): word @ -0x30
|
||||
# (local2): word @ -0x2c
|
||||
# (local3): word @ -0x28
|
||||
# (local4): word @ -0x24
|
||||
# (local5): word @ -0x20
|
||||
# (local6): word @ -0x1c
|
||||
# (local7): word @ -0x18
|
||||
# (local8): word @ -0x14
|
||||
# (local9): word[4] @ -0x10
|
||||
.global sdk_aes_unwrap
|
||||
.type sdk_aes_unwrap, @function
|
||||
sdk_aes_unwrap:
|
||||
addi sp, sp, -80 /* (FP)-0x50 */ # 24: 12c1b0
|
||||
s32i a15, sp, 48 /* a15 -> [(local5)] */ # 27: f9c1
|
||||
s32i a0, sp, 32 /* a0 -> [(local1)] */ # 29: 0981
|
||||
s32i a12, sp, 36 /* a12 -> [(local2)] */ # 2b: c991
|
||||
s32i a14, sp, 44 /* a14 -> [(local4)] */ # 2d: e9b1
|
||||
s32i a13, sp, 40 /* a13 -> [(local3)] */ # 2f: d9a1
|
||||
s32i a3, sp, 60 /* arg1 -> [(local8)] */ # 31: 39f1
|
||||
mov a13, a5 /* arg3 */ # 33: dd05
|
||||
mov a3, a4 /* arg2 */ # 35: 3d04
|
||||
mov a14, a2 /* arg0 */ # 37: ed02
|
||||
mov a12, a4 /* arg2 */ # 39: cd04
|
||||
mov a2, sp /* (FP)-0x50 */ # 3b: 2d01
|
||||
movi a4, 8 /* 0x00000008 */ # 3d: 0c84
|
||||
call0 memcpy # 3f: 01f0ffc0
|
||||
# 43: 0000
|
||||
addi a3, a12, 8 /* arg2+0x8 */ # 45: 8b3c
|
||||
l32i a12, sp, 60 /* [(local8)] */ # 47: c8f1
|
||||
mov a2, a13 /* arg3 */ # 49: 2d0d
|
||||
slli a12, a12, 3 # 4b: d0cc11
|
||||
mov a4, a12 # 4e: 4d0c
|
||||
call0 memcpy # 50: 01edffc0
|
||||
# 54: 0000
|
||||
mov a2, a14 /* arg0 */ # 56: 2d0e
|
||||
movi a3, 16 /* 0x00000010 */ # 58: 1c03
|
||||
call0 sdk_aes_decrypt_init # 5a: 01ebffc0
|
||||
# 5e: 0000
|
||||
mov a0, a2 # 60: 0d02
|
||||
beqz a2, .Lbr006 # 62: 16920a
|
||||
addi a14, sp, 24 /* (FP)-0x38 */ # 65: e2c118
|
||||
s32i a0, sp, 64 /* a0 -> [(local9)] */ # 68: 026110
|
||||
l32i a15, sp, 60 /* [(local8)] */ # 6b: f8f1
|
||||
add a2, a12, a13 # 6d: da2c
|
||||
movi a3, 5 /* 0x00000005 */ # 6f: 0c53
|
||||
s32i a3, sp, 56 /* 0x00000005 -> [(local7)] */ # 71: 39e1
|
||||
addi a2, a2, -8 # 73: 22c2f8
|
||||
addx4 a15, a15, a15 # 76: f0ffa0
|
||||
s32i a2, sp, 52 /* a2 -> [(local6)] */ # 79: 29d1
|
||||
.Lbr001: l32i a0, sp, 60 /* [(local8)] */ # 7b: 08f1
|
||||
l32i a12, sp, 52 /* [(local6)] */ # 7d: c8d1
|
||||
blti a0, 1, .Lbr003 # 7f: a61052
|
||||
add a13, a15, a0 # 82: 0adf
|
||||
.Lbr002: addi a2, sp, 16 /* (FP)-0x40 */ # 84: 22c110
|
||||
mov a3, sp /* (FP)-0x50 */ # 87: 3d01
|
||||
movi a4, 8 /* 0x00000008 */ # 89: 0c84
|
||||
call0 memcpy # 8b: 01e0ffc0
|
||||
# 8f: 0000
|
||||
mov a2, a14 /* (FP)-0x38 */ # 91: 2d0e
|
||||
mov a3, a12 # 93: 3d0c
|
||||
l8ui a0, sp, 23 /* [(local0)] */ # 95: 020117
|
||||
movi a4, 8 /* 0x00000008 */ # 98: 0c84
|
||||
xor a0, a13, a0 # 9a: 000d30
|
||||
s8i a0, sp, 23 /* a0 -> [(local0)] */ # 9d: 024117
|
||||
call0 memcpy # a0: 01dcffc0
|
||||
# a4: 0000
|
||||
l32i a2, sp, 64 /* [(local9)] */ # a6: 222110
|
||||
addi a3, sp, 16 /* (FP)-0x40 */ # a9: 32c110
|
||||
mov a4, a3 /* (FP)-0x40 */ # ac: 4d03
|
||||
call0 sdk_aes_decrypt # ae: 01d9ffc0
|
||||
# b2: 0000
|
||||
mov a2, sp /* (FP)-0x50 */ # b4: 2d01
|
||||
addi a3, sp, 16 /* (FP)-0x40 */ # b6: 32c110
|
||||
movi a4, 8 /* 0x00000008 */ # b9: 0c84
|
||||
call0 memcpy # bb: 01d7ffc0
|
||||
# bf: 0000
|
||||
mov a2, a12 # c1: 2d0c
|
||||
mov a3, a14 /* (FP)-0x38 */ # c3: 3d0e
|
||||
movi a4, 8 /* 0x00000008 */ # c5: 0c84
|
||||
call0 memcpy # c7: 01d5ffc0
|
||||
# cb: 0000
|
||||
addi a12, a12, -8 # cd: c2ccf8
|
||||
addi a13, a13, -1 # d0: 0bdd
|
||||
bne a15, a13, .Lbr002 # d2: d79fae
|
||||
.Lbr003: l32i a3, sp, 60 /* [(local8)] */ # d5: 38f1
|
||||
l32i a2, sp, 56 /* [(local7)] */ # d7: 28e1
|
||||
sub a15, a15, a3 # d9: 30ffc0
|
||||
addi a2, a2, -1 /* [(local7)]-0x1 */ # dc: 0b22
|
||||
s32i a2, sp, 56 /* [(local7)]-0x1 -> [(local7)] */ # de: 29e1
|
||||
bnei a2, -1, .Lbr001 # e0: 660297
|
||||
l32i a2, sp, 64 /* [(local9)] */ # e3: 222110
|
||||
call0 sdk_aes_decrypt_deinit # e6: 01ceffc0
|
||||
# ea: 0000
|
||||
mov a0, sp /* (FP)-0x50 */ # ec: 0d01
|
||||
addi a2, sp, 8 /* (FP)-0x48 */ # ee: 8b21
|
||||
movi a3, 166 /* 0x000000a6 */ # f0: 32a0a6
|
||||
.Lbr004: l8ui a4, a0, 0 # f3: 420000
|
||||
addi a0, a0, 1 # f6: 1b00
|
||||
bne a4, a3, .Lbr006 # f8: 379413
|
||||
bne a0, a2, .Lbr004 # fb: 2790f4
|
||||
movi a2, 0 /* 0x00000000 */ # fe: 0c02
|
||||
.Lbr005: l32i a12, sp, 36 /* [(local2)] */ # 100: c891
|
||||
l32i a13, sp, 40 /* [(local3)] */ # 102: d8a1
|
||||
l32i a14, sp, 44 /* [(local4)] */ # 104: e8b1
|
||||
l32i a15, sp, 48 /* [(local5)] */ # 106: f8c1
|
||||
l32i a0, sp, 32 /* [(local1)] */ # 108: 0881
|
||||
addi sp, sp, 80 /* (top of frame) */ # 10a: 12c150
|
||||
ret # 10d: 0df0
|
||||
.Lbr006: movi a2, -1 /* 0xffffffff */ # 10f: 7cf2
|
||||
j .Lbr005 # 111: c6faff
|
127
binary_sdk/libwpa/aes-wrap.S
Normal file
127
binary_sdk/libwpa/aes-wrap.S
Normal file
|
@ -0,0 +1,127 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
# 1c: 00000000
|
||||
# 20: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x24
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x30
|
||||
# (local1): word @ -0x2c
|
||||
# (local2): word @ -0x28
|
||||
# (local3): word @ -0x24
|
||||
# (local4): word @ -0x20
|
||||
# (local5): word @ -0x1c
|
||||
# (local6): word @ -0x18
|
||||
# (local7): word @ -0x14
|
||||
# (local8): word @ -0x10
|
||||
# (local9): word @ -0xc
|
||||
# (local10): word @ -0x8
|
||||
# (local11): word @ -0x4
|
||||
.global sdk_aes_wrap
|
||||
.type sdk_aes_wrap, @function
|
||||
sdk_aes_wrap:
|
||||
addi sp, sp, -64 /* (FP)-0x40 */ # 24: 12c1c0
|
||||
s32i a15, sp, 32 /* a15 -> [(local4)] */ # 27: f981
|
||||
s32i a0, sp, 16 /* a0 -> [(local0)] */ # 29: 0941
|
||||
s32i a12, sp, 20 /* a12 -> [(local1)] */ # 2b: c951
|
||||
s32i a13, sp, 24 /* a13 -> [(local2)] */ # 2d: d961
|
||||
s32i a14, sp, 28 /* a14 -> [(local3)] */ # 2f: e971
|
||||
s32i a3, sp, 48 /* arg1 -> [(local8)] */ # 31: 39c1
|
||||
mov a14, a5 /* arg3 */ # 33: ed05
|
||||
movi a3, 166 /* 0x000000a6 */ # 35: 32a0a6
|
||||
mov a13, a2 /* arg0 */ # 38: dd02
|
||||
mov a12, a4 /* arg2 */ # 3a: cd04
|
||||
mov a2, a5 /* arg3 */ # 3c: 2d05
|
||||
movi a4, 8 /* 0x00000008 */ # 3e: 0c84
|
||||
call0 memset # 40: 01f0ffc0
|
||||
# 44: 0000
|
||||
mov a3, a12 /* arg2 */ # 46: 3d0c
|
||||
l32i a4, sp, 48 /* [(local8)] */ # 48: 48c1
|
||||
addi a2, a14, 8 /* arg3+0x8 */ # 4a: 8b2e
|
||||
s32i a2, sp, 40 /* arg3+0x8 -> [(local6)] */ # 4c: 29a1
|
||||
slli a4, a4, 3 # 4e: d04411
|
||||
call0 memcpy # 51: 01ecffc0
|
||||
# 55: 0000
|
||||
mov a2, a13 /* arg0 */ # 57: 2d0d
|
||||
movi a3, 16 /* 0x00000010 */ # 59: 1c03
|
||||
call0 sdk_aes_encrypt_init # 5b: 01ebffc0
|
||||
# 5f: 0000
|
||||
bnez a2, .Lbr001 # 61: cc32
|
||||
movi a2, -1 /* 0xffffffff */ # 63: 7cf2
|
||||
j .Lbr005 # 65: c62200
|
||||
.Lbr001: addi a15, sp, 8 /* (FP)-0x38 */ # 68: 8bf1
|
||||
s32i a2, sp, 56 /* a2 -> [(local10)] */ # 6a: 29e1
|
||||
l32i a6, sp, 48 /* [(local8)] */ # 6c: 68c1
|
||||
movi a5, 0 /* 0x00000000 */ # 6e: 0c05
|
||||
movi a7, 0 /* 0x00000000 */ # 70: 0c07
|
||||
s32i a7, sp, 52 /* 0x00000000 -> [(local9)] */ # 72: 79d1
|
||||
s32i a5, sp, 44 /* 0x00000000 -> [(local7)] */ # 74: 59b1
|
||||
addi a6, a6, 1 /* [(local8)]+0x1 */ # 76: 1b66
|
||||
s32i a6, sp, 36 /* [(local8)]+0x1 -> [(local5)] */ # 78: 6991
|
||||
.Lbr002: l32i a8, sp, 48 /* [(local8)] */ # 7a: 88c1
|
||||
l32i a12, sp, 40 /* [(local6)] */ # 7c: c8a1
|
||||
blti a8, 1, .Lbr004 # 7e: a61857
|
||||
l32i a9, sp, 52 /* [(local9)] */ # 81: 98d1
|
||||
l32i a10, sp, 36 /* [(local5)] */ # 83: a891
|
||||
addi a13, a9, 1 /* [(local9)]+0x1 */ # 85: 1bd9
|
||||
add a9, a9, a10 # 87: aa99
|
||||
s32i a9, sp, 60 /* a9 -> [(local11)] */ # 89: 99f1
|
||||
.Lbr003: mov a2, sp /* (FP)-0x40 */ # 8b: 2d01
|
||||
mov a3, a14 /* arg3 */ # 8d: 3d0e
|
||||
movi a4, 8 /* 0x00000008 */ # 8f: 0c84
|
||||
call0 memcpy # 91: 01deffc0
|
||||
# 95: 0000
|
||||
mov a2, a15 /* (FP)-0x38 */ # 97: 2d0f
|
||||
mov a3, a12 # 99: 3d0c
|
||||
movi a4, 8 /* 0x00000008 */ # 9b: 0c84
|
||||
call0 memcpy # 9d: 01dcffc0
|
||||
# a1: 0000
|
||||
l32i a2, sp, 56 /* [(local10)] */ # a3: 28e1
|
||||
mov a3, sp /* (FP)-0x40 */ # a5: 3d01
|
||||
mov a4, sp /* (FP)-0x40 */ # a7: 4d01
|
||||
call0 sdk_aes_encrypt # a9: 01daffc0
|
||||
# ad: 0000
|
||||
mov a2, a14 /* arg3 */ # af: 2d0e
|
||||
mov a3, sp /* (FP)-0x40 */ # b1: 3d01
|
||||
movi a4, 8 /* 0x00000008 */ # b3: 0c84
|
||||
call0 memcpy # b5: 01d8ffc0
|
||||
# b9: 0000
|
||||
mov a2, a12 # bb: 2d0c
|
||||
mov a3, a15 /* (FP)-0x38 */ # bd: 3d0f
|
||||
l8ui a11, a14, 7 /* [arg3+0x7] */ # bf: b20e07
|
||||
movi a4, 8 /* 0x00000008 */ # c2: 0c84
|
||||
xor a11, a13, a11 # c4: b0bd30
|
||||
s8i a11, a14, 7 /* a11 -> [arg3+0x7] */ # c7: b24e07
|
||||
call0 memcpy # ca: 01d4ffc0
|
||||
# ce: 0000
|
||||
addi a12, a12, 8 # d0: 8bcc
|
||||
l32i a0, sp, 60 /* [(local11)] */ # d2: 08f1
|
||||
addi a13, a13, 1 # d4: 1bdd
|
||||
bne a13, a0, .Lbr003 # d6: 079db1
|
||||
.Lbr004: l32i a4, sp, 48 /* [(local8)] */ # d9: 48c1
|
||||
l32i a2, sp, 44 /* [(local7)] */ # db: 28b1
|
||||
l32i a3, sp, 52 /* [(local9)] */ # dd: 38d1
|
||||
addi a2, a2, 1 /* [(local7)]+0x1 */ # df: 1b22
|
||||
s32i a2, sp, 44 /* [(local7)]+0x1 -> [(local7)] */ # e1: 29b1
|
||||
add a3, a3, a4 # e3: 4a33
|
||||
s32i a3, sp, 52 /* a3 -> [(local9)] */ # e5: 39d1
|
||||
bnei a2, 6, .Lbr002 # e7: 66628f
|
||||
l32i a2, sp, 56 /* [(local10)] */ # ea: 28e1
|
||||
call0 sdk_aes_encrypt_deinit # ec: 01cdffc0
|
||||
# f0: 0000
|
||||
movi a2, 0 /* 0x00000000 */ # f2: 0c02
|
||||
.Lbr005: l32i a12, sp, 20 /* [(local1)] */ # f4: c851
|
||||
l32i a13, sp, 24 /* [(local2)] */ # f6: d861
|
||||
l32i a14, sp, 28 /* [(local3)] */ # f8: e871
|
||||
l32i a15, sp, 32 /* [(local4)] */ # fa: f881
|
||||
l32i a0, sp, 16 /* [(local0)] */ # fc: 0841
|
||||
addi sp, sp, 64 /* (top of frame) */ # fe: 12c140
|
||||
ret # 101: 0df0
|
376
binary_sdk/libwpa/ap_config.S
Normal file
376
binary_sdk/libwpa/ap_config.S
Normal file
|
@ -0,0 +1,376 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 80510100
|
||||
# 4: ffff0000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
.global sdk_hostapd_config_defaults_bss
|
||||
.type sdk_hostapd_config_defaults_bss, @function
|
||||
sdk_hostapd_config_defaults_bss:
|
||||
movi a4, 0x0000ffff # 8: 41ffff
|
||||
movi a3, 300 /* 0x0000012c */ # b: 32a12c
|
||||
movi a5, 4 /* 0x00000004 */ # e: 0c45
|
||||
movi a6, 0 /* 0x00000000 */ # 10: 0c06
|
||||
movi a7, 0x00015180 # 12: 71fbff
|
||||
movi a8, 600 /* 0x00000258 */ # 15: 82a258
|
||||
movi a9, 1 /* 0x00000001 */ # 18: 0c19
|
||||
movi a10, 3 /* 0x00000003 */ # 1a: 0c3a
|
||||
movi a11, 2 /* 0x00000002 */ # 1c: 0c2b
|
||||
s32i a11, a2, 116 /* 0x00000002 -> [arg0+0x74] */ # 1e: b2621d
|
||||
s32i a11, a2, 132 /* 0x00000002 -> [arg0+0x84] */ # 21: b26221
|
||||
s32i a11, a2, 140 /* 0x00000002 -> [arg0+0x8c] */ # 24: b26223
|
||||
s32i a11, a2, 144 /* 0x00000002 -> [arg0+0x90] */ # 27: b26224
|
||||
s32i a11, a2, 4 /* 0x00000002 -> [arg0+0x4] */ # 2a: b912
|
||||
s32i a11, a2, 12 /* 0x00000002 -> [arg0+0xc] */ # 2c: b932
|
||||
s32i a10, a2, 124 /* 0x00000003 -> [arg0+0x7c] */ # 2e: a2621f
|
||||
s32i a9, a2, 112 /* 0x00000001 -> [arg0+0x70] */ # 31: 92621c
|
||||
s32i a8, a2, 148 /* 0x00000258 -> [arg0+0x94] */ # 34: 826225
|
||||
s32i a7, a2, 156 /* 0x00015180 -> [arg0+0x9c] */ # 37: 726227
|
||||
s32i a6, a2, 164 /* 0x00000000 -> [arg0+0xa4] */ # 3a: 626229
|
||||
s32i a5, a2, 0 /* 0x00000004 -> [arg0] */ # 3d: 5902
|
||||
s32i a3, a2, 108 /* 0x0000012c -> [arg0+0x6c] */ # 3f: 32621b
|
||||
s32i a3, a2, 180 /* 0x0000012c -> [arg0+0xb4] */ # 42: 32622d
|
||||
s16i a4, a2, 202 /* 0xffff -> [arg0+0xca] */ # 45: 425265
|
||||
movi a3, -1 /* 0xffffffff */ # 48: 7cf3
|
||||
s32i a3, a2, 188 /* 0xffffffff -> [arg0+0xbc] */ # 4a: 32622f
|
||||
ret /* arg0 */ # 4d: 0df0
|
||||
|
||||
.literal_position # 50: 00000000
|
||||
# 54: 00000000
|
||||
# 58: 00000000
|
||||
# 5c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x60
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_hostapd_config_defaults
|
||||
.type sdk_hostapd_config_defaults, @function
|
||||
sdk_hostapd_config_defaults:
|
||||
movi a2, 100 /* 0x00000064 */ # 60: 22a064
|
||||
addi sp, sp, -16 /* (local0) */ # 63: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 66: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 68: d921
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 6a: 0901
|
||||
call0 zalloc # 6c: 01f9ffc0
|
||||
# 70: 0000
|
||||
mov a13, a2 # 72: dd02
|
||||
movi a2, 204 /* 0x000000cc */ # 74: 22a0cc
|
||||
call0 zalloc # 77: 01f7ffc0
|
||||
# 7b: 0000
|
||||
mov a12, a2 # 7d: cd02
|
||||
beqz a13, .Lbr002 # 7f: bc3d
|
||||
beqz a2, .Lbr002 # 81: bc12
|
||||
call0 sdk_hostapd_config_defaults_bss # 83: 050000
|
||||
s32i a12, a13, 0 # 86: c90d
|
||||
movi a0, 60 /* 0x0000003c */ # 88: 3cc0
|
||||
movi a2, 255 /* 0x000000ff */ # 8a: 22a0ff
|
||||
movi a3, 12 /* 0x0000000c */ # 8d: 0cc3
|
||||
movi a4, 100 /* 0x00000064 */ # 8f: 42a064
|
||||
movi a5, 1 /* 0x00000001 */ # 92: 0c15
|
||||
movi a6, -1 /* 0xffffffff */ # 94: 7cf6
|
||||
s32i a6, a13, 16 # 96: 694d
|
||||
s32i a6, a13, 20 # 98: 695d
|
||||
s32i a5, a13, 8 # 9a: 592d
|
||||
s8i a5, a13, 24 # 9c: 524d18
|
||||
s16i a4, a13, 12 # 9f: 425d06
|
||||
s16i a3, a13, 68 # a2: 325d22
|
||||
s32i a2, a13, 48 # a5: 29cd
|
||||
s32i a0, a13, 52 # a7: 09dd
|
||||
.Lbr001: l32i a0, sp, 0 /* [(local0)] */ # a9: 0801
|
||||
mov a2, a13 # ab: 2d0d
|
||||
l32i a12, sp, 4 /* [(local1)] */ # ad: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # af: d821
|
||||
addi sp, sp, 16 /* (top of frame) */ # b1: 12c110
|
||||
ret # b4: 0df0
|
||||
.Lbr002: mov a2, a13 # b6: 2d0d
|
||||
call0 free # b8: 01e8ffc0
|
||||
# bc: 0000
|
||||
mov a2, a12 # be: 2d0c
|
||||
call0 free # c0: 01e7ffc0
|
||||
# c4: 0000
|
||||
movi a13, 0 /* 0x00000000 */ # c6: 0c0d
|
||||
j .Lbr001 # c8: 46f7ff
|
||||
|
||||
.literal_position # cc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xd0
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_hostapd_mac_comp
|
||||
.type sdk_hostapd_mac_comp, @function
|
||||
sdk_hostapd_mac_comp:
|
||||
movi a4, 6 /* 0x00000006 */ # d0: 0c64
|
||||
addi sp, sp, -16 /* (local0) */ # d2: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # d5: 0901
|
||||
call0 memcmp # d7: 01fdffc0
|
||||
# db: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # dd: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # df: 12c110
|
||||
ret # e2: 0df0
|
||||
|
||||
.literal_position # e4: 00000000
|
||||
# e8: 00000000
|
||||
# ec: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xf0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x8
|
||||
# (local1): word @ -0x4
|
||||
.global sdk_hostapd_mac_comp_empty
|
||||
.type sdk_hostapd_mac_comp_empty, @function
|
||||
sdk_hostapd_mac_comp_empty:
|
||||
movi a3, .Ldata001 # f0: 31fdff
|
||||
movi a4, 6 /* 0x00000006 */ # f3: 0c64
|
||||
addi sp, sp, -16 /* (FP)-0x10 */ # f5: 12c1f0
|
||||
s32i a2, sp, 8 /* arg0 -> [(local0)] */ # f8: 2921
|
||||
s32i a0, sp, 12 /* a0 -> [(local1)] */ # fa: 0931
|
||||
mov a2, sp /* (FP)-0x10 */ # fc: 2d01
|
||||
call0 memcpy # fe: 01faffc0
|
||||
# 102: 0000
|
||||
l32i a2, sp, 8 /* [(local0)] */ # 104: 2821
|
||||
mov a3, sp /* (FP)-0x10 */ # 106: 3d01
|
||||
movi a4, 6 /* 0x00000006 */ # 108: 0c64
|
||||
call0 memcmp # 10a: 01f8ffc0
|
||||
# 10e: 0000
|
||||
l32i a0, sp, 12 /* [(local1)] */ # 110: 0831
|
||||
addi sp, sp, 16 /* (top of frame) */ # 112: 12c110
|
||||
ret # 115: 0df0
|
||||
|
||||
.literal_position # 118: 00000000
|
||||
# 11c: 00000000
|
||||
# 120: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x124
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc001: addi sp, sp, -16 /* (local0) */ # 124: 12c1f0
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 127: 2901
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 129: 0911
|
||||
movi a2, 48 /* 0x00000030 */ # 12b: 3c02
|
||||
call0 zalloc # 12d: 01fbffc0
|
||||
# 131: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 133: 0801
|
||||
s32i a2, a0, 40 /* a2 -> [[(local0)]+0x28] */ # 135: 29a0
|
||||
bnez a2, .Lbr003 # 137: cc32
|
||||
movi a2, -1 /* 0xffffffff */ # 139: 7cf2
|
||||
j .Lbr004 # 13b: 860300
|
||||
.Lbr003: addi a2, a2, 8 # 13e: 8b22
|
||||
movi a3, sdk_g_ic+0x2ed # 140: 31f6ff
|
||||
movi a4, 32 /* 0x00000020 */ # 143: 2c04
|
||||
call0 memcpy # 145: 01f6ffc0
|
||||
# 149: 0000
|
||||
movi a2, 0 /* 0x00000000 */ # 14b: 0c02
|
||||
.Lbr004: l32i a0, sp, 4 /* [(local1)] */ # 14d: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 14f: 12c110
|
||||
ret # 152: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x154
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_hostapd_setup_wpa_psk
|
||||
.type sdk_hostapd_setup_wpa_psk, @function
|
||||
sdk_hostapd_setup_wpa_psk:
|
||||
addi sp, sp, -16 /* (local0) */ # 154: 12c1f0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 157: 0911
|
||||
l32i a0, a2, 60 /* [arg0+0x3c] */ # 159: 08f2
|
||||
beqz a0, .Lbr007 # 15b: 9ca0
|
||||
l32i a0, a2, 56 /* [arg0+0x38] */ # 15d: 08e2
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 15f: 2901
|
||||
bnez a0, .Lbr006 # 161: dc00
|
||||
addi a2, a2, 16 /* arg0+0x10 */ # 163: 22c210
|
||||
call0 .Lfunc001 # 166: c5fbff
|
||||
bgez a2, .Lbr005 # 169: d64200
|
||||
movi a2, -1 /* 0xffffffff */ # 16c: 7cf2
|
||||
j .Lbr008 # 16e: 460200
|
||||
.Lbr005: l32i a0, sp, 0 /* [(local0)] */ # 171: 0801
|
||||
l32i a0, a0, 56 /* [[(local0)]+0x38] */ # 173: 08e0
|
||||
.Lbr006: movi a2, 1 /* 0x00000001 */ # 175: 0c12
|
||||
s32i a2, a0, 4 # 177: 2910
|
||||
.Lbr007: movi a2, 0 /* 0x00000000 */ # 179: 0c02
|
||||
.Lbr008: l32i a0, sp, 4 /* [(local1)] */ # 17b: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 17d: 12c110
|
||||
ret # 180: 0df0
|
||||
|
||||
.literal_position # 184: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x188
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_hostapd_wep_key_cmp
|
||||
.type sdk_hostapd_wep_key_cmp, @function
|
||||
sdk_hostapd_wep_key_cmp:
|
||||
addi sp, sp, -16 /* (local0) */ # 188: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 18b: c921
|
||||
l8ui a4, a3, 0 /* [arg1] */ # 18d: 420300
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 190: 0911
|
||||
l8ui a0, a2, 0 /* [arg0] */ # 192: 020200
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 195: d931
|
||||
bne a0, a4, .Lbr011 # 197: 479038
|
||||
l32i a6, a3, 40 /* [arg1+0x28] */ # 19a: 68a3
|
||||
l32i a5, a2, 40 /* [arg0+0x28] */ # 19c: 58a2
|
||||
mov a12, a3 /* arg1 */ # 19e: cd03
|
||||
bne a5, a6, .Lbr011 # 1a0: 67952f
|
||||
mov a13, a2 /* arg0 */ # 1a3: dd02
|
||||
addi a7, a2, 16 /* arg0+0x10 */ # 1a5: 72c210
|
||||
s32i a7, sp, 0 /* arg0+0x10 -> [(local0)] */ # 1a8: 7901
|
||||
.Lbr009: l32i a4, a13, 20 # 1aa: 485d
|
||||
l32i a8, a12, 20 # 1ac: 885c
|
||||
bne a8, a4, .Lbr011 # 1ae: 479821
|
||||
l32i a2, a13, 4 # 1b1: 281d
|
||||
l32i a3, a12, 4 # 1b3: 381c
|
||||
call0 memcmp # 1b5: 01f3ffc0
|
||||
# 1b9: 0000
|
||||
bnez a2, .Lbr011 # 1bb: dc42
|
||||
addi a12, a12, 4 # 1bd: 4bcc
|
||||
l32i a9, sp, 0 /* [(local0)] */ # 1bf: 9801
|
||||
addi a13, a13, 4 # 1c1: 4bdd
|
||||
bne a13, a9, .Lbr009 # 1c3: 979de3
|
||||
movi a2, 0 /* 0x00000000 */ # 1c6: 0c02
|
||||
.Lbr010: l32i a12, sp, 8 /* [(local2)] */ # 1c8: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 1ca: d831
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 1cc: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1ce: 12c110
|
||||
ret # 1d1: 0df0
|
||||
.Lbr011: movi a2, 1 /* 0x00000001 */ # 1d3: 0c12
|
||||
j .Lbr010 # 1d5: c6fbff
|
||||
|
||||
.literal_position # 1d8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1dc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x30
|
||||
# (local1): word @ -0x2c
|
||||
# (local2): word @ -0x28
|
||||
# (local3): word @ -0x24
|
||||
# (local4): word @ -0x20
|
||||
# (local5): word @ -0x1c
|
||||
# (local6): word @ -0x18
|
||||
# (local7): word @ -0x14
|
||||
# (local8): word[4] @ -0x10
|
||||
.global sdk_hostapd_maclist_found
|
||||
.type sdk_hostapd_maclist_found, @function
|
||||
sdk_hostapd_maclist_found:
|
||||
addi sp, sp, -48 /* (local0) */ # 1dc: 12c1d0
|
||||
s32i a14, sp, 20 /* a14 -> [(local5)] */ # 1df: e951
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 1e1: 0921
|
||||
s32i a4, sp, 32 /* arg2 -> [(local8)] */ # 1e3: 4981
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 1e5: d941
|
||||
s32i a15, sp, 24 /* a15 -> [(local6)] */ # 1e7: f961
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 1e9: c931
|
||||
mov a15, a4 /* arg2 */ # 1eb: fd04
|
||||
addi a12, a3, -1 /* arg1-0x1 */ # 1ed: 0bc3
|
||||
bltz a12, .Lbr017 # 1ef: 961c04
|
||||
movi a13, 0 /* 0x00000000 */ # 1f2: 0c0d
|
||||
s32i a5, sp, 4 /* arg3 -> [(local1)] */ # 1f4: 5911
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 1f6: 2901
|
||||
.Lbr012: movi a4, 6 /* 0x00000006 */ # 1f8: 0c64
|
||||
add a0, a12, a13 # 1fa: da0c
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 1fc: 3801
|
||||
addi a14, a0, 1 # 1fe: 1be0
|
||||
movgez a14, a0, a0 # 200: 00e0b3
|
||||
srai a14, a14, 1 # 203: e0e121
|
||||
addx2 a2, a14, a14 # 206: e02e90
|
||||
addx4 a2, a2, a3 # 209: 3022a0
|
||||
mov a3, a15 /* arg2 */ # 20c: 3d0f
|
||||
s32i a2, sp, 28 /* a2 -> [(local7)] */ # 20e: 2971
|
||||
call0 memcmp # 210: 01f2ffc0
|
||||
# 214: 0000
|
||||
bnez a2, .Lbr014 # 216: ccd2
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 218: 2811
|
||||
l32i a3, sp, 28 /* [(local7)] */ # 21a: 3871
|
||||
beqz a2, .Lbr013 # 21c: 8c22
|
||||
l32i a3, a3, 8 /* [[(local7)]+0x8] */ # 21e: 3823
|
||||
s32i a3, a2, 0 /* [[(local7)]+0x8] -> [[(local1)]] */ # 220: 3902
|
||||
.Lbr013: movi a2, 1 /* 0x00000001 */ # 222: 0c12
|
||||
j .Lbr018 # 224: 860300
|
||||
.Lbr014: bgez a2, .Lbr015 # 227: d64200
|
||||
addi a13, a14, 1 # 22a: 1bde
|
||||
j .Lbr016 # 22c: 460000
|
||||
.Lbr015: addi a12, a14, -1 # 22f: 0bce
|
||||
.Lbr016: bge a12, a13, .Lbr012 # 231: d7acc3
|
||||
.Lbr017: movi a2, 0 /* 0x00000000 */ # 234: 0c02
|
||||
.Lbr018: l32i a12, sp, 12 /* [(local3)] */ # 236: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 238: d841
|
||||
l32i a14, sp, 20 /* [(local5)] */ # 23a: e851
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 23c: f861
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 23e: 0821
|
||||
addi sp, sp, 48 /* (top of frame) */ # 240: 12c130
|
||||
ret # 243: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x248
|
||||
.global sdk_hostapd_rate_found
|
||||
.type sdk_hostapd_rate_found, @function
|
||||
sdk_hostapd_rate_found:
|
||||
beqz a2, .Lbr021 # 248: 9c12
|
||||
l32i a6, a2, 0 /* [arg0] */ # 24a: 6802
|
||||
bltz a6, .Lbr021 # 24c: 96d600
|
||||
.Lbr019: bne a6, a3, .Lbr020 # 24f: 379603
|
||||
movi a2, 1 /* 0x00000001 */ # 252: 0c12
|
||||
ret /* 0x00000001 */ # 254: 0df0
|
||||
.Lbr020: l32i a6, a2, 4 # 256: 6812
|
||||
addi a2, a2, 4 # 258: 4b22
|
||||
bgez a6, .Lbr019 # 25a: d616ff
|
||||
.Lbr021: movi a2, 0 /* 0x00000000 */ # 25d: 0c02
|
||||
ret /* 0x00000000 */ # 25f: 0df0
|
||||
|
||||
.literal_position # 264: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x268
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_hostapd_get_psk
|
||||
.type sdk_hostapd_get_psk, @function
|
||||
sdk_hostapd_get_psk:
|
||||
addi sp, sp, -32 /* (local0) */ # 268: 12c1e0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 26b: c921
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 26d: d931
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 26f: e941
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 271: 0911
|
||||
mov a14, a4 /* arg2 */ # 273: ed04
|
||||
movi a0, 1 /* 0x00000001 */ # 275: 0c10
|
||||
movi a13, 0 /* 0x00000000 */ # 277: 0c0d
|
||||
l32i a12, a2, 56 /* [arg0+0x38] */ # 279: c8e2
|
||||
moveqz a13, a0, a4 # 27b: 40d083
|
||||
beqz a12, .Lbr025 # 27e: ac9c
|
||||
s32i a3, sp, 0 /* arg1 -> [(local0)] */ # 280: 3901
|
||||
.Lbr022: beqz a13, .Lbr024 # 282: 9c8d
|
||||
l32i a2, a12, 4 # 284: 281c
|
||||
bnez a2, .Lbr023 # 286: ccf2
|
||||
addi a2, a12, 40 # 288: 22cc28
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 28b: 3801
|
||||
movi a4, 6 /* 0x00000006 */ # 28d: 0c64
|
||||
call0 memcmp # 28f: 01f5ffc0
|
||||
# 293: 0000
|
||||
movi a0, 1 /* 0x00000001 */ # 295: 0c10
|
||||
bnez a2, .Lbr024 # 297: cc32
|
||||
.Lbr023: addi a2, a12, 8 # 299: 8b2c
|
||||
j .Lbr026 # 29b: 860300
|
||||
.Lbr024: addi a3, a12, 8 # 29e: 8b3c
|
||||
sub a3, a14, a3 # 2a0: 303ec0
|
||||
l32i a12, a12, 0 # 2a3: c80c
|
||||
moveqz a13, a0, a3 # 2a5: 30d083
|
||||
bnez a12, .Lbr022 # 2a8: 566cfd
|
||||
.Lbr025: movi a2, 0 /* 0x00000000 */ # 2ab: 0c02
|
||||
.Lbr026: l32i a12, sp, 8 /* [(local2)] */ # 2ad: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 2af: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 2b1: e841
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 2b3: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 2b5: 12c120
|
||||
ret # 2b8: 0df0
|
||||
|
||||
.section .rodata, "a", @progbits
|
||||
|
||||
.Ldata001: .space 6
|
308
binary_sdk/libwpa/common.S
Normal file
308
binary_sdk/libwpa/common.S
Normal file
|
@ -0,0 +1,308 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_inc_byte_array
|
||||
.type sdk_inc_byte_array, @function
|
||||
sdk_inc_byte_array:
|
||||
addi a3, a3, -1 /* arg1-0x1 */ # 0: 0b33
|
||||
bltz a3, .Lbr002 # 2: 965301
|
||||
add a3, a3, a2 # 5: 2a33
|
||||
addi a2, a2, -1 /* arg0-0x1 */ # 7: 0b22
|
||||
.Lbr001: l8ui a4, a3, 0 # 9: 420300
|
||||
addi a4, a4, 1 # c: 1b44
|
||||
extui a4, a4, 0, 8 # e: 404074
|
||||
s8i a4, a3, 0 # 11: 424300
|
||||
bnez a4, .Lbr002 # 14: cc34
|
||||
addi a3, a3, -1 # 16: 0b33
|
||||
bne a3, a2, .Lbr001 # 18: 2793ed
|
||||
.Lbr002: ret # 1b: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x20
|
||||
.Lfunc001: movi a3, 47 /* 0x0000002f */ # 20: 2cf3
|
||||
bgeu a3, a2, .Lbr003 # 22: 27b309
|
||||
movi a4, 57 /* 0x00000039 */ # 25: 3c94
|
||||
bltu a4, a2, .Lbr003 # 27: 273404
|
||||
addi a2, a2, -48 /* arg0-0x30 */ # 2a: 22c2d0
|
||||
ret /* arg0-0x30 */ # 2d: 0df0
|
||||
.Lbr003: movi a5, 96 /* 0x00000060 */ # 2f: 52a060
|
||||
bgeu a5, a2, .Lbr004 # 32: 27b50a
|
||||
movi a6, 102 /* 0x00000066 */ # 35: 62a066
|
||||
bltu a6, a2, .Lbr004 # 38: 273604
|
||||
addi a2, a2, -87 /* arg0-0x57 */ # 3b: 22c2a9
|
||||
ret /* arg0-0x57 */ # 3e: 0df0
|
||||
.Lbr004: movi a7, 64 /* 0x00000040 */ # 40: 4c07
|
||||
bgeu a7, a2, .Lbr005 # 42: 27b709
|
||||
movi a8, 70 /* 0x00000046 */ # 45: 4c68
|
||||
bltu a8, a2, .Lbr005 # 47: 273804
|
||||
addi a2, a2, -55 /* arg0-0x37 */ # 4a: 22c2c9
|
||||
ret /* arg0-0x37 */ # 4d: 0df0
|
||||
.Lbr005: movi a2, -1 /* 0xffffffff */ # 4f: 7cf2
|
||||
ret /* 0xffffffff */ # 51: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x54
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_hex2byte
|
||||
.type sdk_hex2byte, @function
|
||||
.literal_position
|
||||
sdk_hex2byte:
|
||||
addi sp, sp, -16 /* (local0) */ # 54: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 57: c921
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 59: 0911
|
||||
mov a12, a2 /* arg0 */ # 5b: cd02
|
||||
l8ui a2, a2, 0 /* [arg0] */ # 5d: 220200
|
||||
call0 .Lfunc001 # 60: c5fbff
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 63: 2901
|
||||
bltz a2, .Lbr007 # 65: 969201
|
||||
l8ui a2, a12, 1 /* [arg0+0x1] */ # 68: 220c01
|
||||
call0 .Lfunc001 # 6b: 45fbff
|
||||
bltz a2, .Lbr007 # 6e: 960201
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 71: 0801
|
||||
slli a0, a0, 4 # 73: c00011
|
||||
or a2, a2, a0 # 76: 002220
|
||||
.Lbr006: l32i a12, sp, 8 /* [(local2)] */ # 79: c821
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 7b: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 7d: 12c110
|
||||
ret # 80: 0df0
|
||||
.Lbr007: movi a2, -1 /* 0xffffffff */ # 82: 7cf2
|
||||
j .Lbr006 # 84: 46fcff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x88
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_hexstr2bin
|
||||
.type sdk_hexstr2bin, @function
|
||||
sdk_hexstr2bin:
|
||||
addi sp, sp, -32 /* (local0) */ # 88: 12c1e0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 8b: 0901
|
||||
s32i a4, sp, 20 /* arg2 -> [(local5)] */ # 8d: 4951
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 8f: e931
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 91: f941
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 93: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 95: d921
|
||||
mov a12, a2 /* arg0 */ # 97: cd02
|
||||
mov a13, a3 /* arg1 */ # 99: dd03
|
||||
mov a15, a4 /* arg2 */ # 9b: fd04
|
||||
beqz a4, .Lbr010 # 9d: 9c94
|
||||
movi a14, 0 /* 0x00000000 */ # 9f: 0c0e
|
||||
.Lbr008: mov a2, a12 # a1: 2d0c
|
||||
call0 sdk_hex2byte # a3: 050000
|
||||
bgez a2, .Lbr009 # a6: d64200
|
||||
movi a2, -1 /* 0xffffffff */ # a9: 7cf2
|
||||
j .Lbr011 # ab: 460300
|
||||
.Lbr009: addi a12, a12, 2 # ae: 2bcc
|
||||
s8i a2, a13, 0 # b0: 224d00
|
||||
addi a14, a14, 1 # b3: 1bee
|
||||
addi a13, a13, 1 # b5: 1bdd
|
||||
bne a15, a14, .Lbr008 # b7: e79fe6
|
||||
.Lbr010: movi a2, 0 /* 0x00000000 */ # ba: 0c02
|
||||
.Lbr011: l32i a12, sp, 4 /* [(local1)] */ # bc: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # be: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # c0: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # c2: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # c4: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # c6: 12c120
|
||||
ret # c9: 0df0
|
||||
|
||||
.literal_position # cc: 00ff0000
|
||||
# d0: 807eaa83
|
||||
# d4: c7100000
|
||||
# d8: 00ff0000
|
||||
# dc: 00000000
|
||||
# e0: 00000000
|
||||
# e4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xe8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_wpa_get_ntp_timestamp
|
||||
.type sdk_wpa_get_ntp_timestamp, @function
|
||||
sdk_wpa_get_ntp_timestamp:
|
||||
addi sp, sp, -32 /* (local0) */ # e8: 12c1e0
|
||||
s32i a12, sp, 20 /* a12 -> [(local5)] */ # eb: c951
|
||||
s32i a0, sp, 16 /* a0 -> [(local4)] */ # ed: 0941
|
||||
mov a12, a2 /* arg0 */ # ef: cd02
|
||||
mov a2, sp /* (local0) */ # f1: 2d01
|
||||
call0 sdk_os_get_time # f3: 01faffc0
|
||||
# f7: 0000
|
||||
mov a2, a12 /* arg0 */ # f9: 2d0c
|
||||
addi a3, sp, 8 /* (local2) */ # fb: 8b31
|
||||
movi a4, 4 /* 0x00000004 */ # fd: 0c44
|
||||
movi a8, 0x0000ff00 # ff: 81f3ff
|
||||
movi a6, 0x000010c7 # 102: 61f4ff
|
||||
movi a5, 0x83aa7e80 # 105: 51f2ff
|
||||
l32i a9, sp, 4 /* [(local1)] */ # 108: 9811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 10a: 0801
|
||||
srli a10, a9, 9 # 10c: 90a941
|
||||
srli a11, a9, 5 # 10f: 90b541
|
||||
add a0, a0, a5 /* [(local0)]+0x83aa7e80 */ # 112: 5a00
|
||||
slli a5, a0, 24 # 114: 805001
|
||||
mull a9, a9, a6 # 117: 609982
|
||||
and a7, a0, a8 # 11a: 807010
|
||||
extui a6, a0, 24, 8 # 11d: 006875
|
||||
sub a9, a9, a11 # 120: b099c0
|
||||
slli a7, a7, 8 # 123: 807711
|
||||
or a5, a5, a7 # 126: 705520
|
||||
sub a9, a9, a10 # 129: a099c0
|
||||
s32i a9, sp, 12 /* a9 -> [(local3)] */ # 12c: 9931
|
||||
srli a0, a0, 8 # 12e: 000841
|
||||
and a0, a0, a8 # 131: 800010
|
||||
or a0, a0, a6 # 134: 600020
|
||||
or a0, a0, a5 # 137: 500020
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 13a: 0921
|
||||
call0 memcpy # 13c: 01e9ffc0
|
||||
# 140: 0000
|
||||
addi a2, a12, 4 /* arg0+0x4 */ # 142: 4b2c
|
||||
addi a3, sp, 8 /* (local2) */ # 144: 8b31
|
||||
movi a4, 4 /* 0x00000004 */ # 146: 0c44
|
||||
l32i a9, sp, 12 /* [(local3)] */ # 148: 9831
|
||||
movi a8, 0x0000ff00 # 14a: 81e3ff
|
||||
srli a7, a9, 8 # 14d: 907841
|
||||
and a7, a7, a8 # 150: 807710
|
||||
and a10, a9, a8 # 153: 80a910
|
||||
slli a10, a10, 8 # 156: 80aa11
|
||||
slli a8, a9, 24 # 159: 808901
|
||||
or a8, a8, a10 # 15c: a08820
|
||||
extui a9, a9, 24, 8 # 15f: 909875
|
||||
or a7, a7, a9 # 162: 907720
|
||||
or a7, a7, a8 # 165: 807720
|
||||
s32i a7, sp, 8 /* a7 -> [(local2)] */ # 168: 7921
|
||||
call0 memcpy # 16a: 01deffc0
|
||||
# 16e: 0000
|
||||
l32i a12, sp, 20 /* [(local5)] */ # 170: c851
|
||||
l32i a0, sp, 16 /* [(local4)] */ # 172: 0841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 174: 12c120
|
||||
ret # 177: 0df0
|
||||
|
||||
.literal_position # 17c: 00000000
|
||||
# 180: 00000000
|
||||
# 184: 00000000
|
||||
# 188: 00000000
|
||||
# 18c: 00000000
|
||||
# 190: 00000000
|
||||
# 194: 00000000
|
||||
# 198: 00000000
|
||||
# 19c: 00000000
|
||||
# 1a0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1a4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_wpa_config_parse_string
|
||||
.type sdk_wpa_config_parse_string, @function
|
||||
sdk_wpa_config_parse_string:
|
||||
addi sp, sp, -32 /* (local0) */ # 1a4: 12c1e0
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 1a7: e941
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 1a9: 0911
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 1ab: d931
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 1ad: c921
|
||||
mov a13, a3 /* arg1 */ # 1af: dd03
|
||||
mov a12, a2 /* arg0 */ # 1b1: cd02
|
||||
l8ui a0, a2, 0 /* [arg0] */ # 1b3: 020200
|
||||
movi a2, 34 /* 0x00000022 */ # 1b6: 2c22
|
||||
bne a0, a2, .Lbr012 # 1b8: 27901a
|
||||
mov a2, a12 /* arg0 */ # 1bb: 2d0c
|
||||
call0 strlen # 1bd: 01efffc0
|
||||
# 1c1: 0000
|
||||
addi a3, a2, -7 # 1c3: 32c2f9
|
||||
beqz a3, .Lbr018 # 1c6: 169308
|
||||
mov a2, a12 /* arg0 */ # 1c9: 2d0c
|
||||
call0 strlen # 1cb: 01edffc0
|
||||
# 1cf: 0000
|
||||
movi a4, 15 /* 0x0000000f */ # 1d1: 0cf4
|
||||
beq a2, a4, .Lbr018 # 1d3: 47127c
|
||||
.Lbr012: mov a2, a12 /* arg0 */ # 1d6: 2d0c
|
||||
call0 strlen # 1d8: 01ebffc0
|
||||
# 1dc: 0000
|
||||
beqi a2, 5, .Lbr017 # 1de: 26524f
|
||||
movi a5, 13 /* 0x0000000d */ # 1e1: 0cd5
|
||||
beq a2, a5, .Lbr017 # 1e3: 57124a
|
||||
beqi a2, 10, .Lbr013 # 1e6: 269204
|
||||
movi a6, 26 /* 0x0000001a */ # 1e9: 1ca6
|
||||
bne a2, a6, .Lbr014 # 1eb: 679223
|
||||
.Lbr013: srli a2, a2, 1 # 1ee: 202141
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 1f1: 2901
|
||||
addi a2, a2, 1 # 1f3: 1b22
|
||||
call0 malloc # 1f5: 01e4ffc0
|
||||
# 1f9: 0000
|
||||
mov a14, a2 # 1fb: ed02
|
||||
beqz a2, .Lbr014 # 1fd: 9c12
|
||||
mov a2, a12 /* arg0 */ # 1ff: 2d0c
|
||||
mov a3, a14 # 201: 3d0e
|
||||
l32i a4, sp, 0 /* [(local0)] */ # 203: 4801
|
||||
call0 sdk_hexstr2bin # 205: 050000
|
||||
beqz a2, .Lbr015 # 208: 8cb2
|
||||
mov a2, a14 # 20a: 2d0e
|
||||
call0 free # 20c: 01e0ffc0
|
||||
# 210: 0000
|
||||
.Lbr014: movi a14, 0 /* 0x00000000 */ # 212: 0c0e
|
||||
j .Lbr016 # 214: 860200
|
||||
.Lbr015: l32i a3, sp, 0 /* [(local0)] */ # 217: 3801
|
||||
movi a4, 0 /* 0x00000000 */ # 219: 0c04
|
||||
add a5, a3, a14 # 21b: ea53
|
||||
s8i a4, a5, 0 # 21d: 424500
|
||||
s32i a3, a13, 0 /* [(local0)] -> [arg1] */ # 220: 390d
|
||||
.Lbr016: l32i a0, sp, 4 /* [(local1)] */ # 222: 0811
|
||||
l32i a12, sp, 8 /* [(local2)] */ # 224: c821
|
||||
mov a2, a14 # 226: 2d0e
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 228: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 22a: e841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 22c: 12c120
|
||||
ret # 22f: 0df0
|
||||
.Lbr017: s32i a2, a13, 0 /* a2 -> [arg1] */ # 231: 290d
|
||||
addi a2, a2, 1 # 233: 1b22
|
||||
call0 malloc # 235: 01d6ffc0
|
||||
# 239: 0000
|
||||
mov a3, a12 /* arg0 */ # 23b: 3d0c
|
||||
mov a14, a2 # 23d: ed02
|
||||
l32i a4, a13, 0 /* [arg1] */ # 23f: 480d
|
||||
call0 memcpy # 241: 01d4ffc0
|
||||
# 245: 0000
|
||||
l32i a7, a13, 0 /* [arg1] */ # 247: 780d
|
||||
movi a6, 0 /* 0x00000000 */ # 249: 0c06
|
||||
add a7, a7, a14 # 24b: ea77
|
||||
s8i a6, a7, 0 # 24d: 624700
|
||||
j .Lbr016 # 250: 86f3ff
|
||||
.Lbr018: movi a3, 34 /* 0x00000022 */ # 253: 2c23
|
||||
addi a14, a12, 1 /* arg0+0x1 */ # 255: 1bec
|
||||
mov a2, a14 /* arg0+0x1 */ # 257: 2d0e
|
||||
call0 strrchr # 259: 01cfffc0
|
||||
# 25d: 0000
|
||||
beqz a2, .Lbr014 # 25f: 16f2fa
|
||||
sub a2, a2, a12 # 262: c022c0
|
||||
addi a8, a2, -1 # 265: 0b82
|
||||
s32i a8, a13, 0 /* a8 -> [arg1] */ # 267: 890d
|
||||
call0 malloc # 269: 01ccffc0
|
||||
# 26d: 0000
|
||||
mov a12, a2 # 26f: cd02
|
||||
beqz a2, .Lbr014 # 271: 16d2f9
|
||||
mov a3, a14 /* arg0+0x1 */ # 274: 3d0e
|
||||
l32i a4, a13, 0 /* [arg1] */ # 276: 480d
|
||||
call0 memcpy # 278: 01caffc0
|
||||
# 27c: 0000
|
||||
mov a14, a12 # 27e: ed0c
|
||||
l32i a10, a13, 0 /* [arg1] */ # 280: a80d
|
||||
movi a9, 0 /* 0x00000000 */ # 282: 0c09
|
||||
add a10, a10, a12 # 284: caaa
|
||||
s8i a9, a10, 0 # 286: 924a00
|
||||
j .Lbr016 # 289: 46e5ff
|
62
binary_sdk/libwpa/ieee802_1x.S
Normal file
62
binary_sdk/libwpa/ieee802_1x.S
Normal file
|
@ -0,0 +1,62 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_ieee802_1x_receive
|
||||
.type sdk_ieee802_1x_receive, @function
|
||||
sdk_ieee802_1x_receive:
|
||||
addi sp, sp, -16 /* (local0) */ # 8: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b: 0901
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # d: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # f: c911
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 11: e931
|
||||
mov a12, a4 /* arg2 */ # 13: cd04
|
||||
mov a14, a5 /* arg3 */ # 15: ed05
|
||||
mov a13, a2 /* arg0 */ # 17: dd02
|
||||
call0 ap_get_sta # 19: 01f9ffc0
|
||||
# 1d: 0000
|
||||
mov a0, a2 # 1f: 0d02
|
||||
beqz a2, .Lbr002 # 21: 161205
|
||||
l32i a2, a2, 16 # 24: 2842
|
||||
movi a3, 258 /* 0x00000102 */ # 26: 32a102
|
||||
bnone a2, a3, .Lbr002 # 29: 370249
|
||||
bltui a14, 4, .Lbr002 # 2c: b64e46
|
||||
addi a4, a14, -4 /* arg3-0x4 */ # 2f: 42cefc
|
||||
l8ui a6, a12, 3 /* [arg2+0x3] */ # 32: 620c03
|
||||
l8ui a7, a12, 2 /* [arg2+0x2] */ # 35: 720c02
|
||||
slli a6, a6, 8 # 38: 806611
|
||||
or a6, a6, a7 # 3b: 706620
|
||||
extui a5, a6, 8, 8 # 3e: 605874
|
||||
extui a6, a6, 0, 8 # 41: 606074
|
||||
slli a6, a6, 8 # 44: 806611
|
||||
or a5, a5, a6 # 47: 605520
|
||||
extui a5, a5, 0, 16 # 4a: 5050f4
|
||||
bltu a4, a5, .Lbr002 # 4d: 573425
|
||||
movi a7, 43 /* 0x0000002b */ # 50: 2cb7
|
||||
bgeu a7, a5, .Lbr002 # 52: 57b720
|
||||
l8ui a8, a12, 1 /* [arg2+0x1] */ # 55: 820c01
|
||||
l8ui a2, a12, 4 /* [arg2+0x4] */ # 58: 220c04
|
||||
bnei a8, 3, .Lbr002 # 5b: 663817
|
||||
movi a9, 254 /* 0x000000fe */ # 5e: 92a0fe
|
||||
beq a2, a9, .Lbr001 # 61: 971202
|
||||
bnei a2, 2, .Lbr002 # 64: 66220e
|
||||
.Lbr001: mov a4, a12 /* arg2 */ # 67: 4d0c
|
||||
l32i a2, a13, 24 /* [arg0+0x18] */ # 69: 286d
|
||||
addi a5, a5, 4 # 6b: 4b55
|
||||
l32i a3, a0, 68 # 6d: 322011
|
||||
call0 sdk_wpa_receive # 70: 01e5ffc0
|
||||
# 74: 0000
|
||||
.Lbr002: l32i a12, sp, 4 /* [(local1)] */ # 76: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 78: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 7a: e831
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 7c: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 7e: 12c110
|
||||
ret # 81: 0df0
|
1014
binary_sdk/libwpa/md5-internal.S
Normal file
1014
binary_sdk/libwpa/md5-internal.S
Normal file
File diff suppressed because it is too large
Load diff
164
binary_sdk/libwpa/md5.S
Normal file
164
binary_sdk/libwpa/md5.S
Normal file
|
@ -0,0 +1,164 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x80
|
||||
# (local1): word[7] @ -0x7c
|
||||
# (local2): word @ -0x60
|
||||
# (local3): word[7] @ -0x5c
|
||||
# (local4): word @ -0x40
|
||||
# (local5): word @ -0x3c
|
||||
# (local6): word @ -0x38
|
||||
# (local7): word @ -0x34
|
||||
# (local8): word @ -0x30
|
||||
# (local9): word[3] @ -0x2c
|
||||
# (local10): word @ -0x20
|
||||
# (local11): word[7] @ -0x1c
|
||||
.global sdk_hmac_md5_vector
|
||||
.type sdk_hmac_md5_vector, @function
|
||||
sdk_hmac_md5_vector:
|
||||
movi a8, 208 /* 0x000000d0 */ # 1c: 82a0d0
|
||||
sub sp, sp, a8 /* (FP)-0xd0 */ # 1f: 8011c0
|
||||
s32i a3, sp, 180 /* arg1 -> [(local11)] */ # 22: 32612d
|
||||
s32i a2, sp, 176 /* arg0 -> [(local10)] */ # 25: 22612c
|
||||
s32i a0, sp, 148 /* a0 -> [(local5)] */ # 28: 026125
|
||||
s32i a13, sp, 156 /* a13 -> [(local7)] */ # 2b: d26127
|
||||
s32i a12, sp, 152 /* a12 -> [(local6)] */ # 2e: c26126
|
||||
s32i a14, sp, 160 /* a14 -> [(local8)] */ # 31: e26128
|
||||
mov a12, a5 /* arg3 */ # 34: cd05
|
||||
mov a14, a4 /* arg2 */ # 36: ed04
|
||||
mov a13, a6 /* arg4 */ # 38: dd06
|
||||
movi a0, 180 /* 0x000000b4 */ # 3a: 02a0b4
|
||||
add a0, sp, a0 /* (local11) */ # 3d: 0a01
|
||||
movi a6, 176 /* 0x000000b0 */ # 3f: 62a0b0
|
||||
add a6, sp, a6 /* (local10) */ # 42: 6a61
|
||||
bltui a4, 6, .Lbr001 # 44: b66402
|
||||
j .Lbr006 # 47: 062500
|
||||
.Lbr001: s32i a7, sp, 144 /* arg5 -> [(local4)] */ # 4a: 726124
|
||||
movi a2, 64 /* 0x00000040 */ # 4d: 4c02
|
||||
bgeu a2, a3, .Lbr002 # 4f: 37b218
|
||||
mov a3, a6 /* (local10) */ # 52: 3d06
|
||||
movi a2, 1 /* 0x00000001 */ # 54: 0c12
|
||||
mov a5, sp /* (FP)-0xd0 */ # 56: 5d01
|
||||
mov a4, a0 /* (local11) */ # 58: 4d00
|
||||
call0 sdk_md5_vector # 5a: 01e9ffc0
|
||||
# 5e: 0000
|
||||
bnez a2, .Lbr006 # 60: 56b207
|
||||
s32i sp, sp, 176 /* (FP)-0xd0 -> [(local10)] */ # 63: 12612c
|
||||
movi a6, 16 /* 0x00000010 */ # 66: 1c06
|
||||
s32i a6, sp, 180 /* 0x00000010 -> [(local11)] */ # 68: 62612d
|
||||
.Lbr002: addi a2, sp, 16 /* (FP)-0xc0 */ # 6b: 22c110
|
||||
movi a3, 0 /* 0x00000000 */ # 6e: 0c03
|
||||
movi a4, 64 /* 0x00000040 */ # 70: 4c04
|
||||
call0 memset # 72: 01e4ffc0
|
||||
# 76: 0000
|
||||
l32i a3, sp, 176 /* [(local10)] */ # 78: 32212c
|
||||
l32i a4, sp, 180 /* [(local11)] */ # 7b: 42212d
|
||||
addi a2, sp, 16 /* (FP)-0xc0 */ # 7e: 22c110
|
||||
s32i a14, sp, 164 /* arg2 -> [(local9)] */ # 81: e26129
|
||||
call0 memcpy # 84: 01e1ffc0
|
||||
# 88: 0000
|
||||
l32i a4, sp, 164 /* [(local9)] */ # 8a: 422129
|
||||
addi a0, sp, 16 /* (FP)-0xc0 */ # 8d: 02c110
|
||||
addi a14, sp, 80 /* (local0) */ # 90: e2c150
|
||||
movi a2, 54 /* 0x00000036 */ # 93: 3c62
|
||||
movi a6, 64 /* 0x00000040 */ # 95: 4c06
|
||||
s32i a6, sp, 112 /* 0x00000040 -> [(local2)] */ # 97: 62611c
|
||||
addi a6, sp, 16 /* (FP)-0xc0 */ # 9a: 62c110
|
||||
s32i a6, sp, 80 /* (FP)-0xc0 -> [(local0)] */ # 9d: 626114
|
||||
.Lbr003: l8ui a5, a0, 0 # a0: 520000
|
||||
xor a5, a5, a2 # a3: 205530
|
||||
s8i a5, a0, 0 # a6: 524000
|
||||
addi a0, a0, 1 # a9: 1b00
|
||||
bne a0, a14, .Lbr003 # ab: e790f1
|
||||
beqz a4, .Lbr005 # ae: 9ca4
|
||||
addi a0, sp, 112 /* (local2) */ # b0: 02c170
|
||||
addi a2, sp, 80 /* (local0) */ # b3: 22c150
|
||||
addx4 a3, a4, a12 # b6: c034a0
|
||||
.Lbr004: l32i a7, a13, 0 # b9: 780d
|
||||
l32i a8, a12, 0 # bb: 880c
|
||||
addi a13, a13, 4 # bd: 4bdd
|
||||
addi a12, a12, 4 # bf: 4bcc
|
||||
s32i a8, a2, 4 # c1: 8912
|
||||
s32i a7, a0, 4 # c3: 7910
|
||||
addi a2, a2, 4 # c5: 4b22
|
||||
addi a0, a0, 4 # c7: 4b00
|
||||
bne a12, a3, .Lbr004 # c9: 379cec
|
||||
.Lbr005: addi a3, sp, 80 /* (local0) */ # cc: 32c150
|
||||
addi a2, a4, 1 /* [(local9)]+0x1 */ # cf: 1b24
|
||||
l32i a5, sp, 144 /* [(local4)] */ # d1: 522124
|
||||
addi a4, sp, 112 /* (local2) */ # d4: 42c170
|
||||
call0 sdk_md5_vector # d7: 01cdffc0
|
||||
# db: 0000
|
||||
beqz a2, .Lbr007 # dd: 8c32
|
||||
.Lbr006: movi a2, -1 /* 0xffffffff */ # df: 7cf2
|
||||
j .Lbr009 # e1: 861400
|
||||
.Lbr007: addi a2, sp, 16 /* (FP)-0xc0 */ # e4: 22c110
|
||||
movi a3, 0 /* 0x00000000 */ # e7: 0c03
|
||||
movi a4, 64 /* 0x00000040 */ # e9: 4c04
|
||||
call0 memset # eb: 01c9ffc0
|
||||
# ef: 0000
|
||||
l32i a3, sp, 176 /* [(local10)] */ # f1: 32212c
|
||||
l32i a4, sp, 180 /* [(local11)] */ # f4: 42212d
|
||||
addi a2, sp, 16 /* (FP)-0xc0 */ # f7: 22c110
|
||||
call0 memcpy # fa: 01c6ffc0
|
||||
# fe: 0000
|
||||
addi a0, sp, 16 /* (FP)-0xc0 */ # 100: 02c110
|
||||
movi a2, 92 /* 0x0000005c */ # 103: 5cc2
|
||||
.Lbr008: l8ui a5, a0, 0 # 105: 520000
|
||||
xor a5, a5, a2 # 108: 205530
|
||||
s8i a5, a0, 0 # 10b: 524000
|
||||
addi a0, a0, 1 # 10e: 1b00
|
||||
bne a0, a14, .Lbr008 # 110: e790f1
|
||||
movi a2, 2 /* 0x00000002 */ # 113: 0c22
|
||||
addi a3, sp, 80 /* (local0) */ # 115: 32c150
|
||||
addi a4, sp, 112 /* (local2) */ # 118: 42c170
|
||||
movi a6, 16 /* 0x00000010 */ # 11b: 1c06
|
||||
l32i a5, sp, 144 /* [(local4)] */ # 11d: 522124
|
||||
movi a7, 64 /* 0x00000040 */ # 120: 4c07
|
||||
addi a8, sp, 16 /* (FP)-0xc0 */ # 122: 82c110
|
||||
s32i a8, sp, 80 /* (FP)-0xc0 -> [(local0)] */ # 125: 826114
|
||||
s32i a7, sp, 112 /* 0x00000040 -> [(local2)] */ # 128: 72611c
|
||||
s32i a5, sp, 84 /* [(local4)] -> [(local1)] */ # 12b: 526115
|
||||
s32i a6, sp, 116 /* 0x00000010 -> [(local3)] */ # 12e: 62611d
|
||||
call0 sdk_md5_vector # 131: 01b9ffc0
|
||||
# 135: 0000
|
||||
.Lbr009: l32i a12, sp, 152 /* [(local6)] */ # 137: c22126
|
||||
l32i a13, sp, 156 /* [(local7)] */ # 13a: d22127
|
||||
l32i a14, sp, 160 /* [(local8)] */ # 13d: e22128
|
||||
movi a3, 208 /* 0x000000d0 */ # 140: 32a0d0
|
||||
l32i a0, sp, 148 /* [(local5)] */ # 143: 022125
|
||||
add sp, sp, a3 /* (top of frame) */ # 146: 3a11
|
||||
ret # 148: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x14c
|
||||
# Local variables/stack:
|
||||
# (local0): word[6] @ -0x30
|
||||
# (local1): word @ -0x18
|
||||
# (local2): word[5] @ -0x14
|
||||
.global sdk_hmac_md5
|
||||
.type sdk_hmac_md5, @function
|
||||
sdk_hmac_md5:
|
||||
mov a7, a6 /* arg4 */ # 14c: 7d06
|
||||
mov a9, a5 /* arg3 */ # 14e: 9d05
|
||||
addi sp, sp, -48 /* (local0) */ # 150: 12c1d0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 153: 0901
|
||||
s32i a4, sp, 24 /* arg2 -> [(local1)] */ # 155: 4961
|
||||
addi a5, sp, 24 /* (local1) */ # 157: 52c118
|
||||
addi a6, sp, 28 /* (local2) */ # 15a: 62c11c
|
||||
s32i a9, sp, 28 /* arg3 -> [(local2)] */ # 15d: 9971
|
||||
movi a4, 1 /* 0x00000001 */ # 15f: 0c14
|
||||
call0 sdk_hmac_md5_vector # 161: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 164: 0801
|
||||
addi sp, sp, 48 /* (top of frame) */ # 166: 12c130
|
||||
ret # 169: 0df0
|
65
binary_sdk/libwpa/os_xtensa.S
Normal file
65
binary_sdk/libwpa/os_xtensa.S
Normal file
|
@ -0,0 +1,65 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_os_get_time
|
||||
.type sdk_os_get_time, @function
|
||||
sdk_os_get_time:
|
||||
movi a2, 0 /* 0x00000000 */ # 0: 0c02
|
||||
ret /* 0x00000000 */ # 2: 0df0
|
||||
|
||||
.literal_position # 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global os_random
|
||||
.type os_random, @function
|
||||
os_random: addi sp, sp, -16 /* (local0) */ # 8: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b: 0901
|
||||
call0 rand # d: 01fdffc0
|
||||
# 11: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 13: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 15: 12c110
|
||||
ret # 18: 0df0
|
||||
|
||||
.literal_position # 1c: 00000000
|
||||
# 20: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x24
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global os_get_random
|
||||
.type os_get_random, @function
|
||||
os_get_random:
|
||||
addi sp, sp, -32 /* (local0) */ # 24: 12c1e0
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 27: 0911
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 29: d931
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 2b: c921
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 2d: e941
|
||||
mov a12, a2 /* arg0 */ # 2f: cd02
|
||||
srli a14, a3, 2 # 31: 30e241
|
||||
blti a14, 1, .Lbr002 # 34: a61e1c
|
||||
movi a13, 0 /* 0x00000000 */ # 37: 0c0d
|
||||
.Lbr001: call0 rand # 39: 01f8ffc0
|
||||
# 3d: 0000
|
||||
mov a3, sp /* (local0) */ # 3f: 3d01
|
||||
s32i a2, sp, 0 /* a2 -> [(local0)] */ # 41: 2901
|
||||
movi a4, 4 /* 0x00000004 */ # 43: 0c44
|
||||
mov a2, a12 # 45: 2d0c
|
||||
call0 memcpy # 47: 01f6ffc0
|
||||
# 4b: 0000
|
||||
addi a12, a12, 4 # 4d: 4bcc
|
||||
addi a13, a13, 1 # 4f: 1bdd
|
||||
bne a13, a14, .Lbr001 # 51: e79de4
|
||||
.Lbr002: movi a2, 0 /* 0x00000000 */ # 54: 0c02
|
||||
l32i a12, sp, 8 /* [(local2)] */ # 56: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 58: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 5a: e841
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 5c: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 5e: 12c120
|
||||
ret /* 0x00000000 */ # 61: 0df0
|
100
binary_sdk/libwpa/rc4.S
Normal file
100
binary_sdk/libwpa/rc4.S
Normal file
|
@ -0,0 +1,100 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_rc4_skip
|
||||
.type sdk_rc4_skip, @function
|
||||
sdk_rc4_skip:
|
||||
movi a10, 0 /* 0x00000000 */ # 0: 0c0a
|
||||
movi a9, 0 /* 0x00000000 */ # 2: 0c09
|
||||
movi a7, 288 /* 0x00000120 */ # 4: 72a120
|
||||
sub sp, sp, a7 /* (FP)-0x120 */ # 7: 7011c0
|
||||
s32i a12, sp, 0x108 /* a12 -> [(local2)] */ # a: c26142
|
||||
s32i a14, sp, 0x110 /* a14 -> [(local4)] */ # d: e26144
|
||||
s32i a13, sp, 0x10c /* a13 -> [(local3)] */ # 10: d26143
|
||||
s32i a5, sp, 0x100 /* arg3 -> [(local0)] */ # 13: 526140
|
||||
s32i a0, sp, 0x104 /* a0 -> [(local1)] */ # 16: 026141
|
||||
mov a0, sp /* (FP)-0x120 */ # 19: 0d01
|
||||
.Lbr001: s8i a10, a0, 0 # 1b: a24000
|
||||
addi a0, a0, 1 # 1e: 1b00
|
||||
addi a10, a10, 1 # 20: 1baa
|
||||
bnei a10, 0x100, .Lbr001 # 22: 66faf5
|
||||
movi a5, 0 /* 0x00000000 */ # 25: 0c05
|
||||
mov a13, sp /* (FP)-0x120 */ # 27: dd01
|
||||
addmi a14, sp, 256 /* (local0) */ # 29: e2d101
|
||||
mov a0, sp /* (FP)-0x120 */ # 2c: 0d01
|
||||
movi a10, 0 /* 0x00000000 */ # 2e: 0c0a
|
||||
add a12, a2, a10 /* arg0 */ # 30: aac2
|
||||
.Lbr002: l8ui a11, a0, 0 # 32: b20000
|
||||
l8ui a12, a12, 0 # 35: c20c00
|
||||
add a9, a11, a9 # 38: 9a9b
|
||||
add a9, a12, a9 # 3a: 9a9c
|
||||
addi a12, a10, 1 # 3c: 1bca
|
||||
extui a9, a9, 0, 8 # 3e: 909074
|
||||
mov a10, a5 /* 0x00000000 */ # 41: ad05
|
||||
add a7, a9, a13 # 43: da79
|
||||
l8ui a8, a7, 0 # 45: 820700
|
||||
s8i a8, a0, 0 # 48: 824000
|
||||
s8i a11, a7, 0 # 4b: b24700
|
||||
addi a0, a0, 1 # 4e: 1b00
|
||||
bgeu a12, a3, .Lbr003 # 50: 37bc01
|
||||
mov a10, a12 # 53: ad0c
|
||||
.Lbr003: add a12, a2, a10 # 55: aac2
|
||||
bne a0, a14, .Lbr002 # 57: e790d7
|
||||
l32i a5, sp, 0x100 /* [(local0)] */ # 5a: 522140
|
||||
beqz a4, .Lbr005 # 5d: ac64
|
||||
movi a10, 0 /* 0x00000000 */ # 5f: 0c0a
|
||||
movi a9, 0 /* 0x00000000 */ # 61: 0c09
|
||||
movi a0, 0 /* 0x00000000 */ # 63: 0c00
|
||||
.Lbr004: addi a10, a10, 1 # 65: 1baa
|
||||
extui a10, a10, 0, 8 # 67: a0a074
|
||||
add a2, a10, a13 # 6a: da2a
|
||||
l8ui a11, a2, 0 # 6c: b20200
|
||||
addi a0, a0, 1 # 6f: 1b00
|
||||
add a9, a11, a9 # 71: 9a9b
|
||||
extui a9, a9, 0, 8 # 73: 909074
|
||||
add a12, a9, a13 # 76: dac9
|
||||
l8ui a14, a12, 0 # 78: e20c00
|
||||
s8i a14, a2, 0 # 7b: e24200
|
||||
s8i a11, a12, 0 # 7e: b24c00
|
||||
bne a4, a0, .Lbr004 # 81: 0794e0
|
||||
j .Lbr006 # 84: c60000
|
||||
.Lbr005: movi a9, 0 /* 0x00000000 */ # 87: 0c09
|
||||
movi a10, 0 /* 0x00000000 */ # 89: 0c0a
|
||||
.Lbr006: beqz a6, .Lbr008 # 8b: bc76
|
||||
movi a0, 0 /* 0x00000000 */ # 8d: 0c00
|
||||
.Lbr007: addi a10, a10, 1 # 8f: 1baa
|
||||
extui a10, a10, 0, 8 # 91: a0a074
|
||||
add a12, a10, a13 # 94: daca
|
||||
l8ui a14, a12, 0 # 96: e20c00
|
||||
add a9, a14, a9 # 99: 9a9e
|
||||
extui a9, a9, 0, 8 # 9b: 909074
|
||||
add a2, a9, a13 # 9e: da29
|
||||
l8ui a3, a2, 0 # a0: 320200
|
||||
s8i a3, a12, 0 # a3: 324c00
|
||||
s8i a14, a2, 0 # a6: e24200
|
||||
l8ui a12, a12, 0 # a9: c20c00
|
||||
l8ui a11, a5, 0 # ac: b20500
|
||||
add a12, a12, a14 # af: eacc
|
||||
extui a12, a12, 0, 8 # b1: c0c074
|
||||
add a12, a13, a12 # b4: cacd
|
||||
l8ui a12, a12, 0 # b6: c20c00
|
||||
addi a0, a0, 1 # b9: 1b00
|
||||
xor a11, a11, a12 # bb: c0bb30
|
||||
s8i a11, a5, 0 # be: b24500
|
||||
addi a5, a5, 1 # c1: 1b55
|
||||
bne a6, a0, .Lbr007 # c3: 0796c8
|
||||
.Lbr008: movi a2, 0 /* 0x00000000 */ # c6: 0c02
|
||||
l32i a12, sp, 0x108 /* [(local2)] */ # c8: c22142
|
||||
l32i a13, sp, 0x10c /* [(local3)] */ # cb: d22143
|
||||
l32i a14, sp, 0x110 /* [(local4)] */ # ce: e22144
|
||||
movi a3, 288 /* 0x00000120 */ # d1: 32a120
|
||||
l32i a0, sp, 0x104 /* [(local1)] */ # d4: 022141
|
||||
add sp, sp, a3 /* (top of frame) */ # d7: 3a11
|
||||
ret /* 0x00000000 */ # d9: 0df0
|
2127
binary_sdk/libwpa/sha1-internal.S
Normal file
2127
binary_sdk/libwpa/sha1-internal.S
Normal file
File diff suppressed because it is too large
Load diff
176
binary_sdk/libwpa/sha1-pbkdf2.S
Normal file
176
binary_sdk/libwpa/sha1-pbkdf2.S
Normal file
|
@ -0,0 +1,176 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x90
|
||||
# (local1): word @ -0x8c
|
||||
# (local2): word @ -0x88
|
||||
# (local3): word @ -0x84
|
||||
# (local4): byte @ -0x80
|
||||
# (local5): byte @ -0x7f
|
||||
# (local6): byte @ -0x7e
|
||||
# (local7): byte[77] @ -0x7d
|
||||
# (local8): word @ -0x30
|
||||
# (local9): word @ -0x2c
|
||||
# (local10): word @ -0x28
|
||||
# (local11): word @ -0x24
|
||||
# (local12): word @ -0x20
|
||||
# (local13): word @ -0x1c
|
||||
# (local14): word @ -0x18
|
||||
# (local15): word @ -0x14
|
||||
# (local16): word[4] @ -0x10
|
||||
.Lfunc001: movi a8, 144 /* 0x00000090 */ # 14: 82a090
|
||||
sub sp, sp, a8 /* (local0) */ # 17: 8011c0
|
||||
s32i a5, sp, 124 /* arg3 -> [(local15)] */ # 1a: 52611f
|
||||
s32i a7, sp, 96 /* arg5 -> [(local8)] */ # 1d: 726118
|
||||
s32i a0, sp, 100 /* a0 -> [(local9)] */ # 20: 026119
|
||||
s32i a3, sp, 128 /* arg1 -> [(local16)] */ # 23: 326120
|
||||
s32i a15, sp, 116 /* a15 -> [(local13)] */ # 26: f2611d
|
||||
s32i a14, sp, 112 /* a14 -> [(local12)] */ # 29: e2611c
|
||||
s32i a12, sp, 104 /* a12 -> [(local10)] */ # 2c: c2611a
|
||||
s32i a13, sp, 108 /* a13 -> [(local11)] */ # 2f: d2611b
|
||||
mov a12, a6 /* arg4 */ # 32: cd06
|
||||
mov a13, a4 /* arg2 */ # 34: dd04
|
||||
mov a14, a2 /* arg0 */ # 36: ed02
|
||||
l32i a15, sp, 128 /* [(local16)] */ # 38: f22120
|
||||
call0 strlen # 3b: 01f1ffc0
|
||||
# 3f: 0000
|
||||
s32i a15, sp, 0 /* [(local16)] -> [(local0)] */ # 41: f901
|
||||
s32i a13, sp, 8 /* arg2 -> [(local2)] */ # 43: d921
|
||||
addi a6, sp, 8 /* (local2) */ # 45: 8b61
|
||||
addi a7, sp, 32 /* (FP)-0x70 */ # 47: 72c120
|
||||
s8i a12, sp, 19 /* arg4 -> [(local7)] */ # 4a: c24113
|
||||
extui a5, a12, 24, 8 # 4d: c05875
|
||||
extui a4, a12, 16, 16 # 50: c040f5
|
||||
srli a3, a12, 8 # 53: c03841
|
||||
movi a0, 4 /* 0x00000004 */ # 56: 0c40
|
||||
s32i a0, sp, 12 /* 0x00000004 -> [(local3)] */ # 58: 0931
|
||||
s8i a3, sp, 18 /* a3 -> [(local6)] */ # 5a: 324112
|
||||
s8i a4, sp, 17 /* a4 -> [(local5)] */ # 5d: 424111
|
||||
s8i a5, sp, 16 /* a5 -> [(local4)] */ # 60: 524110
|
||||
movi a4, 2 /* 0x00000002 */ # 63: 0c24
|
||||
mov a5, sp /* (local0) */ # 65: 5d01
|
||||
mov a12, a2 # 67: cd02
|
||||
addi a2, sp, 16 /* (local4) */ # 69: 22c110
|
||||
mov a3, a12 # 6c: 3d0c
|
||||
s32i a2, sp, 4 /* (local4) -> [(local1)] */ # 6e: 2911
|
||||
mov a2, a14 /* arg0 */ # 70: 2d0e
|
||||
call0 sdk_hmac_sha1_vector # 72: 01e4ffc0
|
||||
# 76: 0000
|
||||
bnez a2, .Lbr005 # 78: 569207
|
||||
addi a3, sp, 32 /* (FP)-0x70 */ # 7b: 32c120
|
||||
movi a4, 20 /* 0x00000014 */ # 7e: 1c44
|
||||
l32i a15, sp, 96 /* [(local8)] */ # 80: f22118
|
||||
s32i a12, sp, 120 /* a12 -> [(local14)] */ # 83: c2611e
|
||||
mov a2, a15 /* [(local8)] */ # 86: 2d0f
|
||||
call0 memcpy # 88: 01e0ffc0
|
||||
# 8c: 0000
|
||||
l32i a6, sp, 124 /* [(local15)] */ # 8e: 62211f
|
||||
blti a6, 2, .Lbr003 # 91: a62648
|
||||
addi a12, a15, 20 /* [(local8)]+0x14 */ # 94: c2cf14
|
||||
movi a13, 1 /* 0x00000001 */ # 97: 0c1d
|
||||
.Lbr001: mov a2, a14 /* arg0 */ # 99: 2d0e
|
||||
l32i a3, sp, 120 /* [(local14)] */ # 9b: 32211e
|
||||
addi a4, sp, 32 /* (FP)-0x70 */ # 9e: 42c120
|
||||
movi a5, 20 /* 0x00000014 */ # a1: 1c45
|
||||
addi a6, sp, 64 /* (FP)-0x50 */ # a3: 62c140
|
||||
call0 sdk_hmac_sha1 # a6: 01d9ffc0
|
||||
# aa: 0000
|
||||
bnez a2, .Lbr005 # ac: 565204
|
||||
addi a2, sp, 32 /* (FP)-0x70 */ # af: 22c120
|
||||
addi a3, sp, 64 /* (FP)-0x50 */ # b2: 32c140
|
||||
movi a4, 20 /* 0x00000014 */ # b5: 1c44
|
||||
call0 memcpy # b7: 01d6ffc0
|
||||
# bb: 0000
|
||||
mov a2, a15 /* [(local8)] */ # bd: 2d0f
|
||||
addi a0, sp, 64 /* (FP)-0x50 */ # bf: 02c140
|
||||
l32i a9, sp, 124 /* [(local15)] */ # c2: 92211f
|
||||
addi a13, a13, 1 # c5: 1bdd
|
||||
.Lbr002: l8ui a7, a2, 0 # c7: 720200
|
||||
l8ui a8, a0, 0 # ca: 820000
|
||||
addi a0, a0, 1 # cd: 1b00
|
||||
xor a7, a7, a8 # cf: 807730
|
||||
s8i a7, a2, 0 # d2: 724200
|
||||
addi a2, a2, 1 # d5: 1b22
|
||||
bne a2, a12, .Lbr002 # d7: c792ec
|
||||
bne a9, a13, .Lbr001 # da: d799bb
|
||||
.Lbr003: movi a2, 0 /* 0x00000000 */ # dd: 0c02
|
||||
.Lbr004: l32i a12, sp, 104 /* [(local10)] */ # df: c2211a
|
||||
l32i a13, sp, 108 /* [(local11)] */ # e2: d2211b
|
||||
l32i a14, sp, 112 /* [(local12)] */ # e5: e2211c
|
||||
l32i a15, sp, 116 /* [(local13)] */ # e8: f2211d
|
||||
movi a3, 144 /* 0x00000090 */ # eb: 32a090
|
||||
l32i a0, sp, 100 /* [(local9)] */ # ee: 022119
|
||||
add sp, sp, a3 /* (top of frame) */ # f1: 3a11
|
||||
ret # f3: 0df0
|
||||
.Lbr005: movi a2, -1 /* 0xffffffff */ # f5: 7cf2
|
||||
j .Lbr004 # f7: 06f9ff
|
||||
|
||||
.literal_position # fc: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x100
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x30
|
||||
# (local1): word @ -0x2c
|
||||
# (local2): word @ -0x28
|
||||
# (local3): word @ -0x24
|
||||
# (local4): word @ -0x20
|
||||
# (local5): word @ -0x1c
|
||||
# (local6): word @ -0x18
|
||||
# (local7): word @ -0x14
|
||||
# (local8): word[4] @ -0x10
|
||||
.global sdk_pbkdf2_sha1
|
||||
.type sdk_pbkdf2_sha1, @function
|
||||
sdk_pbkdf2_sha1:
|
||||
addi sp, sp, -80 /* (FP)-0x50 */ # 100: 12c1b0
|
||||
s32i a14, sp, 44 /* a14 -> [(local3)] */ # 103: e9b1
|
||||
s32i a0, sp, 32 /* a0 -> [(local0)] */ # 105: 0981
|
||||
s32i a2, sp, 52 /* arg0 -> [(local5)] */ # 107: 29d1
|
||||
s32i a3, sp, 56 /* arg1 -> [(local6)] */ # 109: 39e1
|
||||
s32i a4, sp, 60 /* arg2 -> [(local7)] */ # 10b: 49f1
|
||||
s32i a5, sp, 64 /* arg3 -> [(local8)] */ # 10d: 526110
|
||||
s32i a15, sp, 48 /* a15 -> [(local4)] */ # 110: f9c1
|
||||
s32i a13, sp, 40 /* a13 -> [(local2)] */ # 112: d9a1
|
||||
s32i a12, sp, 36 /* a12 -> [(local1)] */ # 114: c991
|
||||
mov a13, a6 /* arg4 */ # 116: dd06
|
||||
mov a12, a7 /* arg5 */ # 118: cd07
|
||||
beqz a7, .Lbr009 # 11a: bc67
|
||||
movi a15, 0 /* 0x00000000 */ # 11c: 0c0f
|
||||
.Lbr006: l32i a2, sp, 52 /* [(local5)] */ # 11e: 28d1
|
||||
l32i a3, sp, 56 /* [(local6)] */ # 120: 38e1
|
||||
l32i a4, sp, 60 /* [(local7)] */ # 122: 48f1
|
||||
l32i a5, sp, 64 /* [(local8)] */ # 124: 522110
|
||||
mov a7, sp /* (FP)-0x50 */ # 127: 7d01
|
||||
addi a15, a15, 1 # 129: 1bff
|
||||
mov a6, a15 # 12b: 6d0f
|
||||
call0 .Lfunc001 # 12d: 45eeff
|
||||
beqz a2, .Lbr007 # 130: 8c32
|
||||
movi a2, -1 /* 0xffffffff */ # 132: 7cf2
|
||||
j .Lbr010 # 134: 860700
|
||||
.Lbr007: movi a2, 20 /* 0x00000014 */ # 137: 1c42
|
||||
mov a14, a2 /* 0x00000014 */ # 139: ed02
|
||||
bltu a2, a12, .Lbr008 # 13b: c73201
|
||||
mov a14, a12 # 13e: ed0c
|
||||
.Lbr008: mov a2, a13 # 140: 2d0d
|
||||
mov a3, sp /* (FP)-0x50 */ # 142: 3d01
|
||||
mov a4, a14 # 144: 4d0e
|
||||
call0 memcpy # 146: 01edffc0
|
||||
# 14a: 0000
|
||||
add a13, a13, a14 # 14c: eadd
|
||||
sub a12, a12, a14 # 14e: e0ccc0
|
||||
bnez a12, .Lbr006 # 151: 569cfc
|
||||
.Lbr009: movi a2, 0 /* 0x00000000 */ # 154: 0c02
|
||||
.Lbr010: l32i a12, sp, 36 /* [(local1)] */ # 156: c891
|
||||
l32i a13, sp, 40 /* [(local2)] */ # 158: d8a1
|
||||
l32i a14, sp, 44 /* [(local3)] */ # 15a: e8b1
|
||||
l32i a15, sp, 48 /* [(local4)] */ # 15c: f8c1
|
||||
l32i a0, sp, 32 /* [(local0)] */ # 15e: 0881
|
||||
addi sp, sp, 80 /* (top of frame) */ # 160: 12c150
|
||||
ret # 163: 0df0
|
266
binary_sdk/libwpa/sha1.S
Normal file
266
binary_sdk/libwpa/sha1.S
Normal file
|
@ -0,0 +1,266 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x80
|
||||
# (local1): word[7] @ -0x7c
|
||||
# (local2): word @ -0x60
|
||||
# (local3): word[7] @ -0x5c
|
||||
# (local4): word @ -0x40
|
||||
# (local5): word @ -0x3c
|
||||
# (local6): word @ -0x38
|
||||
# (local7): word @ -0x34
|
||||
# (local8): word @ -0x30
|
||||
# (local9): word[3] @ -0x2c
|
||||
# (local10): word @ -0x20
|
||||
# (local11): word[7] @ -0x1c
|
||||
.global sdk_hmac_sha1_vector
|
||||
.type sdk_hmac_sha1_vector, @function
|
||||
sdk_hmac_sha1_vector:
|
||||
movi a8, 224 /* 0x000000e0 */ # 1c: 82a0e0
|
||||
sub sp, sp, a8 /* (FP)-0xe0 */ # 1f: 8011c0
|
||||
s32i a3, sp, 196 /* arg1 -> [(local11)] */ # 22: 326131
|
||||
s32i a2, sp, 192 /* arg0 -> [(local10)] */ # 25: 226130
|
||||
s32i a0, sp, 164 /* a0 -> [(local5)] */ # 28: 026129
|
||||
s32i a13, sp, 172 /* a13 -> [(local7)] */ # 2b: d2612b
|
||||
s32i a12, sp, 168 /* a12 -> [(local6)] */ # 2e: c2612a
|
||||
s32i a14, sp, 176 /* a14 -> [(local8)] */ # 31: e2612c
|
||||
mov a12, a5 /* arg3 */ # 34: cd05
|
||||
mov a14, a4 /* arg2 */ # 36: ed04
|
||||
mov a13, a6 /* arg4 */ # 38: dd06
|
||||
movi a0, 196 /* 0x000000c4 */ # 3a: 02a0c4
|
||||
add a0, sp, a0 /* (local11) */ # 3d: 0a01
|
||||
movi a6, 192 /* 0x000000c0 */ # 3f: 62a0c0
|
||||
add a6, sp, a6 /* (local10) */ # 42: 6a61
|
||||
bltui a4, 6, .Lbr001 # 44: b66402
|
||||
j .Lbr006 # 47: 062600
|
||||
.Lbr001: s32i a7, sp, 160 /* arg5 -> [(local4)] */ # 4a: 726128
|
||||
movi a2, 64 /* 0x00000040 */ # 4d: 4c02
|
||||
bgeu a2, a3, .Lbr002 # 4f: 37b218
|
||||
mov a3, a6 /* (local10) */ # 52: 3d06
|
||||
movi a2, 1 /* 0x00000001 */ # 54: 0c12
|
||||
mov a5, sp /* (FP)-0xe0 */ # 56: 5d01
|
||||
mov a4, a0 /* (local11) */ # 58: 4d00
|
||||
call0 sdk_sha1_vector # 5a: 01e9ffc0
|
||||
# 5e: 0000
|
||||
bnez a2, .Lbr006 # 60: 56f207
|
||||
s32i sp, sp, 192 /* (FP)-0xe0 -> [(local10)] */ # 63: 126130
|
||||
movi a6, 20 /* 0x00000014 */ # 66: 1c46
|
||||
s32i a6, sp, 196 /* 0x00000014 -> [(local11)] */ # 68: 626131
|
||||
.Lbr002: addi a2, sp, 32 /* (FP)-0xc0 */ # 6b: 22c120
|
||||
movi a3, 0 /* 0x00000000 */ # 6e: 0c03
|
||||
movi a4, 64 /* 0x00000040 */ # 70: 4c04
|
||||
call0 memset # 72: 01e4ffc0
|
||||
# 76: 0000
|
||||
l32i a3, sp, 192 /* [(local10)] */ # 78: 322130
|
||||
l32i a4, sp, 196 /* [(local11)] */ # 7b: 422131
|
||||
addi a2, sp, 32 /* (FP)-0xc0 */ # 7e: 22c120
|
||||
s32i a14, sp, 180 /* arg2 -> [(local9)] */ # 81: e2612d
|
||||
call0 memcpy # 84: 01e1ffc0
|
||||
# 88: 0000
|
||||
l32i a4, sp, 180 /* [(local9)] */ # 8a: 42212d
|
||||
addi a0, sp, 32 /* (FP)-0xc0 */ # 8d: 02c120
|
||||
addi a14, sp, 96 /* (local0) */ # 90: e2c160
|
||||
movi a2, 54 /* 0x00000036 */ # 93: 3c62
|
||||
movi a6, 64 /* 0x00000040 */ # 95: 4c06
|
||||
s32i a6, sp, 128 /* 0x00000040 -> [(local2)] */ # 97: 626120
|
||||
addi a6, sp, 32 /* (FP)-0xc0 */ # 9a: 62c120
|
||||
s32i a6, sp, 96 /* (FP)-0xc0 -> [(local0)] */ # 9d: 626118
|
||||
.Lbr003: l8ui a5, a0, 0 # a0: 520000
|
||||
xor a5, a5, a2 # a3: 205530
|
||||
s8i a5, a0, 0 # a6: 524000
|
||||
addi a0, a0, 1 # a9: 1b00
|
||||
bne a0, a14, .Lbr003 # ab: e790f1
|
||||
beqz a4, .Lbr005 # ae: 9cc4
|
||||
addi a2, sp, 96 /* (local0) */ # b0: 22c160
|
||||
addx4 a3, a4, a12 # b3: c034a0
|
||||
addi a0, sp, 127 /* (FP)-0x61 */ # b6: 02c17f
|
||||
addi a0, a0, 1 /* (local2) */ # b9: 1b00
|
||||
.Lbr004: l32i a5, a13, 0 # bb: 580d
|
||||
l32i a6, a12, 0 # bd: 680c
|
||||
addi a13, a13, 4 # bf: 4bdd
|
||||
addi a12, a12, 4 # c1: 4bcc
|
||||
s32i a6, a2, 4 # c3: 6912
|
||||
s32i a5, a0, 4 # c5: 5910
|
||||
addi a2, a2, 4 # c7: 4b22
|
||||
addi a0, a0, 4 # c9: 4b00
|
||||
bne a12, a3, .Lbr004 # cb: 379cec
|
||||
.Lbr005: addi a3, sp, 96 /* (local0) */ # ce: 32c160
|
||||
addi a2, a4, 1 /* [(local9)]+0x1 */ # d1: 1b24
|
||||
l32i a5, sp, 160 /* [(local4)] */ # d3: 522128
|
||||
addi a4, sp, 127 /* (FP)-0x61 */ # d6: 42c17f
|
||||
addi a4, a4, 1 /* (local2) */ # d9: 1b44
|
||||
call0 sdk_sha1_vector # db: 01ccffc0
|
||||
# df: 0000
|
||||
beqz a2, .Lbr007 # e1: 8c32
|
||||
.Lbr006: movi a2, -1 /* 0xffffffff */ # e3: 7cf2
|
||||
j .Lbr009 # e5: 061500
|
||||
.Lbr007: addi a2, sp, 32 /* (FP)-0xc0 */ # e8: 22c120
|
||||
movi a3, 0 /* 0x00000000 */ # eb: 0c03
|
||||
movi a4, 64 /* 0x00000040 */ # ed: 4c04
|
||||
call0 memset # ef: 01c8ffc0
|
||||
# f3: 0000
|
||||
l32i a3, sp, 192 /* [(local10)] */ # f5: 322130
|
||||
l32i a4, sp, 196 /* [(local11)] */ # f8: 422131
|
||||
addi a2, sp, 32 /* (FP)-0xc0 */ # fb: 22c120
|
||||
call0 memcpy # fe: 01c5ffc0
|
||||
# 102: 0000
|
||||
addi a0, sp, 32 /* (FP)-0xc0 */ # 104: 02c120
|
||||
movi a2, 92 /* 0x0000005c */ # 107: 5cc2
|
||||
.Lbr008: l8ui a5, a0, 0 # 109: 520000
|
||||
xor a5, a5, a2 # 10c: 205530
|
||||
s8i a5, a0, 0 # 10f: 524000
|
||||
addi a0, a0, 1 # 112: 1b00
|
||||
bne a0, a14, .Lbr008 # 114: e790f1
|
||||
movi a2, 2 /* 0x00000002 */ # 117: 0c22
|
||||
addi a3, sp, 96 /* (local0) */ # 119: 32c160
|
||||
addi a4, sp, 127 /* (FP)-0x61 */ # 11c: 42c17f
|
||||
movi a6, 20 /* 0x00000014 */ # 11f: 1c46
|
||||
l32i a5, sp, 160 /* [(local4)] */ # 121: 522128
|
||||
movi a7, 64 /* 0x00000040 */ # 124: 4c07
|
||||
addi a8, sp, 32 /* (FP)-0xc0 */ # 126: 82c120
|
||||
s32i a8, sp, 96 /* (FP)-0xc0 -> [(local0)] */ # 129: 826118
|
||||
s32i a7, sp, 128 /* 0x00000040 -> [(local2)] */ # 12c: 726120
|
||||
s32i a5, sp, 100 /* [(local4)] -> [(local1)] */ # 12f: 526119
|
||||
s32i a6, sp, 132 /* 0x00000014 -> [(local3)] */ # 132: 626121
|
||||
addi a4, a4, 1 /* (local2) */ # 135: 1b44
|
||||
call0 sdk_sha1_vector # 137: 01b8ffc0
|
||||
# 13b: 0000
|
||||
.Lbr009: l32i a12, sp, 168 /* [(local6)] */ # 13d: c2212a
|
||||
l32i a13, sp, 172 /* [(local7)] */ # 140: d2212b
|
||||
l32i a14, sp, 176 /* [(local8)] */ # 143: e2212c
|
||||
movi a3, 224 /* 0x000000e0 */ # 146: 32a0e0
|
||||
l32i a0, sp, 164 /* [(local5)] */ # 149: 022129
|
||||
add sp, sp, a3 /* (top of frame) */ # 14c: 3a11
|
||||
ret # 14e: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x150
|
||||
# Local variables/stack:
|
||||
# (local0): word[6] @ -0x30
|
||||
# (local1): word @ -0x18
|
||||
# (local2): word[5] @ -0x14
|
||||
.global sdk_hmac_sha1
|
||||
.type sdk_hmac_sha1, @function
|
||||
sdk_hmac_sha1:
|
||||
mov a7, a6 /* arg4 */ # 150: 7d06
|
||||
mov a9, a5 /* arg3 */ # 152: 9d05
|
||||
addi sp, sp, -48 /* (local0) */ # 154: 12c1d0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 157: 0901
|
||||
s32i a4, sp, 24 /* arg2 -> [(local1)] */ # 159: 4961
|
||||
addi a5, sp, 24 /* (local1) */ # 15b: 52c118
|
||||
addi a6, sp, 28 /* (local2) */ # 15e: 62c11c
|
||||
s32i a9, sp, 28 /* arg3 -> [(local2)] */ # 161: 9971
|
||||
movi a4, 1 /* 0x00000001 */ # 163: 0c14
|
||||
call0 sdk_hmac_sha1_vector # 165: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 168: 0801
|
||||
addi sp, sp, 48 /* (top of frame) */ # 16a: 12c130
|
||||
ret # 16d: 0df0
|
||||
|
||||
.literal_position # 170: 00000000
|
||||
# 174: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x178
|
||||
# Local variables/stack:
|
||||
# (local0): byte[16] @ -0x80
|
||||
# (local1): word @ -0x70
|
||||
# (local2): word @ -0x6c
|
||||
# (local3): word[2] @ -0x68
|
||||
# (local4): word @ -0x60
|
||||
# (local5): word @ -0x5c
|
||||
# (local6): word[10] @ -0x58
|
||||
# (local7): word @ -0x30
|
||||
# (local8): word @ -0x2c
|
||||
# (local9): word @ -0x28
|
||||
# (local10): word @ -0x24
|
||||
# (local11): word @ -0x20
|
||||
# (local12): word @ -0x1c
|
||||
# (local13): word @ -0x18
|
||||
# (local14): word @ -0x14
|
||||
# (local15): word[4] @ -0x10
|
||||
.global sdk_sha1_prf
|
||||
.type sdk_sha1_prf, @function
|
||||
sdk_sha1_prf:
|
||||
addi sp, sp, -128 /* (local0) */ # 178: 12c180
|
||||
s32i a5, sp, 88 /* arg3 -> [(local9)] */ # 17b: 526116
|
||||
s32i a7, sp, 84 /* arg5 -> [(local8)] */ # 17e: 726115
|
||||
s32i a15, sp, 108 /* a15 -> [(local14)] */ # 181: f2611b
|
||||
s32i a0, sp, 92 /* a0 -> [(local10)] */ # 184: 026117
|
||||
s32i a12, sp, 96 /* a12 -> [(local11)] */ # 187: c26118
|
||||
s32i a2, sp, 112 /* arg0 -> [(local15)] */ # 18a: 22611c
|
||||
s32i a13, sp, 100 /* a13 -> [(local12)] */ # 18d: d26119
|
||||
s32i a14, sp, 104 /* a14 -> [(local13)] */ # 190: e2611a
|
||||
mov a13, a6 /* arg4 */ # 193: dd06
|
||||
mov a14, a3 /* arg1 */ # 195: ed03
|
||||
mov a2, a4 /* arg2 */ # 197: 2d04
|
||||
mov a12, a4 /* arg2 */ # 199: cd04
|
||||
movi a0, 0 /* 0x00000000 */ # 19b: 0c00
|
||||
l32i a15, sp, 112 /* [(local15)] */ # 19d: f2211c
|
||||
s8i a0, sp, 0 /* 0x00 -> [(local0)] */ # 1a0: 024100
|
||||
call0 strlen # 1a3: 01f3ffc0
|
||||
# 1a7: 0000
|
||||
s32i sp, sp, 24 /* (local0) -> [(local3)] */ # 1a9: 1961
|
||||
s32i a12, sp, 16 /* arg2 -> [(local1)] */ # 1ab: c941
|
||||
s32i a13, sp, 36 /* arg4 -> [(local5)] */ # 1ad: d991
|
||||
addi a2, a2, 1 # 1af: 1b22
|
||||
l32i a3, sp, 88 /* [(local9)] */ # 1b1: 322116
|
||||
s32i a3, sp, 20 /* [(local9)] -> [(local2)] */ # 1b4: 3951
|
||||
s32i a2, sp, 32 /* a2 -> [(local4)] */ # 1b6: 2981
|
||||
l32i a13, sp, 128 /* [(local16)] */ # 1b8: d22120
|
||||
movi a2, 1 /* 0x00000001 */ # 1bb: 0c12
|
||||
s32i a2, sp, 40 /* 0x00000001 -> [(local6)] */ # 1bd: 29a1
|
||||
beqz a13, .Lbr014 # 1bf: 16fd05
|
||||
movi a0, 19 /* 0x00000013 */ # 1c2: 1c30
|
||||
movi a12, 0 /* 0x00000000 */ # 1c4: 0c0c
|
||||
.Lbr010: sub a4, a13, a12 # 1c6: c04dc0
|
||||
s32i a4, sp, 80 /* a4 -> [(local7)] */ # 1c9: 426114
|
||||
bgeu a0, a4, .Lbr011 # 1cc: 47b028
|
||||
mov a2, a15 /* [(local15)] */ # 1cf: 2d0f
|
||||
mov a3, a14 /* arg1 */ # 1d1: 3d0e
|
||||
movi a4, 3 /* 0x00000003 */ # 1d3: 0c34
|
||||
addi a5, sp, 16 /* (local1) */ # 1d5: 52c110
|
||||
l32i a7, sp, 84 /* [(local8)] */ # 1d8: 722115
|
||||
addi a6, sp, 32 /* (local4) */ # 1db: 62c120
|
||||
add a7, a7, a12 # 1de: ca77
|
||||
call0 sdk_hmac_sha1_vector # 1e0: 050000
|
||||
bnez a2, .Lbr012 # 1e3: ec52
|
||||
movi a0, 19 /* 0x00000013 */ # 1e5: 1c30
|
||||
l8ui a8, sp, 0 /* [(local0)] */ # 1e7: 820100
|
||||
addi a12, a12, 20 # 1ea: c2cc14
|
||||
addi a8, a8, 1 /* [(local0)]+0x1 */ # 1ed: 1b88
|
||||
s8i a8, sp, 0 /* [(local0)]+0x1 -> [(local0)] */ # 1ef: 824100
|
||||
bltu a12, a13, .Lbr010 # 1f2: d73cd0
|
||||
j .Lbr014 # 1f5: 460a00
|
||||
.Lbr011: mov a3, a14 /* arg1 */ # 1f8: 3d0e
|
||||
mov a2, a15 /* [(local15)] */ # 1fa: 2d0f
|
||||
movi a4, 3 /* 0x00000003 */ # 1fc: 0c34
|
||||
addi a5, sp, 16 /* (local1) */ # 1fe: 52c110
|
||||
addi a6, sp, 32 /* (local4) */ # 201: 62c120
|
||||
addi a7, sp, 48 /* (FP)-0x50 */ # 204: 72c130
|
||||
call0 sdk_hmac_sha1_vector # 207: 050000
|
||||
beqz a2, .Lbr013 # 20a: 8c32
|
||||
.Lbr012: movi a2, -1 /* 0xffffffff */ # 20c: 7cf2
|
||||
j .Lbr015 # 20e: 860400
|
||||
.Lbr013: addi a3, sp, 48 /* (FP)-0x50 */ # 211: 32c130
|
||||
l32i a2, sp, 84 /* [(local8)] */ # 214: 222115
|
||||
l32i a4, sp, 80 /* [(local7)] */ # 217: 422114
|
||||
add a2, a2, a12 # 21a: ca22
|
||||
call0 memcpy # 21c: 01d6ffc0
|
||||
# 220: 0000
|
||||
.Lbr014: movi a2, 0 /* 0x00000000 */ # 222: 0c02
|
||||
.Lbr015: l32i a12, sp, 96 /* [(local11)] */ # 224: c22118
|
||||
l32i a13, sp, 100 /* [(local12)] */ # 227: d22119
|
||||
l32i a14, sp, 104 /* [(local13)] */ # 22a: e2211a
|
||||
l32i a15, sp, 108 /* [(local14)] */ # 22d: f2211b
|
||||
movi a3, 128 /* 0x00000080 */ # 230: 32a080
|
||||
l32i a0, sp, 92 /* [(local10)] */ # 233: 022117
|
||||
add sp, sp, a3 /* (local16) */ # 236: 3a11
|
||||
ret # 238: 0df0
|
0
binary_sdk/libwpa/sta_info.S
Normal file
0
binary_sdk/libwpa/sta_info.S
Normal file
2653
binary_sdk/libwpa/wpa.S
Normal file
2653
binary_sdk/libwpa/wpa.S
Normal file
File diff suppressed because it is too large
Load diff
3524
binary_sdk/libwpa/wpa_auth.S
Normal file
3524
binary_sdk/libwpa/wpa_auth.S
Normal file
File diff suppressed because it is too large
Load diff
BIN
binary_sdk/libwpa/wpa_auth.o
Normal file
BIN
binary_sdk/libwpa/wpa_auth.o
Normal file
Binary file not shown.
658
binary_sdk/libwpa/wpa_auth_ie.S
Normal file
658
binary_sdk/libwpa/wpa_auth_ie.S
Normal file
|
@ -0,0 +1,658 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.Lfunc001: movi a4, -35 /* 0xffffffdd */ # 8: 42afdd
|
||||
movi a5, 0 /* 0x00000000 */ # b: 0c05
|
||||
addi sp, sp, -16 /* (local0) */ # d: 12c1f0
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 10: d921
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 12: 0901
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 14: c911
|
||||
movi a0, 80 /* 0x00000050 */ # 16: 5c00
|
||||
mov a12, a3 /* arg1 */ # 18: cd03
|
||||
s8i a5, a3, 7 /* 0x00 -> [arg1+0x7] */ # 1a: 524307
|
||||
s8i a5, a3, 2 /* 0x00 -> [arg1+0x2] */ # 1d: 524302
|
||||
mov a13, a2 /* arg0 */ # 20: dd02
|
||||
s8i a4, a3, 0 /* 0xdd -> [arg1] */ # 22: 424300
|
||||
movi a2, 1 /* 0x00000001 */ # 25: 0c12
|
||||
s8i a2, a3, 6 /* 0x01 -> [arg1+0x6] */ # 27: 224306
|
||||
s8i a2, a3, 5 /* 0x01 -> [arg1+0x5] */ # 2a: 224305
|
||||
movi a3, -14 /* 0xfffffff2 */ # 2d: 7c23
|
||||
s8i a0, a12, 3 /* 0x50 -> [arg1+0x3] */ # 2f: 024c03
|
||||
s8i a3, a12, 4 /* 0xf2 -> [arg1+0x4] */ # 32: 324c04
|
||||
l32i a3, a13, 12 /* [arg0+0xc] */ # 35: 383d
|
||||
call0 sdk_wpa_cipher_to_suite # 37: 01f2ffc0
|
||||
# 3b: 0000
|
||||
beqz a2, .Lbr005 # 3d: 169208
|
||||
s8i a2, a12, 11 /* a2 -> [arg1+0xb] */ # 40: 224c0b
|
||||
extui a6, a2, 24, 8 # 43: 206875
|
||||
extui a7, a2, 16, 16 # 46: 2070f5
|
||||
srli a8, a2, 8 # 49: 208841
|
||||
s8i a8, a12, 10 /* a8 -> [arg1+0xa] */ # 4c: 824c0a
|
||||
s8i a7, a12, 9 /* a7 -> [arg1+0x9] */ # 4f: 724c09
|
||||
s8i a6, a12, 8 /* a6 -> [arg1+0x8] */ # 52: 624c08
|
||||
addi a2, a12, 14 /* arg1+0xe */ # 55: eb2c
|
||||
l32i a3, a13, 8 /* [arg0+0x8] */ # 57: 382d
|
||||
call0 sdk_wpa_cipher_put_suites # 59: 01eaffc0
|
||||
# 5d: 0000
|
||||
movi a0, 80 /* 0x00000050 */ # 5f: 5c00
|
||||
movi a3, -14 /* 0xfffffff2 */ # 61: 7c23
|
||||
movi a5, 0 /* 0x00000000 */ # 63: 0c05
|
||||
beqz a2, .Lbr005 # 65: 161206
|
||||
s8i a2, a12, 12 /* a2 -> [arg1+0xc] */ # 68: 224c0c
|
||||
srli a9, a2, 8 # 6b: 209841
|
||||
addx4 a8, a2, a12 # 6e: c082a0
|
||||
addi a6, a8, 16 # 71: 62c810
|
||||
s8i a9, a12, 13 /* a9 -> [arg1+0xd] */ # 74: 924c0d
|
||||
l32i a7, a13, 4 /* [arg0+0x4] */ # 77: 781d
|
||||
movi a9, 2 /* 0x00000002 */ # 79: 0c29
|
||||
bbci a7, 0, .Lbr001 # 7b: 076717
|
||||
movi a2, 1 /* 0x00000001 */ # 7e: 0c12
|
||||
addi a6, a8, 20 # 80: 62c814
|
||||
s8i a3, a8, 18 # 83: 324812
|
||||
s8i a0, a8, 17 # 86: 024811
|
||||
s8i a5, a8, 16 # 89: 524810
|
||||
movi a10, 1 /* 0x00000001 */ # 8c: 0c1a
|
||||
s8i a10, a8, 19 # 8e: a24813
|
||||
l32i a7, a13, 4 /* [arg0+0x4] */ # 91: 781d
|
||||
j .Lbr002 # 93: 460000
|
||||
.Lbr001: movi a2, 0 /* 0x00000000 */ # 96: 0c02
|
||||
.Lbr002: bbci a7, 1, .Lbr003 # 98: 17670f
|
||||
addi a2, a2, 1 # 9b: 1b22
|
||||
s8i a5, a6, 0 # 9d: 524600
|
||||
s8i a0, a6, 1 # a0: 024601
|
||||
s8i a3, a6, 2 # a3: 324602
|
||||
s8i a9, a6, 3 # a6: 924603
|
||||
addi a6, a6, 4 # a9: 4b66
|
||||
.Lbr003: beqz a2, .Lbr005 # ab: 9cb2
|
||||
s8i a2, a8, 14 # ad: 22480e
|
||||
srli a13, a2, 8 # b0: 20d841
|
||||
s8i a13, a8, 15 # b3: d2480f
|
||||
sub a2, a6, a12 # b6: c026c0
|
||||
addi a11, a2, -2 # b9: b2c2fe
|
||||
s8i a11, a12, 1 /* a11 -> [arg1+0x1] */ # bc: b24c01
|
||||
.Lbr004: l32i a12, sp, 4 /* [(local1)] */ # bf: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # c1: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # c3: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # c5: 12c110
|
||||
ret # c8: 0df0
|
||||
.Lbr005: movi a2, -1 /* 0xffffffff */ # ca: 7cf2
|
||||
j .Lbr004 # cc: c6fbff
|
||||
|
||||
.literal_position # d0: 00000000
|
||||
# d4: 00000000
|
||||
# d8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xdc
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_wpa_write_rsn_ie
|
||||
.type sdk_wpa_write_rsn_ie, @function
|
||||
sdk_wpa_write_rsn_ie:
|
||||
addi sp, sp, -32 /* (local0) */ # dc: 12c1e0
|
||||
s32i a4, sp, 0 /* arg2 -> [(local0)] */ # df: 4901
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # e1: c921
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # e3: d931
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # e5: e941
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # e7: 0911
|
||||
mov a14, a5 /* arg3 */ # e9: ed05
|
||||
movi a0, 0 /* 0x00000000 */ # eb: 0c00
|
||||
mov a13, a3 /* arg1 */ # ed: dd03
|
||||
mov a12, a2 /* arg0 */ # ef: cd02
|
||||
movi a3, 48 /* 0x00000030 */ # f1: 3c03
|
||||
movi a2, 1 /* 0x00000001 */ # f3: 0c12
|
||||
s8i a0, a13, 3 /* 0x00 -> [arg1+0x3] */ # f5: 024d03
|
||||
s8i a2, a13, 2 /* 0x01 -> [arg1+0x2] */ # f8: 224d02
|
||||
s8i a3, a13, 0 /* 0x30 -> [arg1] */ # fb: 324d00
|
||||
movi a2, 2 /* 0x00000002 */ # fe: 0c22
|
||||
l32i a3, a12, 12 /* [arg0+0xc] */ # 100: 383c
|
||||
call0 sdk_wpa_cipher_to_suite # 102: 01f3ffc0
|
||||
# 106: 0000
|
||||
beqz a2, .Lbr011 # 108: 16520d
|
||||
s8i a2, a13, 7 /* a2 -> [arg1+0x7] */ # 10b: 224d07
|
||||
extui a4, a2, 24, 8 # 10e: 204875
|
||||
extui a5, a2, 16, 16 # 111: 2050f5
|
||||
srli a6, a2, 8 # 114: 206841
|
||||
s8i a6, a13, 6 /* a6 -> [arg1+0x6] */ # 117: 624d06
|
||||
s8i a5, a13, 5 /* a5 -> [arg1+0x5] */ # 11a: 524d05
|
||||
s8i a4, a13, 4 /* a4 -> [arg1+0x4] */ # 11d: 424d04
|
||||
addi a2, a13, 10 /* arg1+0xa */ # 120: ab2d
|
||||
l32i a3, a12, 32 /* [arg0+0x20] */ # 122: 388c
|
||||
call0 sdk_rsn_cipher_put_suites # 124: 01ecffc0
|
||||
# 128: 0000
|
||||
movi a0, 0 /* 0x00000000 */ # 12a: 0c00
|
||||
movi a10, 1 /* 0x00000001 */ # 12c: 0c1a
|
||||
beqz a2, .Lbr011 # 12e: 16f20a
|
||||
movi a8, -84 /* 0xffffffac */ # 131: 82afac
|
||||
movi a9, 15 /* 0x0000000f */ # 134: 0cf9
|
||||
movi a11, 2 /* 0x00000002 */ # 136: 0c2b
|
||||
addx4 a5, a2, a13 # 138: d052a0
|
||||
s8i a2, a13, 8 /* a2 -> [arg1+0x8] */ # 13b: 224d08
|
||||
srli a7, a2, 8 # 13e: 207841
|
||||
s8i a7, a13, 9 /* a7 -> [arg1+0x9] */ # 141: 724d09
|
||||
l32i a7, a12, 4 /* [arg0+0x4] */ # 144: 781c
|
||||
addi a2, a5, 12 # 146: cb25
|
||||
bbci a7, 0, .Lbr006 # 148: 076715
|
||||
movi a3, 1 /* 0x00000001 */ # 14b: 0c13
|
||||
addi a2, a5, 16 # 14d: 22c510
|
||||
s8i a0, a5, 12 # 150: 02450c
|
||||
s8i a9, a5, 13 # 153: 92450d
|
||||
s8i a8, a5, 14 # 156: 82450e
|
||||
s8i a10, a5, 15 # 159: a2450f
|
||||
l32i a7, a12, 4 /* [arg0+0x4] */ # 15c: 781c
|
||||
j .Lbr007 # 15e: 460000
|
||||
.Lbr006: movi a3, 0 /* 0x00000000 */ # 161: 0c03
|
||||
.Lbr007: bbci a7, 1, .Lbr008 # 163: 17670f
|
||||
addi a3, a3, 1 # 166: 1b33
|
||||
s8i a9, a2, 1 # 168: 924201
|
||||
s8i a8, a2, 2 # 16b: 824202
|
||||
s8i a11, a2, 3 # 16e: b24203
|
||||
s8i a0, a2, 0 # 171: 024200
|
||||
addi a2, a2, 4 # 174: 4b22
|
||||
.Lbr008: beqz a3, .Lbr011 # 176: 167306
|
||||
movi a9, 12 /* 0x0000000c */ # 179: 0cc9
|
||||
movi a4, 0 /* 0x00000000 */ # 17b: 0c04
|
||||
movi a8, 1 /* 0x00000001 */ # 17d: 0c18
|
||||
s8i a3, a5, 10 # 17f: 32450a
|
||||
srli a7, a3, 8 # 182: 307841
|
||||
s8i a7, a5, 11 # 185: 72450b
|
||||
l32i a6, a12, 36 /* [arg0+0x24] */ # 188: 689c
|
||||
movi a11, 512 /* 0x00000200 */ # 18a: b2a200
|
||||
moveqz a8, a4, a6 # 18d: 608483
|
||||
l32i a4, a12, 44 /* [arg0+0x2c] */ # 190: 48bc
|
||||
or a11, a8, a11 # 192: b0b820
|
||||
movnez a8, a11, a4 # 195: 408b93
|
||||
l32i a11, a12, 48 /* [arg0+0x30] */ # 198: b8cc
|
||||
or a9, a8, a9 # 19a: 909820
|
||||
movnez a8, a9, a11 # 19d: b08993
|
||||
s8i a8, a2, 0 # 1a0: 824200
|
||||
srli a8, a8, 8 # 1a3: 808841
|
||||
s8i a8, a2, 1 # 1a6: 824201
|
||||
addi a2, a2, 2 # 1a9: 2b22
|
||||
beqz a14, .Lbr009 # 1ab: 9cce
|
||||
l32i a8, sp, 0 /* [(local0)] */ # 1ad: 8801
|
||||
addi a12, a2, 18 # 1af: c2c212
|
||||
add a8, a13, a8 # 1b2: 8a8d
|
||||
bltu a8, a12, .Lbr011 # 1b4: c73829
|
||||
mov a3, a14 /* arg3 */ # 1b7: 3d0e
|
||||
s8i a0, a2, 1 # 1b9: 024201
|
||||
s8i a10, a2, 0 # 1bc: a24200
|
||||
movi a4, 16 /* 0x00000010 */ # 1bf: 1c04
|
||||
addi a2, a2, 2 # 1c1: 2b22
|
||||
call0 memcpy # 1c3: 01c5ffc0
|
||||
# 1c7: 0000
|
||||
mov a2, a12 # 1c9: 2d0c
|
||||
.Lbr009: sub a2, a2, a13 # 1cb: d022c0
|
||||
addi a9, a2, -2 # 1ce: 92c2fe
|
||||
s8i a9, a13, 1 /* a9 -> [arg1+0x1] */ # 1d1: 924d01
|
||||
.Lbr010: l32i a12, sp, 8 /* [(local2)] */ # 1d4: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 1d6: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 1d8: e841
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 1da: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 1dc: 12c120
|
||||
ret # 1df: 0df0
|
||||
.Lbr011: movi a2, -1 /* 0xffffffff */ # 1e1: 7cf2
|
||||
j .Lbr010 # 1e3: 46fbff
|
||||
|
||||
.literal_position # 1e8: 00000000
|
||||
# 1ec: 00000000
|
||||
# 1f0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1f4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_wpa_auth_gen_wpa_ie
|
||||
.type sdk_wpa_auth_gen_wpa_ie, @function
|
||||
sdk_wpa_auth_gen_wpa_ie:
|
||||
movi a3, 144 /* 0x00000090 */ # 1f4: 32a090
|
||||
sub sp, sp, a3 /* (FP)-0x90 */ # 1f7: 3011c0
|
||||
s32i a12, sp, 132 /* a12 -> [(local1)] */ # 1fa: c26121
|
||||
s32i a0, sp, 128 /* a0 -> [(local0)] */ # 1fd: 026120
|
||||
mov a12, a2 /* arg0 */ # 200: cd02
|
||||
l32i a2, a2, 4 /* [arg0+0x4] */ # 202: 2812
|
||||
s32i a13, sp, 136 /* a13 -> [(local2)] */ # 204: d26122
|
||||
bbci a2, 1, .Lbr012 # 207: 176215
|
||||
addi a2, a12, 4 /* arg0+0x4 */ # 20a: 4b2c
|
||||
mov a3, sp /* (FP)-0x90 */ # 20c: 3d01
|
||||
movi a4, 128 /* 0x00000080 */ # 20e: 42a080
|
||||
movi a5, 0 /* 0x00000000 */ # 211: 0c05
|
||||
call0 sdk_wpa_write_rsn_ie # 213: 050000
|
||||
bltz a2, .Lbr016 # 216: 96c204
|
||||
add a13, a2, sp # 219: 1ad2
|
||||
l32i a2, a12, 4 /* [arg0+0x4] */ # 21b: 281c
|
||||
j .Lbr013 # 21d: 460000
|
||||
.Lbr012: mov a13, sp /* (FP)-0x90 */ # 220: dd01
|
||||
.Lbr013: bbci a2, 0, .Lbr014 # 222: 076213
|
||||
addi a2, a12, 4 /* arg0+0x4 */ # 225: 4b2c
|
||||
mov a3, a13 # 227: 3d0d
|
||||
movi a5, 128 /* 0x00000080 */ # 229: 52a080
|
||||
sub a4, sp, a13 # 22c: d041c0
|
||||
add a4, a4, a5 # 22f: 5a44
|
||||
call0 .Lfunc001 # 231: 45ddff
|
||||
bltz a2, .Lbr016 # 234: 96e202
|
||||
add a13, a2, a13 # 237: dad2
|
||||
.Lbr014: l32i a2, a12, 80 /* [arg0+0x50] */ # 239: 222c14
|
||||
call0 free # 23c: 01ebffc0
|
||||
# 240: 0000
|
||||
sub a13, a13, sp # 242: 10ddc0
|
||||
mov a2, a13 # 245: 2d0d
|
||||
call0 malloc # 247: 01e9ffc0
|
||||
# 24b: 0000
|
||||
s32i a2, a12, 80 /* a2 -> [arg0+0x50] */ # 24d: 226c14
|
||||
bnez a2, .Lbr015 # 250: cc32
|
||||
movi a2, -1 /* 0xffffffff */ # 252: 7cf2
|
||||
j .Lbr016 # 254: 860300
|
||||
.Lbr015: mov a3, sp /* (FP)-0x90 */ # 257: 3d01
|
||||
mov a4, a13 # 259: 4d0d
|
||||
call0 memcpy # 25b: 01e5ffc0
|
||||
# 25f: 0000
|
||||
s32i a13, a12, 84 /* a13 -> [arg0+0x54] */ # 261: d26c15
|
||||
movi a2, 0 /* 0x00000000 */ # 264: 0c02
|
||||
.Lbr016: l32i a12, sp, 132 /* [(local1)] */ # 266: c22121
|
||||
l32i a13, sp, 136 /* [(local2)] */ # 269: d22122
|
||||
movi a3, 144 /* 0x00000090 */ # 26c: 32a090
|
||||
l32i a0, sp, 128 /* [(local0)] */ # 26f: 022120
|
||||
add sp, sp, a3 /* (top of frame) */ # 272: 3a11
|
||||
ret # 274: 0df0
|
||||
|
||||
.literal_position # 278: 00000000
|
||||
# 27c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x280
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_wpa_add_kde
|
||||
.type sdk_wpa_add_kde, @function
|
||||
sdk_wpa_add_kde:
|
||||
addi sp, sp, -32 /* (local0) */ # 280: 12c1e0
|
||||
s32i a6, sp, 20 /* arg4 -> [(local5)] */ # 283: 6951
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 285: 0901
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 287: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 289: c911
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 28b: f941
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 28d: e931
|
||||
mov a15, a6 /* arg4 */ # 28f: fd06
|
||||
mov a14, a5 /* arg3 */ # 291: ed05
|
||||
mov a12, a2 /* arg0 */ # 293: cd02
|
||||
mov a13, a7 /* arg5 */ # 295: dd07
|
||||
mov a2, a3 /* arg1 */ # 297: 2d03
|
||||
movi a7, -35 /* 0xffffffdd */ # 299: 72afdd
|
||||
s8i a7, a12, 0 /* 0xdd -> [arg0] */ # 29c: 724c00
|
||||
s8i a2, a12, 5 /* arg1 -> [arg0+0x5] */ # 29f: 224c05
|
||||
mov a3, a4 /* arg2 */ # 2a2: 3d04
|
||||
add a0, a14, a13 # 2a4: da0e
|
||||
extui a5, a2, 16, 16 # 2a6: 2050f5
|
||||
extui a6, a2, 24, 8 # 2a9: 206875
|
||||
s8i a6, a12, 2 /* a6 -> [arg0+0x2] */ # 2ac: 624c02
|
||||
s8i a5, a12, 3 /* a5 -> [arg0+0x3] */ # 2af: 524c03
|
||||
addi a0, a0, 4 # 2b2: 4b00
|
||||
srli a4, a2, 8 # 2b4: 204841
|
||||
s8i a4, a12, 4 /* a4 -> [arg0+0x4] */ # 2b7: 424c04
|
||||
s8i a0, a12, 1 /* a0 -> [arg0+0x1] */ # 2ba: 024c01
|
||||
mov a4, a14 /* arg3 */ # 2bd: 4d0e
|
||||
addi a2, a12, 6 /* arg0+0x6 */ # 2bf: 6b2c
|
||||
call0 memcpy # 2c1: 01edffc0
|
||||
# 2c5: 0000
|
||||
add a12, a12, a14 # 2c7: eacc
|
||||
addi a12, a12, 6 # 2c9: 6bcc
|
||||
beqz a15, .Lbr017 # 2cb: 8ccf
|
||||
mov a3, a15 /* arg4 */ # 2cd: 3d0f
|
||||
mov a2, a12 # 2cf: 2d0c
|
||||
mov a4, a13 /* arg5 */ # 2d1: 4d0d
|
||||
call0 memcpy # 2d3: 01eaffc0
|
||||
# 2d7: 0000
|
||||
add a12, a12, a13 # 2d9: dacc
|
||||
.Lbr017: l32i a0, sp, 0 /* [(local0)] */ # 2db: 0801
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 2dd: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 2df: e831
|
||||
mov a2, a12 # 2e1: 2d0c
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 2e3: f841
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 2e5: c811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 2e7: 12c120
|
||||
ret # 2ea: 0df0
|
||||
|
||||
.literal_position # 2ec: 00000000
|
||||
# 2f0: 00000000
|
||||
# 2f4: 00000000
|
||||
# 2f8: 00000000
|
||||
# 2fc: 00000000
|
||||
# 300: 00000000
|
||||
# 304: 00000000
|
||||
# 308: 00000000
|
||||
# 30c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x310
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x3c
|
||||
# (local1): word @ -0x38
|
||||
# (local2): word[5] @ -0x34
|
||||
# (local3): word @ -0x20
|
||||
# (local4): word @ -0x1c
|
||||
# (local5): word @ -0x18
|
||||
# (local6): word @ -0x14
|
||||
# (local7): word @ -0x10
|
||||
# (local8): word @ -0xc
|
||||
# (local9): word @ -0x8
|
||||
# (local10): word @ -0x4
|
||||
.global sdk_wpa_validate_wpa_ie
|
||||
.type sdk_wpa_validate_wpa_ie, @function
|
||||
sdk_wpa_validate_wpa_ie:
|
||||
addi sp, sp, -64 /* (FP)-0x40 */ # 310: 12c1c0
|
||||
s32i a15, sp, 60 /* a15 -> [(local10)] */ # 313: f9f1
|
||||
s32i a0, sp, 44 /* a0 -> [(local6)] */ # 315: 09b1
|
||||
s32i a13, sp, 52 /* a13 -> [(local8)] */ # 317: d9d1
|
||||
s32i a12, sp, 48 /* a12 -> [(local7)] */ # 319: c9c1
|
||||
s32i a14, sp, 56 /* a14 -> [(local9)] */ # 31b: e9e1
|
||||
mov a12, a3 /* arg1 */ # 31d: cd03
|
||||
mov a14, a4 /* arg2 */ # 31f: ed04
|
||||
mov a13, a2 /* arg0 */ # 321: dd02
|
||||
mov a2, a5 /* arg3 */ # 323: 2d05
|
||||
beqz a13, .Lbr018 # 325: 9cdd
|
||||
beqz a3, .Lbr018 # 327: 9cb3
|
||||
beqz a4, .Lbr019 # 329: 9ce4
|
||||
beqz a5, .Lbr019 # 32b: 9cc5
|
||||
l32i a5, a13, 4 /* [arg0+0x4] */ # 32d: 581d
|
||||
movi a15, 2 /* 0x00000002 */ # 32f: 0c2f
|
||||
l8ui a6, a4, 0 /* [arg2] */ # 331: 620400
|
||||
movi a3, 1 /* 0x00000001 */ # 334: 0c13
|
||||
addi a6, a6, -48 /* [arg2]-0x30 */ # 336: 62c6d0
|
||||
moveqz a3, a15, a6 # 339: 603f83
|
||||
mov a0, a3 # 33c: 0d03
|
||||
bany a5, a3, .Lbr021 # 33e: 37851a
|
||||
movi a2, 10 /* 0x0000000a */ # 341: 0ca2
|
||||
j .Lbr020 # 343: 860100
|
||||
.Lbr018: movi a2, 5 /* 0x00000005 */ # 346: 0c52
|
||||
j .Lbr020 # 348: 460000
|
||||
.Lbr019: movi a2, 1 /* 0x00000001 */ # 34b: 0c12
|
||||
.Lbr020: l32i a12, sp, 48 /* [(local7)] */ # 34d: c8c1
|
||||
l32i a13, sp, 52 /* [(local8)] */ # 34f: d8d1
|
||||
l32i a14, sp, 56 /* [(local9)] */ # 351: e8e1
|
||||
l32i a15, sp, 60 /* [(local10)] */ # 353: f8f1
|
||||
l32i a0, sp, 44 /* [(local6)] */ # 355: 08b1
|
||||
addi sp, sp, 64 /* (top of frame) */ # 357: 12c140
|
||||
ret # 35a: 0df0
|
||||
.Lbr021: s32i a0, sp, 32 /* a0 -> [(local3)] */ # 35c: 0981
|
||||
s32i a2, sp, 40 /* arg3 -> [(local5)] */ # 35e: 29a1
|
||||
bnei a3, 2, .Lbr022 # 360: 662324
|
||||
mov a2, a4 /* arg2 */ # 363: 2d04
|
||||
l32i a3, sp, 40 /* [(local5)] */ # 365: 38a1
|
||||
mov a4, sp /* (FP)-0x40 */ # 367: 4d01
|
||||
call0 sdk_wpa_parse_wpa_ie_rsn # 369: 01e0ffc0
|
||||
# 36d: 0000
|
||||
s32i a2, sp, 36 /* a2 -> [(local4)] */ # 36f: 2991
|
||||
l32i a3, sp, 4 /* [(local0)] */ # 371: 3811
|
||||
movi a2, 2 /* 0x00000002 */ # 373: 0c22
|
||||
call0 sdk_wpa_cipher_to_suite # 375: 01deffc0
|
||||
# 379: 0000
|
||||
movi a2, 2 /* 0x00000002 */ # 37b: 0c22
|
||||
l32i a3, sp, 8 /* [(local1)] */ # 37d: 3821
|
||||
call0 sdk_wpa_cipher_to_suite # 37f: 01ddffc0
|
||||
# 383: 0000
|
||||
j .Lbr023 # 385: 460800
|
||||
.Lbr022: mov a2, a4 /* arg2 */ # 388: 2d04
|
||||
l32i a3, sp, 40 /* [(local5)] */ # 38a: 38a1
|
||||
mov a4, sp /* (FP)-0x40 */ # 38c: 4d01
|
||||
call0 sdk_wpa_parse_wpa_ie_wpa # 38e: 01daffc0
|
||||
# 392: 0000
|
||||
s32i a2, sp, 36 /* a2 -> [(local4)] */ # 394: 2991
|
||||
l32i a3, sp, 4 /* [(local0)] */ # 396: 3811
|
||||
movi a2, 1 /* 0x00000001 */ # 398: 0c12
|
||||
call0 sdk_wpa_cipher_to_suite # 39a: 01d8ffc0
|
||||
# 39e: 0000
|
||||
movi a2, 1 /* 0x00000001 */ # 3a0: 0c12
|
||||
l32i a3, sp, 8 /* [(local1)] */ # 3a2: 3821
|
||||
call0 sdk_wpa_cipher_to_suite # 3a4: 01d7ffc0
|
||||
# 3a8: 0000
|
||||
.Lbr023: l32i a7, sp, 36 /* [(local4)] */ # 3aa: 7891
|
||||
l32i a9, sp, 8 /* [(local1)] */ # 3ac: 9821
|
||||
bnez a7, .Lbr019 # 3ae: 5697f9
|
||||
l32i a8, a13, 16 /* [arg0+0x10] */ # 3b1: 884d
|
||||
l32i a11, sp, 12 /* [(local2)] */ # 3b3: b831
|
||||
beq a8, a9, .Lbr024 # 3b5: 971804
|
||||
movi a2, 2 /* 0x00000002 */ # 3b8: 0c22
|
||||
j .Lbr020 # 3ba: c6e3ff
|
||||
.Lbr024: l32i a10, a13, 8 /* [arg0+0x8] */ # 3bd: a82d
|
||||
and a0, a10, a11 # 3bf: b00a10
|
||||
bany a10, a11, .Lbr025 # 3c2: b78a04
|
||||
movi a2, 4 /* 0x00000004 */ # 3c5: 0c42
|
||||
j .Lbr020 # 3c7: 86e0ff
|
||||
.Lbr025: l32i a2, sp, 32 /* [(local3)] */ # 3ca: 2881
|
||||
bbci a0, 0, .Lbr026 # 3cc: 076007
|
||||
movi a0, 1 /* 0x00000001 */ # 3cf: 0c10
|
||||
s32i a0, a12, 0x194 /* 0x00000001 -> [arg1+0x194] */ # 3d1: 026c65
|
||||
j .Lbr027 # 3d4: 860000
|
||||
.Lbr026: s32i a15, a12, 0x194 /* 0x00000002 -> [arg1+0x194] */ # 3d7: f26c65
|
||||
.Lbr027: l32i a0, sp, 4 /* [(local0)] */ # 3da: 0811
|
||||
bnei a2, 2, .Lbr032 # 3dc: 662248
|
||||
l32i a9, a13, 36 /* [arg0+0x24] */ # 3df: 989d
|
||||
.Lbr028: and a8, a9, a0 # 3e1: 008910
|
||||
bnone a9, a0, .Lbr034 # 3e4: 070959
|
||||
movi a0, 8 /* 0x00000008 */ # 3e7: 0c80
|
||||
bbsi a8, 3, .Lbr029 # 3e9: 37e806
|
||||
movi a0, 64 /* 0x00000040 */ # 3ec: 4c00
|
||||
bbsi a8, 6, .Lbr029 # 3ee: 67e801
|
||||
mov a0, a15 /* 0x00000002 */ # 3f1: 0d0f
|
||||
.Lbr029: s32i a0, a12, 0x190 /* a0 -> [arg1+0x190] */ # 3f3: 026c64
|
||||
l8ui a3, a14, 0 /* [arg2] */ # 3f6: 320e00
|
||||
movi a4, 48 /* 0x00000030 */ # 3f9: 3c04
|
||||
beq a3, a4, .Lbr030 # 3fb: 471301
|
||||
movi a15, 1 /* 0x00000001 */ # 3fe: 0c1f
|
||||
.Lbr030: l32i a2, a12, 0x184 /* [arg1+0x184] */ # 400: 222c61
|
||||
s32i a15, a12, 0x18c /* a15 -> [arg1+0x18c] */ # 403: f26c63
|
||||
beqz a2, .Lbr031 # 406: 8c62
|
||||
l32i a6, sp, 40 /* [(local5)] */ # 408: 68a1
|
||||
l32i a5, a12, 0x188 /* [arg1+0x188] */ # 40a: 522c62
|
||||
bgeu a5, a6, .Lbr033 # 40d: 67b51c
|
||||
.Lbr031: call0 free # 410: 01bdffc0
|
||||
# 414: 0000
|
||||
l32i a2, sp, 40 /* [(local5)] */ # 416: 28a1
|
||||
call0 malloc # 418: 01bcffc0
|
||||
# 41c: 0000
|
||||
s32i a2, a12, 0x184 /* a2 -> [arg1+0x184] */ # 41e: 226c61
|
||||
bnez a2, .Lbr033 # 421: cc82
|
||||
movi a2, 6 /* 0x00000006 */ # 423: 0c62
|
||||
j .Lbr020 # 425: 06c9ff
|
||||
.Lbr032: l32i a9, a13, 12 /* [arg0+0xc] */ # 428: 983d
|
||||
j .Lbr028 # 42a: c6ecff
|
||||
.Lbr033: mov a3, a14 /* arg2 */ # 42d: 3d0e
|
||||
l32i a4, sp, 40 /* [(local5)] */ # 42f: 48a1
|
||||
call0 memcpy # 431: 01b6ffc0
|
||||
# 435: 0000
|
||||
movi a2, 0 /* 0x00000000 */ # 437: 0c02
|
||||
l32i a7, sp, 40 /* [(local5)] */ # 439: 78a1
|
||||
s32i a7, a12, 0x188 /* [(local5)] -> [arg1+0x188] */ # 43b: 726c62
|
||||
j .Lbr020 # 43e: c6c2ff
|
||||
.Lbr034: movi a2, 3 /* 0x00000003 */ # 441: 0c32
|
||||
j .Lbr020 # 443: 86c1ff
|
||||
|
||||
.literal_position # 448: 01f25000
|
||||
# 44c: 04ac0f00
|
||||
# 450: 01ac0f00
|
||||
# 454: 03ac0f00
|
||||
|
||||
# Function @ .irom0.text+0x458
|
||||
.Lfunc002: l8ui a7, a2, 1 /* [arg0+0x1] */ # 458: 720201
|
||||
l8ui a5, a2, 5 /* [arg0+0x5] */ # 45b: 520205
|
||||
bnez a7, .Lbr035 # 45e: cc27
|
||||
movi a2, 1 /* 0x00000001 */ # 460: 0c12
|
||||
ret /* 0x00000001 */ # 462: 0df0
|
||||
.Lbr035: bltui a7, 6, .Lbr036 # 464: b66737
|
||||
l8ui a8, a2, 2 /* [arg0+0x2] */ # 467: 820202
|
||||
l8ui a9, a2, 3 /* [arg0+0x3] */ # 46a: 920203
|
||||
l8ui a6, a2, 4 /* [arg0+0x4] */ # 46d: 620204
|
||||
slli a9, a9, 16 # 470: 009911
|
||||
slli a6, a6, 8 # 473: 806611
|
||||
slli a8, a8, 24 # 476: 808801
|
||||
or a5, a5, a6 # 479: 605520
|
||||
movi a6, 0x0050f201 # 47c: 61f3ff
|
||||
or a8, a8, a9 # 47f: 908820
|
||||
or a5, a5, a8 # 482: 805520
|
||||
bne a5, a6, .Lbr036 # 485: 679516
|
||||
l8ui a8, a2, 6 /* [arg0+0x6] */ # 488: 820206
|
||||
bnei a8, 1, .Lbr036 # 48b: 661810
|
||||
l8ui a9, a2, 7 /* [arg0+0x7] */ # 48e: 920207
|
||||
bnez a9, .Lbr036 # 491: cca9
|
||||
s32i a2, a4, 0 /* arg0 -> [arg2] */ # 493: 2904
|
||||
l8ui a10, a2, 1 /* [arg0+0x1] */ # 495: a20201
|
||||
addi a10, a10, 2 /* [arg0+0x1]+0x2 */ # 498: 2baa
|
||||
s32i a10, a4, 4 /* [arg0+0x1]+0x2 -> [arg2+0x4] */ # 49a: a914
|
||||
j .Lbr039 # 49c: c61f00
|
||||
.Lbr036: addi a11, a2, 5 /* arg0+0x5 */ # 49f: 5bb2
|
||||
bgeu a11, a3, .Lbr037 # 4a1: 37bb2f
|
||||
movi a3, 19 /* 0x00000013 */ # 4a4: 1c33
|
||||
bgeu a3, a7, .Lbr037 # 4a6: 77b32a
|
||||
l8ui a5, a2, 5 /* [arg0+0x5] */ # 4a9: 520205
|
||||
l8ui a8, a2, 2 /* [arg0+0x2] */ # 4ac: 820202
|
||||
l8ui a9, a2, 3 /* [arg0+0x3] */ # 4af: 920203
|
||||
l8ui a6, a2, 4 /* [arg0+0x4] */ # 4b2: 620204
|
||||
slli a9, a9, 16 # 4b5: 009911
|
||||
slli a6, a6, 8 # 4b8: 806611
|
||||
slli a8, a8, 24 # 4bb: 808801
|
||||
or a5, a5, a6 # 4be: 605520
|
||||
movi a6, 0x000fac04 # 4c1: 61e2ff
|
||||
or a8, a8, a9 # 4c4: 908820
|
||||
or a5, a5, a8 # 4c7: 805520
|
||||
bne a5, a6, .Lbr037 # 4ca: 679506
|
||||
addi a7, a2, 6 /* arg0+0x6 */ # 4cd: 6b72
|
||||
s32i a7, a4, 16 /* arg0+0x6 -> [arg2+0x10] */ # 4cf: 7944
|
||||
j .Lbr039 # 4d1: 861200
|
||||
.Lbr037: bltui a7, 7, .Lbr039 # 4d4: b67747
|
||||
movi a8, 0x000fac01 # 4d7: 81deff
|
||||
l8ui a6, a2, 3 /* [arg0+0x3] */ # 4da: 620203
|
||||
l8ui a5, a2, 4 /* [arg0+0x4] */ # 4dd: 520204
|
||||
l8ui a3, a2, 5 /* [arg0+0x5] */ # 4e0: 320205
|
||||
slli a5, a5, 8 # 4e3: 805511
|
||||
or a3, a3, a5 # 4e6: 503320
|
||||
l8ui a5, a2, 2 /* [arg0+0x2] */ # 4e9: 520202
|
||||
slli a6, a6, 16 # 4ec: 006611
|
||||
slli a5, a5, 24 # 4ef: 805501
|
||||
or a5, a5, a6 # 4f2: 605520
|
||||
or a3, a3, a5 # 4f5: 503320
|
||||
bne a3, a8, .Lbr038 # 4f8: 87930e
|
||||
addi a7, a2, 6 /* arg0+0x6 */ # 4fb: 6b72
|
||||
s32i a7, a4, 20 /* arg0+0x6 -> [arg2+0x14] */ # 4fd: 7954
|
||||
l8ui a6, a2, 1 /* [arg0+0x1] */ # 4ff: 620201
|
||||
addi a6, a6, -4 /* [arg0+0x1]-0x4 */ # 502: 62c6fc
|
||||
s32i a6, a4, 24 /* [arg0+0x1]-0x4 -> [arg2+0x18] */ # 505: 6964
|
||||
j .Lbr039 # 507: 060500
|
||||
.Lbr038: bltui a7, 7, .Lbr039 # 50a: b67711
|
||||
movi a8, 0x000fac03 # 50d: 81d1ff
|
||||
bne a3, a8, .Lbr039 # 510: 87930b
|
||||
addi a10, a2, 6 /* arg0+0x6 */ # 513: 6ba2
|
||||
s32i a10, a4, 28 /* arg0+0x6 -> [arg2+0x1c] */ # 515: a974
|
||||
l8ui a9, a2, 1 /* [arg0+0x1] */ # 517: 920201
|
||||
addi a9, a9, -4 /* [arg0+0x1]-0x4 */ # 51a: 92c9fc
|
||||
s32i a9, a4, 32 /* [arg0+0x1]-0x4 -> [arg2+0x20] */ # 51d: 9984
|
||||
.Lbr039: movi a2, 0 /* 0x00000000 */ # 51f: 0c02
|
||||
ret /* 0x00000000 */ # 521: 0df0
|
||||
|
||||
.literal_position # 524: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x528
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_wpa_parse_kde_ies
|
||||
.type sdk_wpa_parse_kde_ies, @function
|
||||
sdk_wpa_parse_kde_ies:
|
||||
addi sp, sp, -32 /* (local0) */ # 528: 12c1e0
|
||||
s32i a15, sp, 24 /* a15 -> [(local6)] */ # 52b: f961
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 52d: 0921
|
||||
s32i a14, sp, 20 /* a14 -> [(local5)] */ # 52f: e951
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 531: d941
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 533: c931
|
||||
mov a13, a4 /* arg2 */ # 535: dd04
|
||||
mov a12, a2 /* arg0 */ # 537: cd02
|
||||
mov a14, a3 /* arg1 */ # 539: ed03
|
||||
mov a2, a4 /* arg2 */ # 53b: 2d04
|
||||
movi a3, 0 /* 0x00000000 */ # 53d: 0c03
|
||||
movi a4, 36 /* 0x00000024 */ # 53f: 2c44
|
||||
call0 memset # 541: 01f8ffc0
|
||||
# 545: 0000
|
||||
s32i a13, sp, 4 /* arg2 -> [(local1)] */ # 547: d911
|
||||
blti a14, 2, .Lbr047 # 549: a62e70
|
||||
movi a15, 48 /* 0x00000030 */ # 54c: 3c0f
|
||||
movi a2, 0 /* 0x00000000 */ # 54e: 0c02
|
||||
add a13, a12, a14 # 550: eadc
|
||||
movi a14, 221 /* 0x000000dd */ # 552: e2a0dd
|
||||
addi a0, a13, -1 # 555: 0b0d
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 557: 0901
|
||||
.Lbr040: l8ui a0, a12, 0 # 559: 020c00
|
||||
l8ui a3, a12, 1 # 55c: 320c01
|
||||
bne a0, a14, .Lbr041 # 55f: e7900c
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 562: 3801
|
||||
beq a3, a12, .Lbr046 # 564: c71346
|
||||
l8ui a3, a12, 1 # 567: 320c01
|
||||
bnez a3, .Lbr041 # 56a: cc13
|
||||
j .Lbr046 # 56c: 860f00
|
||||
.Lbr041: add a3, a3, a12 # 56f: ca33
|
||||
addi a3, a3, 2 # 571: 2b33
|
||||
bltu a13, a3, .Lbr045 # 573: 373d35
|
||||
bne a0, a15, .Lbr044 # 576: f7901b
|
||||
l32i a5, sp, 4 /* [(local1)] */ # 579: 5811
|
||||
s32i a12, a5, 8 /* a12 -> [[(local1)]+0x8] */ # 57b: c925
|
||||
l8ui a4, a12, 1 # 57d: 420c01
|
||||
addi a4, a4, 2 # 580: 2b44
|
||||
s32i a4, a5, 12 /* a4 -> [[(local1)]+0xc] */ # 582: 4935
|
||||
.Lbr042: l8ui a3, a12, 1 # 584: 320c01
|
||||
add a3, a3, a12 # 587: ca33
|
||||
addi a3, a3, 2 # 589: 2b33
|
||||
.Lbr043: mov a12, a3 # 58b: cd03
|
||||
addi a4, a3, 1 # 58d: 1b43
|
||||
bltu a4, a13, .Lbr040 # 58f: d734c6
|
||||
j .Lbr046 # 592: 060600
|
||||
.Lbr044: bne a0, a14, .Lbr043 # 595: e790f2
|
||||
mov a2, a12 # 598: 2d0c
|
||||
mov a3, a13 # 59a: 3d0d
|
||||
l32i a4, sp, 4 /* [(local1)] */ # 59c: 4811
|
||||
call0 .Lfunc002 # 59e: 85ebff
|
||||
bltz a2, .Lbr046 # 5a1: 969200
|
||||
blti a2, 1, .Lbr042 # 5a4: a612dc
|
||||
movi a2, 0 /* 0x00000000 */ # 5a7: 0c02
|
||||
j .Lbr046 # 5a9: 460000
|
||||
.Lbr045: movi a2, -1 /* 0xffffffff */ # 5ac: 7cf2
|
||||
.Lbr046: l32i a12, sp, 12 /* [(local3)] */ # 5ae: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 5b0: d841
|
||||
l32i a14, sp, 20 /* [(local5)] */ # 5b2: e851
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 5b4: f861
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 5b6: 0821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 5b8: 12c120
|
||||
ret # 5bb: 0df0
|
||||
.Lbr047: movi a2, 0 /* 0x00000000 */ # 5bd: 0c02
|
||||
j .Lbr046 # 5bf: c6faff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x5c4
|
||||
.global sdk_wpa_auth_uses_mfp
|
||||
.type sdk_wpa_auth_uses_mfp, @function
|
||||
sdk_wpa_auth_uses_mfp:
|
||||
beqz a2, .Lbr048 # 5c4: 8c92
|
||||
addmi a2, a2, 256 /* arg0+0x100 */ # 5c6: 22d201
|
||||
l8ui a2, a2, 116 /* [arg0+0x174] */ # 5c9: 220274
|
||||
extui a2, a2, 4, 1 # 5cc: 202404
|
||||
ret # 5cf: 0df0
|
||||
.Lbr048: movi a2, 0 /* 0x00000000 */ # 5d1: 0c02
|
||||
ret /* 0x00000000 */ # 5d3: 0df0
|
864
binary_sdk/libwpa/wpa_common.S
Normal file
864
binary_sdk/libwpa/wpa_common.S
Normal file
|
@ -0,0 +1,864 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00ac0f00
|
||||
# 4: 01ac0f00
|
||||
# 8: 02ac0f00
|
||||
# c: 04ac0f00
|
||||
# 10: 05ac0f00
|
||||
|
||||
# Function @ .irom0.text+0x14
|
||||
.Lfunc001: movi a3, 0x000fac00 # 14: 31fbff
|
||||
l8ui a7, a2, 1 /* [arg0+0x1] */ # 17: 720201
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # 1a: 620202
|
||||
l8ui a5, a2, 3 /* [arg0+0x3] */ # 1d: 520203
|
||||
slli a6, a6, 8 # 20: 806611
|
||||
or a5, a5, a6 # 23: 605520
|
||||
l8ui a6, a2, 0 /* [arg0] */ # 26: 620200
|
||||
slli a7, a7, 16 # 29: 007711
|
||||
slli a6, a6, 24 # 2c: 806601
|
||||
or a6, a6, a7 # 2f: 706620
|
||||
or a5, a5, a6 # 32: 605520
|
||||
bne a5, a3, .Lbr001 # 35: 379503
|
||||
movi a2, 1 /* 0x00000001 */ # 38: 0c12
|
||||
ret /* 0x00000001 */ # 3a: 0df0
|
||||
.Lbr001: movi a7, 0x000fac01 # 3c: 71f2ff
|
||||
movi a8, 0x000fac02 # 3f: 81f2ff
|
||||
bne a5, a7, .Lbr002 # 42: 779504
|
||||
movi a2, 128 /* 0x00000080 */ # 45: 22a080
|
||||
ret /* 0x00000080 */ # 48: 0df0
|
||||
.Lbr002: bne a5, a8, .Lbr003 # 4a: 879503
|
||||
movi a2, 2 /* 0x00000002 */ # 4d: 0c22
|
||||
ret /* 0x00000002 */ # 4f: 0df0
|
||||
.Lbr003: movi a9, 0x000fac04 # 51: 91eeff
|
||||
movi a10, 0 /* 0x00000000 */ # 54: 0c0a
|
||||
beq a5, a9, .Lbr004 # 56: 97150d
|
||||
movi a11, 0x000fac05 # 59: b1edff
|
||||
movi a2, 256 /* 0x00000100 */ # 5c: 22a100
|
||||
sub a11, a5, a11 # 5f: b0b5c0
|
||||
movnez a2, a10, a11 # 62: b02a93
|
||||
ret # 65: 0df0
|
||||
.Lbr004: movi a2, 8 /* 0x00000008 */ # 67: 0c82
|
||||
ret /* 0x00000008 */ # 69: 0df0
|
||||
|
||||
.literal_position # 6c: 01ac0f00
|
||||
# 70: 02ac0f00
|
||||
|
||||
# Function @ .irom0.text+0x74
|
||||
.Lfunc002: movi a3, 0x000fac01 # 74: 31feff
|
||||
l8ui a7, a2, 1 /* [arg0+0x1] */ # 77: 720201
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # 7a: 620202
|
||||
l8ui a5, a2, 3 /* [arg0+0x3] */ # 7d: 520203
|
||||
slli a6, a6, 8 # 80: 806611
|
||||
or a5, a5, a6 # 83: 605520
|
||||
l8ui a6, a2, 0 /* [arg0] */ # 86: 620200
|
||||
slli a7, a7, 16 # 89: 007711
|
||||
slli a6, a6, 24 # 8c: 806601
|
||||
or a6, a6, a7 # 8f: 706620
|
||||
or a5, a5, a6 # 92: 605520
|
||||
beq a5, a3, .Lbr005 # 95: 37150e
|
||||
movi a7, 0 /* 0x00000000 */ # 98: 0c07
|
||||
movi a8, 0x000fac02 # 9a: 81f5ff
|
||||
movi a2, 2 /* 0x00000002 */ # 9d: 0c22
|
||||
sub a8, a5, a8 # 9f: 8085c0
|
||||
movnez a2, a7, a8 # a2: 802793
|
||||
ret # a5: 0df0
|
||||
.Lbr005: movi a2, 1 /* 0x00000001 */ # a7: 0c12
|
||||
ret /* 0x00000001 */ # a9: 0df0
|
||||
|
||||
.literal_position # ac: 00f25000
|
||||
# b0: 01f25000
|
||||
# b4: 02f25000
|
||||
# b8: 04f25000
|
||||
# bc: 05f25000
|
||||
|
||||
# Function @ .irom0.text+0xc0
|
||||
.Lfunc003: movi a3, 0x0050f200 # c0: 31fbff
|
||||
l8ui a7, a2, 1 /* [arg0+0x1] */ # c3: 720201
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # c6: 620202
|
||||
l8ui a5, a2, 3 /* [arg0+0x3] */ # c9: 520203
|
||||
slli a6, a6, 8 # cc: 806611
|
||||
or a5, a5, a6 # cf: 605520
|
||||
l8ui a6, a2, 0 /* [arg0] */ # d2: 620200
|
||||
slli a7, a7, 16 # d5: 007711
|
||||
slli a6, a6, 24 # d8: 806601
|
||||
or a6, a6, a7 # db: 706620
|
||||
or a5, a5, a6 # de: 605520
|
||||
bne a5, a3, .Lbr006 # e1: 379503
|
||||
movi a2, 1 /* 0x00000001 */ # e4: 0c12
|
||||
ret /* 0x00000001 */ # e6: 0df0
|
||||
.Lbr006: movi a7, 0x0050f201 # e8: 71f2ff
|
||||
movi a8, 0x0050f202 # eb: 81f2ff
|
||||
bne a5, a7, .Lbr007 # ee: 779504
|
||||
movi a2, 128 /* 0x00000080 */ # f1: 22a080
|
||||
ret /* 0x00000080 */ # f4: 0df0
|
||||
.Lbr007: bne a5, a8, .Lbr008 # f6: 879503
|
||||
movi a2, 2 /* 0x00000002 */ # f9: 0c22
|
||||
ret /* 0x00000002 */ # fb: 0df0
|
||||
.Lbr008: movi a9, 0x0050f204 # fd: 91eeff
|
||||
movi a10, 0 /* 0x00000000 */ # 100: 0c0a
|
||||
beq a5, a9, .Lbr009 # 102: 97150d
|
||||
movi a11, 0x0050f205 # 105: b1edff
|
||||
movi a2, 256 /* 0x00000100 */ # 108: 22a100
|
||||
sub a11, a5, a11 # 10b: b0b5c0
|
||||
movnez a2, a10, a11 # 10e: b02a93
|
||||
ret # 111: 0df0
|
||||
.Lbr009: movi a2, 8 /* 0x00000008 */ # 113: 0c82
|
||||
ret /* 0x00000008 */ # 115: 0df0
|
||||
|
||||
.literal_position # 118: 01f25000
|
||||
# 11c: 02f25000
|
||||
# 120: 00f25000
|
||||
|
||||
# Function @ .irom0.text+0x124
|
||||
.Lfunc004: movi a3, 0x0050f201 # 124: 31fdff
|
||||
l8ui a7, a2, 1 /* [arg0+0x1] */ # 127: 720201
|
||||
l8ui a6, a2, 2 /* [arg0+0x2] */ # 12a: 620202
|
||||
l8ui a5, a2, 3 /* [arg0+0x3] */ # 12d: 520203
|
||||
slli a6, a6, 8 # 130: 806611
|
||||
or a5, a5, a6 # 133: 605520
|
||||
l8ui a6, a2, 0 /* [arg0] */ # 136: 620200
|
||||
slli a7, a7, 16 # 139: 007711
|
||||
slli a6, a6, 24 # 13c: 806601
|
||||
or a6, a6, a7 # 13f: 706620
|
||||
or a5, a5, a6 # 142: 605520
|
||||
bne a5, a3, .Lbr010 # 145: 379503
|
||||
movi a2, 1 /* 0x00000001 */ # 148: 0c12
|
||||
ret /* 0x00000001 */ # 14a: 0df0
|
||||
.Lbr010: movi a7, 0x0050f202 # 14c: 71f4ff
|
||||
movi a8, 0 /* 0x00000000 */ # 14f: 0c08
|
||||
beq a5, a7, .Lbr011 # 151: 77150c
|
||||
movi a9, 0x0050f200 # 154: 91f3ff
|
||||
movi a2, 16 /* 0x00000010 */ # 157: 1c02
|
||||
sub a9, a5, a9 # 159: 9095c0
|
||||
movnez a2, a8, a9 # 15c: 902893
|
||||
ret # 15f: 0df0
|
||||
.Lbr011: movi a2, 2 /* 0x00000002 */ # 161: 0c22
|
||||
ret /* 0x00000002 */ # 163: 0df0
|
||||
|
||||
.literal_position # 168: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x16c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_wpa_parse_wpa_ie_rsn
|
||||
.type sdk_wpa_parse_wpa_ie_rsn, @function
|
||||
sdk_wpa_parse_wpa_ie_rsn:
|
||||
addi sp, sp, -32 /* (local0) */ # 16c: 12c1e0
|
||||
s32i a15, sp, 20 /* a15 -> [(local5)] */ # 16f: f951
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 171: 0911
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 173: c921
|
||||
s32i a14, sp, 16 /* a14 -> [(local4)] */ # 175: e941
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 177: d931
|
||||
mov a14, a4 /* arg2 */ # 179: ed04
|
||||
mov a13, a2 /* arg0 */ # 17b: dd02
|
||||
mov a12, a3 /* arg1 */ # 17d: cd03
|
||||
mov a2, a4 /* arg2 */ # 17f: 2d04
|
||||
movi a3, 0 /* 0x00000000 */ # 181: 0c03
|
||||
movi a4, 32 /* 0x00000020 */ # 183: 2c04
|
||||
call0 memset # 185: 01f8ffc0
|
||||
# 189: 0000
|
||||
movi a15, 0 /* 0x00000000 */ # 18b: 0c0f
|
||||
movi a0, 1 /* 0x00000001 */ # 18d: 0c10
|
||||
movi a2, 2 /* 0x00000002 */ # 18f: 0c22
|
||||
movi a3, 8 /* 0x00000008 */ # 191: 0c83
|
||||
s32i a3, a14, 4 /* 0x00000008 -> [arg2+0x4] */ # 193: 391e
|
||||
s32i a3, a14, 8 /* 0x00000008 -> [arg2+0x8] */ # 195: 392e
|
||||
s32i a2, a14, 0 /* 0x00000002 -> [arg2] */ # 197: 290e
|
||||
s32i a0, a14, 12 /* 0x00000001 -> [arg2+0xc] */ # 199: 093e
|
||||
s32i a15, a14, 16 /* 0x00000000 -> [arg2+0x10] */ # 19b: f94e
|
||||
s32i a15, a14, 24 /* 0x00000000 -> [arg2+0x18] */ # 19d: f96e
|
||||
s32i a15, a14, 20 /* 0x00000000 -> [arg2+0x14] */ # 19f: f95e
|
||||
s32i a15, a14, 28 /* 0x00000000 -> [arg2+0x1c] */ # 1a1: f97e
|
||||
beqz a12, .Lbr014 # 1a3: bc8c
|
||||
bltui a12, 4, .Lbr014 # 1a5: b64c36
|
||||
l8ui a4, a13, 0 /* [arg0] */ # 1a8: 420d00
|
||||
movi a5, 48 /* 0x00000030 */ # 1ab: 3c05
|
||||
bne a4, a5, .Lbr012 # 1ad: 57941d
|
||||
l8ui a6, a13, 1 /* [arg0+0x1] */ # 1b0: 620d01
|
||||
addi a7, a12, -2 /* arg1-0x2 */ # 1b3: 72ccfe
|
||||
bne a6, a7, .Lbr012 # 1b6: 779614
|
||||
l8ui a9, a13, 3 /* [arg0+0x3] */ # 1b9: 920d03
|
||||
l8ui a8, a13, 2 /* [arg0+0x2] */ # 1bc: 820d02
|
||||
slli a9, a9, 8 # 1bf: 809911
|
||||
or a8, a8, a9 # 1c2: 908820
|
||||
slli a8, a8, 16 # 1c5: 008811
|
||||
srai a8, a8, 16 # 1c8: 808031
|
||||
beqi a8, 1, .Lbr015 # 1cb: 261815
|
||||
.Lbr012: movi a2, -2 /* 0xfffffffe */ # 1ce: 7ce2
|
||||
.Lbr013: l32i a12, sp, 8 /* [(local2)] */ # 1d0: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 1d2: d831
|
||||
l32i a14, sp, 16 /* [(local4)] */ # 1d4: e841
|
||||
l32i a15, sp, 20 /* [(local5)] */ # 1d6: f851
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 1d8: 0811
|
||||
addi sp, sp, 32 /* (top of frame) */ # 1da: 12c120
|
||||
ret # 1dd: 0df0
|
||||
.Lbr014: movi a2, -1 /* 0xffffffff */ # 1df: 7cf2
|
||||
j .Lbr013 # 1e1: c6faff
|
||||
.Lbr015: addi a13, a13, 4 /* arg0+0x4 */ # 1e4: 4bdd
|
||||
addi a10, a12, -4 /* arg1-0x4 */ # 1e6: a2ccfc
|
||||
s32i a10, sp, 0 /* arg1-0x4 -> [(local0)] */ # 1e9: a901
|
||||
mov a12, a10 /* arg1-0x4 */ # 1eb: cd0a
|
||||
bgei a10, 4, .Lbr016 # 1ed: e64a02
|
||||
j .Lbr026 # 1f0: 063700
|
||||
.Lbr016: mov a2, a13 /* arg0+0x4 */ # 1f3: 2d0d
|
||||
call0 .Lfunc001 # 1f5: c5e1ff
|
||||
addi a13, a13, 4 /* arg0+0x8 */ # 1f8: 4bdd
|
||||
l32i a12, sp, 0 /* [(local0)] */ # 1fa: c801
|
||||
s32i a2, a14, 8 /* a2 -> [arg2+0x8] */ # 1fc: 292e
|
||||
addi a12, a12, -4 /* [(local0)]-0x4 */ # 1fe: c2ccfc
|
||||
.Lbr017: bgei a12, 2, .Lbr018 # 201: e62c02
|
||||
j .Lbr030 # 204: 063700
|
||||
.Lbr018: addi a12, a12, -2 # 207: c2ccfe
|
||||
s32i a15, a14, 4 /* 0x00000000 -> [arg2+0x4] */ # 20a: f91e
|
||||
l8ui a0, a13, 0 # 20c: 020d00
|
||||
l8ui a2, a13, 1 # 20f: 220d01
|
||||
addi a13, a13, 2 # 212: 2bdd
|
||||
slli a2, a2, 8 # 214: 802211
|
||||
or a0, a0, a2 # 217: 200020
|
||||
extui a0, a0, 0, 16 # 21a: 0000f4
|
||||
s32i a0, sp, 24 /* a0 -> [(local6)] */ # 21d: 0961
|
||||
beqz a0, .Lbr032 # 21f: 16300d
|
||||
slli a3, a0, 2 # 222: e03011
|
||||
bge a12, a3, .Lbr019 # 225: 37ac02
|
||||
j .Lbr032 # 228: 863200
|
||||
.Lbr019: blti a0, 1, .Lbr021 # 22b: a61019
|
||||
movi a15, 0 /* 0x00000000 */ # 22e: 0c0f
|
||||
.Lbr020: mov a2, a13 # 230: 2d0d
|
||||
call0 .Lfunc001 # 232: 05deff
|
||||
addi a13, a13, 4 # 235: 4bdd
|
||||
addi a12, a12, -4 # 237: c2ccfc
|
||||
addi a15, a15, 1 # 23a: 1bff
|
||||
l32i a6, a14, 4 /* [arg2+0x4] */ # 23c: 681e
|
||||
l32i a5, sp, 24 /* [(local6)] */ # 23e: 5861
|
||||
or a6, a6, a2 # 240: 206620
|
||||
s32i a6, a14, 4 /* a6 -> [arg2+0x4] */ # 243: 691e
|
||||
bne a5, a15, .Lbr020 # 245: f795e7
|
||||
.Lbr021: movi a15, 0 /* 0x00000000 */ # 248: 0c0f
|
||||
bgei a12, 2, .Lbr022 # 24a: e62c02
|
||||
j .Lbr031 # 24d: 462700
|
||||
.Lbr022: addi a12, a12, -2 # 250: c2ccfe
|
||||
s32i a15, a14, 12 /* 0x00000000 -> [arg2+0xc] */ # 253: f93e
|
||||
l8ui a7, a13, 0 # 255: 720d00
|
||||
l8ui a8, a13, 1 # 258: 820d01
|
||||
addi a13, a13, 2 # 25b: 2bdd
|
||||
slli a8, a8, 8 # 25d: 808811
|
||||
or a7, a7, a8 # 260: 807720
|
||||
extui a7, a7, 0, 16 # 263: 7070f4
|
||||
s32i a7, sp, 24 /* a7 -> [(local6)] */ # 266: 7961
|
||||
beqz a7, .Lbr033 # 268: 16f708
|
||||
slli a9, a7, 2 # 26b: e09711
|
||||
bge a12, a9, .Lbr023 # 26e: 97ac02
|
||||
j .Lbr033 # 271: 862100
|
||||
.Lbr023: blti a7, 1, .Lbr025 # 274: a61719
|
||||
movi a15, 0 /* 0x00000000 */ # 277: 0c0f
|
||||
.Lbr024: mov a2, a13 # 279: 2d0d
|
||||
call0 .Lfunc002 # 27b: 85dfff
|
||||
addi a13, a13, 4 # 27e: 4bdd
|
||||
addi a12, a12, -4 # 280: c2ccfc
|
||||
addi a15, a15, 1 # 283: 1bff
|
||||
l32i a0, a14, 12 /* [arg2+0xc] */ # 285: 083e
|
||||
l32i a11, sp, 24 /* [(local6)] */ # 287: b861
|
||||
or a0, a0, a2 # 289: 200020
|
||||
s32i a0, a14, 12 /* a0 -> [arg2+0xc] */ # 28c: 093e
|
||||
bne a11, a15, .Lbr024 # 28e: f79be7
|
||||
.Lbr025: movi a15, 0 /* 0x00000000 */ # 291: 0c0f
|
||||
blti a12, 2, .Lbr029 # 293: a62c48
|
||||
addi a12, a12, -2 # 296: c2ccfe
|
||||
l8ui a2, a13, 0 # 299: 220d00
|
||||
l8ui a3, a13, 1 # 29c: 320d01
|
||||
addi a13, a13, 2 # 29f: 2bdd
|
||||
slli a3, a3, 8 # 2a1: 803311
|
||||
or a2, a2, a3 # 2a4: 302220
|
||||
extui a2, a2, 0, 16 # 2a7: 2020f4
|
||||
s32i a2, a14, 16 /* a2 -> [arg2+0x10] */ # 2aa: 294e
|
||||
blti a12, 2, .Lbr029 # 2ac: a62c2f
|
||||
addi a4, a12, -2 # 2af: 42ccfe
|
||||
l8ui a6, a13, 1 # 2b2: 620d01
|
||||
l8ui a5, a13, 0 # 2b5: 520d00
|
||||
slli a6, a6, 8 # 2b8: 806611
|
||||
or a5, a5, a6 # 2bb: 605520
|
||||
extui a5, a5, 0, 16 # 2be: 5050f4
|
||||
s32i a5, a14, 20 /* a5 -> [arg2+0x14] */ # 2c1: 595e
|
||||
slli a5, a5, 4 # 2c3: c05511
|
||||
bge a4, a5, .Lbr028 # 2c6: 57a411
|
||||
s32i a15, a14, 20 /* 0x00000000 -> [arg2+0x14] */ # 2c9: f95e
|
||||
movi a2, -9 /* 0xfffffff7 */ # 2cb: 7c72
|
||||
j .Lbr013 # 2cd: c6bfff
|
||||
.Lbr026: bgei a10, 1, .Lbr027 # 2d0: e61a02
|
||||
j .Lbr017 # 2d3: 86caff
|
||||
.Lbr027: movi a2, -3 /* 0xfffffffd */ # 2d6: 7cd2
|
||||
j .Lbr013 # 2d8: 06bdff
|
||||
.Lbr028: addi a7, a13, 2 # 2db: 2b7d
|
||||
s32i a7, a14, 24 /* a7 -> [arg2+0x18] */ # 2dd: 796e
|
||||
.Lbr029: movi a2, 0 /* 0x00000000 */ # 2df: 0c02
|
||||
j .Lbr013 # 2e1: c6baff
|
||||
.Lbr030: addi a8, a12, -1 # 2e4: 0b8c
|
||||
bnez a8, .Lbr021 # 2e6: 56e8f5
|
||||
movi a2, -5 /* 0xfffffffb */ # 2e9: 7cb2
|
||||
j .Lbr013 # 2eb: 46b8ff
|
||||
.Lbr031: bnei a12, 1, .Lbr025 # 2ee: 661c9f
|
||||
movi a2, -7 /* 0xfffffff9 */ # 2f1: 7c92
|
||||
j .Lbr013 # 2f3: 46b6ff
|
||||
.Lbr032: movi a2, -4 /* 0xfffffffc */ # 2f6: 7cc2
|
||||
j .Lbr013 # 2f8: 06b5ff
|
||||
.Lbr033: movi a2, -6 /* 0xfffffffa */ # 2fb: 7ca2
|
||||
j .Lbr013 # 2fd: c6b3ff
|
||||
|
||||
.literal_position # 300: 01f25000
|
||||
# 304: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x308
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word[3] @ -0xc
|
||||
.global sdk_wpa_parse_wpa_ie_wpa
|
||||
.type sdk_wpa_parse_wpa_ie_wpa, @function
|
||||
sdk_wpa_parse_wpa_ie_wpa:
|
||||
addi sp, sp, -32 /* (local0) */ # 308: 12c1e0
|
||||
s32i a15, sp, 16 /* a15 -> [(local4)] */ # 30b: f941
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 30d: 0901
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 30f: c911
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 311: e931
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 313: d921
|
||||
mov a14, a4 /* arg2 */ # 315: ed04
|
||||
mov a13, a2 /* arg0 */ # 317: dd02
|
||||
mov a12, a3 /* arg1 */ # 319: cd03
|
||||
mov a2, a4 /* arg2 */ # 31b: 2d04
|
||||
movi a3, 0 /* 0x00000000 */ # 31d: 0c03
|
||||
movi a4, 32 /* 0x00000020 */ # 31f: 2c04
|
||||
call0 memset # 321: 01f8ffc0
|
||||
# 325: 0000
|
||||
movi a0, 1 /* 0x00000001 */ # 327: 0c10
|
||||
movi a2, 2 /* 0x00000002 */ # 329: 0c22
|
||||
s32i a2, a14, 4 /* 0x00000002 -> [arg2+0x4] */ # 32b: 291e
|
||||
s32i a0, a14, 0 /* 0x00000001 -> [arg2] */ # 32d: 090e
|
||||
s32i a0, a14, 12 /* 0x00000001 -> [arg2+0xc] */ # 32f: 093e
|
||||
s32i a2, a14, 8 /* 0x00000002 -> [arg2+0x8] */ # 331: 292e
|
||||
movi a0, 0 /* 0x00000000 */ # 333: 0c00
|
||||
s32i a0, a14, 16 /* 0x00000000 -> [arg2+0x10] */ # 335: 094e
|
||||
s32i a0, a14, 24 /* 0x00000000 -> [arg2+0x18] */ # 337: 096e
|
||||
s32i a0, a14, 20 /* 0x00000000 -> [arg2+0x14] */ # 339: 095e
|
||||
s32i a0, a14, 28 /* 0x00000000 -> [arg2+0x1c] */ # 33b: 097e
|
||||
beqz a12, .Lbr036 # 33d: 16ec05
|
||||
bltui a12, 8, .Lbr036 # 340: b68c5b
|
||||
l8ui a3, a13, 0 /* [arg0] */ # 343: 320d00
|
||||
movi a4, 221 /* 0x000000dd */ # 346: 42a0dd
|
||||
bne a3, a4, .Lbr034 # 349: 479341
|
||||
l8ui a5, a13, 1 /* [arg0+0x1] */ # 34c: 520d01
|
||||
addi a6, a12, -2 /* arg1-0x2 */ # 34f: 62ccfe
|
||||
bne a5, a6, .Lbr034 # 352: 679538
|
||||
l8ui a7, a13, 5 /* [arg0+0x5] */ # 355: 720d05
|
||||
l8ui a9, a13, 2 /* [arg0+0x2] */ # 358: 920d02
|
||||
l8ui a10, a13, 3 /* [arg0+0x3] */ # 35b: a20d03
|
||||
l8ui a8, a13, 4 /* [arg0+0x4] */ # 35e: 820d04
|
||||
slli a10, a10, 16 # 361: 00aa11
|
||||
slli a8, a8, 8 # 364: 808811
|
||||
slli a9, a9, 24 # 367: 809901
|
||||
or a7, a7, a8 # 36a: 807720
|
||||
movi a8, 0x0050f201 # 36d: 81e4ff
|
||||
or a9, a9, a10 # 370: a09920
|
||||
or a7, a7, a9 # 373: 907720
|
||||
bne a7, a8, .Lbr034 # 376: 879714
|
||||
l8ui a10, a13, 7 /* [arg0+0x7] */ # 379: a20d07
|
||||
l8ui a9, a13, 6 /* [arg0+0x6] */ # 37c: 920d06
|
||||
slli a10, a10, 8 # 37f: 80aa11
|
||||
or a9, a9, a10 # 382: a09920
|
||||
slli a9, a9, 16 # 385: 009911
|
||||
srai a9, a9, 16 # 388: 909031
|
||||
beqi a9, 1, .Lbr037 # 38b: 261915
|
||||
.Lbr034: movi a2, -2 /* 0xfffffffe */ # 38e: 7ce2
|
||||
.Lbr035: l32i a12, sp, 4 /* [(local1)] */ # 390: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 392: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 394: e831
|
||||
l32i a15, sp, 16 /* [(local4)] */ # 396: f841
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 398: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # 39a: 12c120
|
||||
ret # 39d: 0df0
|
||||
.Lbr036: movi a2, -1 /* 0xffffffff */ # 39f: 7cf2
|
||||
j .Lbr035 # 3a1: c6faff
|
||||
.Lbr037: addi a13, a13, 8 /* arg0+0x8 */ # 3a4: 8bdd
|
||||
addi a15, a12, -8 /* arg1-0x8 */ # 3a6: f2ccf8
|
||||
mov a12, a15 /* arg1-0x8 */ # 3a9: cd0f
|
||||
bgei a15, 4, .Lbr038 # 3ab: e64f02
|
||||
j .Lbr047 # 3ae: 062d00
|
||||
.Lbr038: mov a2, a13 /* arg0+0x8 */ # 3b1: 2d0d
|
||||
call0 .Lfunc003 # 3b3: c5d0ff
|
||||
movi a0, 0 /* 0x00000000 */ # 3b6: 0c00
|
||||
addi a13, a13, 4 /* arg0+0xc */ # 3b8: 4bdd
|
||||
addi a12, a15, -4 /* arg1-0xc */ # 3ba: c2cffc
|
||||
s32i a2, a14, 8 /* a2 -> [arg2+0x8] */ # 3bd: 292e
|
||||
.Lbr039: bgei a12, 2, .Lbr040 # 3bf: e62c02
|
||||
j .Lbr049 # 3c2: c62a00
|
||||
.Lbr040: addi a12, a12, -2 # 3c5: c2ccfe
|
||||
s32i a0, a14, 4 /* 0x00000000 -> [arg2+0x4] */ # 3c8: 091e
|
||||
l8ui a15, a13, 0 # 3ca: f20d00
|
||||
l8ui a2, a13, 1 # 3cd: 220d01
|
||||
addi a13, a13, 2 # 3d0: 2bdd
|
||||
slli a2, a2, 8 # 3d2: 802211
|
||||
or a15, a15, a2 # 3d5: 20ff20
|
||||
extui a15, a15, 0, 16 # 3d8: f0f0f4
|
||||
beqz a15, .Lbr051 # 3db: 162f0a
|
||||
slli a3, a15, 2 # 3de: e03f11
|
||||
bge a12, a3, .Lbr041 # 3e1: 37ac02
|
||||
j .Lbr051 # 3e4: 462600
|
||||
.Lbr041: blti a15, 1, .Lbr043 # 3e7: a61f1f
|
||||
movi a4, 0 /* 0x00000000 */ # 3ea: 0c04
|
||||
s32i a4, sp, 20 /* 0x00000000 -> [(local5)] */ # 3ec: 4951
|
||||
.Lbr042: mov a2, a13 # 3ee: 2d0d
|
||||
call0 .Lfunc003 # 3f0: c5ccff
|
||||
addi a13, a13, 4 # 3f3: 4bdd
|
||||
addi a12, a12, -4 # 3f5: c2ccfc
|
||||
l32i a5, sp, 20 /* [(local5)] */ # 3f8: 5851
|
||||
l32i a6, a14, 4 /* [arg2+0x4] */ # 3fa: 681e
|
||||
addi a5, a5, 1 /* [(local5)]+0x1 */ # 3fc: 1b55
|
||||
or a6, a6, a2 # 3fe: 206620
|
||||
s32i a6, a14, 4 /* a6 -> [arg2+0x4] */ # 401: 691e
|
||||
s32i a5, sp, 20 /* [(local5)]+0x1 -> [(local5)] */ # 403: 5951
|
||||
bne a15, a5, .Lbr042 # 405: 579fe5
|
||||
movi a0, 0 /* 0x00000000 */ # 408: 0c00
|
||||
.Lbr043: blti a12, 2, .Lbr050 # 40a: a62c6b
|
||||
addi a12, a12, -2 # 40d: c2ccfe
|
||||
s32i a0, a14, 12 /* 0x00000000 -> [arg2+0xc] */ # 410: 093e
|
||||
l8ui a15, a13, 0 # 412: f20d00
|
||||
l8ui a2, a13, 1 # 415: 220d01
|
||||
addi a13, a13, 2 # 418: 2bdd
|
||||
slli a2, a2, 8 # 41a: 802211
|
||||
or a15, a15, a2 # 41d: 20ff20
|
||||
extui a15, a15, 0, 16 # 420: f0f0f4
|
||||
beqz a15, .Lbr052 # 423: 16ff05
|
||||
slli a3, a15, 2 # 426: e03f11
|
||||
blt a12, a3, .Lbr052 # 429: 372c59
|
||||
blti a15, 1, .Lbr045 # 42c: a61f1d
|
||||
movi a4, 0 /* 0x00000000 */ # 42f: 0c04
|
||||
s32i a4, sp, 20 /* 0x00000000 -> [(local5)] */ # 431: 4951
|
||||
.Lbr044: mov a2, a13 # 433: 2d0d
|
||||
call0 .Lfunc004 # 435: c5ceff
|
||||
addi a13, a13, 4 # 438: 4bdd
|
||||
addi a12, a12, -4 # 43a: c2ccfc
|
||||
l32i a5, sp, 20 /* [(local5)] */ # 43d: 5851
|
||||
l32i a6, a14, 12 /* [arg2+0xc] */ # 43f: 683e
|
||||
addi a5, a5, 1 /* [(local5)]+0x1 */ # 441: 1b55
|
||||
or a6, a6, a2 # 443: 206620
|
||||
s32i a6, a14, 12 /* a6 -> [arg2+0xc] */ # 446: 693e
|
||||
s32i a5, sp, 20 /* [(local5)]+0x1 -> [(local5)] */ # 448: 5951
|
||||
bne a15, a5, .Lbr044 # 44a: 579fe5
|
||||
.Lbr045: blti a12, 2, .Lbr046 # 44d: a62c10
|
||||
l8ui a8, a13, 1 # 450: 820d01
|
||||
l8ui a7, a13, 0 # 453: 720d00
|
||||
slli a8, a8, 8 # 456: 808811
|
||||
or a7, a7, a8 # 459: 807720
|
||||
extui a7, a7, 0, 16 # 45c: 7070f4
|
||||
s32i a7, a14, 16 /* a7 -> [arg2+0x10] */ # 45f: 794e
|
||||
.Lbr046: movi a2, 0 /* 0x00000000 */ # 461: 0c02
|
||||
j .Lbr035 # 463: 46caff
|
||||
.Lbr047: bgei a15, 1, .Lbr048 # 466: e61f02
|
||||
j .Lbr039 # 469: 86d4ff
|
||||
.Lbr048: movi a2, -3 /* 0xfffffffd */ # 46c: 7cd2
|
||||
j .Lbr035 # 46e: 86c7ff
|
||||
.Lbr049: bnei a12, 1, .Lbr043 # 471: 661c95
|
||||
movi a2, -5 /* 0xfffffffb */ # 474: 7cb2
|
||||
j .Lbr035 # 476: 86c5ff
|
||||
.Lbr050: bnei a12, 1, .Lbr045 # 479: 661cd0
|
||||
movi a2, -7 /* 0xfffffff9 */ # 47c: 7c92
|
||||
j .Lbr035 # 47e: 86c3ff
|
||||
.Lbr051: movi a2, -4 /* 0xfffffffc */ # 481: 7cc2
|
||||
j .Lbr035 # 483: 46c2ff
|
||||
.Lbr052: movi a2, -6 /* 0xfffffffa */ # 486: 7ca2
|
||||
j .Lbr035 # 488: 06c1ff
|
||||
|
||||
.literal_position # 48c: 00000000
|
||||
# 490: 00000000
|
||||
# 494: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x498
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_wpa_eapol_key_mic
|
||||
.type sdk_wpa_eapol_key_mic, @function
|
||||
sdk_wpa_eapol_key_mic:
|
||||
addi sp, sp, -48 /* (FP)-0x30 */ # 498: 12c1d0
|
||||
s32i a0, sp, 36 /* a0 -> [(local1)] */ # 49b: 0991
|
||||
beqi a3, 1, .Lbr054 # 49d: 261309
|
||||
s32i a6, sp, 32 /* arg4 -> [(local0)] */ # 4a0: 6981
|
||||
beqi a3, 2, .Lbr056 # 4a2: 262313
|
||||
.Lbr053: movi a2, -1 /* 0xffffffff */ # 4a5: 7cf2
|
||||
j .Lbr055 # 4a7: c60100
|
||||
.Lbr054: movi a3, 16 /* 0x00000010 */ # 4aa: 1c03
|
||||
call0 sdk_hmac_md5 # 4ac: 01f8ffc0
|
||||
# 4b0: 0000
|
||||
.Lbr055: l32i a0, sp, 36 /* [(local1)] */ # 4b2: 0891
|
||||
addi sp, sp, 48 /* (top of frame) */ # 4b4: 12c130
|
||||
ret # 4b7: 0df0
|
||||
.Lbr056: movi a3, 16 /* 0x00000010 */ # 4b9: 1c03
|
||||
mov a6, sp /* (FP)-0x30 */ # 4bb: 6d01
|
||||
call0 sdk_hmac_sha1 # 4bd: 01f4ffc0
|
||||
# 4c1: 0000
|
||||
bnez a2, .Lbr053 # 4c3: 56e2fd
|
||||
l32i a2, sp, 32 /* [(local0)] */ # 4c6: 2881
|
||||
mov a3, sp /* (FP)-0x30 */ # 4c8: 3d01
|
||||
movi a4, 16 /* 0x00000010 */ # 4ca: 1c04
|
||||
call0 memcpy # 4cc: 01f2ffc0
|
||||
# 4d0: 0000
|
||||
movi a2, 0 /* 0x00000000 */ # 4d2: 0c02
|
||||
j .Lbr055 # 4d4: 86f6ff
|
||||
|
||||
.literal_position # 4d8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x4dc
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_compare_rsn_ie
|
||||
.type sdk_wpa_compare_rsn_ie, @function
|
||||
sdk_wpa_compare_rsn_ie:
|
||||
addi sp, sp, -16 /* (local0) */ # 4dc: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 4df: 0901
|
||||
beqz a3, .Lbr057 # 4e1: 9c43
|
||||
beqz a5, .Lbr057 # 4e3: 9c25
|
||||
bne a4, a6, .Lbr057 # 4e5: 679410
|
||||
mov a2, a3 /* arg1 */ # 4e8: 2d03
|
||||
mov a3, a5 /* arg3 */ # 4ea: 3d05
|
||||
call0 memcmp # 4ec: 01fbffc0
|
||||
# 4f0: 0000
|
||||
bnez a2, .Lbr057 # 4f2: cc32
|
||||
movi a2, 0 /* 0x00000000 */ # 4f4: 0c02
|
||||
j .Lbr058 # 4f6: 460000
|
||||
.Lbr057: movi a2, -1 /* 0xffffffff */ # 4f9: 7cf2
|
||||
.Lbr058: l32i a0, sp, 0 /* [(local0)] */ # 4fb: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 4fd: 12c110
|
||||
ret # 500: 0df0
|
||||
|
||||
.literal_position # 504: 00000000
|
||||
# 508: 00000000
|
||||
# 50c: 00000000
|
||||
# 510: 00000000
|
||||
# 514: 00000000
|
||||
# 518: 00000000
|
||||
# 51c: 00000000
|
||||
# 520: 00000000
|
||||
# 524: 00000000
|
||||
# 528: 00000000
|
||||
# 52c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x530
|
||||
# Local variables/stack:
|
||||
# (local0): word[24] @ -0x80
|
||||
# (local1): word @ -0x20
|
||||
# (local2): word @ -0x1c
|
||||
# (local3): word @ -0x18
|
||||
# (local4): word @ -0x14
|
||||
# (local5): word @ -0x10
|
||||
# (local6): word @ -0xc
|
||||
# (local7): word @ -0x8
|
||||
# (local8): word @ -0x4
|
||||
.global sdk_wpa_pmk_to_ptk
|
||||
.type sdk_wpa_pmk_to_ptk, @function
|
||||
sdk_wpa_pmk_to_ptk:
|
||||
addi sp, sp, -128 /* (local0) */ # 530: 12c180
|
||||
s32i a15, sp, 124 /* a15 -> [(local8)] */ # 533: f2611f
|
||||
s32i a0, sp, 108 /* a0 -> [(local4)] */ # 536: 02611b
|
||||
s32i a4, sp, 104 /* arg2 -> [(local3)] */ # 539: 42611a
|
||||
s32i a13, sp, 116 /* a13 -> [(local6)] */ # 53c: d2611d
|
||||
s32i a14, sp, 120 /* a14 -> [(local7)] */ # 53f: e2611e
|
||||
s32i a3, sp, 100 /* arg1 -> [(local2)] */ # 542: 326119
|
||||
s32i a12, sp, 112 /* a12 -> [(local5)] */ # 545: c2611c
|
||||
s32i a2, sp, 96 /* arg0 -> [(local1)] */ # 548: 226118
|
||||
mov a12, a7 /* arg5 */ # 54b: cd07
|
||||
mov a2, a5 /* arg3 */ # 54d: 2d05
|
||||
mov a3, a6 /* arg4 */ # 54f: 3d06
|
||||
mov a14, a5 /* arg3 */ # 551: ed05
|
||||
mov a13, a6 /* arg4 */ # 553: dd06
|
||||
movi a4, 6 /* 0x00000006 */ # 555: 0c64
|
||||
call0 memcmp # 557: 01ebffc0
|
||||
# 55b: 0000
|
||||
addi a15, sp, 22 /* (FP)-0x6a */ # 55d: f2c116
|
||||
bgez a2, .Lbr059 # 560: d6b201
|
||||
mov a3, a14 /* arg3 */ # 563: 3d0e
|
||||
addi a2, sp, 16 /* (FP)-0x70 */ # 565: 22c110
|
||||
movi a4, 6 /* 0x00000006 */ # 568: 0c64
|
||||
call0 memcpy # 56a: 01e7ffc0
|
||||
# 56e: 0000
|
||||
mov a3, a13 /* arg4 */ # 570: 3d0d
|
||||
mov a2, a15 /* (FP)-0x6a */ # 572: 2d0f
|
||||
movi a4, 6 /* 0x00000006 */ # 574: 0c64
|
||||
call0 memcpy # 576: 01e5ffc0
|
||||
# 57a: 0000
|
||||
j .Lbr060 # 57c: 060600
|
||||
.Lbr059: mov a3, a13 /* arg4 */ # 57f: 3d0d
|
||||
addi a2, sp, 16 /* (FP)-0x70 */ # 581: 22c110
|
||||
movi a4, 6 /* 0x00000006 */ # 584: 0c64
|
||||
call0 memcpy # 586: 01e2ffc0
|
||||
# 58a: 0000
|
||||
mov a3, a14 /* arg3 */ # 58c: 3d0e
|
||||
mov a2, a15 /* (FP)-0x6a */ # 58e: 2d0f
|
||||
movi a4, 6 /* 0x00000006 */ # 590: 0c64
|
||||
call0 memcpy # 592: 01e0ffc0
|
||||
# 596: 0000
|
||||
.Lbr060: mov a2, a12 /* arg5 */ # 598: 2d0c
|
||||
l32i a14, sp, 128 /* [(local9)] */ # 59a: e22120
|
||||
movi a4, 32 /* 0x00000020 */ # 59d: 2c04
|
||||
mov a3, a14 /* [(local9)] */ # 59f: 3d0e
|
||||
call0 memcmp # 5a1: 01ddffc0
|
||||
# 5a5: 0000
|
||||
addi a13, sp, 60 /* (FP)-0x44 */ # 5a7: d2c13c
|
||||
mov a15, a2 # 5aa: fd02
|
||||
addi a2, sp, 28 /* (FP)-0x64 */ # 5ac: 22c11c
|
||||
bgez a15, .Lbr061 # 5af: d68f01
|
||||
mov a3, a12 /* arg5 */ # 5b2: 3d0c
|
||||
movi a4, 32 /* 0x00000020 */ # 5b4: 2c04
|
||||
call0 memcpy # 5b6: 01d9ffc0
|
||||
# 5ba: 0000
|
||||
mov a3, a14 /* [(local9)] */ # 5bc: 3d0e
|
||||
mov a2, a13 /* (FP)-0x44 */ # 5be: 2d0d
|
||||
movi a4, 32 /* 0x00000020 */ # 5c0: 2c04
|
||||
call0 memcpy # 5c2: 01d7ffc0
|
||||
# 5c6: 0000
|
||||
j .Lbr062 # 5c8: 460500
|
||||
.Lbr061: mov a3, a14 /* [(local9)] */ # 5cb: 3d0e
|
||||
movi a4, 32 /* 0x00000020 */ # 5cd: 2c04
|
||||
call0 memcpy # 5cf: 01d5ffc0
|
||||
# 5d3: 0000
|
||||
mov a3, a12 /* arg5 */ # 5d5: 3d0c
|
||||
mov a2, a13 /* (FP)-0x44 */ # 5d7: 2d0d
|
||||
movi a4, 32 /* 0x00000020 */ # 5d9: 2c04
|
||||
call0 memcpy # 5db: 01d3ffc0
|
||||
# 5df: 0000
|
||||
.Lbr062: l32i a2, sp, 96 /* [(local1)] */ # 5e1: 222118
|
||||
l32i a3, sp, 100 /* [(local2)] */ # 5e4: 322119
|
||||
l32i a4, sp, 104 /* [(local3)] */ # 5e7: 42211a
|
||||
l32i a7, sp, 132 /* [(FP)+0x4] */ # 5ea: 722121
|
||||
addi a5, sp, 16 /* (FP)-0x70 */ # 5ed: 52c110
|
||||
movi a6, 76 /* 0x0000004c */ # 5f0: 4cc6
|
||||
l32i a0, sp, 136 /* [(FP)+0x8] */ # 5f2: 022122
|
||||
s32i a0, sp, 0 /* [(FP)+0x8] -> [(local0)] */ # 5f5: 0901
|
||||
call0 sdk_sha1_prf # 5f7: 01cdffc0
|
||||
# 5fb: 0000
|
||||
l32i a12, sp, 112 /* [(local5)] */ # 5fd: c2211c
|
||||
l32i a13, sp, 116 /* [(local6)] */ # 600: d2211d
|
||||
l32i a14, sp, 120 /* [(local7)] */ # 603: e2211e
|
||||
l32i a15, sp, 124 /* [(local8)] */ # 606: f2211f
|
||||
movi a2, 128 /* 0x00000080 */ # 609: 22a080
|
||||
l32i a0, sp, 108 /* [(local4)] */ # 60c: 02211b
|
||||
add sp, sp, a2 /* (local9) */ # 60f: 2a11
|
||||
ret /* 0x00000080 */ # 611: 0df0
|
||||
|
||||
.literal_position # 614: 00000000
|
||||
# 618: 00000000
|
||||
# 61c: 00000000
|
||||
# 620: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x624
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x40
|
||||
# (local1): word @ -0x3c
|
||||
# (local2): word[10] @ -0x38
|
||||
# (local3): word @ -0x10
|
||||
# (local4): word[3] @ -0xc
|
||||
.global sdk_rsn_pmkid
|
||||
.type sdk_rsn_pmkid, @function
|
||||
sdk_rsn_pmkid:
|
||||
addi sp, sp, -64 /* (local0) */ # 624: 12c1c0
|
||||
addi a7, sp, 16 /* (FP)-0x30 */ # 627: 72c110
|
||||
s32i a0, sp, 52 /* a0 -> [(local4)] */ # 62a: 09d1
|
||||
s32i a6, sp, 48 /* arg4 -> [(local3)] */ # 62c: 69c1
|
||||
s32i a4, sp, 4 /* arg2 -> [(local1)] */ # 62e: 4911
|
||||
s32i a5, sp, 8 /* arg3 -> [(local2)] */ # 630: 5921
|
||||
movi a4, 3 /* 0x00000003 */ # 632: 0c34
|
||||
mov a5, sp /* (local0) */ # 634: 5d01
|
||||
movi a6, .Ldata001 # 636: 61f8ff
|
||||
movi a0, .Lstr001 # 639: 01f6ff
|
||||
s32i a0, sp, 0 /* .Lstr001 -> [(local0)] */ # 63c: 0901
|
||||
call0 sdk_hmac_sha1_vector # 63e: 01f7ffc0
|
||||
# 642: 0000
|
||||
l32i a2, sp, 48 /* [(local3)] */ # 644: 28c1
|
||||
addi a3, sp, 16 /* (FP)-0x30 */ # 646: 32c110
|
||||
movi a4, 16 /* 0x00000010 */ # 649: 1c04
|
||||
call0 memcpy # 64b: 01f5ffc0
|
||||
# 64f: 0000
|
||||
l32i a0, sp, 52 /* [(local4)] */ # 651: 08d1
|
||||
addi sp, sp, 64 /* (top of frame) */ # 653: 12c140
|
||||
ret # 656: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x658
|
||||
.global sdk_wpa_cipher_key_len
|
||||
.type sdk_wpa_cipher_key_len, @function
|
||||
sdk_wpa_cipher_key_len:
|
||||
beqi a2, 2, .Lbr063 # 658: 262214
|
||||
beqi a2, 8, .Lbr064 # 65b: 268215
|
||||
beqi a2, 64, .Lbr064 # 65e: 26d212
|
||||
beqi a2, 128, .Lbr065 # 661: 26e213
|
||||
addmi a4, a2, -256 /* arg0-0x100 */ # 664: 42d2ff
|
||||
movi a3, 13 /* 0x0000000d */ # 667: 0cd3
|
||||
movi a2, 0 /* 0x00000000 */ # 669: 0c02
|
||||
moveqz a2, a3, a4 # 66b: 402383
|
||||
ret # 66e: 0df0
|
||||
.Lbr063: movi a2, 32 /* 0x00000020 */ # 670: 2c02
|
||||
ret /* 0x00000020 */ # 672: 0df0
|
||||
.Lbr064: movi a2, 16 /* 0x00000010 */ # 674: 1c02
|
||||
ret /* 0x00000010 */ # 676: 0df0
|
||||
.Lbr065: movi a2, 5 /* 0x00000005 */ # 678: 0c52
|
||||
ret /* 0x00000005 */ # 67a: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x67c
|
||||
.global sdk_wpa_cipher_to_alg
|
||||
.type sdk_wpa_cipher_to_alg, @function
|
||||
sdk_wpa_cipher_to_alg:
|
||||
beqi a2, 2, .Lbr066 # 67c: 26220f
|
||||
beqi a2, 8, .Lbr068 # 67f: 268214
|
||||
beqi a2, 64, .Lbr069 # 682: 26d215
|
||||
beqi a2, 128, .Lbr067 # 685: 26e20a
|
||||
beqi a2, 0x100, .Lbr067 # 688: 26f207
|
||||
movi a2, 0 /* 0x00000000 */ # 68b: 0c02
|
||||
ret /* 0x00000000 */ # 68d: 0df0
|
||||
.Lbr066: movi a2, 2 /* 0x00000002 */ # 68f: 0c22
|
||||
ret /* 0x00000002 */ # 691: 0df0
|
||||
.Lbr067: movi a2, 6 /* 0x00000006 */ # 693: 0c62
|
||||
ret /* 0x00000006 */ # 695: 0df0
|
||||
.Lbr068: movi a2, 3 /* 0x00000003 */ # 697: 0c32
|
||||
ret /* 0x00000003 */ # 699: 0df0
|
||||
.Lbr069: movi a2, 9 /* 0x00000009 */ # 69b: 0c92
|
||||
ret /* 0x00000009 */ # 69d: 0df0
|
||||
|
||||
.literal_position # 6a0: 04f25000
|
||||
# 6a4: 04ac0f00
|
||||
# 6a8: 08ac0f00
|
||||
# 6ac: 02f25000
|
||||
# 6b0: 02ac0f00
|
||||
# 6b4: 05f25000
|
||||
# 6b8: 05ac0f00
|
||||
# 6bc: 01f25000
|
||||
# 6c0: 01ac0f00
|
||||
# 6c4: 00f25000
|
||||
# 6c8: 00ac0f00
|
||||
|
||||
# Function @ .irom0.text+0x6cc
|
||||
.global sdk_wpa_cipher_to_suite
|
||||
.type sdk_wpa_cipher_to_suite, @function
|
||||
sdk_wpa_cipher_to_suite:
|
||||
bbci a3, 3, .Lbr073 # 6cc: 376314
|
||||
movi a5, 0x000fac04 # 6cf: 51f5ff
|
||||
movi a3, 0x0050f204 # 6d2: 31f3ff
|
||||
.Lbr070: addi a4, a2, -2 /* arg0-0x2 */ # 6d5: 42c2fe
|
||||
moveqz a3, a5, a4 # 6d8: 403583
|
||||
j .Lbr072 # 6db: 460000
|
||||
.Lbr071: movi a3, 0 /* 0x00000000 */ # 6de: 0c03
|
||||
.Lbr072: mov a2, a3 # 6e0: 2d03
|
||||
ret # 6e2: 0df0
|
||||
.Lbr073: bbci a3, 6, .Lbr074 # 6e4: 676305
|
||||
movi a3, 0x000fac08 # 6e7: 31f0ff
|
||||
j .Lbr072 # 6ea: 86fcff
|
||||
.Lbr074: bbci a3, 1, .Lbr075 # 6ed: 176308
|
||||
movi a5, 0x000fac02 # 6f0: 51f0ff
|
||||
movi a3, 0x0050f202 # 6f3: 31eeff
|
||||
j .Lbr070 # 6f6: c6f6ff
|
||||
.Lbr075: bbci a3, 8, .Lbr076 # 6f9: 876308
|
||||
movi a5, 0x000fac05 # 6fc: 51efff
|
||||
movi a3, 0x0050f205 # 6ff: 31edff
|
||||
j .Lbr070 # 702: c6f3ff
|
||||
.Lbr076: bbci a3, 7, .Lbr077 # 705: 776308
|
||||
movi a5, 0x000fac01 # 708: 51eeff
|
||||
movi a3, 0x0050f201 # 70b: 31ecff
|
||||
j .Lbr070 # 70e: c6f0ff
|
||||
.Lbr077: bbci a3, 0, .Lbr071 # 711: 0763c9
|
||||
movi a5, 0x000fac00 # 714: 51edff
|
||||
movi a3, 0x0050f200 # 717: 31ebff
|
||||
j .Lbr070 # 71a: c6edff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x720
|
||||
.global sdk_rsn_cipher_put_suites
|
||||
.type sdk_rsn_cipher_put_suites, @function
|
||||
sdk_rsn_cipher_put_suites:
|
||||
movi a8, 15 /* 0x0000000f */ # 720: 0cf8
|
||||
movi a9, 8 /* 0x00000008 */ # 722: 0c89
|
||||
movi a7, -84 /* 0xffffffac */ # 724: 72afac
|
||||
movi a6, 0 /* 0x00000000 */ # 727: 0c06
|
||||
bbci a3, 3, .Lbr078 # 729: 376314
|
||||
movi a5, 1 /* 0x00000001 */ # 72c: 0c15
|
||||
s8i a6, a2, 0 /* 0x00 -> [arg0] */ # 72e: 624200
|
||||
s8i a8, a2, 1 /* 0x0f -> [arg0+0x1] */ # 731: 824201
|
||||
movi a4, 4 /* 0x00000004 */ # 734: 0c44
|
||||
s8i a7, a2, 2 /* 0xac -> [arg0+0x2] */ # 736: 724202
|
||||
s8i a4, a2, 3 /* 0x04 -> [arg0+0x3] */ # 739: 424203
|
||||
addi a2, a2, 4 /* arg0+0x4 */ # 73c: 4b22
|
||||
j .Lbr079 # 73e: 460000
|
||||
.Lbr078: mov a5, a6 /* 0x00000000 */ # 741: 5d06
|
||||
.Lbr079: bbci a3, 6, .Lbr080 # 743: 67630f
|
||||
addi a5, a5, 1 # 746: 1b55
|
||||
s8i a9, a2, 3 # 748: 924203
|
||||
s8i a6, a2, 0 # 74b: 624200
|
||||
s8i a8, a2, 1 # 74e: 824201
|
||||
s8i a7, a2, 2 # 751: 724202
|
||||
addi a2, a2, 4 # 754: 4b22
|
||||
.Lbr080: movi a9, 2 /* 0x00000002 */ # 756: 0c29
|
||||
bbci a3, 1, .Lbr081 # 758: 17630f
|
||||
addi a5, a5, 1 # 75b: 1b55
|
||||
s8i a9, a2, 3 # 75d: 924203
|
||||
s8i a6, a2, 0 # 760: 624200
|
||||
s8i a8, a2, 1 # 763: 824201
|
||||
s8i a7, a2, 2 # 766: 724202
|
||||
addi a2, a2, 4 # 769: 4b22
|
||||
.Lbr081: bbci a3, 0, .Lbr082 # 76b: 07630d
|
||||
s8i a8, a2, 1 # 76e: 824201
|
||||
s8i a7, a2, 2 # 771: 724202
|
||||
s8i a6, a2, 0 # 774: 624200
|
||||
s8i a6, a2, 3 # 777: 624203
|
||||
addi a5, a5, 1 # 77a: 1b55
|
||||
.Lbr082: mov a2, a5 # 77c: 2d05
|
||||
ret # 77e: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x780
|
||||
.global sdk_wpa_cipher_put_suites
|
||||
.type sdk_wpa_cipher_put_suites, @function
|
||||
sdk_wpa_cipher_put_suites:
|
||||
movi a8, -14 /* 0xfffffff2 */ # 780: 7c28
|
||||
movi a7, 80 /* 0x00000050 */ # 782: 5c07
|
||||
movi a9, 2 /* 0x00000002 */ # 784: 0c29
|
||||
movi a6, 0 /* 0x00000000 */ # 786: 0c06
|
||||
bbci a3, 3, .Lbr083 # 788: 376314
|
||||
movi a5, 1 /* 0x00000001 */ # 78b: 0c15
|
||||
s8i a6, a2, 0 /* 0x00 -> [arg0] */ # 78d: 624200
|
||||
s8i a7, a2, 1 /* 0x50 -> [arg0+0x1] */ # 790: 724201
|
||||
movi a4, 4 /* 0x00000004 */ # 793: 0c44
|
||||
s8i a8, a2, 2 /* 0xf2 -> [arg0+0x2] */ # 795: 824202
|
||||
s8i a4, a2, 3 /* 0x04 -> [arg0+0x3] */ # 798: 424203
|
||||
addi a2, a2, 4 /* arg0+0x4 */ # 79b: 4b22
|
||||
j .Lbr084 # 79d: 460000
|
||||
.Lbr083: mov a5, a6 /* 0x00000000 */ # 7a0: 5d06
|
||||
.Lbr084: bbci a3, 1, .Lbr085 # 7a2: 17630f
|
||||
addi a5, a5, 1 # 7a5: 1b55
|
||||
s8i a9, a2, 3 # 7a7: 924203
|
||||
s8i a6, a2, 0 # 7aa: 624200
|
||||
s8i a7, a2, 1 # 7ad: 724201
|
||||
s8i a8, a2, 2 # 7b0: 824202
|
||||
addi a2, a2, 4 # 7b3: 4b22
|
||||
.Lbr085: bbci a3, 0, .Lbr086 # 7b5: 07630d
|
||||
s8i a7, a2, 1 # 7b8: 724201
|
||||
s8i a8, a2, 2 # 7bb: 824202
|
||||
s8i a6, a2, 0 # 7be: 624200
|
||||
s8i a6, a2, 3 # 7c1: 624203
|
||||
addi a5, a5, 1 # 7c4: 1b55
|
||||
.Lbr086: mov a2, a5 # 7c6: 2d05
|
||||
ret # 7c8: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "PMK Name" # 0: 504d4b20
|
||||
# 4: 4e616d65
|
||||
# 8: 00
|
||||
|
||||
.section .rodata, "a", @progbits
|
||||
|
||||
.Ldata001: .byte 0x08, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00
|
||||
.byte 0x06, 0x00, 0x00, 0x00
|
16
binary_sdk/libwpa/wpa_debug.S
Normal file
16
binary_sdk/libwpa/wpa_debug.S
Normal file
|
@ -0,0 +1,16 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
# Function @ .irom0.text+0x0
|
||||
.global sdk_eloop_cancel_timeout
|
||||
.type sdk_eloop_cancel_timeout, @function
|
||||
sdk_eloop_cancel_timeout:
|
||||
movi a2, 0 /* 0x00000000 */ # 0: 0c02
|
||||
ret /* 0x00000000 */ # 2: 0df0
|
||||
|
||||
# Function @ .irom0.text+0x4
|
||||
.global sdk_eloop_register_timeout
|
||||
.type sdk_eloop_register_timeout, @function
|
||||
sdk_eloop_register_timeout:
|
||||
movi a2, 0 /* 0x00000000 */ # 4: 0c02
|
||||
ret /* 0x00000000 */ # 6: 0df0
|
350
binary_sdk/libwpa/wpa_ie.S
Normal file
350
binary_sdk/libwpa/wpa_ie.S
Normal file
|
@ -0,0 +1,350 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_parse_wpa_ie
|
||||
.type sdk_wpa_parse_wpa_ie, @function
|
||||
sdk_wpa_parse_wpa_ie:
|
||||
addi sp, sp, -16 /* (local0) */ # 8: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # b: 0901
|
||||
beqz a3, .Lbr001 # d: 8cf3
|
||||
l8ui a0, a2, 0 /* [arg0] */ # f: 020200
|
||||
movi a5, 48 /* 0x00000030 */ # 12: 3c05
|
||||
bne a0, a5, .Lbr001 # 14: 579008
|
||||
call0 sdk_wpa_parse_wpa_ie_rsn # 17: 01faffc0
|
||||
# 1b: 0000
|
||||
j .Lbr002 # 1d: 460100
|
||||
.Lbr001: call0 sdk_wpa_parse_wpa_ie_wpa # 20: 01f9ffc0
|
||||
# 24: 0000
|
||||
.Lbr002: l32i a0, sp, 0 /* [(local0)] */ # 26: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 28: 12c110
|
||||
ret # 2b: 0df0
|
||||
|
||||
.literal_position # 30: 01f25000
|
||||
# 34: 04ac0f00
|
||||
# 38: 01ac0f00
|
||||
# 3c: 03ac0f00
|
||||
|
||||
# Function @ .irom0.text+0x40
|
||||
.Lfunc001: l8ui a7, a2, 1 /* [arg0+0x1] */ # 40: 720201
|
||||
l8ui a5, a2, 5 /* [arg0+0x5] */ # 43: 520205
|
||||
bnez a7, .Lbr003 # 46: cc27
|
||||
movi a2, 1 /* 0x00000001 */ # 48: 0c12
|
||||
ret /* 0x00000001 */ # 4a: 0df0
|
||||
.Lbr003: bltui a7, 6, .Lbr004 # 4c: b66737
|
||||
l8ui a8, a2, 2 /* [arg0+0x2] */ # 4f: 820202
|
||||
l8ui a9, a2, 3 /* [arg0+0x3] */ # 52: 920203
|
||||
l8ui a6, a2, 4 /* [arg0+0x4] */ # 55: 620204
|
||||
slli a9, a9, 16 # 58: 009911
|
||||
slli a6, a6, 8 # 5b: 806611
|
||||
slli a8, a8, 24 # 5e: 808801
|
||||
or a5, a5, a6 # 61: 605520
|
||||
movi a6, 0x0050f201 # 64: 61f3ff
|
||||
or a8, a8, a9 # 67: 908820
|
||||
or a5, a5, a8 # 6a: 805520
|
||||
bne a5, a6, .Lbr004 # 6d: 679516
|
||||
l8ui a8, a2, 6 /* [arg0+0x6] */ # 70: 820206
|
||||
bnei a8, 1, .Lbr004 # 73: 661810
|
||||
l8ui a9, a2, 7 /* [arg0+0x7] */ # 76: 920207
|
||||
bnez a9, .Lbr004 # 79: cca9
|
||||
s32i a2, a4, 0 /* arg0 -> [arg2] */ # 7b: 2904
|
||||
l8ui a10, a2, 1 /* [arg0+0x1] */ # 7d: a20201
|
||||
addi a10, a10, 2 /* [arg0+0x1]+0x2 */ # 80: 2baa
|
||||
s32i a10, a4, 4 /* [arg0+0x1]+0x2 -> [arg2+0x4] */ # 82: a914
|
||||
j .Lbr007 # 84: c61f00
|
||||
.Lbr004: addi a11, a2, 5 /* arg0+0x5 */ # 87: 5bb2
|
||||
bgeu a11, a3, .Lbr005 # 89: 37bb2f
|
||||
movi a3, 19 /* 0x00000013 */ # 8c: 1c33
|
||||
bgeu a3, a7, .Lbr005 # 8e: 77b32a
|
||||
l8ui a5, a2, 5 /* [arg0+0x5] */ # 91: 520205
|
||||
l8ui a8, a2, 2 /* [arg0+0x2] */ # 94: 820202
|
||||
l8ui a9, a2, 3 /* [arg0+0x3] */ # 97: 920203
|
||||
l8ui a6, a2, 4 /* [arg0+0x4] */ # 9a: 620204
|
||||
slli a9, a9, 16 # 9d: 009911
|
||||
slli a6, a6, 8 # a0: 806611
|
||||
slli a8, a8, 24 # a3: 808801
|
||||
or a5, a5, a6 # a6: 605520
|
||||
movi a6, 0x000fac04 # a9: 61e2ff
|
||||
or a8, a8, a9 # ac: 908820
|
||||
or a5, a5, a8 # af: 805520
|
||||
bne a5, a6, .Lbr005 # b2: 679506
|
||||
addi a7, a2, 6 /* arg0+0x6 */ # b5: 6b72
|
||||
s32i a7, a4, 16 /* arg0+0x6 -> [arg2+0x10] */ # b7: 7944
|
||||
j .Lbr007 # b9: 861200
|
||||
.Lbr005: bltui a7, 7, .Lbr007 # bc: b67747
|
||||
movi a8, 0x000fac01 # bf: 81deff
|
||||
l8ui a6, a2, 3 /* [arg0+0x3] */ # c2: 620203
|
||||
l8ui a5, a2, 4 /* [arg0+0x4] */ # c5: 520204
|
||||
l8ui a3, a2, 5 /* [arg0+0x5] */ # c8: 320205
|
||||
slli a5, a5, 8 # cb: 805511
|
||||
or a3, a3, a5 # ce: 503320
|
||||
l8ui a5, a2, 2 /* [arg0+0x2] */ # d1: 520202
|
||||
slli a6, a6, 16 # d4: 006611
|
||||
slli a5, a5, 24 # d7: 805501
|
||||
or a5, a5, a6 # da: 605520
|
||||
or a3, a3, a5 # dd: 503320
|
||||
bne a3, a8, .Lbr006 # e0: 87930e
|
||||
addi a7, a2, 6 /* arg0+0x6 */ # e3: 6b72
|
||||
s32i a7, a4, 20 /* arg0+0x6 -> [arg2+0x14] */ # e5: 7954
|
||||
l8ui a6, a2, 1 /* [arg0+0x1] */ # e7: 620201
|
||||
addi a6, a6, -4 /* [arg0+0x1]-0x4 */ # ea: 62c6fc
|
||||
s32i a6, a4, 24 /* [arg0+0x1]-0x4 -> [arg2+0x18] */ # ed: 6964
|
||||
j .Lbr007 # ef: 060500
|
||||
.Lbr006: bltui a7, 7, .Lbr007 # f2: b67711
|
||||
movi a8, 0x000fac03 # f5: 81d1ff
|
||||
bne a3, a8, .Lbr007 # f8: 87930b
|
||||
addi a10, a2, 6 /* arg0+0x6 */ # fb: 6ba2
|
||||
s32i a10, a4, 28 /* arg0+0x6 -> [arg2+0x1c] */ # fd: a974
|
||||
l8ui a9, a2, 1 /* [arg0+0x1] */ # ff: 920201
|
||||
addi a9, a9, -4 /* [arg0+0x1]-0x4 */ # 102: 92c9fc
|
||||
s32i a9, a4, 32 /* [arg0+0x1]-0x4 -> [arg2+0x20] */ # 105: 9984
|
||||
.Lbr007: movi a2, 0 /* 0x00000000 */ # 107: 0c02
|
||||
ret /* 0x00000000 */ # 109: 0df0
|
||||
|
||||
.literal_position # 10c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x110
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_wpa_supplicant_parse_ies
|
||||
.type sdk_wpa_supplicant_parse_ies, @function
|
||||
sdk_wpa_supplicant_parse_ies:
|
||||
addi sp, sp, -32 /* (local0) */ # 110: 12c1e0
|
||||
s32i a15, sp, 24 /* a15 -> [(local6)] */ # 113: f961
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 115: 0921
|
||||
s32i a14, sp, 20 /* a14 -> [(local5)] */ # 117: e951
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 119: d941
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 11b: c931
|
||||
mov a13, a4 /* arg2 */ # 11d: dd04
|
||||
mov a12, a2 /* arg0 */ # 11f: cd02
|
||||
mov a14, a3 /* arg1 */ # 121: ed03
|
||||
mov a2, a4 /* arg2 */ # 123: 2d04
|
||||
movi a3, 0 /* 0x00000000 */ # 125: 0c03
|
||||
movi a4, 36 /* 0x00000024 */ # 127: 2c44
|
||||
call0 memset # 129: 01f8ffc0
|
||||
# 12d: 0000
|
||||
s32i a13, sp, 4 /* arg2 -> [(local1)] */ # 12f: d911
|
||||
blti a14, 2, .Lbr015 # 131: a62e70
|
||||
movi a15, 48 /* 0x00000030 */ # 134: 3c0f
|
||||
movi a2, 0 /* 0x00000000 */ # 136: 0c02
|
||||
add a13, a12, a14 # 138: eadc
|
||||
movi a14, 221 /* 0x000000dd */ # 13a: e2a0dd
|
||||
addi a0, a13, -1 # 13d: 0b0d
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 13f: 0901
|
||||
.Lbr008: l8ui a0, a12, 0 # 141: 020c00
|
||||
l8ui a3, a12, 1 # 144: 320c01
|
||||
bne a0, a14, .Lbr009 # 147: e7900c
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 14a: 3801
|
||||
beq a3, a12, .Lbr014 # 14c: c71346
|
||||
l8ui a3, a12, 1 # 14f: 320c01
|
||||
bnez a3, .Lbr009 # 152: cc13
|
||||
j .Lbr014 # 154: 860f00
|
||||
.Lbr009: add a3, a3, a12 # 157: ca33
|
||||
addi a3, a3, 2 # 159: 2b33
|
||||
bltu a13, a3, .Lbr013 # 15b: 373d35
|
||||
bne a0, a15, .Lbr012 # 15e: f7901b
|
||||
l32i a5, sp, 4 /* [(local1)] */ # 161: 5811
|
||||
s32i a12, a5, 8 /* a12 -> [[(local1)]+0x8] */ # 163: c925
|
||||
l8ui a4, a12, 1 # 165: 420c01
|
||||
addi a4, a4, 2 # 168: 2b44
|
||||
s32i a4, a5, 12 /* a4 -> [[(local1)]+0xc] */ # 16a: 4935
|
||||
.Lbr010: l8ui a3, a12, 1 # 16c: 320c01
|
||||
add a3, a3, a12 # 16f: ca33
|
||||
addi a3, a3, 2 # 171: 2b33
|
||||
.Lbr011: mov a12, a3 # 173: cd03
|
||||
addi a4, a3, 1 # 175: 1b43
|
||||
bltu a4, a13, .Lbr008 # 177: d734c6
|
||||
j .Lbr014 # 17a: 060600
|
||||
.Lbr012: bne a0, a14, .Lbr011 # 17d: e790f2
|
||||
mov a2, a12 # 180: 2d0c
|
||||
mov a3, a13 # 182: 3d0d
|
||||
l32i a4, sp, 4 /* [(local1)] */ # 184: 4811
|
||||
call0 .Lfunc001 # 186: 85ebff
|
||||
bltz a2, .Lbr014 # 189: 969200
|
||||
blti a2, 1, .Lbr010 # 18c: a612dc
|
||||
movi a2, 0 /* 0x00000000 */ # 18f: 0c02
|
||||
j .Lbr014 # 191: 460000
|
||||
.Lbr013: movi a2, -1 /* 0xffffffff */ # 194: 7cf2
|
||||
.Lbr014: l32i a12, sp, 12 /* [(local3)] */ # 196: c831
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 198: d841
|
||||
l32i a14, sp, 20 /* [(local5)] */ # 19a: e851
|
||||
l32i a15, sp, 24 /* [(local6)] */ # 19c: f861
|
||||
l32i a0, sp, 8 /* [(local2)] */ # 19e: 0821
|
||||
addi sp, sp, 32 /* (top of frame) */ # 1a0: 12c120
|
||||
ret # 1a3: 0df0
|
||||
.Lbr015: movi a2, 0 /* 0x00000000 */ # 1a5: 0c02
|
||||
j .Lbr014 # 1a7: c6faff
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x1ac
|
||||
.Lfunc002: movi a7, 23 /* 0x00000017 */ # 1ac: 1c77
|
||||
bgeu a7, a3, .Lbr023 # 1ae: 37b774
|
||||
movi a9, 4 /* 0x00000004 */ # 1b1: 0c49
|
||||
movi a8, -35 /* 0xffffffdd */ # 1b3: 82afdd
|
||||
movi a3, 1 /* 0x00000001 */ # 1b6: 0c13
|
||||
movi a11, -14 /* 0xfffffff2 */ # 1b8: 7c2b
|
||||
movi a10, 80 /* 0x00000050 */ # 1ba: 5c0a
|
||||
s8i a10, a2, 3 /* 0x50 -> [arg0+0x3] */ # 1bc: a24203
|
||||
s8i a11, a2, 4 /* 0xf2 -> [arg0+0x4] */ # 1bf: b24204
|
||||
s8i a3, a2, 5 /* 0x01 -> [arg0+0x5] */ # 1c2: 324205
|
||||
s8i a8, a2, 0 /* 0xdd -> [arg0] */ # 1c5: 824200
|
||||
s8i a3, a2, 6 /* 0x01 -> [arg0+0x6] */ # 1c8: 324206
|
||||
movi a8, 0 /* 0x00000000 */ # 1cb: 0c08
|
||||
s8i a8, a2, 2 /* 0x00 -> [arg0+0x2] */ # 1cd: 824202
|
||||
s8i a8, a2, 7 /* 0x00 -> [arg0+0x7] */ # 1d0: 824207
|
||||
bnei a5, 8, .Lbr017 # 1d3: 66850e
|
||||
s8i a9, a2, 11 /* 0x04 -> [arg0+0xb] */ # 1d6: 92420b
|
||||
.Lbr016: s8i a8, a2, 8 /* 0x00 -> [arg0+0x8] */ # 1d9: 824208
|
||||
s8i a10, a2, 9 /* 0x50 -> [arg0+0x9] */ # 1dc: a24209
|
||||
s8i a11, a2, 10 /* 0xf2 -> [arg0+0xa] */ # 1df: b2420a
|
||||
j .Lbr020 # 1e2: c60600
|
||||
.Lbr017: bnei a5, 2, .Lbr018 # 1e5: 662507
|
||||
movi a5, 2 /* 0x00000002 */ # 1e8: 0c25
|
||||
s8i a5, a2, 11 /* 0x02 -> [arg0+0xb] */ # 1ea: 52420b
|
||||
j .Lbr016 # 1ed: 06faff
|
||||
.Lbr018: bnei a5, 0x100, .Lbr021 # 1f0: 66f51e
|
||||
s8i a8, a2, 8 /* 0x00 -> [arg0+0x8] */ # 1f3: 824208
|
||||
s8i a10, a2, 9 /* 0x50 -> [arg0+0x9] */ # 1f6: a24209
|
||||
s8i a11, a2, 10 /* 0xf2 -> [arg0+0xa] */ # 1f9: b2420a
|
||||
movi a5, 5 /* 0x00000005 */ # 1fc: 0c55
|
||||
.Lbr019: s8i a5, a2, 11 /* a5 -> [arg0+0xb] */ # 1fe: 52420b
|
||||
.Lbr020: s8i a3, a2, 12 /* 0x01 -> [arg0+0xc] */ # 201: 32420c
|
||||
s8i a8, a2, 13 /* 0x00 -> [arg0+0xd] */ # 204: 82420d
|
||||
beqi a4, 8, .Lbr025 # 207: 268424
|
||||
bnei a4, 2, .Lbr024 # 20a: 66241c
|
||||
movi a9, 2 /* 0x00000002 */ # 20d: 0c29
|
||||
j .Lbr025 # 20f: 060700
|
||||
.Lbr021: bnei a5, 128, .Lbr023 # 212: 66e510
|
||||
s8i a8, a2, 8 /* 0x00 -> [arg0+0x8] */ # 215: 824208
|
||||
s8i a10, a2, 9 /* 0x50 -> [arg0+0x9] */ # 218: a24209
|
||||
s8i a11, a2, 10 /* 0xf2 -> [arg0+0xa] */ # 21b: b2420a
|
||||
mov a5, a3 /* 0x00000001 */ # 21e: 5d03
|
||||
j .Lbr019 # 220: 86f6ff
|
||||
.Lbr022: beqi a6, 16, .Lbr026 # 223: 26b625
|
||||
.Lbr023: movi a2, -1 /* 0xffffffff */ # 226: 7cf2
|
||||
ret /* 0xffffffff */ # 228: 0df0
|
||||
.Lbr024: bnei a4, 1, .Lbr023 # 22a: 6614f8
|
||||
mov a9, a8 /* 0x00000000 */ # 22d: 9d08
|
||||
.Lbr025: s8i a9, a2, 17 /* a9 -> [arg0+0x11] */ # 22f: 924211
|
||||
s8i a8, a2, 14 /* 0x00 -> [arg0+0xe] */ # 232: 82420e
|
||||
s8i a10, a2, 15 /* 0x50 -> [arg0+0xf] */ # 235: a2420f
|
||||
s8i a11, a2, 16 /* 0xf2 -> [arg0+0x10] */ # 238: b24210
|
||||
s8i a3, a2, 18 /* 0x01 -> [arg0+0x12] */ # 23b: 324212
|
||||
s8i a8, a2, 19 /* 0x00 -> [arg0+0x13] */ # 23e: 824213
|
||||
beqi a6, 1, .Lbr027 # 241: 261609
|
||||
bnei a6, 2, .Lbr022 # 244: 6626db
|
||||
movi a3, 2 /* 0x00000002 */ # 247: 0c23
|
||||
j .Lbr027 # 249: 460000
|
||||
.Lbr026: mov a3, a8 /* 0x00000000 */ # 24c: 3d08
|
||||
.Lbr027: s8i a8, a2, 20 /* 0x00 -> [arg0+0x14] */ # 24e: 824214
|
||||
s8i a10, a2, 21 /* 0x50 -> [arg0+0x15] */ # 251: a24215
|
||||
s8i a11, a2, 22 /* 0xf2 -> [arg0+0x16] */ # 254: b24216
|
||||
movi a6, 22 /* 0x00000016 */ # 257: 1c66
|
||||
s8i a3, a2, 23 /* a3 -> [arg0+0x17] */ # 259: 324217
|
||||
s8i a6, a2, 1 /* 0x16 -> [arg0+0x1] */ # 25c: 624201
|
||||
movi a2, 24 /* 0x00000018 */ # 25f: 1c82
|
||||
ret /* 0x00000018 */ # 261: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x264
|
||||
.Lfunc003: movi a7, 21 /* 0x00000015 */ # 264: 1c57
|
||||
bgeu a7, a3, .Lbr035 # 266: 37b771
|
||||
movi a10, -84 /* 0xffffffac */ # 269: a2afac
|
||||
movi a9, 4 /* 0x00000004 */ # 26c: 0c49
|
||||
movi a3, 1 /* 0x00000001 */ # 26e: 0c13
|
||||
movi a11, 48 /* 0x00000030 */ # 270: 3c0b
|
||||
movi a8, 0 /* 0x00000000 */ # 272: 0c08
|
||||
s8i a8, a2, 3 /* 0x00 -> [arg0+0x3] */ # 274: 824203
|
||||
s8i a11, a2, 0 /* 0x30 -> [arg0] */ # 277: b24200
|
||||
s8i a3, a2, 2 /* 0x01 -> [arg0+0x2] */ # 27a: 324202
|
||||
movi a11, 15 /* 0x0000000f */ # 27d: 0cfb
|
||||
bnei a5, 8, .Lbr029 # 27f: 66850e
|
||||
s8i a9, a2, 7 /* 0x04 -> [arg0+0x7] */ # 282: 924207
|
||||
.Lbr028: s8i a8, a2, 4 /* 0x00 -> [arg0+0x4] */ # 285: 824204
|
||||
s8i a11, a2, 5 /* 0x0f -> [arg0+0x5] */ # 288: b24205
|
||||
s8i a10, a2, 6 /* 0xac -> [arg0+0x6] */ # 28b: a24206
|
||||
j .Lbr032 # 28e: c60600
|
||||
.Lbr029: bnei a5, 2, .Lbr030 # 291: 662507
|
||||
movi a5, 2 /* 0x00000002 */ # 294: 0c25
|
||||
s8i a5, a2, 7 /* 0x02 -> [arg0+0x7] */ # 296: 524207
|
||||
j .Lbr028 # 299: 06faff
|
||||
.Lbr030: bnei a5, 0x100, .Lbr036 # 29c: 66f53f
|
||||
s8i a8, a2, 4 /* 0x00 -> [arg0+0x4] */ # 29f: 824204
|
||||
s8i a11, a2, 5 /* 0x0f -> [arg0+0x5] */ # 2a2: b24205
|
||||
s8i a10, a2, 6 /* 0xac -> [arg0+0x6] */ # 2a5: a24206
|
||||
movi a5, 5 /* 0x00000005 */ # 2a8: 0c55
|
||||
.Lbr031: s8i a5, a2, 7 /* a5 -> [arg0+0x7] */ # 2aa: 524207
|
||||
.Lbr032: s8i a3, a2, 8 /* 0x01 -> [arg0+0x8] */ # 2ad: 324208
|
||||
s8i a8, a2, 9 /* 0x00 -> [arg0+0x9] */ # 2b0: 824209
|
||||
beqi a4, 8, .Lbr034 # 2b3: 26840c
|
||||
bnei a4, 2, .Lbr033 # 2b6: 662404
|
||||
movi a9, 2 /* 0x00000002 */ # 2b9: 0c29
|
||||
j .Lbr034 # 2bb: 060100
|
||||
.Lbr033: bnei a4, 1, .Lbr035 # 2be: 661419
|
||||
mov a9, a8 /* 0x00000000 */ # 2c1: 9d08
|
||||
.Lbr034: s8i a9, a2, 13 /* a9 -> [arg0+0xd] */ # 2c3: 92420d
|
||||
s8i a8, a2, 10 /* 0x00 -> [arg0+0xa] */ # 2c6: 82420a
|
||||
s8i a11, a2, 11 /* 0x0f -> [arg0+0xb] */ # 2c9: b2420b
|
||||
s8i a10, a2, 12 /* 0xac -> [arg0+0xc] */ # 2cc: a2420c
|
||||
s8i a3, a2, 14 /* 0x01 -> [arg0+0xe] */ # 2cf: 32420e
|
||||
s8i a8, a2, 15 /* 0x00 -> [arg0+0xf] */ # 2d2: 82420f
|
||||
beqi a6, 1, .Lbr038 # 2d5: 261619
|
||||
beqi a6, 2, .Lbr037 # 2d8: 262614
|
||||
.Lbr035: movi a2, -1 /* 0xffffffff */ # 2db: 7cf2
|
||||
ret /* 0xffffffff */ # 2dd: 0df0
|
||||
.Lbr036: bnei a5, 128, .Lbr035 # 2df: 66e5f8
|
||||
s8i a8, a2, 4 /* 0x00 -> [arg0+0x4] */ # 2e2: 824204
|
||||
s8i a11, a2, 5 /* 0x0f -> [arg0+0x5] */ # 2e5: b24205
|
||||
s8i a10, a2, 6 /* 0xac -> [arg0+0x6] */ # 2e8: a24206
|
||||
mov a5, a3 /* 0x00000001 */ # 2eb: 5d03
|
||||
j .Lbr031 # 2ed: 46eeff
|
||||
.Lbr037: movi a3, 2 /* 0x00000002 */ # 2f0: 0c23
|
||||
.Lbr038: s8i a11, a2, 17 /* 0x0f -> [arg0+0x11] */ # 2f2: b24211
|
||||
s8i a10, a2, 18 /* 0xac -> [arg0+0x12] */ # 2f5: a24212
|
||||
s8i a3, a2, 19 /* a3 -> [arg0+0x13] */ # 2f8: 324213
|
||||
s8i a8, a2, 16 /* 0x00 -> [arg0+0x10] */ # 2fb: 824210
|
||||
s8i a8, a2, 21 /* 0x00 -> [arg0+0x15] */ # 2fe: 824215
|
||||
movi a6, 20 /* 0x00000014 */ # 301: 1c46
|
||||
s8i a8, a2, 20 /* 0x00 -> [arg0+0x14] */ # 303: 824214
|
||||
s8i a6, a2, 1 /* 0x14 -> [arg0+0x1] */ # 306: 624201
|
||||
movi a2, 22 /* 0x00000016 */ # 309: 1c62
|
||||
ret /* 0x00000016 */ # 30b: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x310
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x20
|
||||
# (local1): word[4] @ -0x10
|
||||
.global sdk_wpa_gen_wpa_ie
|
||||
.type sdk_wpa_gen_wpa_ie, @function
|
||||
sdk_wpa_gen_wpa_ie:
|
||||
addi sp, sp, -32 /* (local0) */ # 310: 12c1e0
|
||||
mov a9, a3 /* arg1 */ # 313: 9d03
|
||||
l32i a5, a2, 0x118 /* [arg0+0x118] */ # 315: 522246
|
||||
l32i a6, a2, 0x11c /* [arg0+0x11c] */ # 318: 622247
|
||||
mov a3, a4 /* arg2 */ # 31b: 3d04
|
||||
s32i a0, sp, 16 /* a0 -> [(local1)] */ # 31d: 0941
|
||||
l32i a0, a2, 0x164 /* [arg0+0x164] */ # 31f: 022259
|
||||
l32i a4, a2, 0x114 /* [arg0+0x114] */ # 322: 422245
|
||||
bnei a0, 2, .Lbr039 # 325: 66200c
|
||||
l32i a7, a2, 0x120 /* [arg0+0x120] */ # 328: 722248
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 32b: 2901
|
||||
mov a2, a9 /* arg1 */ # 32d: 2d09
|
||||
call0 .Lfunc003 # 32f: 45f3ff
|
||||
j .Lbr040 # 332: 060100
|
||||
.Lbr039: mov a2, a9 /* arg1 */ # 335: 2d09
|
||||
call0 .Lfunc002 # 337: 45e7ff
|
||||
.Lbr040: l32i a0, sp, 16 /* [(local1)] */ # 33a: 0841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 33c: 12c120
|
||||
ret # 33f: 0df0
|
414
binary_sdk/libwpa/wpa_main.S
Normal file
414
binary_sdk/libwpa/wpa_main.S
Normal file
|
@ -0,0 +1,414 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
# 8: 00000000
|
||||
# c: 00000000
|
||||
# 10: 00000000
|
||||
# 14: 00000000
|
||||
# 18: 00000000
|
||||
# 1c: 00000000
|
||||
# 20: 00000000
|
||||
# 24: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x28
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x30
|
||||
# (local1): word @ -0x20
|
||||
# (local2): word @ -0x1c
|
||||
# (local3): word @ -0x18
|
||||
# (local4): word @ -0x14
|
||||
# (local5): word @ -0x10
|
||||
# (local6): word[3] @ -0xc
|
||||
.global sdk_ppInstallKey
|
||||
.type sdk_ppInstallKey, @function
|
||||
sdk_ppInstallKey:
|
||||
mov a5, a3 /* arg1 */ # 28: 5d03
|
||||
addi sp, sp, -48 /* (local0) */ # 2a: 12c1d0
|
||||
s32i a14, sp, 36 /* a14 -> [(local6)] */ # 2d: e991
|
||||
l32i a7, sp, 48 /* [(local7)] */ # 2f: 78c1
|
||||
s32i a6, sp, 16 /* arg4 -> [(local1)] */ # 31: 6941
|
||||
s32i a0, sp, 24 /* a0 -> [(local3)] */ # 33: 0961
|
||||
s32i a13, sp, 32 /* a13 -> [(local5)] */ # 35: d981
|
||||
s32i a12, sp, 28 /* a12 -> [(local4)] */ # 37: c971
|
||||
l32i a13, sp, 56 /* [(FP)+0x8] */ # 39: d8e1
|
||||
mov a12, a2 /* arg0 */ # 3b: cd02
|
||||
l32i a0, sp, 52 /* [(FP)+0x4] */ # 3d: 08d1
|
||||
movi a2, 0 /* 0x00000000 */ # 3f: 0c02
|
||||
mov a3, a12 /* arg0 */ # 41: 3d0c
|
||||
s32i a0, sp, 0 /* [(FP)+0x4] -> [(local0)] */ # 43: 0901
|
||||
addi a6, a13, 1 /* [(FP)+0x8]+0x1 */ # 45: 1b6d
|
||||
s32i a6, sp, 20 /* [(FP)+0x8]+0x1 -> [(local2)] */ # 47: 6951
|
||||
call0 sdk_ic_set_key # 49: 01f1ffc0
|
||||
# 4d: 0000
|
||||
movi a0, sdk_g_ic # 4f: 01ecff
|
||||
addi a2, a13, -1 /* [(FP)+0x8]-0x1 */ # 52: 0b2d
|
||||
addx4 a14, a13, a0 # 54: 00eda0
|
||||
bgei a13, 4, .Lbr001 # 57: e64d1d
|
||||
l32i a3, a0, 16 /* [sdk_g_ic+0x10] */ # 5a: 3840
|
||||
l32i a3, a3, 136 /* [[sdk_g_ic+0x10]+0x88] */ # 5c: 322322
|
||||
s8i a2, a3, 233 /* [(FP)+0x8]-0x1 -> [[[sdk_g_ic+0x10]+0x88]+0xe9] */ # 5f: 2243e9
|
||||
l32i a13, a14, 0x18c # 62: d22e63
|
||||
bnez a13, .Lbr003 # 65: ecad
|
||||
movi a2, 160 /* 0x000000a0 */ # 67: 22a0a0
|
||||
call0 malloc # 6a: 01eaffc0
|
||||
# 6e: 0000
|
||||
mov a13, a2 # 70: dd02
|
||||
s32i a2, a14, 0x18c # 72: 226e63
|
||||
j .Lbr003 # 75: 860600
|
||||
.Lbr001: l32i a13, a14, 0x18c # 78: d22e63
|
||||
beqz a13, .Lbr002 # 7b: 8c6d
|
||||
mov a2, a13 # 7d: 2d0d
|
||||
call0 free # 7f: 01e6ffc0
|
||||
# 83: 0000
|
||||
.Lbr002: movi a2, 160 /* 0x000000a0 */ # 85: 22a0a0
|
||||
call0 malloc # 88: 01e5ffc0
|
||||
# 8c: 0000
|
||||
mov a13, a2 # 8e: dd02
|
||||
s32i a2, a14, 0x18c # 90: 226e63
|
||||
.Lbr003: mov a2, a13 # 93: 2d0d
|
||||
movi a3, 160 /* 0x000000a0 */ # 95: 32a0a0
|
||||
call0 bzero # 98: 01e2ffc0
|
||||
# 9c: 0000
|
||||
bnei a12, 2, .Lbr006 # 9e: 662c26
|
||||
movi a0, sdk_tkip # a1: 01d8ff
|
||||
.Lbr004: s32i a0, a13, 152 # a4: 026d26
|
||||
.Lbr005: movi a4, 8 /* 0x00000008 */ # a7: 0c84
|
||||
movi a2, 144 /* 0x00000090 */ # a9: 22a090
|
||||
l32i a3, sp, 20 /* [(local2)] */ # ac: 3851
|
||||
s16i a3, a13, 0 # ae: 325d00
|
||||
add a2, a13, a2 # b1: 2a2d
|
||||
l32i a3, sp, 16 /* [(local1)] */ # b3: 3841
|
||||
call0 memcpy # b5: 01dbffc0
|
||||
# b9: 0000
|
||||
l32i a12, sp, 28 /* [(local4)] */ # bb: c871
|
||||
l32i a13, sp, 32 /* [(local5)] */ # bd: d881
|
||||
l32i a14, sp, 36 /* [(local6)] */ # bf: e891
|
||||
l32i a0, sp, 24 /* [(local3)] */ # c1: 0861
|
||||
addi sp, sp, 48 /* (local7) */ # c3: 12c130
|
||||
ret # c6: 0df0
|
||||
.Lbr006: bnei a12, 3, .Lbr007 # c8: 663c05
|
||||
movi a0, sdk_ccmp # cb: 01cfff
|
||||
j .Lbr004 # ce: 86f4ff
|
||||
.Lbr007: beqi a12, 1, .Lbr008 # d1: 261c02
|
||||
bnei a12, 5, .Lbr005 # d4: 665ccf
|
||||
.Lbr008: movi a0, sdk_wep # d7: 01cdff
|
||||
j .Lbr004 # da: 86f1ff
|
||||
|
||||
.literal_position # e0: 00000000
|
||||
# e4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xe8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc001: mov a3, a2 /* arg0 */ # e8: 3d02
|
||||
movi a2, sdk_g_ic # ea: 21fdff
|
||||
addi sp, sp, -16 /* (local0) */ # ed: 12c1f0
|
||||
l32i a2, a2, 16 /* [sdk_g_ic+0x10] */ # f0: 2842
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # f2: 0901
|
||||
l32i a2, a2, 0 /* [[sdk_g_ic+0x10]] */ # f4: 2802
|
||||
call0 sdk_ieee80211_output_pbuf # f6: 01fbffc0
|
||||
# fa: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # fc: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # fe: 12c110
|
||||
ret # 101: 0df0
|
||||
|
||||
.literal_position # 104: 00000000
|
||||
# 108: 00000000
|
||||
# 10c: 00000000
|
||||
# 110: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x114
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.Lfunc002: movi a3, 192 /* 0x000000c0 */ # 114: 32a0c0
|
||||
addi sp, sp, -16 /* (local0) */ # 117: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 11a: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 11c: 0901
|
||||
mov a12, a2 /* arg0 */ # 11e: cd02
|
||||
movi a2, sdk_g_ic # 120: 21f9ff
|
||||
mov a4, a12 /* arg0 */ # 123: 4d0c
|
||||
l32i a2, a2, 16 /* [sdk_g_ic+0x10] */ # 125: 2842
|
||||
call0 sdk_ieee80211_send_mgmt # 127: 01f9ffc0
|
||||
# 12b: 0000
|
||||
movi a2, sdk_g_ic # 12d: 21f6ff
|
||||
movi a3, 2 /* 0x00000002 */ # 130: 0c23
|
||||
movi a5, 192 /* 0x000000c0 */ # 132: 52a0c0
|
||||
slli a4, a12, 8 # 135: 804c11
|
||||
or a4, a4, a5 # 138: 504420
|
||||
call0 sdk_ieee80211_sta_new_state # 13b: 01f5ffc0
|
||||
# 13f: 0000
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 141: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 143: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 145: 12c110
|
||||
ret # 148: 0df0
|
||||
|
||||
.literal_position # 14c: 00000000
|
||||
# 150: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x154
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_config_profile
|
||||
.type sdk_wpa_config_profile, @function
|
||||
sdk_wpa_config_profile:
|
||||
addi sp, sp, -16 /* (local0) */ # 154: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 157: 0901
|
||||
addmi a0, a2, 512 /* arg0+0x200 */ # 159: 02d202
|
||||
l8ui a0, a0, 9 /* [arg0+0x209] */ # 15c: 020009
|
||||
beqi a0, 2, .Lbr011 # 15f: 26201d
|
||||
beqi a0, 3, .Lbr011 # 162: 26301a
|
||||
beqi a0, 6, .Lbr011 # 165: 266017
|
||||
beqi a0, 4, .Lbr009 # 168: 264005
|
||||
beqi a0, 5, .Lbr009 # 16b: 265002
|
||||
bnei a0, 7, .Lbr010 # 16e: 667007
|
||||
.Lbr009: movi a2, 2 /* 0x00000002 */ # 171: 0c22
|
||||
call0 sdk_wpa_set_profile # 173: 01f6ffc0
|
||||
# 177: 0000
|
||||
.Lbr010: l32i a0, sp, 0 /* [(local0)] */ # 179: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 17b: 12c110
|
||||
ret # 17e: 0df0
|
||||
.Lbr011: movi a2, 1 /* 0x00000001 */ # 180: 0c12
|
||||
call0 sdk_wpa_set_profile # 182: 01f3ffc0
|
||||
# 186: 0000
|
||||
j .Lbr010 # 188: 46fbff
|
||||
|
||||
.literal_position # 18c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x190
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x20
|
||||
# (local1): word[4] @ -0x10
|
||||
.global sdk_wpa_config_bss
|
||||
.type sdk_wpa_config_bss, @function
|
||||
sdk_wpa_config_bss:
|
||||
mov a7, a2 /* arg0 */ # 190: 7d02
|
||||
addi sp, sp, -32 /* (local0) */ # 192: 12c1e0
|
||||
movi a4, 394 /* 0x0000018a */ # 195: 42a18a
|
||||
l16ui a8, a2, 0x1e4 /* [arg0+0x1e4] */ # 198: 8212f2
|
||||
l16ui a6, a2, 0x1e6 /* [arg0+0x1e6] */ # 19b: 6212f3
|
||||
s32i a0, sp, 16 /* a0 -> [(local1)] */ # 19e: 0941
|
||||
add a4, a2, a4 /* arg0+0x18a */ # 1a0: 4a42
|
||||
l8ui a5, a4, 130 /* [arg0+0x20c] */ # 1a2: 520482
|
||||
movi a0, 488 /* 0x000001e8 */ # 1a5: 02a1e8
|
||||
l8ui a4, a4, 128 /* [arg0+0x20a] */ # 1a8: 420480
|
||||
slli a6, a6, 16 # 1ab: 006611
|
||||
l32i a2, a2, 16 /* [arg0+0x10] */ # 1ae: 2842
|
||||
or a6, a6, a8 # 1b0: 806620
|
||||
l32i a2, a2, 0 /* [[arg0+0x10]] */ # 1b3: 2802
|
||||
s32i a6, sp, 0 /* a6 -> [(local0)] */ # 1b5: 6901
|
||||
movi a6, 527 /* 0x0000020f */ # 1b7: 62a20f
|
||||
addi a2, a2, 41 /* [[arg0+0x10]]+0x29 */ # 1ba: 22c229
|
||||
add a6, a7, a6 /* arg0+0x20f */ # 1bd: 6a67
|
||||
add a7, a7, a0 /* arg0+0x1e8 */ # 1bf: 0a77
|
||||
call0 sdk_wpa_set_bss # 1c1: 01f2ffc0
|
||||
# 1c5: 0000
|
||||
l32i a0, sp, 16 /* [(local1)] */ # 1c7: 0841
|
||||
addi sp, sp, 32 /* (top of frame) */ # 1c9: 12c120
|
||||
ret # 1cc: 0df0
|
||||
|
||||
.literal_position # 1d0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1d4
|
||||
.global sdk_wpa_config_assoc_ie
|
||||
.type sdk_wpa_config_assoc_ie, @function
|
||||
sdk_wpa_config_assoc_ie:
|
||||
movi a6, sdk_g_ic # 1d4: 61ffff
|
||||
bnei a2, 1, .Lbr013 # 1d7: 661207
|
||||
s32i a3, a6, 0x174 /* arg1 -> [sdk_g_ic+0x174] */ # 1da: 32665d
|
||||
.Lbr012: s16i a4, a3, 0 /* arg2 -> [arg1] */ # 1dd: 425300
|
||||
ret /* arg0 */ # 1e0: 0df0
|
||||
.Lbr013: s32i a3, a6, 0x178 /* arg1 -> [sdk_g_ic+0x178] */ # 1e2: 32665e
|
||||
j .Lbr012 # 1e5: 06fdff
|
||||
|
||||
.literal_position # 1e8: 00000000
|
||||
# 1ec: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1f0
|
||||
.global sdk_dhcp_bind_check
|
||||
.type sdk_dhcp_bind_check, @function
|
||||
sdk_dhcp_bind_check:
|
||||
movi a4, sdk_g_ic # 1f0: 41feff
|
||||
l32i a4, a4, 16 /* [sdk_g_ic+0x10] */ # 1f3: 4844
|
||||
movi a3, sdk_g_ic+0x180 # 1f5: 31fdff
|
||||
l8ui a2, a4, 186 /* [[sdk_g_ic+0x10]+0xba] */ # 1f8: 2204ba
|
||||
l8ui a3, a3, 138 /* [sdk_g_ic+0x20a] */ # 1fb: 32038a
|
||||
beqi a2, 5, .Lbr015 # 1fe: 26520a
|
||||
beqi a3, 7, .Lbr014 # 201: 267302
|
||||
bnei a3, 8, .Lbr015 # 204: 668304
|
||||
.Lbr014: movi a5, 2 /* 0x00000002 */ # 207: 0c25
|
||||
s8i a5, a4, 186 /* 0x02 -> [[sdk_g_ic+0x10]+0xba] */ # 209: 5244ba
|
||||
.Lbr015: ret /* [[sdk_g_ic+0x10]+0xba] */ # 20c: 0df0
|
||||
|
||||
.literal_position # 210: 00000000
|
||||
# 214: 00000000
|
||||
# 218: 00000000
|
||||
# 21c: 00000100
|
||||
# 220: 000e0060
|
||||
# 224: 00000000
|
||||
# 228: 983a0000
|
||||
# 22c: 00000000
|
||||
# 230: 00000000
|
||||
# 234: 20000000
|
||||
# 238: 00000000
|
||||
# 23c: 00000000
|
||||
# 240: 00000000
|
||||
# 244: 00000000
|
||||
# 248: 00000000
|
||||
# 24c: 00000000
|
||||
# 250: 00000000
|
||||
# 254: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x258
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_eagle_auth_done
|
||||
.type sdk_eagle_auth_done, @function
|
||||
sdk_eagle_auth_done:
|
||||
addi sp, sp, -16 /* (local0) */ # 258: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 25b: c921
|
||||
movi a12, sdk_g_ic # 25d: c1ecff
|
||||
l32i a12, a12, 16 /* [sdk_g_ic+0x10] */ # 260: c84c
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 262: 0911
|
||||
l32i a0, a12, 136 /* [[sdk_g_ic+0x10]+0x88] */ # 264: 022c22
|
||||
l32i a2, a0, 8 /* [[[sdk_g_ic+0x10]+0x88]+0x8] */ # 267: 2820
|
||||
extui a2, a2, 0, 1 # 269: 202004
|
||||
bnez a2, .Lbr017 # 26c: 56220a
|
||||
movi a2, .Lstr001 # 26f: 21e9ff
|
||||
l32i a4, a0, 120 /* [[[sdk_g_ic+0x10]+0x88]+0x78] */ # 272: 42201e
|
||||
movi a3, sdk_g_ic+0x1e8 # 275: 31e8ff
|
||||
l8ui a4, a4, 6 /* [[[[sdk_g_ic+0x10]+0x88]+0x78]+0x6] */ # 278: 420406
|
||||
call0 printf # 27b: 01efffc0
|
||||
# 27f: 0000
|
||||
l32i a5, a12, 136 /* [[sdk_g_ic+0x10]+0x88] */ # 281: 522c22
|
||||
l32i a5, a5, 120 /* [[[sdk_g_ic+0x10]+0x88]+0x78] */ # 284: 52251e
|
||||
movi a6, 0x00010000 # 287: 61e5ff
|
||||
l8ui a5, a5, 6 /* [[[[sdk_g_ic+0x10]+0x88]+0x78]+0x6] */ # 28a: 520506
|
||||
or a5, a5, a6 # 28d: 605520
|
||||
movi a6, 0x60000e00 # 290: 61e4ff
|
||||
memw # 293: c02000
|
||||
s32i a5, a6, 0x3f4 /* a5 -> [0x600011f4] */ # 296: 5266fd
|
||||
addi a2, a12, 4 /* [sdk_g_ic+0x10]+0x4 */ # 299: 4b2c
|
||||
s32i a2, sp, 0 /* [sdk_g_ic+0x10]+0x4 -> [(local0)] */ # 29b: 2901
|
||||
call0 sdk_os_timer_disarm # 29d: 01e7ffc0
|
||||
# 2a1: 0000
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 2a3: 2801
|
||||
movi a3, sdk_dhcp_bind_check # 2a5: 31dfff
|
||||
movi a4, 0 /* 0x00000000 */ # 2a8: 0c04
|
||||
call0 sdk_os_timer_setfn # 2aa: 01e5ffc0
|
||||
# 2ae: 0000
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 2b0: 2801
|
||||
movi a3, 0x00003a98 # 2b2: 31ddff
|
||||
movi a4, 0 /* 0x00000000 */ # 2b5: 0c04
|
||||
call0 sdk_os_timer_arm # 2b7: 01e3ffc0
|
||||
# 2bb: 0000
|
||||
movi a9, 1 /* 0x00000001 */ # 2bd: 0c19
|
||||
movi a11, sdk_g_ic # 2bf: b1dbff
|
||||
l32i a8, a12, 136 /* [[sdk_g_ic+0x10]+0x88] */ # 2c2: 822c22
|
||||
l32i a11, a11, 16 /* [sdk_g_ic+0x10] */ # 2c5: b84b
|
||||
movi a10, 0 /* 0x00000000 */ # 2c7: 0c0a
|
||||
s8i a10, a11, 185 /* 0x00 -> [[sdk_g_ic+0x10]+0xb9] */ # 2c9: a24bb9
|
||||
s8i a10, a8, 24 /* 0x00 -> [[[sdk_g_ic+0x10]+0x88]+0x18] */ # 2cc: a24818
|
||||
l32i a7, a8, 8 /* [[[sdk_g_ic+0x10]+0x88]+0x8] */ # 2cf: 7828
|
||||
l32i a0, a12, 0 /* [[sdk_g_ic+0x10]] */ # 2d1: 080c
|
||||
or a7, a7, a9 # 2d3: 907720
|
||||
s32i a7, a8, 8 /* a7 -> [[[sdk_g_ic+0x10]+0x88]+0x8] */ # 2d6: 7928
|
||||
l8ui a6, a0, 47 /* [[[sdk_g_ic+0x10]]+0x2f] */ # 2d8: 62002f
|
||||
bbsi a6, 3, .Lbr017 # 2db: 37e633
|
||||
l32i a2, a0, 4 /* [[[sdk_g_ic+0x10]]+0x4] */ # 2de: 2810
|
||||
movi a3, sdk_dhcpc_flag # 2e0: 31d4ff
|
||||
bnez a2, .Lbr016 # 2e3: dc72
|
||||
l8ui a3, a3, 0 /* [sdk_dhcpc_flag] */ # 2e5: 320300
|
||||
beqz a3, .Lbr017 # 2e8: ac63
|
||||
movi a2, .Lstr002 # 2ea: 21d2ff
|
||||
call0 printf # 2ed: 01d6ffc0
|
||||
# 2f1: 0000
|
||||
l32i a2, a12, 0 /* [[sdk_g_ic+0x10]] */ # 2f3: 280c
|
||||
call0 dhcp_start # 2f5: 01d5ffc0
|
||||
# 2f9: 0000
|
||||
j .Lbr017 # 2fb: c60400
|
||||
.Lbr016: addi a2, a0, 4 /* [[sdk_g_ic+0x10]]+0x4 */ # 2fe: 4b20
|
||||
addi a3, a0, 8 /* [[sdk_g_ic+0x10]]+0x8 */ # 300: 8b30
|
||||
addi a4, a0, 12 /* [[sdk_g_ic+0x10]]+0xc */ # 302: cb40
|
||||
call0 sdk_system_station_got_ip_set # 304: 01d3ffc0
|
||||
# 308: 0000
|
||||
l32i a2, a12, 0 /* [[sdk_g_ic+0x10]] */ # 30a: 280c
|
||||
call0 netif_set_up # 30c: 01d2ffc0
|
||||
# 310: 0000
|
||||
.Lbr017: l32i a12, sp, 8 /* [(local2)] */ # 312: c821
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 314: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 316: 12c110
|
||||
ret # 319: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0x31c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_neg_complete
|
||||
.type sdk_wpa_neg_complete, @function
|
||||
sdk_wpa_neg_complete:
|
||||
addi sp, sp, -16 /* (local0) */ # 31c: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 31f: 0901
|
||||
call0 sdk_eagle_auth_done # 321: 050000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 324: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 326: 12c110
|
||||
ret # 329: 0df0
|
||||
|
||||
.literal_position # 32c: e8000000
|
||||
# 330: 00000000
|
||||
# 334: 00000000
|
||||
# 338: 14010000
|
||||
# 33c: 00000000
|
||||
# 340: 00000000
|
||||
# 344: 00000000
|
||||
# 348: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x34c
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_attach
|
||||
.type sdk_wpa_attach, @function
|
||||
sdk_wpa_attach:
|
||||
movi a3, .Lfunc001 # 34c: 31f8ff
|
||||
movi a5, sdk_ppInstallKey # 34f: 51f9ff
|
||||
movi a6, .Lfunc002 # 352: 61f9ff
|
||||
movi a7, sdk_wpa_neg_complete # 355: 71f9ff
|
||||
mov a4, a2 /* arg0 */ # 358: 4d02
|
||||
addi sp, sp, -16 /* (local0) */ # 35a: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 35d: 0901
|
||||
movi a2, 0 /* 0x00000000 */ # 35f: 0c02
|
||||
movi a0, 384 /* 0x00000180 */ # 361: 02a180
|
||||
add a0, a4, a0 /* arg0+0x180 */ # 364: 0a04
|
||||
s32i a2, a4, 0x180 /* 0x00000000 -> [arg0+0x180] */ # 366: 226460
|
||||
s32i a0, a4, 0x184 /* arg0+0x180 -> [arg0+0x184] */ # 369: 026461
|
||||
movi a4, sdk_wpa_config_assoc_ie # 36c: 41f1ff
|
||||
call0 sdk_wpa_register # 36f: 01f5ffc0
|
||||
# 373: 0000
|
||||
movi a2, sdk_eapol_txcb # 375: 21f2ff
|
||||
movi a3, 3 /* 0x00000003 */ # 378: 0c33
|
||||
call0 sdk_ppRegisterTxCallback # 37a: 01f3ffc0
|
||||
# 37e: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 380: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 382: 12c110
|
||||
ret # 385: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "\nconnected with %s, channel %d\n" # 0: 0a636f6e
|
||||
# 4: 6e656374
|
||||
# 8: 65642077
|
||||
# c: 69746820
|
||||
# 10: 25732c20
|
||||
# 14: 6368616e
|
||||
# 18: 6e656c20
|
||||
# 1c: 25640a00
|
||||
.Lstr002: .asciz "dhcp client start...\n" # 20: 64686370
|
||||
# 24: 20636c69
|
||||
# 28: 656e7420
|
||||
# 2c: 73746172
|
||||
# 30: 742e2e2e
|
||||
# 34: 0a00
|
503
binary_sdk/libwpa/wpabuf.S
Normal file
503
binary_sdk/libwpa/wpabuf.S
Normal file
|
@ -0,0 +1,503 @@
|
|||
|
||||
.section .text, "ax", @progbits
|
||||
|
||||
# Function @ .text+0x0
|
||||
.Lfunc001: l32i a4, a2, 8 /* [arg0+0x8] */ # 0: 4822
|
||||
addi a3, a2, 12 /* arg0+0xc */ # 2: cb32
|
||||
moveqz a4, a3, a4 # 4: 404383
|
||||
mov a2, a4 # 7: 2d04
|
||||
ret # 9: 0df0
|
||||
|
||||
.literal_position # c: 00000000
|
||||
# 10: 00000000
|
||||
|
||||
# Function @ .text+0x14
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.Lfunc002: addi sp, sp, -16 /* (local0) */ # 14: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 17: 0901
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 19: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 1b: d921
|
||||
mov a12, a3 /* arg1 */ # 1d: cd03
|
||||
mov a13, a4 /* arg2 */ # 1f: dd04
|
||||
beqz a3, .Lbr001 # 21: 9c03
|
||||
mov a3, a4 /* arg2 */ # 23: 3d04
|
||||
call0 sdk_wpabuf_put # 25: 01f9ffc0
|
||||
# 29: 0000
|
||||
mov a4, a13 /* arg2 */ # 2b: 4d0d
|
||||
mov a3, a12 /* arg1 */ # 2d: 3d0c
|
||||
call0 memcpy # 2f: 01f8ffc0
|
||||
# 33: 0000
|
||||
.Lbr001: l32i a12, sp, 4 /* [(local1)] */ # 35: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 37: d821
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 39: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 3b: 12c110
|
||||
ret # 3e: 0df0
|
||||
|
||||
# Function @ .text+0x40
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc003: mov a6, a3 /* arg1 */ # 40: 6d03
|
||||
addi sp, sp, -16 /* (local0) */ # 42: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 45: 0901
|
||||
l32i a4, a6, 4 /* [arg1+0x4] */ # 47: 4816
|
||||
l32i a3, a3, 8 /* [arg1+0x8] */ # 49: 3823
|
||||
addi a0, a6, 12 /* arg1+0xc */ # 4b: cb06
|
||||
moveqz a3, a0, a3 # 4d: 303083
|
||||
call0 .Lfunc002 # 50: 05fcff
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 53: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 55: 12c110
|
||||
ret # 58: 0df0
|
||||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.Lfunc004: movi a2, .Lstr001 # 8: 21feff
|
||||
addi sp, sp, -16 /* (local0) */ # b: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # e: 0901
|
||||
call0 ets_printf # 10: 01fdffc0
|
||||
# 14: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 16: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 18: 12c110
|
||||
ret # 1b: 0df0
|
||||
|
||||
.literal_position # 20: 00000000
|
||||
# 24: 00000000
|
||||
# 28: 00000000
|
||||
# 2c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x30
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_wpabuf_resize
|
||||
.type sdk_wpabuf_resize, @function
|
||||
sdk_wpabuf_resize:
|
||||
addi sp, sp, -16 /* (local0) */ # 30: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 33: 0901
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 35: d921
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 37: e931
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 39: c911
|
||||
mov a14, a2 /* arg0 */ # 3b: ed02
|
||||
l32i a12, a2, 0 /* [arg0] */ # 3d: c802
|
||||
mov a13, a3 /* arg1 */ # 3f: dd03
|
||||
bnez a12, .Lbr002 # 41: dc1c
|
||||
mov a2, a3 /* arg1 */ # 43: 2d03
|
||||
call0 sdk_wpabuf_alloc # 45: 050000
|
||||
mov a3, a2 # 48: 3d02
|
||||
s32i a2, a14, 0 /* a2 -> [arg0] */ # 4a: 290e
|
||||
movi a0, -1 /* 0xffffffff */ # 4c: 7cf0
|
||||
movi a2, 0 /* 0x00000000 */ # 4e: 0c02
|
||||
moveqz a2, a0, a3 # 50: 302083
|
||||
j .Lbr006 # 53: 461100
|
||||
.Lbr002: l32i a3, a12, 4 /* [[arg0]+0x4] */ # 56: 381c
|
||||
l32i a4, a12, 0 /* [[arg0]] */ # 58: 480c
|
||||
add a3, a3, a13 # 5a: da33
|
||||
bgeu a4, a3, .Lbr005 # 5c: 37b43a
|
||||
l32i a2, a12, 8 /* [[arg0]+0x8] */ # 5f: 282c
|
||||
beqz a2, .Lbr007 # 61: 164204
|
||||
call0 realloc # 64: 01efffc0
|
||||
# 68: 0000
|
||||
mov a14, a2 # 6a: ed02
|
||||
beqz a2, .Lbr008 # 6c: 168204
|
||||
movi a3, 0 /* 0x00000000 */ # 6f: 0c03
|
||||
l32i a2, a12, 4 /* [[arg0]+0x4] */ # 71: 281c
|
||||
mov a4, a13 /* arg1 */ # 73: 4d0d
|
||||
add a2, a2, a14 # 75: ea22
|
||||
call0 memset # 77: 01ebffc0
|
||||
# 7b: 0000
|
||||
s32i a14, a12, 8 /* a14 -> [[arg0]+0x8] */ # 7d: e92c
|
||||
j .Lbr004 # 7f: 460400
|
||||
.Lbr003: movi a3, 0 /* 0x00000000 */ # 82: 0c03
|
||||
l32i a2, a2, 4 # 84: 2812
|
||||
mov a4, a13 /* arg1 */ # 86: 4d0d
|
||||
add a2, a2, a12 # 88: ca22
|
||||
addi a2, a2, 12 # 8a: cb22
|
||||
call0 memset # 8c: 01e7ffc0
|
||||
# 90: 0000
|
||||
s32i a12, a14, 0 /* a12 -> [arg0] */ # 92: c90e
|
||||
.Lbr004: l32i a3, a12, 4 # 94: 381c
|
||||
add a3, a3, a13 # 96: da33
|
||||
s32i a3, a12, 0 # 98: 390c
|
||||
.Lbr005: movi a2, 0 /* 0x00000000 */ # 9a: 0c02
|
||||
.Lbr006: l32i a12, sp, 4 /* [(local1)] */ # 9c: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 9e: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # a0: e831
|
||||
l32i a0, sp, 0 /* [(local0)] */ # a2: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # a4: 12c110
|
||||
ret # a7: 0df0
|
||||
.Lbr007: mov a2, a12 /* [arg0] */ # a9: 2d0c
|
||||
addi a3, a3, 12 # ab: cb33
|
||||
call0 realloc # ad: 01dfffc0
|
||||
# b1: 0000
|
||||
mov a12, a2 # b3: cd02
|
||||
bnez a2, .Lbr003 # b5: 5692fc
|
||||
.Lbr008: movi a2, -1 /* 0xffffffff */ # b8: 7cf2
|
||||
j .Lbr006 # ba: 86f7ff
|
||||
|
||||
.literal_position # c0: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xc4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_wpabuf_alloc
|
||||
.type sdk_wpabuf_alloc, @function
|
||||
sdk_wpabuf_alloc:
|
||||
addi sp, sp, -16 /* (local0) */ # c4: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # c7: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # c9: 0901
|
||||
mov a12, a2 /* arg0 */ # cb: cd02
|
||||
addi a2, a2, 12 /* arg0+0xc */ # cd: cb22
|
||||
call0 zalloc # cf: 01fcffc0
|
||||
# d3: 0000
|
||||
l32i a0, sp, 0 /* [(local0)] */ # d5: 0801
|
||||
bnez a2, .Lbr009 # d7: cc32
|
||||
movi a2, 0 /* 0x00000000 */ # d9: 0c02
|
||||
j .Lbr010 # db: 460000
|
||||
.Lbr009: s32i a12, a2, 0 # de: c902
|
||||
.Lbr010: l32i a12, sp, 4 /* [(local1)] */ # e0: c811
|
||||
addi sp, sp, 16 /* (top of frame) */ # e2: 12c110
|
||||
ret # e5: 0df0
|
||||
|
||||
.literal_position # e8: 00000000
|
||||
|
||||
# Function @ .irom0.text+0xec
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_wpabuf_alloc_ext_data
|
||||
.type sdk_wpabuf_alloc_ext_data, @function
|
||||
sdk_wpabuf_alloc_ext_data:
|
||||
addi sp, sp, -16 /* (local0) */ # ec: 12c1f0
|
||||
s32i a3, sp, 4 /* arg1 -> [(local1)] */ # ef: 3911
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # f1: 2901
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # f3: 0921
|
||||
movi a2, 12 /* 0x0000000c */ # f5: 0cc2
|
||||
call0 zalloc # f7: 01fcffc0
|
||||
# fb: 0000
|
||||
bnez a2, .Lbr011 # fd: cc32
|
||||
movi a2, 0 /* 0x00000000 */ # ff: 0c02
|
||||
j .Lbr012 # 101: 460200
|
||||
.Lbr011: l32i a0, sp, 0 /* [(local0)] */ # 104: 0801
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 106: 3811
|
||||
s32i a3, a2, 0 # 108: 3902
|
||||
s32i a3, a2, 4 # 10a: 3912
|
||||
s32i a0, a2, 8 # 10c: 0922
|
||||
.Lbr012: l32i a0, sp, 8 /* [(local2)] */ # 10e: 0821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 110: 12c110
|
||||
ret # 113: 0df0
|
||||
|
||||
.literal_position # 118: 14000000
|
||||
|
||||
# Function @ .irom0.text+0x11c
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_wpabuf_alloc_copy
|
||||
.type sdk_wpabuf_alloc_copy, @function
|
||||
sdk_wpabuf_alloc_copy:
|
||||
mov a9, a2 /* arg0 */ # 11c: 9d02
|
||||
addi sp, sp, -16 /* (local0) */ # 11e: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # 121: c921
|
||||
mov a2, a3 /* arg1 */ # 123: 2d03
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 125: d931
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 127: 0911
|
||||
mov a13, a3 /* arg1 */ # 129: dd03
|
||||
s32i a9, sp, 0 /* arg0 -> [(local0)] */ # 12b: 9901
|
||||
call0 sdk_wpabuf_alloc # 12d: 050000
|
||||
mov a12, a2 # 130: cd02
|
||||
beqz a2, .Lbr013 # 132: 8c82
|
||||
mov a4, a13 /* arg1 */ # 134: 4d0d
|
||||
l32i a3, sp, 0 /* [(local0)] */ # 136: 3801
|
||||
call0 .Lfunc002 # 138: 01f8ffc0
|
||||
# 13c: 0000
|
||||
.Lbr013: l32i a0, sp, 4 /* [(local1)] */ # 13e: 0811
|
||||
mov a2, a12 # 140: 2d0c
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 142: d831
|
||||
l32i a12, sp, 8 /* [(local2)] */ # 144: c821
|
||||
addi sp, sp, 16 /* (top of frame) */ # 146: 12c110
|
||||
ret # 149: 0df0
|
||||
|
||||
.literal_position # 14c: 14000000
|
||||
|
||||
# Function @ .irom0.text+0x150
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word[2] @ -0x8
|
||||
.global sdk_wpabuf_dup
|
||||
.type sdk_wpabuf_dup, @function
|
||||
sdk_wpabuf_dup:
|
||||
addi sp, sp, -16 /* (local0) */ # 150: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 153: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 155: d921
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 157: 0901
|
||||
mov a13, a2 /* arg0 */ # 159: dd02
|
||||
l32i a2, a2, 4 /* [arg0+0x4] */ # 15b: 2812
|
||||
call0 sdk_wpabuf_alloc # 15d: 050000
|
||||
mov a12, a2 # 160: cd02
|
||||
beqz a2, .Lbr014 # 162: 8cd2
|
||||
l32i a4, a13, 4 /* [arg0+0x4] */ # 164: 481d
|
||||
l32i a3, a13, 8 /* [arg0+0x8] */ # 166: 382d
|
||||
addi a0, a13, 12 /* arg0+0xc */ # 168: cb0d
|
||||
moveqz a3, a0, a3 # 16a: 303083
|
||||
call0 .Lfunc002 # 16d: 01f7ffc0
|
||||
# 171: 0000
|
||||
.Lbr014: l32i a0, sp, 0 /* [(local0)] */ # 173: 0801
|
||||
mov a2, a12 # 175: 2d0c
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 177: d821
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 179: c811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 17b: 12c110
|
||||
ret # 17e: 0df0
|
||||
|
||||
.literal_position # 180: 00000000
|
||||
# 184: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x188
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word[3] @ -0xc
|
||||
.global sdk_wpabuf_free
|
||||
.type sdk_wpabuf_free, @function
|
||||
sdk_wpabuf_free:
|
||||
addi sp, sp, -16 /* (local0) */ # 188: 12c1f0
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 18b: c911
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 18d: 0901
|
||||
mov a12, a2 /* arg0 */ # 18f: cd02
|
||||
beqz a2, .Lbr015 # 191: 8ce2
|
||||
l32i a2, a2, 8 /* [arg0+0x8] */ # 193: 2822
|
||||
call0 free # 195: 01faffc0
|
||||
# 199: 0000
|
||||
mov a2, a12 /* arg0 */ # 19b: 2d0c
|
||||
call0 free # 19d: 01f9ffc0
|
||||
# 1a1: 0000
|
||||
.Lbr015: l32i a12, sp, 4 /* [(local1)] */ # 1a3: c811
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1a5: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # 1a7: 12c110
|
||||
ret # 1aa: 0df0
|
||||
|
||||
.literal_position # 1ac: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x1b0
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_wpabuf_put
|
||||
.type sdk_wpabuf_put, @function
|
||||
sdk_wpabuf_put:
|
||||
addi sp, sp, -32 /* (local0) */ # 1b0: 12c1e0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1b3: 0901
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 1b5: d921
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1b7: c911
|
||||
mov a13, a3 /* arg1 */ # 1b9: dd03
|
||||
mov a12, a2 /* arg0 */ # 1bb: cd02
|
||||
call0 .Lfunc001 # 1bd: 01fbffc0
|
||||
# 1c1: 0000
|
||||
s32i a2, sp, 12 /* a2 -> [(local3)] */ # 1c3: 2931
|
||||
l32i a3, a12, 0 /* [arg0] */ # 1c5: 380c
|
||||
l32i a0, a12, 4 /* [arg0+0x4] */ # 1c7: 081c
|
||||
s32i a0, sp, 16 /* [arg0+0x4] -> [(local4)] */ # 1c9: 0941
|
||||
add a4, a0, a13 # 1cb: da40
|
||||
s32i a4, a12, 4 /* a4 -> [arg0+0x4] */ # 1cd: 491c
|
||||
bgeu a3, a4, .Lbr016 # 1cf: 47b30a
|
||||
mov a3, a13 /* arg1 */ # 1d2: 3d0d
|
||||
mov a2, a12 /* arg0 */ # 1d4: 2d0c
|
||||
call0 .Lfunc004 # 1d6: 05e3ff
|
||||
l32i a0, sp, 16 /* [(local4)] */ # 1d9: 0841
|
||||
l32i a2, sp, 12 /* [(local3)] */ # 1db: 2831
|
||||
.Lbr016: l32i a12, sp, 4 /* [(local1)] */ # 1dd: c811
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 1df: d821
|
||||
add a2, a2, a0 # 1e1: 0a22
|
||||
l32i a0, sp, 0 /* [(local0)] */ # 1e3: 0801
|
||||
addi sp, sp, 32 /* (top of frame) */ # 1e5: 12c120
|
||||
ret # 1e8: 0df0
|
||||
|
||||
.literal_position # 1ec: 40000000
|
||||
# 1f0: 40000000
|
||||
|
||||
# Function @ .irom0.text+0x1f4
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.global sdk_wpabuf_concat
|
||||
.type sdk_wpabuf_concat, @function
|
||||
sdk_wpabuf_concat:
|
||||
addi sp, sp, -16 /* (local0) */ # 1f4: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # 1f7: 0901
|
||||
s32i a14, sp, 12 /* a14 -> [(local3)] */ # 1f9: e931
|
||||
s32i a12, sp, 4 /* a12 -> [(local1)] */ # 1fb: c911
|
||||
s32i a13, sp, 8 /* a13 -> [(local2)] */ # 1fd: d921
|
||||
mov a12, a2 /* arg0 */ # 1ff: cd02
|
||||
mov a13, a3 /* arg1 */ # 201: dd03
|
||||
bnez a3, .Lbr017 # 203: cc33
|
||||
mov a14, a2 /* arg0 */ # 205: ed02
|
||||
j .Lbr022 # 207: 460c00
|
||||
.Lbr017: bnez a2, .Lbr018 # 20a: cc32
|
||||
movi a0, 0 /* 0x00000000 */ # 20c: 0c00
|
||||
j .Lbr019 # 20e: 460000
|
||||
.Lbr018: l32i a0, a2, 4 /* [arg0+0x4] */ # 211: 0812
|
||||
.Lbr019: l32i a2, a13, 4 /* [arg1+0x4] */ # 213: 281d
|
||||
add a2, a2, a0 # 215: 0a22
|
||||
call0 sdk_wpabuf_alloc # 217: 050000
|
||||
mov a14, a2 # 21a: ed02
|
||||
beqz a2, .Lbr021 # 21c: 9c22
|
||||
beqz a12, .Lbr020 # 21e: 8c6c
|
||||
mov a3, a12 /* arg0 */ # 220: 3d0c
|
||||
call0 .Lfunc003 # 222: 01f2ffc0
|
||||
# 226: 0000
|
||||
.Lbr020: mov a2, a14 # 228: 2d0e
|
||||
mov a3, a13 /* arg1 */ # 22a: 3d0d
|
||||
call0 .Lfunc003 # 22c: 01f1ffc0
|
||||
# 230: 0000
|
||||
.Lbr021: mov a2, a12 /* arg0 */ # 232: 2d0c
|
||||
call0 sdk_wpabuf_free # 234: 050000
|
||||
mov a2, a13 /* arg1 */ # 237: 2d0d
|
||||
call0 sdk_wpabuf_free # 239: 050000
|
||||
.Lbr022: l32i a0, sp, 0 /* [(local0)] */ # 23c: 0801
|
||||
l32i a12, sp, 4 /* [(local1)] */ # 23e: c811
|
||||
mov a2, a14 # 240: 2d0e
|
||||
l32i a13, sp, 8 /* [(local2)] */ # 242: d821
|
||||
l32i a14, sp, 12 /* [(local3)] */ # 244: e831
|
||||
addi sp, sp, 16 /* (top of frame) */ # 246: 12c110
|
||||
ret # 249: 0df0
|
||||
|
||||
.literal_position # 24c: 00000000
|
||||
# 250: 40000000
|
||||
|
||||
# Function @ .irom0.text+0x254
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word[4] @ -0x10
|
||||
.global sdk_wpabuf_zeropad
|
||||
.type sdk_wpabuf_zeropad, @function
|
||||
sdk_wpabuf_zeropad:
|
||||
addi sp, sp, -32 /* (local0) */ # 254: 12c1e0
|
||||
s32i a0, sp, 8 /* a0 -> [(local2)] */ # 257: 0921
|
||||
s32i a12, sp, 12 /* a12 -> [(local3)] */ # 259: c931
|
||||
s32i a13, sp, 16 /* a13 -> [(local4)] */ # 25b: d941
|
||||
mov a12, a2 /* arg0 */ # 25d: cd02
|
||||
mov a13, a3 /* arg1 */ # 25f: dd03
|
||||
bnez a2, .Lbr023 # 261: cc32
|
||||
movi a12, 0 /* 0x00000000 */ # 263: 0c0c
|
||||
j .Lbr025 # 265: 060e00
|
||||
.Lbr023: l32i a0, a2, 4 /* [arg0+0x4] */ # 268: 0812
|
||||
s32i a0, sp, 0 /* [arg0+0x4] -> [(local0)] */ # 26a: 0901
|
||||
bgeu a0, a3, .Lbr025 # 26c: 37b031
|
||||
mov a2, a3 /* arg1 */ # 26f: 2d03
|
||||
call0 sdk_wpabuf_alloc # 271: 050000
|
||||
s32i a2, sp, 4 /* a2 -> [(local1)] */ # 274: 2911
|
||||
beqz a2, .Lbr024 # 276: 9ce2
|
||||
l32i a2, sp, 0 /* [(local0)] */ # 278: 2801
|
||||
sub a13, a13, a2 # 27a: 20ddc0
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 27d: 2811
|
||||
mov a3, a13 # 27f: 3d0d
|
||||
call0 sdk_wpabuf_put # 281: 050000
|
||||
mov a4, a13 # 284: 4d0d
|
||||
movi a3, 0 /* 0x00000000 */ # 286: 0c03
|
||||
call0 memset # 288: 01f1ffc0
|
||||
# 28c: 0000
|
||||
l32i a2, sp, 4 /* [(local1)] */ # 28e: 2811
|
||||
mov a3, a12 /* arg0 */ # 290: 3d0c
|
||||
call0 .Lfunc003 # 292: 01efffc0
|
||||
# 296: 0000
|
||||
.Lbr024: mov a2, a12 /* arg0 */ # 298: 2d0c
|
||||
l32i a13, sp, 4 /* [(local1)] */ # 29a: d811
|
||||
call0 sdk_wpabuf_free # 29c: 050000
|
||||
mov a12, a13 /* [(local1)] */ # 29f: cd0d
|
||||
.Lbr025: l32i a0, sp, 8 /* [(local2)] */ # 2a1: 0821
|
||||
mov a2, a12 # 2a3: 2d0c
|
||||
l32i a13, sp, 16 /* [(local4)] */ # 2a5: d841
|
||||
l32i a12, sp, 12 /* [(local3)] */ # 2a7: c831
|
||||
addi sp, sp, 32 /* (top of frame) */ # 2a9: 12c120
|
||||
ret # 2ac: 0df0
|
||||
|
||||
.literal_position # 2b0: 00000000
|
||||
# 2b4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x2b8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x40
|
||||
# (local1): word @ -0x3c
|
||||
# (local2): word @ -0x38
|
||||
# (local3): word @ -0x34
|
||||
# (local4): word @ -0x30
|
||||
# (local5): word[5] @ -0x2c
|
||||
# (local6): word @ -0x18
|
||||
# (local7): word @ -0x14
|
||||
# (local8): word @ -0x10
|
||||
# (local9): word[3] @ -0xc
|
||||
.global wpabuf_printf
|
||||
.type wpabuf_printf, @function
|
||||
wpabuf_printf:
|
||||
addi sp, sp, -64 /* (local0) */ # 2b8: 12c1c0
|
||||
s32i a4, sp, 40 /* arg2 -> [(local6)] */ # 2bb: 49a1
|
||||
s32i a5, sp, 44 /* arg3 -> [(local7)] */ # 2bd: 59b1
|
||||
s32i a6, sp, 48 /* arg4 -> [(local8)] */ # 2bf: 69c1
|
||||
s32i a7, sp, 52 /* arg5 -> [(local9)] */ # 2c1: 79d1
|
||||
s32i a0, sp, 12 /* a0 -> [(local3)] */ # 2c3: 0931
|
||||
s32i a12, sp, 16 /* a12 -> [(local4)] */ # 2c5: c941
|
||||
s32i a13, sp, 20 /* a13 -> [(local5)] */ # 2c7: d951
|
||||
mov a12, a2 /* arg0 */ # 2c9: cd02
|
||||
mov a13, a3 /* arg1 */ # 2cb: dd03
|
||||
call0 .Lfunc001 # 2cd: 01f8ffc0
|
||||
# 2d1: 0000
|
||||
mov a4, a13 /* arg1 */ # 2d3: 4d0d
|
||||
l32i a3, a12, 0 /* [arg0] */ # 2d5: 380c
|
||||
l32i a5, a12, 4 /* [arg0+0x4] */ # 2d7: 581c
|
||||
movi a6, 8 /* 0x00000008 */ # 2d9: 0c86
|
||||
addi a9, sp, 32 /* (FP)-0x20 */ # 2db: 92c120
|
||||
s32i a9, sp, 4 /* (FP)-0x20 -> [(local1)] */ # 2de: 9911
|
||||
s32i a9, sp, 0 /* (FP)-0x20 -> [(local0)] */ # 2e0: 9901
|
||||
s32i a6, sp, 8 /* 0x00000008 -> [(local2)] */ # 2e2: 6921
|
||||
add a2, a2, a5 # 2e4: 5a22
|
||||
sub a3, a3, a5 # 2e6: 5033c0
|
||||
mov a6, a9 /* (FP)-0x20 */ # 2e9: 6d09
|
||||
mov a5, a9 /* (FP)-0x20 */ # 2eb: 5d09
|
||||
l32i a7, sp, 8 /* [(local2)] */ # 2ed: 7821
|
||||
call0 ets_vsnprintf # 2ef: 01f1ffc0
|
||||
# 2f3: 0000
|
||||
mov a13, a2 # 2f5: dd02
|
||||
bltz a2, .Lbr026 # 2f7: 969200
|
||||
l32i a0, a12, 4 /* [arg0+0x4] */ # 2fa: 081c
|
||||
l32i a7, a12, 0 /* [arg0] */ # 2fc: 780c
|
||||
sub a7, a7, a0 # 2fe: 0077c0
|
||||
bltu a2, a7, .Lbr027 # 301: 773208
|
||||
.Lbr026: mov a2, a12 /* arg0 */ # 304: 2d0c
|
||||
mov a3, a13 # 306: 3d0d
|
||||
call0 .Lfunc004 # 308: c5cfff
|
||||
l32i a0, a12, 4 /* [arg0+0x4] */ # 30b: 081c
|
||||
.Lbr027: add a8, a13, a0 # 30d: 0a8d
|
||||
s32i a8, a12, 4 /* a8 -> [arg0+0x4] */ # 30f: 891c
|
||||
l32i a13, sp, 20 /* [(local5)] */ # 311: d851
|
||||
l32i a12, sp, 16 /* [(local4)] */ # 313: c841
|
||||
l32i a0, sp, 12 /* [(local3)] */ # 315: 0831
|
||||
addi sp, sp, 64 /* (top of frame) */ # 317: 12c140
|
||||
ret # 31a: 0df0
|
||||
|
||||
.section .rodata.str1.4, "MSa", @progbits, 1
|
||||
|
||||
.Lstr001: .asciz "wpabuf overflow" # 0: 77706162
|
||||
# 4: 7566206f
|
||||
# 8: 76657266
|
||||
# c: 6c6f7700
|
138
binary_sdk/libwpa/wpas_glue.S
Normal file
138
binary_sdk/libwpa/wpas_glue.S
Normal file
|
@ -0,0 +1,138 @@
|
|||
|
||||
.section .irom0.text, "ax", @progbits
|
||||
|
||||
.literal_position # 0: 00000000
|
||||
# 4: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x8
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x10
|
||||
# (local1): word @ -0xc
|
||||
# (local2): word @ -0x8
|
||||
# (local3): word @ -0x4
|
||||
.Lfunc001: addi sp, sp, -16 /* (local0) */ # 8: 12c1f0
|
||||
s32i a12, sp, 8 /* a12 -> [(local2)] */ # b: c921
|
||||
l32i a8, a2, 0x210 /* [arg0+0x210] */ # d: 822284
|
||||
s32i a13, sp, 12 /* a13 -> [(local3)] */ # 10: d931
|
||||
s32i a0, sp, 4 /* a0 -> [(local1)] */ # 12: 0911
|
||||
mov a13, a7 /* arg5 */ # 14: dd07
|
||||
addi a0, a5, 4 /* arg3+0x4 */ # 16: 4b05
|
||||
movi a7, 208 /* 0x000000d0 */ # 18: 72a0d0
|
||||
add a7, a2, a7 /* arg0+0xd0 */ # 1b: 7a72
|
||||
l32i a2, a8, 4 /* [[arg0+0x210]+0x4] */ # 1d: 2818
|
||||
s32i a0, a6, 0 /* arg3+0x4 -> [arg4] */ # 1f: 0906
|
||||
addi a0, a2, 14 /* [[arg0+0x210]+0x4]+0xe */ # 21: eb02
|
||||
bnez a0, .Lbr001 # 23: cc30
|
||||
movi a2, 0 /* 0x00000000 */ # 25: 0c02
|
||||
j .Lbr005 # 27: 461100
|
||||
.Lbr001: addi a12, a2, 18 /* [[arg0+0x210]+0x4]+0x12 */ # 2a: c2c212
|
||||
s32i a0, sp, 0 /* [[arg0+0x210]+0x4]+0xe -> [(local0)] */ # 2d: 0901
|
||||
extui a8, a5, 8, 8 # 2f: 508874
|
||||
extui a9, a5, 0, 8 # 32: 509074
|
||||
l8ui a10, a7, 128 /* [arg0+0x150] */ # 35: a20780
|
||||
s8i a10, a2, 14 /* [arg0+0x150] -> [[[arg0+0x210]+0x4]+0xe] */ # 38: a2420e
|
||||
slli a9, a9, 8 # 3b: 809911
|
||||
s8i a3, a2, 15 /* arg1 -> [[[arg0+0x210]+0x4]+0xf] */ # 3e: 32420f
|
||||
or a8, a8, a9 # 41: 908820
|
||||
s8i a8, a2, 16 /* a8 -> [[[arg0+0x210]+0x4]+0x10] */ # 44: 824210
|
||||
srli a8, a8, 8 # 47: 808841
|
||||
s8i a8, a2, 17 /* a8 -> [[[arg0+0x210]+0x4]+0x11] */ # 4a: 824211
|
||||
beqz a4, .Lbr002 # 4d: 8cd4
|
||||
mov a3, a4 /* arg2 */ # 4f: 3d04
|
||||
mov a2, a12 /* [[arg0+0x210]+0x4]+0x12 */ # 51: 2d0c
|
||||
mov a4, a5 /* arg3 */ # 53: 4d05
|
||||
call0 memcpy # 55: 01eaffc0
|
||||
# 59: 0000
|
||||
j .Lbr003 # 5b: c60200
|
||||
.Lbr002: mov a4, a5 /* arg3 */ # 5e: 4d05
|
||||
mov a2, a12 /* [[arg0+0x210]+0x4]+0x12 */ # 60: 2d0c
|
||||
movi a3, 0 /* 0x00000000 */ # 62: 0c03
|
||||
call0 memset # 64: 01e8ffc0
|
||||
# 68: 0000
|
||||
.Lbr003: beqz a13, .Lbr004 # 6a: 8c0d
|
||||
s32i a12, a13, 0 /* [[arg0+0x210]+0x4]+0x12 -> [arg5] */ # 6c: c90d
|
||||
.Lbr004: l32i a2, sp, 0 /* [(local0)] */ # 6e: 2801
|
||||
.Lbr005: l32i a12, sp, 8 /* [(local2)] */ # 70: c821
|
||||
l32i a13, sp, 12 /* [(local3)] */ # 72: d831
|
||||
l32i a0, sp, 4 /* [(local1)] */ # 74: 0811
|
||||
addi sp, sp, 16 /* (top of frame) */ # 76: 12c110
|
||||
ret # 79: 0df0
|
||||
|
||||
.literal_position # 7c: 00000000
|
||||
|
||||
# Function @ .irom0.text+0x80
|
||||
# Local variables/stack:
|
||||
# (local0): word @ -0x20
|
||||
# (local1): word @ -0x1c
|
||||
# (local2): word @ -0x18
|
||||
# (local3): word @ -0x14
|
||||
# (local4): word @ -0x10
|
||||
# (local5): word @ -0xc
|
||||
# (local6): word[2] @ -0x8
|
||||
.global sdk_wpa_sm_alloc_eapol
|
||||
.type sdk_wpa_sm_alloc_eapol, @function
|
||||
sdk_wpa_sm_alloc_eapol:
|
||||
addi sp, sp, -32 /* (local0) */ # 80: 12c1e0
|
||||
s32i a5, sp, 12 /* arg3 -> [(local3)] */ # 83: 5931
|
||||
s32i a6, sp, 16 /* arg4 -> [(local4)] */ # 85: 6941
|
||||
s32i a7, sp, 20 /* arg5 -> [(local5)] */ # 87: 7951
|
||||
s32i a0, sp, 24 /* a0 -> [(local6)] */ # 89: 0961
|
||||
s32i a4, sp, 8 /* arg2 -> [(local2)] */ # 8b: 4921
|
||||
s32i a2, sp, 0 /* arg0 -> [(local0)] */ # 8d: 2901
|
||||
s32i a3, sp, 4 /* arg1 -> [(local1)] */ # 8f: 3911
|
||||
movi a2, 3 /* 0x00000003 */ # 91: 0c32
|
||||
movi a3, 256 /* 0x00000100 */ # 93: 32a100
|
||||
movi a4, 0 /* 0x00000000 */ # 96: 0c04
|
||||
call0 pbuf_alloc # 98: 01f9ffc0
|
||||
# 9c: 0000
|
||||
l32i a3, sp, 4 /* [(local1)] */ # 9e: 3811
|
||||
l32i a4, sp, 8 /* [(local2)] */ # a0: 4821
|
||||
l32i a5, sp, 12 /* [(local3)] */ # a2: 5831
|
||||
mov a0, a2 # a4: 0d02
|
||||
l32i a6, sp, 16 /* [(local4)] */ # a6: 6841
|
||||
l32i a2, sp, 0 /* [(local0)] */ # a8: 2801
|
||||
l32i a7, sp, 20 /* [(local5)] */ # aa: 7851
|
||||
s32i a0, a2, 0x210 /* a0 -> [[(local0)]+0x210] */ # ac: 026284
|
||||
call0 .Lfunc001 # af: 85f5ff
|
||||
l32i a0, sp, 24 /* [(local6)] */ # b2: 0861
|
||||
addi sp, sp, 32 /* (top of frame) */ # b4: 12c120
|
||||
ret # b7: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0xbc
|
||||
# Local variables/stack:
|
||||
# (local0): word[4] @ -0x10
|
||||
.global sdk_wpa_sm_deauthenticate
|
||||
.type sdk_wpa_sm_deauthenticate, @function
|
||||
sdk_wpa_sm_deauthenticate:
|
||||
addi sp, sp, -16 /* (local0) */ # bc: 12c1f0
|
||||
s32i a0, sp, 0 /* a0 -> [(local0)] */ # bf: 0901
|
||||
l32i a0, a2, 0x168 /* [arg0+0x168] */ # c1: 02225a
|
||||
bltui a0, 5, .Lbr006 # c4: b65007
|
||||
l32i a0, a2, 0x220 /* [arg0+0x220] */ # c7: 022288
|
||||
mov a2, a3 /* arg1 */ # ca: 2d03
|
||||
callx0 a0 /* [arg0+0x220] */ # cc: c00000
|
||||
.Lbr006: l32i a0, sp, 0 /* [(local0)] */ # cf: 0801
|
||||
addi sp, sp, 16 /* (top of frame) */ # d1: 12c110
|
||||
ret # d4: 0df0
|
||||
|
||||
.balign 4
|
||||
# Function @ .irom0.text+0xd8
|
||||
.global sdk_wpa_sm_mlme_setprotection
|
||||
.type sdk_wpa_sm_mlme_setprotection, @function
|
||||
sdk_wpa_sm_mlme_setprotection:
|
||||
movi a2, 0 /* 0x00000000 */ # d8: 0c02
|
||||
ret /* 0x00000000 */ # da: 0df0
|
||||
|
||||
# Function @ .irom0.text+0xdc
|
||||
.global sdk_wpa_sm_get_beacon_ie
|
||||
.type sdk_wpa_sm_get_beacon_ie, @function
|
||||
sdk_wpa_sm_get_beacon_ie:
|
||||
movi a2, 0 /* 0x00000000 */ # dc: 0c02
|
||||
ret /* 0x00000000 */ # de: 0df0
|
||||
|
||||
# Function @ .irom0.text+0xe0
|
||||
.global sdk_wpa_sm_disassociate
|
||||
.type sdk_wpa_sm_disassociate, @function
|
||||
sdk_wpa_sm_disassociate:
|
||||
ret /* arg0 */ # e0: 0df0
|
Loading…
Reference in a new issue