- Visual Chart Diff
- Metadata
- Deleted
- Added
- FUN_00034afc
- FUN_00034b34
- FUN_00035130
- FUN_0003f88c
- FUN_0004c3b8
- FUN_0007e128
- FUN_000bb9e8
- FUN_000bc844
- FUN_000bcb5c
- FUN_000bd670
- FUN_000e7664
- FUN_000e7698
- FUN_000e98c4
- FUN_00100fb0
- FUN_00101acc
- FUN_00152ce0
- ::BIO_new
- ::get_first_connected_dual_wan_unit
- ::pw_enc
- ::d2i_X509_fp
- ::notify_rc_and_wait_2min
- ::notify_rc_and_wait_1min
- ::X509_free
- ::save_cert
- ::BIO_free
- ::BIO_ctrl
- ::illegal_cert_and_key
- ::is_account_bound
- ::BIO_s_mem
- ::PEM_read_X509
- ::pthread_equal
- ::resolv_addr6
- ::X509V3_EXT_print
- ::restore_cert
- ::X509_get_ext
- ::adjust_62_nv_list
- ::X509_get_ext_by_NID
- ::RAND_bytes
- ::exec_and_return_string
- ::get_ddns_macaddr
- ::strnlen
- ::is_valid_oauth_code
- ::get_pid_by_process_name
- ::update_srv_cert_if_lan_ip_changed
- ::update_srv_cert_if_wan_ip_changed
- ::aae_sendIpcMsgAndWaitResp
- ::update_srv_cert_if_wan_ipv6_changed
- ::remove_all_uploaded_cert_from_jffs
- ::update_srv_cert_if_ddns_changed
- Modified
- FUN_00128ecc
- FUN_001164c0
- FUN_00141fac
- FUN_0011af60
- FUN_00116e20
- FUN_000361c4
- FUN_00075564
- FUN_00112ad4
- FUN_000d0d1c
- FUN_000d23d4
- FUN_0003643c
- FUN_0011cf48
- FUN_00111a5c
- FUN_00048260
- FUN_0011e608
- FUN_001281b8
- FUN_001049c8
- FUN_000f9fac
- FUN_00110a30
- FUN_001016f4
- FUN_00113500
- FUN_000f1c20
- FUN_0009871c
- FUN_0004d76c
- FUN_00076120
- FUN_00021ea0
- FUN_000a6a34
- FUN_000d3f9c
- FUN_0004a958
- FUN_00104f2c
- FUN_000b0f74
- FUN_000394a0
- FUN_00045b4c
- FUN_000384e4
- FUN_00040794
- FUN_000f878c
- FUN_0002007c
- FUN_000fdc44
- FUN_00023970
- FUN_000326e4
- FUN_0011bcac
- FUN_00070e04
- FUN_0004d1c4
- FUN_00033e58
- FUN_000b4a20
- FUN_0014197c
- FUN_0005435c
- FUN_0010e178
- FUN_000344c8
- FUN_00105f10
- FUN_001028ac
- FUN_001551a4
- FUN_00024248
- FUN_00042c98
- FUN_0013b4dc
- FUN_0007b788
- FUN_000a4d0c
- FUN_0015927c
- FUN_000b3438
- FUN_000739ec
- FUN_000b4cb4
- FUN_000b50a8
- FUN_00142574
- FUN_000bb140
- FUN_0004ce04
- FUN_000371f8
- FUN_000752a8
- FUN_00033704
- FUN_0010dde0
- FUN_00034090
- FUN_0001e168
- FUN_00033aa4
- FUN_00047380
- FUN_0006598c
- FUN_000a1b98
- FUN_00065e20
- FUN_00129dbc
- FUN_000400a8
- FUN_000657ac
- FUN_00098754
- FUN_0003efe4
- FUN_00021428
- FUN_000ac0ac
- FUN_000b9048
- FUN_001444ac
- FUN_00069c5c
- FUN_00025d04
- FUN_0003acc0
- FUN_00099fa4
- FUN_00124dc4
- FUN_00121250
- FUN_000ff220
- FUN_000b677c
- FUN_00038078
- FUN_001178f4
- FUN_000ea788
- FUN_0007192c
- FUN_0011aa28
- FUN_00118114
- FUN_00120664
- FUN_00061f74
- FUN_001003cc
- FUN_0010edc0
- FUN_000f37e8
- FUN_00110fe0
- FUN_000c6d34
- FUN_0007bec8
- FUN_00117774
- FUN_0010207c
- FUN_00056128
- FUN_000dc59c
- FUN_001246e0
- FUN_00058ff4
- FUN_00157984
- FUN_000441f0
- FUN_00045254
- FUN_000a5cc4
- FUN_00047808
- FUN_0011f45c
- FUN_000b38a4
- FUN_00122678
- FUN_000f5e40
- FUN_000f7bb0
- FUN_00042514
- FUN_0005c380
- FUN_000598d0
- FUN_0002f1a8
- FUN_001169f0
- FUN_00116890
- FUN_000e5264
- FUN_001594bc
- FUN_000fd908
- FUN_000345ac
- FUN_000f5b10
- FUN_000495c0
- FUN_00040900
- FUN_00040a58
- FUN_0014df80
- FUN_000e5008
- FUN_000e4fa8
- FUN_00035eec
- FUN_0010e8a8
- FUN_000e7ec0
- FUN_001464ac
- FUN_000bc648
- FUN_000bc864
- FUN_0004a744
- FUN_000f5a80
- FUN_000c988c
- FUN_001174d0
- FUN_000242d8
- FUN_000c6aa4
- FUN_0004bb4c
- FUN_00049a50
- FUN_0004a4c0
- FUN_00040fa8
- FUN_0010e56c
- FUN_000b53d8
- FUN_000b41f4
- FUN_000b472c
- FUN_000b3f9c
- FUN_000b3bf8
- FUN_000b4438
- FUN_000fd850
- FUN_000b95b4
- FUN_000b8efc
- FUN_000b8db0
- FUN_000b9190
- FUN_000b629c
- FUN_00033aa4
- FUN_000b6700
- FUN_000a70b8
- FUN_000a7250
- FUN_000bc864
- FUN_000bc648
- FUN_00048ed4
- Modified (No Code Changes)
flowchart LR
FUN_00128ecc-0-old<--Match 97%-->FUN_00130548-0-new
FUN_001164c0-0-old<--Match 83%-->FUN_0011cefc-0-new
FUN_00141fac-2-old<--Match 99%-->FUN_00149b54-2-new
FUN_0011af60-1-old<--Match 96%-->FUN_00121ae0-1-new
FUN_00116e20-0-old<--Match 65%-->FUN_0011d838-0-new
FUN_000361c4-1-old<--Match 21%-->FUN_0004b0fc-1-new
FUN_00075564-0-old<--Match 99%-->FUN_00078d18-0-new
FUN_00112ad4-1-old<--Match 98%-->FUN_00119530-1-new
FUN_000d0d1c-3-old<--Match 57%-->FUN_000d6d2c-3-new
FUN_000d23d4-1-old<--Match 95%-->FUN_000d8438-1-new
FUN_0003643c-0-old<--Match 66%-->FUN_00037f70-0-new
FUN_0011cf48-3-old<--Match 94%-->FUN_00123be4-3-new
FUN_00111a5c-0-old<--Match 91%-->FUN_001184bc-0-new
FUN_00048260-0-old<--Match 28%-->FUN_0004a4b8-0-new
FUN_0011e608-1-old<--Match 89%-->FUN_001252f8-1-new
FUN_001281b8-0-old<--Match 83%-->FUN_0012f810-0-new
FUN_001049c8-1-old<--Match 98%-->FUN_0010af14-1-new
FUN_000f9fac-2-old<--Match 99%-->FUN_001043b4-2-new
FUN_00110a30-0-old<--Match 64%-->FUN_001173b8-0-new
FUN_001016f4-1-old<--Match 84%-->FUN_00107cac-1-new
FUN_00113500-2-old<--Match 100%-->FUN_00119f4c-2-new
FUN_000f1c20-1-old<--Match 78%-->FUN_000f9610-1-new
FUN_0009871c-1-old<--Match 68%-->FUN_0009e184-1-new
FUN_0004d76c-0-old<--Match 81%-->FUN_0005096c-0-new
FUN_00076120-3-old<--Match 68%-->FUN_000798d0-3-new
FUN_00021ea0-0-old<--Match 98%-->FUN_00022bc0-0-new
old_FW_RT_AX55_300438651598_sbin_rc<--151ommited-->new_FW_RT_AX55_300438652332_sbin_rc
subgraph new_FW_RT_AX55_300438652332_sbin_rc
FUN_00130548-0-new
FUN_0011cefc-0-new
FUN_00149b54-2-new
FUN_00121ae0-1-new
FUN_0011d838-0-new
FUN_0004b0fc-1-new
FUN_00078d18-0-new
FUN_00119530-1-new
FUN_000d6d2c-3-new
FUN_000d8438-1-new
FUN_00037f70-0-new
FUN_00123be4-3-new
FUN_001184bc-0-new
FUN_0004a4b8-0-new
FUN_001252f8-1-new
FUN_0012f810-0-new
FUN_0010af14-1-new
FUN_001043b4-2-new
FUN_001173b8-0-new
FUN_00107cac-1-new
FUN_00119f4c-2-new
FUN_000f9610-1-new
FUN_0009e184-1-new
FUN_0005096c-0-new
FUN_000798d0-3-new
FUN_00022bc0-0-new
subgraph Added
direction LR
FUN_00034afc
FUN_00034b34
FUN_00035130
FUN_0003f88c
FUN_0004c3b8
FUN_0007e128
FUN_000bb9e8
FUN_000bc844
FUN_000bcb5c
FUN_000bd670
FUN_000e7664
FUN_000e7698
FUN_000e98c4
FUN_00100fb0
FUN_00101acc
FUN_00152ce0
EXTERNAL-BIO_new
EXTERNAL-get_first_connected_dual_wan_unit
EXTERNAL-pw_enc
EXTERNAL-d2i_X509_fp
EXTERNAL-notify_rc_and_wait_2min
EXTERNAL-notify_rc_and_wait_1min
EXTERNAL-X509_free
EXTERNAL-save_cert
EXTERNAL-BIO_free
EXTERNAL-BIO_ctrl
EXTERNAL-illegal_cert_and_key
24_more_added_funcs_omitted
end
end
subgraph old_FW_RT_AX55_300438651598_sbin_rc
FUN_00128ecc-0-old
FUN_001164c0-0-old
FUN_00141fac-2-old
FUN_0011af60-1-old
FUN_00116e20-0-old
FUN_000361c4-1-old
FUN_00075564-0-old
FUN_00112ad4-1-old
FUN_000d0d1c-3-old
FUN_000d23d4-1-old
FUN_0003643c-0-old
FUN_0011cf48-3-old
FUN_00111a5c-0-old
FUN_00048260-0-old
FUN_0011e608-1-old
FUN_001281b8-0-old
FUN_001049c8-1-old
FUN_000f9fac-2-old
FUN_00110a30-0-old
FUN_001016f4-1-old
FUN_00113500-2-old
FUN_000f1c20-1-old
FUN_0009871c-1-old
FUN_0004d76c-0-old
FUN_00076120-3-old
FUN_00021ea0-0-old
subgraph Deleted
direction LR
FUN_00070720
FUN_000b5c5c
FUN_000b68ec
FUN_000fa8a8
FUN_000fab08
FUN_000fac14
FUN_000fb0e8
FUN_000fb6b4
FUN_000fb8c4
FUN_000fb98c
FUN_000fd7d8
FUN_00146b04
FUN_0014ab98
EXTERNAL-shmctl
end
end
pie showData
title Function Matches - 99.2004%
"unmatched_funcs_len" : 63
"matched_funcs_len" : 7816
pie showData
title Matched Function Similarity - 96.7886%
"matched_funcs_with_code_changes_len" : 176
"matched_funcs_with_non_code_changes_len" : 75
"matched_funcs_no_changes_len" : 7565
ghidriff --project-location ghidra_projects --project-name ghidriff --symbols-path symbols --threaded --log-level INFO --file-log-level INFO --log-path ghidriff.log --min-func-len 10 --gdt [] --bsim --max-ram-percent 60.0 --max-section-funcs 200 old_FW_RT_AX55_300438651598_sbin_rc new_FW_RT_AX55_300438652332_sbin_rc
--old ['old_FW_RT_AX55_300438651598_sbin_rc'] --new [['new_FW_RT_AX55_300438652332_sbin_rc']] --engine VersionTrackingDiff --output-path ghidriffs --summary False --project-location ghidra_projects --project-name ghidriff --symbols-path symbols --threaded True --force-analysis False --force-diff False --no-symbols False --log-level INFO --file-log-level INFO --log-path ghidriff.log --va False --min-func-len 10 --use-calling-counts False --gdt [] --bsim True --bsim-full False --max-ram-percent 60.0 --print-flags False --jvm-args None --side-by-side False --max-section-funcs 200 --md-title None
--- old_FW_RT_AX55_300438651598_sbin_rc Meta
+++ new_FW_RT_AX55_300438652332_sbin_rc Meta
@@ -1,62 +1,62 @@
-Program Name: old_FW_RT_AX55_300438651598_sbin_rc
+Program Name: new_FW_RT_AX55_300438652332_sbin_rc
Language ID: ARM:LE:32:v8 (1.107)
Compiler ID: default
Processor: ARM
Endian: Little
Address Size: 32
Minimum Address: 00010000
Maximum Address: _elfSectionHeaders::0000045f
-# of Bytes: 1844431
+# of Bytes: 1887607
# of Memory Blocks: 30
-# of Instructions: 273223
-# of Defined Data: 47073
-# of Functions: 3877
-# of Symbols: 18889
-# of Data Types: 460
-# of Data Type Categories: 56
+# of Instructions: 274008
+# of Defined Data: 47561
+# of Functions: 4002
+# of Symbols: 19124
+# of Data Types: 556
+# of Data Type Categories: 57
Analyzed: true
Created With Ghidra Version: 11.2
-Date Created: Wed Mar 19 11:22:16 EDT 2025
+Date Created: Wed Mar 19 11:22:21 EDT 2025
ELF File Type: executable
ELF Note[required kernel ABI]: Linux 4.19.0
ELF Original Image Base: 0x10000
ELF Prelinked: false
Elf Comment[0]: GCC: (Buildroot 2019.11.1) 9.2.0
Executable Format: Executable and Linking Format (ELF)
-Executable Location: /home/remy/Documents/diff/old_FW_RT_AX55_300438651598_sbin_rc
-Executable MD5: 0ea1634ab198baf0ea527ef90f6e10f4
-Executable SHA256: 3877d4834fee7d19bb8ec0fa7afa8172011ff46f414086375126ba3df39d8f3b
-FSRL: file:///home/remy/Documents/diff/old_FW_RT_AX55_300438651598_sbin_rc?MD5=0ea1634ab198baf0ea527ef90f6e10f4
+Executable Location: /home/remy/Documents/diff/new_FW_RT_AX55_300438652332_sbin_rc
+Executable MD5: 75bc25cf0c496ab774b33eab4634a40e
+Executable SHA256: 9e1a6b4f7d440bdf470462c22220ec3f71a8fae0cee7670cb520016fa08555cc
+FSRL: file:///home/remy/Documents/diff/new_FW_RT_AX55_300438652332_sbin_rc?MD5=75bc25cf0c496ab774b33eab4634a40e
Preferred Root Namespace Category:
Relocatable: false
Required Library [ 0]: libconn_diag.so
Required Library [ 1]: libnvram.so
Required Library [ 2]: libshared.so
Required Library [ 3]: libcrypt.so.1
Required Library [ 4]: libdl.so.2
Required Library [ 5]: libgen_util.so
Required Library [ 6]: libsys_util.so
Required Library [ 7]: libwlcsm.so
Required Library [ 8]: libbcm_flashutil.so
Required Library [ 9]: libbcm_util.so
Required Library [ 10]: libbcm_boardctl.so
Required Library [ 11]: libwpa_client.so
Required Library [ 12]: libbcm.so
Required Library [ 13]: libgcc_s.so.1
Required Library [ 14]: libcrypto.so.1.1
Required Library [ 15]: libssl.so.1.1
Required Library [ 16]: libpthread.so.0
Required Library [ 17]: libbwdpi.so
Required Library [ 18]: libcfgmnt.so
Required Library [ 19]: libvpn.so
Required Library [ 20]: libletsencrypt.so
Required Library [ 21]: libcurl.so.4
Required Library [ 22]: libjson-c.so.2
Required Library [ 23]: libm.so.6
Required Library [ 24]: libamas-utils.so
Required Library [ 25]: liblldpctl.so.4
Required Library [ 26]: libjansson.so.4
Required Library [ 27]: libasuslog.so
Required Library [ 28]: libsqlite3.so.0
Required Library [ 29]: libc.so.6
Should Ask To Analyze: false
Ghidra old_FW_RT_AX55_300438651598_sbin_rc Decompiler Options
Decompiler Option | Value |
---|---|
Prototype Evaluation | __stdcall |
Ghidra old_FW_RT_AX55_300438651598_sbin_rc Specification extensions Options
Specification extensions Option | Value |
---|---|
FormatVersion | 0 |
VersionCounter | 0 |
Ghidra old_FW_RT_AX55_300438651598_sbin_rc Analyzers Options
Analyzers Option | Value |
---|---|
ARM Aggressive Instruction Finder | false |
ARM Constant Reference Analyzer | true |
ARM Constant Reference Analyzer.Create Data from pointer | false |
ARM Constant Reference Analyzer.Function parameter/return Pointer analysis | true |
ARM Constant Reference Analyzer.Max Threads | 2 |
ARM Constant Reference Analyzer.Min absolute reference | 4 |
ARM Constant Reference Analyzer.Require pointer param data type | false |
ARM Constant Reference Analyzer.Speculative reference max | 256 |
ARM Constant Reference Analyzer.Speculative reference min | 1024 |
ARM Constant Reference Analyzer.Stored Value Pointer analysis | true |
ARM Constant Reference Analyzer.Switch Table Recovery | false |
ARM Constant Reference Analyzer.Trust values read from writable memory | true |
ARM Symbol | true |
ASCII Strings | true |
ASCII Strings.Create Strings Containing Existing Strings | true |
ASCII Strings.Create Strings Containing References | true |
ASCII Strings.Force Model Reload | false |
ASCII Strings.Minimum String Length | LEN_5 |
ASCII Strings.Model File | StringModel.sng |
ASCII Strings.Require Null Termination for String | true |
ASCII Strings.Search Only in Accessible Memory Blocks | true |
ASCII Strings.String Start Alignment | ALIGN_1 |
ASCII Strings.String end alignment | 4 |
Aggressive Instruction Finder | false |
Aggressive Instruction Finder.Create Analysis Bookmarks | true |
Apply Data Archives | true |
Apply Data Archives.Archive Chooser | [Auto-Detect] |
Apply Data Archives.Create Analysis Bookmarks | true |
Apply Data Archives.GDT User File Archive Path | None |
Apply Data Archives.User Project Archive Path | None |
Call Convention ID | true |
Call Convention ID.Analysis Decompiler Timeout (sec) | 60 |
Call-Fixup Installer | true |
Condense Filler Bytes | false |
Condense Filler Bytes.Filler Value | Auto |
Condense Filler Bytes.Minimum number of sequential bytes | 1 |
Create Address Tables | true |
Create Address Tables.Allow Offcut References | false |
Create Address Tables.Auto Label Table | false |
Create Address Tables.Create Analysis Bookmarks | true |
Create Address Tables.Maxmimum Pointer Distance | 16777215 |
Create Address Tables.Minimum Pointer Address | 4132 |
Create Address Tables.Minimum Table Size | 3 |
Create Address Tables.Pointer Alignment | 1 |
Create Address Tables.Relocation Table Guide | true |
Create Address Tables.Table Alignment | 4 |
Data Reference | true |
Data Reference.Address Table Alignment | 1 |
Data Reference.Address Table Minimum Size | 3 |
Data Reference.Align End of Strings | false |
Data Reference.Ascii String References | true |
Data Reference.Create Address Tables | false |
Data Reference.Minimum String Length | 5 |
Data Reference.References to Pointers | false |
Data Reference.Relocation Table Guide | true |
Data Reference.Respect Execute Flag | true |
Data Reference.Subroutine References | true |
Data Reference.Switch Table References | false |
Data Reference.Unicode String References | true |
Decompiler Parameter ID | true |
Decompiler Parameter ID.Analysis Clear Level | ANALYSIS |
Decompiler Parameter ID.Analysis Decompiler Timeout (sec) | 60 |
Decompiler Parameter ID.Commit Data Types | true |
Decompiler Parameter ID.Commit Void Return Values | false |
Decompiler Parameter ID.Prototype Evaluation | __stdcall |
Decompiler Switch Analysis | true |
Decompiler Switch Analysis.Analysis Decompiler Timeout (sec) | 60 |
Demangler GNU | true |
Demangler GNU.Apply Function Calling Conventions | true |
Demangler GNU.Apply Function Signatures | true |
Demangler GNU.Demangle Only Known Mangled Symbols | false |
Demangler GNU.Demangler Format | AUTO |
Demangler GNU.Use Deprecated Demangler | false |
Demangler GNU.Use Standard Text Replacements | true |
Disassemble Entry Points | true |
Disassemble Entry Points.Respect Execute Flag | true |
ELF Scalar Operand References | false |
ELF Scalar Operand References.Relocation Table Guide | true |
Embedded Media | true |
Embedded Media.Create Analysis Bookmarks | true |
External Entry References | true |
External Symbol Resolver | true |
Function Start Pre Search | true |
Function Start Pre Search.Bookmark Functions | false |
Function Start Pre Search.Search Data Blocks | false |
Function Start Search | true |
Function Start Search After Code | true |
Function Start Search After Code.Bookmark Functions | false |
Function Start Search After Code.Search Data Blocks | false |
Function Start Search After Data | true |
Function Start Search After Data.Bookmark Functions | false |
Function Start Search After Data.Search Data Blocks | false |
Function Start Search.Bookmark Functions | false |
Function Start Search.Search Data Blocks | false |
GCC Exception Handlers | true |
GCC Exception Handlers.Create Try Catch Comments | true |
Non-Returning Functions - Discovered | true |
Non-Returning Functions - Discovered.Create Analysis Bookmarks | true |
Non-Returning Functions - Discovered.Function Non-return Threshold | 3 |
Non-Returning Functions - Discovered.Repair Flow Damage | true |
Non-Returning Functions - Known | true |
Non-Returning Functions - Known.Create Analysis Bookmarks | true |
Reference | true |
Reference.Address Table Alignment | 1 |
Reference.Address Table Minimum Size | 3 |
Reference.Align End of Strings | false |
Reference.Ascii String References | true |
Reference.Create Address Tables | false |
Reference.Minimum String Length | 5 |
Reference.References to Pointers | false |
Reference.Relocation Table Guide | true |
Reference.Respect Execute Flag | true |
Reference.Subroutine References | true |
Reference.Switch Table References | false |
Reference.Unicode String References | true |
Shared Return Calls | true |
Shared Return Calls.Allow Conditional Jumps | false |
Shared Return Calls.Assume Contiguous Functions Only | false |
Stack | true |
Stack.Create Local Variables | true |
Stack.Create Param Variables | true |
Stack.useNewFunctionStackAnalysis | true |
Subroutine References | true |
Subroutine References.Create Thunks Early | true |
Variadic Function Signature Override | false |
Variadic Function Signature Override.Create Analysis Bookmarks | false |
Ghidra new_FW_RT_AX55_300438652332_sbin_rc Decompiler Options
Decompiler Option | Value |
---|---|
Prototype Evaluation | __stdcall |
Ghidra new_FW_RT_AX55_300438652332_sbin_rc Specification extensions Options
Specification extensions Option | Value |
---|---|
FormatVersion | 0 |
VersionCounter | 0 |
Ghidra new_FW_RT_AX55_300438652332_sbin_rc Analyzers Options
Analyzers Option | Value |
---|---|
ARM Aggressive Instruction Finder | false |
ARM Constant Reference Analyzer | true |
ARM Constant Reference Analyzer.Create Data from pointer | false |
ARM Constant Reference Analyzer.Function parameter/return Pointer analysis | true |
ARM Constant Reference Analyzer.Max Threads | 2 |
ARM Constant Reference Analyzer.Min absolute reference | 4 |
ARM Constant Reference Analyzer.Require pointer param data type | false |
ARM Constant Reference Analyzer.Speculative reference max | 256 |
ARM Constant Reference Analyzer.Speculative reference min | 1024 |
ARM Constant Reference Analyzer.Stored Value Pointer analysis | true |
ARM Constant Reference Analyzer.Switch Table Recovery | false |
ARM Constant Reference Analyzer.Trust values read from writable memory | true |
ARM Symbol | true |
ASCII Strings | true |
ASCII Strings.Create Strings Containing Existing Strings | true |
ASCII Strings.Create Strings Containing References | true |
ASCII Strings.Force Model Reload | false |
ASCII Strings.Minimum String Length | LEN_5 |
ASCII Strings.Model File | StringModel.sng |
ASCII Strings.Require Null Termination for String | true |
ASCII Strings.Search Only in Accessible Memory Blocks | true |
ASCII Strings.String Start Alignment | ALIGN_1 |
ASCII Strings.String end alignment | 4 |
Aggressive Instruction Finder | false |
Aggressive Instruction Finder.Create Analysis Bookmarks | true |
Apply Data Archives | true |
Apply Data Archives.Archive Chooser | [Auto-Detect] |
Apply Data Archives.Create Analysis Bookmarks | true |
Apply Data Archives.GDT User File Archive Path | None |
Apply Data Archives.User Project Archive Path | None |
Call Convention ID | true |
Call Convention ID.Analysis Decompiler Timeout (sec) | 60 |
Call-Fixup Installer | true |
Condense Filler Bytes | false |
Condense Filler Bytes.Filler Value | Auto |
Condense Filler Bytes.Minimum number of sequential bytes | 1 |
Create Address Tables | true |
Create Address Tables.Allow Offcut References | false |
Create Address Tables.Auto Label Table | false |
Create Address Tables.Create Analysis Bookmarks | true |
Create Address Tables.Maxmimum Pointer Distance | 16777215 |
Create Address Tables.Minimum Pointer Address | 4132 |
Create Address Tables.Minimum Table Size | 3 |
Create Address Tables.Pointer Alignment | 1 |
Create Address Tables.Relocation Table Guide | true |
Create Address Tables.Table Alignment | 4 |
Data Reference | true |
Data Reference.Address Table Alignment | 1 |
Data Reference.Address Table Minimum Size | 3 |
Data Reference.Align End of Strings | false |
Data Reference.Ascii String References | true |
Data Reference.Create Address Tables | false |
Data Reference.Minimum String Length | 5 |
Data Reference.References to Pointers | false |
Data Reference.Relocation Table Guide | true |
Data Reference.Respect Execute Flag | true |
Data Reference.Subroutine References | true |
Data Reference.Switch Table References | false |
Data Reference.Unicode String References | true |
Decompiler Parameter ID | true |
Decompiler Parameter ID.Analysis Clear Level | ANALYSIS |
Decompiler Parameter ID.Analysis Decompiler Timeout (sec) | 60 |
Decompiler Parameter ID.Commit Data Types | true |
Decompiler Parameter ID.Commit Void Return Values | false |
Decompiler Parameter ID.Prototype Evaluation | __stdcall |
Decompiler Switch Analysis | true |
Decompiler Switch Analysis.Analysis Decompiler Timeout (sec) | 60 |
Demangler GNU | true |
Demangler GNU.Apply Function Calling Conventions | true |
Demangler GNU.Apply Function Signatures | true |
Demangler GNU.Demangle Only Known Mangled Symbols | false |
Demangler GNU.Demangler Format | AUTO |
Demangler GNU.Use Deprecated Demangler | false |
Demangler GNU.Use Standard Text Replacements | true |
Disassemble Entry Points | true |
Disassemble Entry Points.Respect Execute Flag | true |
ELF Scalar Operand References | false |
ELF Scalar Operand References.Relocation Table Guide | true |
Embedded Media | true |
Embedded Media.Create Analysis Bookmarks | true |
External Entry References | true |
External Symbol Resolver | true |
Function Start Pre Search | true |
Function Start Pre Search.Bookmark Functions | false |
Function Start Pre Search.Search Data Blocks | false |
Function Start Search | true |
Function Start Search After Code | true |
Function Start Search After Code.Bookmark Functions | false |
Function Start Search After Code.Search Data Blocks | false |
Function Start Search After Data | true |
Function Start Search After Data.Bookmark Functions | false |
Function Start Search After Data.Search Data Blocks | false |
Function Start Search.Bookmark Functions | false |
Function Start Search.Search Data Blocks | false |
GCC Exception Handlers | true |
GCC Exception Handlers.Create Try Catch Comments | true |
Non-Returning Functions - Discovered | true |
Non-Returning Functions - Discovered.Create Analysis Bookmarks | true |
Non-Returning Functions - Discovered.Function Non-return Threshold | 3 |
Non-Returning Functions - Discovered.Repair Flow Damage | true |
Non-Returning Functions - Known | true |
Non-Returning Functions - Known.Create Analysis Bookmarks | true |
Reference | true |
Reference.Address Table Alignment | 1 |
Reference.Address Table Minimum Size | 3 |
Reference.Align End of Strings | false |
Reference.Ascii String References | true |
Reference.Create Address Tables | false |
Reference.Minimum String Length | 5 |
Reference.References to Pointers | false |
Reference.Relocation Table Guide | true |
Reference.Respect Execute Flag | true |
Reference.Subroutine References | true |
Reference.Switch Table References | false |
Reference.Unicode String References | true |
Shared Return Calls | true |
Shared Return Calls.Allow Conditional Jumps | false |
Shared Return Calls.Assume Contiguous Functions Only | false |
Stack | true |
Stack.Create Local Variables | true |
Stack.Create Param Variables | true |
Stack.useNewFunctionStackAnalysis | true |
Subroutine References | true |
Subroutine References.Create Thunks Early | true |
Variadic Function Signature Override | false |
Variadic Function Signature Override.Create Analysis Bookmarks | false |
Stat | Value |
---|---|
added_funcs_len | 49 |
deleted_funcs_len | 14 |
modified_funcs_len | 251 |
added_symbols_len | 7 |
deleted_symbols_len | 0 |
diff_time | 1535.6742584705353 |
deleted_strings_len | 106 |
added_strings_len | 279 |
match_types | Counter({'ExactInstructionsFunctionHasher': 1018, 'SymbolsHash': 745, 'ExternalsName': 731, 'BSIM': 574, 'StructuralGraphHash': 165, 'StructuralGraphExactHash': 64, 'ExactBytesFunctionHasher': 60, 'StringsRefsHasher': 44, 'Implied Match': 21, 'StrUniqueFuncRefsHasher': 20, 'SigCallingCalledHasher': 9, 'BulkBasicBlockMnemonicHash': 3}) |
items_to_process | 321 |
diff_types | Counter({'name': 251, 'fullname': 251, 'sig': 251, 'address': 251, 'calling': 239, 'called': 204, 'length': 186, 'code': 176, 'refcount': 93}) |
unmatched_funcs_len | 63 |
total_funcs_len | 7879 |
matched_funcs_len | 7816 |
matched_funcs_with_code_changes_len | 176 |
matched_funcs_with_non_code_changes_len | 75 |
matched_funcs_no_changes_len | 7565 |
match_func_similarity_percent | 96.7886% |
func_match_overall_percent | 99.2004% |
first_matches | Counter({'ExactInstructionsFunctionHasher': 1018, 'SymbolsHash': 745, 'BSIM': 478, 'StructuralGraphHash': 165, 'StructuralGraphExactHash': 64, 'ExactBytesFunctionHasher': 60, 'StringsRefsHasher': 44, 'Implied Match': 21, 'StrUniqueFuncRefsHasher': 20, 'SigCallingCalledHasher': 9, 'BulkBasicBlockMnemonicHash': 3}) |
pie showData
title All Matches
"SymbolsHash" : 745
"BSIM" : 574
"ExternalsName" : 731
"ExactBytesFunctionHasher" : 60
"ExactInstructionsFunctionHasher" : 1018
"StructuralGraphExactHash" : 64
"SigCallingCalledHasher" : 9
"StringsRefsHasher" : 44
"StrUniqueFuncRefsHasher" : 20
"StructuralGraphHash" : 165
"BulkBasicBlockMnemonicHash" : 3
"Implied-Match" : 21
pie showData
title First Matches
"SymbolsHash" : 745
"ExactBytesFunctionHasher" : 60
"ExactInstructionsFunctionHasher" : 1018
"StructuralGraphExactHash" : 64
"BSIM" : 478
"SigCallingCalledHasher" : 9
"StringsRefsHasher" : 44
"StrUniqueFuncRefsHasher" : 20
"StructuralGraphHash" : 165
"BulkBasicBlockMnemonicHash" : 3
"Implied-Match" : 21
pie showData
title Diff Stats
"added_funcs_len" : 49
"deleted_funcs_len" : 14
"modified_funcs_len" : 251
pie showData
title Symbols
"added_symbols_len" : 7
"deleted_symbols_len" : 0
pie showData
title Strings
"deleted_strings_len" : 106
"added_strings_len" : 279
--- deleted strings
+++ added strings
@@ -1,106 +1,279 @@
-s_%s(0x%04x):_[obd_msg_exchange]
-s_%s(0x%04x):_[obd_msg_exchange]_s
-s_%s(0x%04x):_[obd_msg_exchange]_t
-s_%s(0x%04x):_model=%s,_reboot_tim
-s_%s(0x%04x):_obd_eth_%lu:_Exit_du
-s_%s.v1
-s_%s/%s.sh
-s_%s:_IFUP.
-s_%s:_shell:_%s
-s_***_Multicast_IPTV:_config_IPTV_o
-s_***_Multicast_IPTV:_config_Singt
-s_***_Multicast_IPTV:_config_VOIP_o
-s_*filter_:INPUT_DROP_[0:0]_:FORWA
-s_--filter-txif
-s_--filter-vid
-s_--filter-vlan-dev-mac-addr
-s_--if-create
-s_--if-create-name
-s_--mcast
-s_--set-if-mode-rg
-s_--set-rxif
-s_--tags
-s_/proc/meminfo
-s_/var/run/obd_eth.pid
-s_/var/run/rast_internal_ipc_socke
-s_ATE_OK
-s_PRESENT_AP
-s_RAST_%lu:_%s_reflashing
-s_RAST_%lu:_%s_set_to_conndiag_tab
-s_RAST_%lu:_%s_timeout_and_does_no
-s_RAST_%lu:_Error:_exap_info_do_no
-s_RAST_%lu:_destroy_shared_memory
-s_RAST_%lu:_detach_shared_memory
-s_RAST_%lu:_eidObj_NULL
-s_RAST_%lu:_event_table_shmget_fai
-s_RAST_%lu:_internal_IPC_Receive:_%
-s_RAST_%lu:_internal_ipc_accept_so
-s_RAST_%lu:_internal_ipc_bind_sock
-s_RAST_%lu:_internal_ipc_create_so
-s_RAST_%lu:_internal_ipc_listen_so
-s_RAST_%lu:_internal_ipc_read_sock
-s_RAST_%lu:_roaming_pre_table_full
-s_RAST_%lu:_sta_%s,_band_unit_%d,_s
-s_RAST_%lu:_sta_%s,_sta_rssi_%d,
-s_RET_11V
-s_ROAMING:_%s,_%d,_%lu,_%d,_%s,_%d
-s_ROAMING:_roaming_count_%d.
-s_ROAMING:_tg_roaming_%s,_%d,_%d,_%
-s_ROAMING:_tg_roaming_count_%d.
-s_WAN_IP_is_empty.
-s_WAN_IP_is_empty.(%d)
-s_[%s(%d)]:[%s]_wl%d_acs_excl_chan
-s_abl_eid
-s_amas_bhctrl.log
-s_arp.txt
-s_bound_lan
-s_deconfig_lan
-s_dhcp-option=lan,6,%s,%s
-s_dump_acs_excl_chans
-s_eth0.%d
-s_eth0.103
-s_eth0.500
-s_eth0.600
-s_eth0.821
-s_eth0.822
-s_eth1.%d
-s_eth1.600
-s_eth1.821
-s_eth1.822
-s_hinet
-s_httpd_dir
-s_lan_3_tag_register:_%s
-s_lan_4_tag_register:_%s
-s_lan_lease
-s_m1_fiber
-s_maxis_cts
-s_maxis_fiber
-s_maxis_fiber_sp
-s_maxis_sacofa
-s_maxis_tnb
-s_obdeth_main
-s_obdeth_msglevel
-s_pptpd_ipdown_script
-s_pptpd_ipup_script
-s_prefx:[%s/%d]
-s_rc-aft-cfg
-s_rc-bef-cfg
-s_restart_ddns
-s_restart_ddns_watchdog
-s_restart_httpd
-s_rm_/tmp/dm/%s
-s_robocfg_vlan_100_ports_"3t_4t_5t
-s_robocfg_vlan_101_ports_"3t_4t"
-s_robocfg_vlan_105_ports_"2_3t_4t"
-s_robocfg_vlan_1_ports_"0_1_2_5t"
-s_robocfg_vlan_2_ports_"4_5"
-s_set_egress_map
-s_singtel_mio
-s_superonline
-s_switch_wan0prio
-s_ubimkvol_/dev/ubi0_-s_15MiB_-n
-s_udhcpc_lan
-s_vlanctl
-s_wan11_ifname
-s_wan12_ifname
-s_webscript_dir
+s
+s_%[^>]>%d>%d>%d
+s_%s(%d)_-_Action_mode:_AMAS_WLCCO
+s_%s(%d)_-_BandIndex(%d)_Action_mo
+s_%s(%d)_-_BandIndex(%d)_Connectin
+s_%s(%d)_-_BandIndex(%d)_Connectio
+s_%s(%d)_-_BandIndex(%d)_Don't_Hav
+s_%s(%d)_-_BandIndex(%d)_Restart
+s_%s(%d)_-_BandIndex(%d)_Scanning_A
+s_%s(%d)_-_BandIndex(%d)_Unit(%d)_C
+s_%s(%d)_-_BandIndex(%d)_Unit(%d)_I
+s_%s(%d)_-_BandIndex(%d)_Unit(%d)_N
+s_%s(%d)_-_BandIndex(%d)_Unit(%d)_S
+s_%s(%d)_-_BandIndex(%d)_amas_ssd
+s_%s(%d)_-_BandIndex(%d)_amas_ssd_h
+s_%s(%d)_-_BandIndex(%d)_wait_amas
+s_%s(%d)_-_Check_BandIndex(%d)_sta
+s_%s(%d)_-_Connection_Timeout_valu
+s_%s(%d)_-_Current_AP_is_better_th
+s_%s(%d)_-_Get_site_survey_result
+s_%s(%d)_-_Get_site_survey_result_t
+s_%s(%d)_-_Getting_BandIndex(%d)_U
+s_%s(%d)_-_New_AP_is_better_than_C
+s_%s(%d)_-_PID(%d)_Band(%s)_SSID[%
+s_%s(%d)_-_PID(%d)_Triggering_band
+s_%s(%d)_-_PID(%d)_band(%d)_Checki
+s_%s(%d)_-_PID(%d)_band(%d)_Waitti
+s_%s(%d)_-_PID(%d)_bandindex(%d)_u
+s_%s(%d)_-_PID(%d)_cancel_sitesurv
+s_%s(%d)_-_PID(%d)_rssi(%d)_antenn
+s_%s(%d)_-_PID(%d)_set_flag_for_SI
+s_%s(%d)_-_PID(%d)_signal_handler_r
+s_%s(%d)_-_PID(%d)_type(%d)_proces
+s_%s(%d)_-_PID(%d)_unset_flag_for_S
+s_%s(%d)_-_Parsing_MAC:_%s
+s_%s(%d)_-_Profile_switch_Timeout_v
+s_%s(%d)_-_Ready_to_connect_to_AP(
+s_%s(%d)_-_Receive_event:_%s
+s_%s(%d)_-_Reset_amas_wlcX_dfs_sta
+s_%s(%d)_-_SiteSurvey_timeout:_%d
+s_%s(%d)_-_SiteSurvey_timeout:_%d.
+s_%s(%d)_-_SiteSurveying_counts[%d
+s_%s(%d)_-_Sorted:
+s_%s(%d)_-_Start_processing_BandIn
+s_%s(%d)_-_The_Connection_process_i
+s_%s(%d)_-_The_Request_Done.
+s_%s(%d)_-_The_Request_is_be_termi
+s_%s(%d)_-_The_amas_wlcconnect_mai
+s_%s(%d)_-_Timeout_and_doesn't_sca
+s_%s(%d)_-_Trigger_band(%d)_site_s
+s_%s(%d)_-_Update_cfg_cost(%d)_->_(
+s_%s(%d)_-_[%d]_UUID[%d]_Band[%s]_S
+s_%s(%d)_-_amas_set_cost
+s_%s(%d)_-_amas_set_cost_ret_%d
+s_%s(%d)_-_exit...
+s_%s(%d)_-_update_beacon,_send_eve
+s_%s(0x%04x):_BHC_%lu:_amas_set_co
+s_%s(0x%04x):_BHC_%lu:_exit...
+s_%s(0x%04x):_BHC_%lu:_update
+s_%s:_%s_changed,_MD5_[%s]_->_[%s]
+s_%s:_No_workable_uploaded_certifi
+s_%s:_Still_no_workable_certificat
+s_%s:_nid_%d_X509V3_EXT_print()
+s_%s:_wan_dns:_%d.
+s_%s_not_find_External_WAN_IP,_go_r
+s_*filter_:INPUT_%s_[0:0]_:FORWARD
+s_,0.0.0.0
+s_--ip6-icmp-type
+s_--ip6-proto
+s_/ddnsv2/acquireToken.php
+s_/etc/cacert.pem
+s_/etc/cacert_gen.pem
+s_/etc/cakey.pem
+s_/etc/cakey_gen.pem
+s_/etc/cert_gen.pem
+s_/etc/key_gen.pem
+s_/jffs/.cert/cacert.pem
+s_/jffs/.cert/cakey.pem
+s_/jffs/.cert/cert_gen.pem
+s_/jffs/.cert/key_gen.pem
+s_/jffs/.sys/amas/amas_bhctrl.log
+s_/jffs/.sys/amas/amas_bhctrl.log-
+s_/proc/XXXXXXXX/exe
+s_/tmp/asusddns_res
+s_/tmp/ipkg_control.tgz
+s_/tmp/ipkgapp.txt
+s_/usr/sbin/awsiot
+s_/var/run/bwdpi_wred_alive.pid
+s_/var/run/bwdpi_wred_check.pid
+s_/var/run/dslited.%d.pid
+s_/var/run/mastiff_ipc_socket
+s_/var/run/obd.pid
+s_192.0.0.1
+s_192.0.0.2
+s_2001:0F70::
+s_2001:0F74::
+s_2001:f60:0:200::1:1
+s_2404:1a8:7f01:b::3_2404:1a8:7f01
+s_2409:0250::
+s_America/Saint-Pierre-et-Miquelon
+s_DS-Lite_is_active_on_HGW
+s_DS-Lite_start.
+s_DS-Lite_start.(DS-Lite_is_not
+s_Failed_to_aae_refresh_devicetick
+s_Failed_to_aae_refresh_userticket
+s_OBD(%d)_%lu:_%-4s%-18s
+s_OBD(%d)_%lu:_BSSID=%s,_RSSI=%d,_V
+s_OBD(%d)_%lu:_Cost:_%x
+s_OBD(%d)_%lu:_Exit_due_to_WPS_fai
+s_OBD(%d)_%lu:_Exit_due_to_WPS_pro
+s_OBD(%d)_%lu:_ID:
+s_OBD(%d)_%lu:_MAC_address:_%s
+s_OBD(%d)_%lu:_Reset_due_to_mismat
+s_OBD(%d)_%lu:_Reset_due_to_timeou
+s_OBD(%d)_%lu:_Send_probe-req
+s_OBD(%d)_%lu:_Start_WPS_Enroll
+s_OBD(%d)_%lu:_Status:_%x
+s_OBD(%d)_%lu:_Unknown_TLV:
+s_RAST_%lu:_Reset_[%02x:%02x:%02x:
+s_RAST_%lu:_rast_add_to_maclist_,_i
+s_SSD_%s(%d):_unit(%d)_-_the_pid(%
+s_Success_to_aae_refresh_devicetic
+s_Success_to_aae_refresh_userticke
+s_TRANSIX(DS-Lite)
+s_USER=%s
+s_UTC2DST
+s_UTC3DST
+s_WAN(%d)_IP_is_empty.
+s_WAN(%d)_IP_is_empty.(%d)
+s_XPASS(DS-Lite)
+s_[%s(%d)]_vid=%d,_prio=%d,_mask=0
+s_[%s:(%d)]###_HGW_OFF_###_(DS-Lit
+s_[%s:(%d)]###_HGW_ON_###_(DS-Lite
+s_[%s:(%d)]###_[WAN_DET]_TRANSIX(D
+s_[%s:(%d)]###_[WAN_DET]_XPASS(DS-
+s_[%s:(%d)]AFTR:[%s]
+s_[%s:(%d)][AFTR=%s]
+s_[%s:(%d)][CMD]:[ethtool_-K_%s_sg
+s_[%s:(%d)][CMD]:[ifconfig_%s_%s_p
+s_[%s:(%d)][CMD]:[ip_link_set_dev_%
+s_[%s:(%d)][DS-Lite]Invalid_RA_[%s
+s_[%s:(%d)][DS-Lite]_Auto_Mode.
+s_[%s:(%d)][DS-Lite]_Configure_err
+s_[%s:(%d)][DS-Lite]_Line_is_trans
+s_[%s:(%d)][DS-Lite]_Line_is_xpass
+s_[%s:(%d)][DS-Lite]_Manual_Mode.
+s_[%s:(%d)][Err][DS-Lite]_Cannot_g
+s_[%s:(%d)][START]_dslited
+s_[%s:(%d)][Warning]_Unable_to_obt
+s_[%s:(%d)]prefx:[%s/%d]
+s_[%s]_None_of_wan_can_connect_to_i
+s_[BWDPI][%s:(%d)]start_wrs_and_st
+s_[BWDPI][%s:(%d)]tstamp=%s,_SIGAL
+s_[BWDPI][%s:(%d)]tstamp=%s,_alarm
+s_[BWDPI][%s:(%d)]tstamp=%s,_enabl
+s_[DS-Lite]
+s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_ACC
+s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_AUT
+s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_DRI
+s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_REF
+s_[OAUTH][%s:(%d)]token_is_invalid
+s__acquire_token
+s__check_response
+s__update_userticket
+s_aae_ddnsinfo
+s_address=/use-application-dns.net
+s_allwclientlist.json
+s_amas_portstatus
+s_asusddns_reg_domain
+s_asusddns_token
+s_asusddns_token_state
+s_bogus-priv_domain-needed
+s_bpm_status
+s_bwdpi_game_list
+s_bwdpi_stream_list
+s_bwdpi_wfh_list
+s_bwdpi_wred_alive_main
+s_bwdpi_wred_alive_tasks
+s_cat_/proc/meminfo
+s_cat_/proc/net/arp_>_/tmp/%s
+s_cat_/proc/slabinfo
+s_check_wred_alive
+s_command:_%s
+s_ddns_check
+s_ddns_ipv6_updated
+s_ddnstoken
+s_devicemac
+s_devicemd5mac
+s_dgw.xpass.jp
+s_dhcp-name-match=set:wpad-ignore,
+s_dhcp-option=lan,6%s%s%s%s%s
+s_dhcpd_dns_router
+s_dhcpfilter_enable
+s_dns_fwd_local
+s_dns_norebind
+s_dns_priv_override
+s_dns_r
+s_do_dslite_check
+s_dslite
+s_dslited
+s_echo_"[ASUSDDNS][%s:(%d)]CURL_pe
+s_echo_"[ASUSDDNS][%s:(%d)]Cannot
+s_echo_"[ASUSDDNS][%s:(%d)]Cannot
+s_echo_"[ASUSDDNS][%s:(%d)]Cannot_i
+s_echo_"[ASUSDDNS][%s:(%d)]Cannot_o
+s_echo_"[ASUSDDNS][%s:(%d)]Done._r
+s_echo_"[ASUSDDNS][%s:(%d)]Failed_t
+s_echo_"[ASUSDDNS][%s:(%d)]No_sid_(
+s_echo_"[ASUSDDNS][%s:(%d)]No_stat
+s_echo_"[ASUSDDNS][%s:(%d)]No_user
+s_echo_"[ASUSDDNS][%s:(%d)]Success
+s_echo_"[ASUSDDNS][%s:(%d)]Update_u
+s_echo_"[ASUSDDNS][%s:(%d)]User_do
+s_echo_"[ASUSDDNS][%s:(%d)]auth_st
+s_eth1.100
+s_ethtool
+s_fh_cap_mssid_subunit
+s_fh_re_mssid_subunit
+s_flets-east.jp_iptvf.jp
+s_gencert.sh
+s_get_AFTR_addr
+s_get_s46_ra_prefix
+s_gw.transix.jp
+s_hostapd_cli_-i_%s_disable
+s_httpds6_reload_cert
+s_httpds_reload_cert
+s_https://%s%s
+s_https://ns1.asuscomm.com
+s_ip4ip6
+s_ipkg_control.tgz
+s_ipkgapp.txt
+s_ipv6-icmp
+s_ipv6_s46_aftr
+s_ipv6_s46_aftr_addr
+s_ipv6_s46_b4addr
+s_ipv6_s46_env_aftr
+s_keyid:
+s_local=/%s/
+s_md5sum_%s
+s_nmp_cache.js
+s_nmp_cl_json.js
+s_nslookup_"%s"_|_grep_"Address_1:
+s_oauth_auth_status
+s_oauth_dm_cusid
+s_oauth_dm_refresh_ticket
+s_oauth_dm_user_ticket
+s_obd_interval
+s_obd_msglevel
+s_pointopoint
+s_prepare_cert
+s_prepare_cert_in_etc
+s_proc_net_arp.txt
+s_regular_ddns_check
+s_router-advertisement
+s_router-solicitation
+s_s46_dslite_mode
+s_set_exclchans_valid[%d]:[%s]=[%s
+s_setup_dslite
+s_slabdbg
+s_start_ddns
+s_start_dslited_%d
+s_stop-dns-rebind
+s_stop_dslited_%d
+s_success=on
+s_transix
+s_ubimkvol_/dev/ubi0_-s_%dMiB_-n
+s_unregister,390
+[email protected]
+s_update_asus_ddns_token
+s_vlan12
+s_vlan_forwarding
+s_wan0_s46_dslite_svc
+s_wan_dns
+s_wiredclientlist.json
+s_wl%d_acs_excl_chans_valid
+s_x509v3ext2str_by_nid
+s_xpass
+s_{"ddns":{"eid":%d}}
+s_{"nt_center":{"eid":%d}}
String | Ref Count | Ref Func |
---|---|---|
s_webscript_dir_00165b44 | 1 | FUN_0004d76c |
s_--set-rxif_00171ae9 | 4 | |
s_***_Multicast_IPTV:_config_VOIP_o_00171964 | 3 | |
s_bound_lan_0016f2b3 | 1 | FUN_00070720 |
s_RAST_%lu:sta%s,band_unit%d,_s_001866bd | 1 | FUN_000fb6b4 |
s_eth1.%d_00171bc7 | 1 | |
s_eth0.500_00171bfc | 1 | |
s_lan_4_tag_register:_%s_0017184b | 3 | |
s_restart_ddns_watchdog_0016b323 | 1 | FUN_0006598c |
s_RAST_%lu:_internal_ipc_create_so_001867e5 | 1 | |
s_*filter_:INPUT_DROP_[0:0]_:FORWA_00167df4 | 1 | FUN_00058ff4 |
s_RAST_%lu:_roaming_pre_table_full_0018669b | 1 | FUN_000fb0e8 |
s_RAST_%lu:_internal_ipc_listen_so_0018685f | 1 | |
s_rm_/tmp/dm/%s_00194707 | 1 | FUN_0014df80 |
s_%s(0x%04x):_[obd_msg_exchange]_t_0018140f | 1 | FUN_000e5264 |
s_--filter-vid_00171b07 | 1 | |
s_robocfg_vlan_2_ports_"4_5"_00171ceb | 1 | |
s_%s:_IFUP._0016ece3 | 2 | FUN_00070720 |
s_eth1.600_00171c05 | 1 | |
s_%s/%s.sh_00165b52 | 1 | FUN_0004d76c |
s_wan11_ifname_00171995 | 3 | |
s_maxis_sacofa_0017190a | 2 | |
s_/var/run/obd_eth.pid_0018128b | 2 | FUN_000e5264,FUN_000e4fa8 |
s_maxis_cts_00171900 | 2 | |
s_RAST_%lu:_%s_set_to_conndiag_tab_001865b0 | 1 | FUN_000fac14 |
s_--if-create-name_00171b61 | 3 | |
s_robocfg_vlan_1_ports_"0_1_2_5t"_00171ccb | 1 | |
s_WAN_IP_is_empty.(%d)_001636b4 | 1 | FUN_000441f0 |
s_hinet_00170e24 | 1 | |
s_RAST_%lu:_internal_ipc_accept_so_001868b5 | 1 | |
s_singtel_mio_001717eb | 2 | |
s_maxis_tnb_00171917 | 2 | |
s_amas_bhctrl.log_0018d231 | 110 | FUN_0012cb98,FUN_0012ca18,FUN_0012c204,FUN_0012bb54,FUN_0012ad3c,FUN_0012c584,FUN_0012a734,FUN_00129dbc,FUN_0012f5d0,FUN_00129abc,FUN_00130e20,FUN_0012d3f0,FUN_0012e660,FUN_001311f8,FUN_0013531c,FUN_00129f3c,FUN_00133b90,FUN_0012dfac,FUN_0013590c,FUN_0012b4b4,FUN_0012b5e4 |
s_--tags_00171ae2 | 6 | |
s_--filter-txif_00171af9 | 4 | |
s_set_egress_map_001717d2 | 27 | |
s_vlanctl_00171abc | 8 | |
s_restart_ddns_0016b235 | 3 | FUN_000739ec,FUN_00070e04,FUN_000657ac |
s_PRESENT_AP_001865a5 | 2 | FUN_000ff220,FUN_000fac14 |
s_restart_httpd_0016b339 | 1 | FUN_00065e20 |
s_robocfg_vlan_101_ports_"3t_4t"_00171d28 | 1 | |
s_RAST_%lu:internal_IPC_Receive:%_00186721 | 1 | FUN_000fb98c |
s_eth0.821_00171bcf | 1 | |
s_RET_11V_0018667a | 2 | FUN_001003cc,FUN_000fb0e8 |
s_ATE_OK_00174c06 | 2 | FUN_000b6700,FUN_000b5c5c |
s_abl_eid_00171f4b | 1 | FUN_00098754 |
s_m1_fiber_00171806 | 2 | |
s_udhcpc_lan_0016f2bd | 1 | |
s_RAST_%lu:_internal_ipc_read_sock_001866f6 | 1 | FUN_000fb98c |
s_eth0.103_00171bf3 | 1 | |
s_lan_3_tag_register:_%s_00171833 | 3 | |
s_ROAMING:roaming_count%d._00186c5b | 1 | FUN_000fd908 |
s_--set-if-mode-rg_00171b72 | 3 | |
s_robocfg_vlan_105_ports_"2_3t_4t"_00171d47 | 1 | |
s_%s(0x%04x):obd_eth%lu:_Exit_du_001812f6 | 1 | FUN_000e5008 |
s_eth0.822_00171be1 | 1 | |
s_[%s(%d)]:[%s]_wl%d_acs_excl_chan_00170dd0 | 1 | FUN_0009871c |
s_***_Multicast_IPTV:_config_IPTV_o_00171933 | 3 | |
s_eth1.821_00171bd8 | 1 | |
s_***_Multicast_IPTV:_config_Singt_001719a2 | 3 | |
s_obdeth_main_0018149f | 2 | FUN_000e5264 |
s_eth1.822_00171bea | 1 | |
s_ROAMING:%s,%d,%lu,%d,%s,%d_00186c77 | 1 | FUN_000fd908 |
s_RAST_%lu:_%s_timeout_and_does_no_001865de | 2 | FUN_000fac14,FUN_000fb0e8 |
s_maxis_fiber_0017180f | 2 | |
s_lan_lease_0016ecd9 | 4 | FUN_00070720 |
s_RAST_%lu:_%s_reflashing_00186682 | 1 | FUN_000fb0e8 |
s_eth0.600_00163c30 | 1 | |
s_RAST_%lu:_eidObj_NULL_001867ce | 1 | FUN_000fb98c |
s_ubimkvol_/dev/ubi0_-s_15MiB_-n_1_00174cc7 | 1 | FUN_000b629c |
s_deconfig_lan_0016f2a6 | 1 | |
s_arp.txt_0017d897 | 5 | FUN_000d3f9c |
s_%s(0x%04x):_[obd_msg_exchange]_s_0018138a | 1 | FUN_000e5264 |
s_pptpd_ipup_script_00179b7b | 2 | FUN_000c6d34 |
s_%s:shell:%s_001660c4 | 1 | FUN_0004d76c |
s_superonline_00171ba4 | 1 | |
s_RAST_%lu:sta%s,sta_rssi%d,_c_00186543 | 1 | FUN_000fa8a8 |
s_RAST_%lu:_detach_shared_memory_f_00186c9a | 2 | FUN_000fdc44 |
s_dhcp-option=lan,6,%s,%s_001631a8 | 1 | FUN_00042c98 |
s_--filter-vlan-dev-mac-addr_00171b83 | 1 | |
s_--mcast_00171ac4 | 4 | |
s_%s(0x%04x):_[obd_msg_exchange]_d_001813ca | 1 | FUN_000e5264 |
s_%s(0x%04x):_model=%s,_reboot_tim_00181339 | 1 | FUN_000e5264 |
s_dump_acs_excl_chans_0017271f | 2 | FUN_0009871c |
s_ROAMING:tg_roaming%s,%d,%d,_%_00186c24 | 1 | FUN_000fd908 |
s_rc-aft-cfg_00172036 | 1 | FUN_00098754 |
s_eth0.%d_00171bbf | 3 | |
s_RAST_%lu:_Error:_exap_info_do_no_0018661d | 1 | FUN_000fac14 |
s_rc-bef-cfg_0017202b | 1 | FUN_00098754 |
s_/proc/meminfo_0015e924 | 2 | FUN_000626a0,FUN_00025d04 |
s_WAN_IP_is_empty._00163ae5 | 1 | FUN_00045254 |
s_obdeth_msglevel_00181445 | 1 | FUN_000e5264 |
s_%s.v1_00171b9e | 1 | |
s_prefx:[%s/%d]_0016f161 | 1 | FUN_000739ec |
s_maxis_fiber_sp_0017181b | 2 | |
s_RAST_%lu:_internal_ipc_bind_sock_00186834 | 1 | |
s_switch_wan0prio_001717c2 | 10 | |
s_RAST_%lu:_event_table_shmget_fai_0018750c | 2 | FUN_0010207c |
s_robocfg_vlan_100_ports_"3t_4t_5t_00171d06 | 1 | |
s_httpd_dir_0016418f | 1 | FUN_00047808 |
s_wan12_ifname_001719dc | 3 | |
s_/var/run/rast_internal_ipc_socke_00186812 | 4 | FUN_000ff220,FUN_001003cc |
s_RAST_%lu:_destroy_shared_memory_f_00186cc0 | 2 | FUN_000fdc44 |
s_ROAMING:tg_roaming_count%d._00186c05 | 1 | FUN_000fd908 |
s_pptpd_ipdown_script_00179c24 | 2 | FUN_000c6d34 |
s_--if-create_00171acc | 1 |
String | Ref Count | Ref Func |
---|---|---|
s_America/Saint-Pierre-et-Miquelon_001725c6 | 1 | |
s_%s(%d)_-_exit..._001978b7 | 1 | FUN_00131470 |
s_[%s:(%d)][DS-Lite]_Auto_Mode._0018f951 | 1 | FUN_00100fb0 |
s_2001:f60:0:200::1:1_0018f9af | 1 | FUN_00100fb0 |
s_get_s46_ra_prefix_00177d96 | 1 | FUN_00076fc4 |
s_[%s:(%d)]###_[WAN_DET]_TRANSIX(D_001681a8 | 1 | FUN_000352d4 |
s_%s(%d)_-_update_beacon,_send_eve_001977cc | 1 | FUN_00131470 |
s_fh_re_mssid_subunit_001910b8 | 2 | FUN_0010b47c |
s_--ip6-icmp-type_0016875c | 6 | FUN_00037b60,FUN_00037788 |
s_OBD(%d)%lu:%-4s%-18s_00189913 | 1 | FUN_000e98c4 |
s_%s(0x%04x):BHC%lu:_update_beac_00197779 | 1 | FUN_00131470 |
s_%s(%d)_-_Connection_Timeout_valu_0019716b | 1 | FUN_00130548 |
s_fh_cap_mssid_subunit_001910cc | 4 | FUN_0010b47c |
s_ddnstoken_00189553 | 1 | FUN_000e7f38 |
s_do_dslite_check_0018fad3 | 4 | FUN_00100fb0 |
s_stop_dslited_%d_0016b2e5 | 1 | FUN_00042860 |
s_%s(%d)_-_BandIndex(%d)_Connectio_001968b5 | 2 | FUN_0012c180 |
s_%s(%d)_-_Sorted:_00195658 | 1 | FUN_00128074 |
s_echo_"[ASUSDDNS][%s:(%d)]Update_u_0018942a | 1 | FUN_000e7f38 |
s_%s(%d)_-_BandIndex(%d)_Connectin_00196849 | 2 | FUN_0012c180 |
s_XPASS(DS-Lite)_001681d5 | 1 | FUN_000352d4 |
s_%s(%d)_-_Timeout_and_doesn't_sca_00195ae2 | 1 | FUN_00129508 |
s_[%s:(%d)][DS-Lite]_Manual_Mode._0018f930 | 1 | FUN_00100fb0 |
s_dhcp-option=lan,6%s%s%s%s%s_0016b911 | 1 | FUN_00044a20 |
s_[BWDPI][%s:(%d)]tstamp=%s,_enabl_0018c4dd | 1 | FUN_000f2a14 |
s_%s(%d)_-_BandIndex(%d)_Unit(%d)_S_00195dd3 | 3 | FUN_0012c180,FUN_00129508 |
s_wl%d_acs_excl_chans_valid_0017a9c2 | 1 | FUN_0009e184 |
s_1234567890_0019d551 | 10 | |
s_/usr/sbin/awsiot_0016b440 | 2 | FUN_000443a0 |
s_DS-Lite_start._0018f845 | 1 | FUN_00100fb0 |
s_/var/run/bwdpi_wred_alive.pid_0018c495 | 1 | FUN_000f2a14 |
s_/tmp/ipkgapp.txt_00186b38 | 4 | FUN_000da008 |
s_%s(%d)_-_PID(%d)_type(%d)_proces_00194940 | 1 | |
s_OBD(%d)_%lu:_Exit_due_to_WPS_fai_00189a93 | 1 | FUN_000ea624 |
s_Failed_to_aae_refresh_userticket_0016482a | 1 | FUN_0001eb88 |
s_%s(%d)_-_The_Connection_process_i_0019446d | 1 | FUN_00123be4 |
s_%s(0x%04x):BHC%lu:_amas_set_co_0019784f | 1 | FUN_00131470 |
s_RAST_%lu:rast_add_to_maclist,_i_001910e1 | 2 | FUN_0010b47c |
s_hostapd_cli_-i_%s_disable_0019ed5a | 1 | FUN_00156000 |
s__check_response_00189605 | 2 | FUN_000e7f38 |
s_[%s:(%d)][DS-Lite]_Line_is_xpass_0018f97a | 1 | FUN_00100fb0 |
s_x509v3ext2str_by_nid_0016f252 | 1 | FUN_0003f88c |
s_echo_"[ASUSDDNS][%s:(%d)]No_stat_0018956c | 1 | FUN_000e7f38 |
s_dns_priv_override_0016bbd4 | 1 | FUN_00044a20 |
s_echo_"[ASUSDDNS][%s:(%d)]Success_001894ba | 1 | FUN_000e7f38 |
s_prepare_cert_0016e541 | 1 | FUN_0005096c |
s_%s(%d)_-_Start_processing_BandIn_00196a35 | 1 | FUN_0012c180 |
s_[%s:(%d)][Err][DS-Lite]_Cannot_g_0018fa55 | 1 | FUN_00100fb0 |
s_[%s:(%d)][Warning]_Unable_to_obt_00177be8 | 1 | FUN_00076fc4 |
s_oauth_dm_cusid_00188f49 | 1 | FUN_000e7698 |
s_%s(%d)_-_BandIndex(%d)_Unit(%d)_N_0019662c | 1 | FUN_0012c180 |
s_%s(%d)_-SiteSurvey_timeout:%d._00195d0f | 1 | FUN_00129508 |
s_echo_"[ASUSDDNS][%s:(%d)]Done._r_001895a6 | 1 | FUN_000e7f38 |
s_[%s:(%d)][DS-Lite]_Configure_err_0018fa83 | 1 | FUN_00100fb0 |
s_pointopoint_0016b0e2 | 1 | FUN_00041880 |
s_{"nt_center":{"eid":%d}}_0016486d | 1 | FUN_0001eb88 |
s_[BWDPI][%s:(%d)]tstamp=%s,_SIGAL_0018c53f | 1 | FUN_000f2a14 |
s_cat_/proc/slabinfo_0017b9db | 2 | FUN_000b7e74 |
s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_REF_0017f18d | 1 | FUN_000c2638 |
s_OBD(%d)_%lu:_Send_probe-req_0017db6c | 1 | FUN_000bc844 |
[email protected]_0016c4b4 | 1 | FUN_00048190 |
s_[DS-Lite]_0018f7f2 | 4 | FUN_00100fb0 |
s_%s(%d)_-_SiteSurveying_counts[%d_00193abc | 1 | FUN_001214fc |
s_allwclientlist.json_00186676 | 4 | FUN_000da008 |
s_%s(%d)_-_The_Request_is_be_termi_0019440a | 1 | FUN_00123be4 |
s_%s(%d)_-_PID(%d)_band(%d)_Waitti_001958a3 | 1 | FUN_00129508 |
s_%s:%s_changed,MD5[%s]->_[%s]_0016d36d | 1 | FUN_0004c3b8 |
s_OBD(%d)_%lu:_Reset_due_to_mismat_001899d3 | 1 | FUN_000e98c4 |
s_/jffs/.cert/cakey.pem_00169cb8 | 6 | FUN_0004c3b8 |
s_%s(%d)_-_New_AP_is_better_than_C_001967dd | 2 | FUN_0012c180 |
s_/var/run/mastiff_ipc_socket_0016480e | 3 | FUN_000e7f38,FUN_0001eb88 |
s_2404:1a8:7f01:b::3_2404:1a8:7f01_0018f724 | 1 | FUN_001001d4 |
s_/jffs/.sys/amas/amas_bhctrl.log-_00186926 | 2 | FUN_000da008 |
s_setup_dslite_0018fac6 | 7 | FUN_00100fb0 |
s_--ip6-proto_00168746 | 6 | FUN_00037b60,FUN_00037788 |
s_SSD_%s(%d):unit(%d)-_the_pid(%_0019c6f0 | 1 | FUN_0014a120 |
s_dgw.xpass.jp_0018f9a2 | 3 | FUN_00100fb0 |
s_%s(%d)_-_PID(%d)_Band(%s)_SSID[%_00195215 | 1 | FUN_00127544 |
s_/etc/cacert.pem_00169ca8 | 3 | FUN_0004c3b8 |
s_/jffs/.cert/cert_gen.pem_00169cdd | 3 | FUN_0004c3b8 |
s_nmp_cl_json.js_00186697 | 4 | FUN_000da008 |
s_%s(%d)-[%d]_UUID[%d]_Band[%s]_S_001946e8 | 1 | FUN_001252f8 |
s_cat_/proc/meminfo_0017b9c9 | 2 | FUN_000b7e74 |
s_bpm_status_0017b9ee | 1 | FUN_000b7e74 |
s_%s(%d)_-_Ready_to_connect_to_AP(_00194d0d | 2 | FUN_00129508,FUN_00126270 |
s_proc_net_arp.txt_00186634 | 4 | FUN_000da008 |
s_[%s:(%d)]###_[WAN_DET]_XPASS(DS-_001681e4 | 1 | FUN_000352d4 |
s_%s(%d)_-_PID(%d)_rssi(%d)_antenn_00195155 | 1 | FUN_00127544 |
s_Success_to_aae_refresh_userticke_0016484b | 1 | FUN_0001eb88 |
s_ipv6_s46_b4addr_0016afbc | 2 | FUN_00100fb0,FUN_00041880 |
s_start_dslited_%d_0016b2bc | 2 | FUN_00101a3c,FUN_000428d0 |
s_OBD(%d)_%lu:_Exit_due_to_WPS_pro_00189a5b | 1 | FUN_000ea624 |
s_local=/%s/_0016b857 | 1 | FUN_00044a20 |
s_Success_to_aae_refresh_devicetic_001648b3 | 1 | FUN_0001eb88 |
s_/proc/XXXXXXXX/exe_0019cc0d | 1 | FUN_0014a120 |
s_echo_"[ASUSDDNS][%s:(%d)]Cannot_a_001891e3 | 1 | FUN_000e7698 |
s_%s(%d)_-amas_set_cost_ret%d_0019787a | 1 | FUN_00131470 |
s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_ACC_0017e2e0 | 1 | FUN_000bebc8 |
s_UTC3DST_001732a3 | 1 | |
s_md5sum_%s_0016d2d1 | 1 | FUN_0004c3b8 |
s_[%s:(%d)][DS-Lite]Invalid_RA_[%s_0018f90d | 1 | FUN_00100fb0 |
s_%s_not_find_External_WAN_IP,_go_r_0016c407 | 1 | FUN_00047554 |
s_echo_"[ASUSDDNS][%s:(%d)]auth_st_001891a4 | 1 | FUN_000e7698 |
s_echo_"[ASUSDDNS][%s:(%d)]Cannot_o_00189508 | 1 | FUN_000e7f38 |
s_%s:nid%d_X509V3_EXT_print()_fa_0016a82e | 1 | FUN_0003f88c |
s_%s(%d)-Update_cfg_cost(%d)->(_001976e6 | 1 | FUN_00131470 |
s_%s(%d)_-_BandIndex(%d)_Scanning_A_00196a8e | 1 | FUN_0012c180 |
s_%s:wan_dns:%d._0016e4d9 | 1 | FUN_0005096c |
s_/etc/cacert_gen.pem_00169d52 | 3 | FUN_0004c3b8 |
s_echo_"[ASUSDDNS][%s:(%d)]No_sid_(_00188fac | 1 | FUN_000e7698 |
s_%s(%d)_-_Getting_BandIndex(%d)_U_001952dc | 1 | FUN_00128074 |
s_[BWDPI][%s:(%d)]tstamp=%s,_alarm_0018c4b3 | 1 | FUN_000f2a14 |
s_ipv6_s46_env_aftr_00177789 | 4 | FUN_00076fc4,FUN_00100fb0,FUN_0007430c |
s_/etc/cert_gen.pem_00169d79 | 2 | FUN_0004c3b8 |
s_ipv6_s46_aftr_addr_0016afcc | 6 | FUN_00100fb0,FUN_00041880 |
s_address=/use-application-dns.net_0016bbe6 | 1 | FUN_00044a20 |
s_dhcpd_dns_router_0016b900 | 1 | FUN_00044a20 |
s_echo_"[ASUSDDNS][%s:(%d)]CURL_pe_00189332 | 1 | FUN_000e7698 |
s_%s(%d)_-Receive_event:%s_00196d50 | 1 | FUN_0012f810 |
s_OBD(%d)_%lu:_BSSID=%s,_RSSI=%d,_V_0018992b | 1 | FUN_000e98c4 |
s_router-solicitation_0016876c | 2 | FUN_00037b60,FUN_00037788 |
s_/var/run/dslited.%d.pid_0016b2cd | 6 | FUN_00101a3c,FUN_00042860,FUN_00076fc4,FUN_00101acc,FUN_000428d0 |
s_%s(%d)_-_PID(%d)_unset_flag_for_S_00194a67 | 1 | |
s_unregister,390_0016c4de | 1 | FUN_00048190 |
s_ip4ip6_0016b039 | 1 | FUN_00041880 |
s_[BWDPI][%s:(%d)]start_wrs_and_st_0018c50f | 1 | FUN_000f2a14 |
s_%s(%d)_-Parsing_MAC:%s_00195348 | 1 | FUN_00128074 |
s_dns_norebind_0016bbb6 | 1 | FUN_00044a20 |
s_wiredclientlist.json_00186661 | 4 | FUN_000da008 |
s_keyid:_0016d35b | 2 | FUN_0004c3b8 |
s_oauth_dm_refresh_ticket_001893bd | 1 | FUN_000e7f38 |
s_vlan12_001796af | 1 | |
s_UTC2DST_0017329b | 1 | FUN_00065350 |
s_[%s:(%d)][CMD]:[ip_link_set_dev_%_0016b12f | 1 | FUN_00041880 |
s_echo_"[ASUSDDNS][%s:(%d)]Failed_t_0018946d | 1 | FUN_000e7f38 |
s_obd_msglevel_00189ae7 | 2 | FUN_000ea844 |
s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_AUT_0017e5f2 | 2 | FUN_000bf098,FUN_000bf514 |
s_httpds6_reload_cert_00166c41 | 4 | FUN_00026a44,FUN_0005096c,FUN_0004cc68 |
s_wan0_s46_dslite_svc_00187008 | 7 | FUN_000da008,FUN_000e3214 |
s_https://ns1.asuscomm.com_001892bc | 1 | FUN_000e7698 |
s_[%s:(%d)]###HGW_ON###_(DS-Lite_0018f8c0 | 1 | FUN_00100fb0 |
s_%s(%d)_-SiteSurvey_timeout:%d_001939b1 | 1 | FUN_001214fc |
s_%s(%d)_-_The_Request_Done._00196f86 | 1 | FUN_0012f810 |
s_nslookup_"%s"_|grep"Address_1:_00167efd | 1 | FUN_00034b34 |
s_USER=%s_00165128 | 1 | FUN_00020d3c |
s_echo_"[ASUSDDNS][%s:(%d)]Cannot_i_0018937c | 1 | FUN_000e7698 |
s_/tmp/ipkg_control.tgz_00186b49 | 4 | FUN_000da008 |
s_%s(%d)_-_BandIndex(%d)_Don't_Hav_00196b37 | 1 | FUN_0012c180 |
s_[%s:(%d)]prefx:[%s/%d]_00177b47 | 1 | FUN_00076fc4 |
s_%s(%d)_-_BandIndex(%d)_Action_mo_00195849 | 1 | FUN_00129508 |
s_wan_dns_0016e4d1 | 1 | FUN_0005096c |
s_s46_dslite_mode_0018f7fc | 2 | FUN_00100fb0 |
s_[%s:(%d)][START]_dslited_00177c6f | 1 | FUN_00076fc4 |
s_%s(%d)_-_Check_BandIndex(%d)_sta_00196b74 | 2 | FUN_0012c180 |
s_%s(%d)_-_BandIndex(%d)_wait_amas_00193b4c | 1 | FUN_00121ae0 |
s_%s(%d)_-_BandIndex(%d)_Restart_c_00195f47 | 1 | FUN_0012ba48 |
s_{"ddns":{"eid":%d}}_001647fa | 2 | FUN_000e7f38,FUN_0001eb88 |
s_echo_"[ASUSDDNS][%s:(%d)]No_user_00188f6d | 1 | FUN_000e7698 |
s_bwdpi_wred_alive_main_0018c58c | 1 | FUN_000f2a14 |
s_dslite_00165d27 | 5 | FUN_000da008,FUN_00022bc0,FUN_000e3214,FUN_000c10f8 |
s_vlan_forwarding_0017b302 | 1 | FUN_0007ee4c |
s_dhcp-name-match=set:wpad-ignore,_0016bc18 | 1 | FUN_00044a20 |
s_%s(%d)_-_Get_site_survey_result_t_00195a03 | 1 | FUN_00129508 |
s_https://%s%s_00189296 | 1 | FUN_000e7698 |
s_OBD(%d)_%lu:MAC_address:%s_0018999a | 1 | FUN_000e98c4 |
s_/etc/key_gen.pem_00169d8b | 2 | FUN_0004c3b8 |
s_2001:0F74::_001680d3 | 1 | FUN_0003523c |
s_/jffs/.sys/amas/amas_bhctrl.log_00186948 | 8 | FUN_000da008,FUN_00131470 |
s_/jffs/.cert/key_gen.pem_00169d04 | 3 | FUN_0004c3b8 |
s_/var/run/bwdpi_wred_check.pid_0018c477 | 1 | FUN_000f2994 |
s_%s(%d)_-_amas_set_cost_00197837 | 1 | FUN_00131470 |
s_RAST_%lu:Reset[%02x:%02x:%02x:_00190b60 | 1 | FUN_00108cb0 |
s_192.0.0.1_0016b0ee | 1 | FUN_00041880 |
s_[OAUTH][%s:(%d)]OAUTH_GOOGLE_DRI_0017f597 | 1 | FUN_000c28ac |
s_ipkg_control.tgz_001872b8 | 1 | FUN_000da008 |
s_%s(%d)_-_Profile_switch_Timeout_v_0019570a | 3 | FUN_00130548,FUN_00129508 |
s_stop-dns-rebind_0016bbc3 | 1 | FUN_00044a20 |
s_%s(0x%04x):BHC%lu:_exit..._00197899 | 1 | FUN_00131470 |
s_2409:0250::_001680f7 | 1 | FUN_0003523c |
s_transix_0018f9ed | 3 | FUN_00100fb0 |
s_[OAUTH][%s:(%d)]token_is_invalid_0017e4cd | 1 | FUN_000bef00 |
s_gw.transix.jp_0018f9f5 | 5 | FUN_00100fb0 |
s_%[^>]>%d>%d>%d_00187acc | 1 | FUN_000e1c5c |
s_prepare_cert_in_etc_0016f267 | 3 | FUN_0004c3b8 |
s_[%s:(%d)]AFTR:[%s]_00167e7f | 3 | FUN_00034b34 |
s_regular_ddns_check_00174870 | 1 | FUN_00068bb0 |
s_bwdpi_game_list_00166012 | 1 | FUN_000246b0 |
s_OBD(%d)_%lu:_Reset_due_to_timeou_00189a0a | 1 | FUN_000e98c4 |
s_/jffs/.cert/cacert.pem_00169c91 | 6 | FUN_0004c3b8 |
s_devicemac_001890df | 1 | FUN_000e7698 |
s_[%s(%d)]_vid=%d,_prio=%d,_mask=0_00179cbd | 1 | FUN_0007ee4c |
s_asusddns_reg_domain_0016f181 | 1 | FUN_00047554 |
s_%s(%d)_-_Current_AP_is_better_th_0019692c | 2 | FUN_0012c180 |
s_bwdpi_stream_list_00166022 | 1 | FUN_000246b0 |
s_dns_r_0016e4eb | 3 | FUN_00074eac,FUN_0005096c |
s_%s:_Still_no_workable_certificat_0016d327 | 1 | FUN_0004c3b8 |
s_bwdpi_wred_alive_tasks_0018c575 | 1 | FUN_000f2a14 |
s_OBD(%d)_%lu:Status:%x_00189958 | 1 | FUN_000e98c4 |
s_devicemd5mac_0018913c | 1 | FUN_000e7698 |
s_/etc/cakey.pem_00169cce | 2 | FUN_0004c3b8 |
s_update_asus_ddns_token_00189615 | 2 | FUN_000e7f38 |
s_%s(%d)_-_PID(%d)_set_flag_for_SI_001949a1 | 1 | |
s_OBD(%d)_%lu:_Unknown_TLV:_001899b8 | 1 | FUN_000e98c4 |
s_%s(%d)_-_Get_site_survey_result_f_00195a60 | 1 | FUN_00129508 |
s_command:_%s_0017d3ba | 1 | FUN_000b7e74 |
s_dns_fwd_local_0016b82f | 1 | FUN_00044a20 |
s_%s:_No_workable_uploaded_certifi_0016d2db | 1 | FUN_0004c3b8 |
s_obd_interval_00189a4e | 2 | FUN_000ea624,FUN_000ea844 |
s_nmp_cache.js_0018668a | 4 | FUN_000da008 |
s_/tmp/asusddns_res_00189230 | 5 | FUN_000e7f38,FUN_000e7698 |
s_echo_"[ASUSDDNS][%s:(%d)]User_do_001893d5 | 1 | FUN_000e7f38 |
s_oauth_dm_user_ticket_00188f58 | 1 | FUN_000e7698 |
s_WAN(%d)_IP_is_empty._0016c42e | 1 | FUN_00047554 |
s_OBD(%d)_%lu:_ID:_00189988 | 1 | FUN_000e98c4 |
s_WAN(%d)_IP_is_empty.(%d)_0016bf9f | 1 | FUN_00046194 |
s_%s(%d)_-_BandIndex(%d)_amas_ssd_d_00195b8b | 3 | FUN_0012c180,FUN_00129508 |
s_[%s:(%d)][CMD]:[ethtool_-K_%s_sg_0016b0b2 | 2 | FUN_00041880 |
s_ipv6_s46_aftr_0018f80c | 10 | FUN_00100fb0 |
s_httpds_reload_cert_00166c2e | 4 | FUN_00026a44,FUN_0005096c,FUN_0004cc68 |
s_%s(%d)_-_PID(%d)_signal_handler_r_0019482d | 1 | |
s__acquire_token_001895f6 | 11 | FUN_000e7698 |
s_192.0.0.2_0018f970 | 1 | FUN_00100fb0 |
s_ubimkvol_/dev/ubi0_-s_%dMiB_-n_1_0017d8fc | 1 | FUN_000bc018 |
s_2001:0F70::_001680df | 1 | FUN_0003523c |
s_ddns_ipv6_updated_0016bcd0 | 5 | FUN_00047554,FUN_00046194,FUN_00068d98 |
s_start_ddns_0016f176 | 1 | FUN_00046194 |
s_ipkgapp.txt_001872ab | 1 | FUN_000da008 |
s_/ddnsv2/acquireToken.php_001892a3 | 3 | FUN_000e7698 |
s_slabdbg_0017d3b2 | 1 | FUN_000b7e74 |
s_%s(%d)_-_BandIndex(%d)_amas_ssd_h_00193bbd | 1 | FUN_00121ae0 |
s_ethtool_0016b0a4 | 2 | FUN_00041880 |
s_router-advertisement_00168780 | 4 | FUN_00037b60,FUN_00037788 |
s_ddns_check_00174883 | 1 | FUN_00068d98 |
s_[%s:(%d)][CMD]:[ifconfig_%s_%s_p_0016b0f8 | 1 | FUN_00041880 |
s_[%s:(%d)]###HGW_OFF###_(DS-Lit_0018f854 | 1 | FUN_00100fb0 |
s_/var/run/obd.pid_00189902 | 2 | FUN_000e9874,FUN_000ea844 |
s_%s(%d)_-_BandIndex(%d)_Unit(%d)_I_0019623f | 1 | FUN_0012c180 |
s_oauth_auth_status_0016c115 | 7 | FUN_00047554,FUN_00046194,FUN_00048190,FUN_000e7698 |
s_[%s]_None_of_wan_can_connect_to_i_0016bea8 | 5 | FUN_00068bb0,FUN_00048190,FUN_00047554,FUN_00046194,FUN_00068d98 |
s_echo_"[ASUSDDNS][%s:(%d)]Cannot_c_00188ff1 | 1 | FUN_000e7698 |
s_asusddns_token_0018955d | 1 | FUN_000e7f38 |
s_bogus-priv_domain-needed_0016b83d | 1 | FUN_00044a20 |
s_%s(%d)_-_PID(%d)_cancel_sitesurv_00194a03 | 1 | |
s_dhcpfilter_enable_001690a8 | 1 | FUN_0003c2cc |
s_%s(%d)_-_Reset_amas_wlcX_dfs_sta_001948c6 | 1 | |
s_success=on_00178428 | 1 | FUN_000798d0 |
s_OBD(%d)_%lu:Cost:%x_00189971 | 1 | FUN_000e98c4 |
s_asusddns_token_state_0016c38d | 9 | FUN_00047554,FUN_000e7f38,FUN_00048190,FUN_00046194 |
s_get_AFTR_addr_001684f1 | 5 | FUN_00034b34 |
s_%s(%d)_-_PID(%d)_band(%d)_Checki_00195c1e | 1 | FUN_00129508 |
s_Failed_to_aae_refresh_devicetick_00164890 | 1 | FUN_0001eb88 |
s__update_userticket_001895e3 | 2 | FUN_000e7f38 |
s_/etc/cakey_gen.pem_00169d66 | 3 | FUN_0004c3b8 |
s_check_wred_alive_0018c564 | 2 | FUN_000f2a14 |
s_xpass_0018f99c | 2 | FUN_00100fb0 |
s_%s(%d)_-_PID(%d)_bandindex(%d)_u_00194ed9 | 2 | FUN_00129508,FUN_00126270 |
s_bwdpi_wfh_list_00166034 | 1 | FUN_000246b0 |
s_,0.0.0.0_0016b58b | 1 | FUN_00044a20 |
s_OBD(%d)_%lu:_Start_WPS_Enroll_00189a2e | 1 | FUN_000e98c4 |
s_%s(%d)_-_BandIndex(%d)_Unit(%d)_C_0019416c | 1 | FUN_00122864 |
s_DS-Lite_start.(DS-Lite_is_not_ac_0018f890 | 1 | FUN_00100fb0 |
s_*filter_:INPUT_%s_[0:0]_:FORWARD_00170826 | 1 | FUN_0005c394 |
s_gencert.sh_0016d362 | 1 | FUN_0004c3b8 |
s_[%s:(%d)][DS-Lite]_Line_is_trans_0018fa17 | 1 | FUN_00100fb0 |
s_aae_ddnsinfo_0016c13b | 15 | FUN_00047554,FUN_00046194,FUN_00048190,FUN_000e7698 |
s_cat_/proc/net/arp_>_/tmp/%s_00186645 | 1 | FUN_000da008 |
s_%s(%d)_-_Action_mode:_AMAS_WLCCO_001964dc | 1 | FUN_0012c180 |
s_TRANSIX(DS-Lite)_00168197 | 1 | FUN_000352d4 |
s_%s(%d)_-_The_amas_wlcconnect_mai_001943a5 | 1 | FUN_00123be4 |
s_dslited_00164c12 | 2 | FUN_000428d0 |
s_%s(%d)_-_Trigger_band(%d)_site_s_00195989 | 1 | FUN_00129508 |
s_eth1.100_001796a6 | 1 | |
s_set_exclchans_valid[%d]:[%s]=[%s_0017a9dc | 1 | FUN_0009e184 |
s_amas_portstatus_0016df30 | 2 | FUN_0004feb0 |
s_ipv6-icmp_00168752 | 6 | FUN_00037b60,FUN_00037788 |
s_DS-Lite_is_active_on_HGW_0018f8f4 | 1 | FUN_00100fb0 |
s_%s(%d)_-_PID(%d)_Triggering_band_0019591b | 1 | FUN_00129508 |
s_flets-east.jp_iptvf.jp_0018f74a | 1 | FUN_001001d4 |
s_[%s:(%d)][AFTR=%s]_00177b7a | 1 | FUN_00076fc4 |
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_00070720 |
fullname | FUN_00070720 |
refcount | 2 |
length | 1116 |
called | Expand for full list:FUN_00046498 |
calling | |
paramcount | 0 |
address | 00070720 |
sig | undefined4 __stdcall FUN_00070720(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00070720
+++ FUN_00070720
@@ -1,156 +0,0 @@
-
-undefined4 FUN_00070720(void)
-
-{
- bool bVar1;
- bool bVar2;
- char *pcVar3;
- byte *pbVar4;
- byte *pbVar5;
- int iVar6;
- char *pcVar7;
- char *pcVar8;
-
- pcVar3 = getenv("interface");
- if (pcVar3 == (char *)0x0) {
- pcVar3 = "";
- }
- pbVar4 = (byte *)getenv("ip");
- if (pbVar4 == (byte *)0x0) {
- bVar1 = false;
- }
- else {
- pbVar5 = FUN_00060a6c(pbVar4);
- bVar1 = FUN_00070298("lan_ipaddr",(char *)pbVar5);
- if (!bVar1) {
- FUN_0004641c();
- FUN_00046498();
- FUN_00047d68();
- FUN_00047808();
- }
- bVar1 = !bVar1;
- pbVar4 = FUN_00060a6c(pbVar4);
- nvram_set("lan_ipaddr",pbVar4);
- }
- pbVar4 = (byte *)getenv("subnet");
- if (pbVar4 != (byte *)0x0) {
- pbVar5 = FUN_00060a6c(pbVar4);
- bVar2 = FUN_00070298("lan_netmask",(char *)pbVar5);
- if (!bVar2) {
- bVar1 = true;
- }
- pbVar4 = FUN_00060a6c(pbVar4);
- nvram_set("lan_netmask",pbVar4);
- }
- pbVar4 = (byte *)getenv("router");
- if (pbVar4 != (byte *)0x0) {
- pbVar5 = FUN_00060a6c(pbVar4);
- bVar2 = FUN_00070298("lan_gateway",(char *)pbVar5);
- if (!bVar2) {
- bVar1 = true;
- }
- pbVar4 = FUN_00060a6c(pbVar4);
- nvram_set("lan_gateway",pbVar4);
- }
- pbVar4 = (byte *)getenv("lease");
- if (pbVar4 != (byte *)0x0) {
- pbVar5 = FUN_00060a6c(pbVar4);
- bVar2 = FUN_00070298("lan_lease",(char *)pbVar5);
- if (!bVar2) {
- bVar1 = true;
- }
- pbVar5 = FUN_00060a6c(pbVar4);
- nvram_set("lan_lease",pbVar5);
- iVar6 = atoi((char *)pbVar4);
- FUN_0007061c(pcVar3,iVar6);
- }
- iVar6 = nvram_get_int("lan_dnsenable_x");
- if ((iVar6 != 0) && (pbVar4 = (byte *)getenv("dns"), pbVar4 != (byte *)0x0)) {
- pbVar5 = FUN_00060a6c(pbVar4);
- bVar2 = FUN_00070298("lan_dns",(char *)pbVar5);
- if (!bVar2) {
- bVar1 = true;
- }
- pbVar4 = FUN_00060a6c(pbVar4);
- nvram_set("lan_dns",pbVar4);
- }
- cprintf("%s: IFUP.\n","bound_lan");
- pcVar7 = (char *)getifaddr(pcVar3,2,0);
- if (pcVar7 != (char *)0x0) {
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar8 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar8);
- }
- else {
- iVar6 = nvram_get_int();
- }
- if (iVar6 == 3) {
- bVar1 = (bool)(bVar1 ^ 1);
- bVar2 = FUN_00070298("lan_ipaddr",pcVar7);
- if (!bVar2) {
- bVar1 = false;
- }
- if ((bVar1) && (iVar6 = nvram_get_int("lan_state_t"), iVar6 == 2)) {
- return 0;
- }
- }
- }
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar7);
- }
- else {
- iVar6 = nvram_get_int("sw_mode");
- }
- if (iVar6 == 2) {
-LAB_000709d0:
- iVar6 = nvram_get_int("wlc_mode");
- if (iVar6 == 0) {
- FUN_0002a4dc(2,0);
- goto LAB_000709f4;
- }
- }
- else {
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar7);
- }
- else {
- iVar6 = nvram_get_int();
- }
- if ((((iVar6 == 3) && (iVar6 = nvram_get_int("wlc_psta"), iVar6 == 2)) &&
- ((iVar6 = nvram_get_int("wlc_dpsta"), iVar6 == 1 ||
- (iVar6 = nvram_get("wlc_dpsta"), iVar6 == 0)))) &&
- (iVar6 = nvram_get_int("re_mode"), iVar6 == 0)) goto LAB_000709d0;
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar7);
- }
- else {
- iVar6 = nvram_get_int("sw_mode");
- }
- if (((iVar6 == 3) && (iVar6 = nvram_get_int("wlc_psta"), iVar6 == 2)) &&
- (iVar6 = nvram_get_int("wlc_dpsta"), iVar6 == 0)) goto LAB_000709d0;
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar7);
- }
- else {
- iVar6 = nvram_get_int("sw_mode");
- }
- if ((iVar6 == 3) && (iVar6 = nvram_get_int("wlc_psta"), iVar6 == 1)) goto LAB_000709d0;
- }
- pcVar7 = FUN_00070278();
- pcVar8 = FUN_00070278();
- FUN_00070318(pcVar3,0x1243,pcVar7,pcVar8);
- FUN_0002d648(pcVar3);
-LAB_000709f4:
- cprintf("done\n");
- return 0;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000b5c5c |
fullname | FUN_000b5c5c |
refcount | 1 |
length | 112 |
called | ::puts ::strcmp FUN_000b2da0 |
calling | FUN_00076120 |
paramcount | 1 |
address | 000b5c5c |
sig | undefined4 __stdcall FUN_000b5c5c(char * param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000b5c5c
+++ FUN_000b5c5c
@@ -1,17 +0,0 @@
-
-undefined4 FUN_000b5c5c(char *param_1)
-
-{
- char *__s1;
- int iVar1;
-
- __s1 = FUN_000b2da0("wifi_psk");
- if ((param_1 != (char *)0x0) &&
- ((iVar1 = strcmp(__s1,param_1), iVar1 == 0 ||
- ((iVar1 = strcmp(param_1,"NONE"), iVar1 == 0 && (*__s1 == '\0')))))) {
- puts("ATE_OK");
- return 0;
- }
- return 0xffffffff;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000b68ec |
fullname | FUN_000b68ec |
refcount | 5 |
length | 28 |
called | ::nvram_get |
calling | |
paramcount | 0 |
address | 000b68ec |
sig | undefined * __stdcall FUN_000b68ec(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000b68ec
+++ FUN_000b68ec
@@ -1,13 +0,0 @@
-
-undefined * FUN_000b68ec(void)
-
-{
- undefined *puVar1;
-
- puVar1 = (undefined *)nvram_get();
- if (puVar1 != (undefined *)0x0) {
- return puVar1;
- }
- return "";
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fa8a8 |
fullname | FUN_000fa8a8 |
refcount | 3 |
length | 564 |
called | ::asusdebuglog ::cprintf ::f_exists ::file_lock ::file_unlock ::logmessage_normal ::time ::uptime FUN_000fab08 |
calling | FUN_000fac14 FUN_000fb0e8 |
paramcount | 7 |
address | 000fa8a8 |
sig | undefined __stdcall FUN_000fa8a8(undefined4 * param_1, undefined4 param_2, undefined4 param_3, undefined4 * param_4, undefined4 param_5, undefined4 param_6, undefined4 * param_7) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fa8a8
+++ FUN_000fa8a8
@@ -1,80 +0,0 @@
-
-void FUN_000fa8a8(undefined4 *param_1,undefined4 param_2,undefined4 param_3,undefined4 *param_4,
- undefined4 param_5,undefined4 param_6,undefined4 *param_7)
-
-{
- undefined4 uVar1;
- int iVar2;
- time_t tVar3;
- undefined4 *puVar4;
- int iVar5;
- undefined4 *puVar6;
- undefined4 *puVar7;
- undefined4 *puVar8;
- int iVar9;
-
- uVar1 = uptime();
- cprintf("RAST %lu: sta %s, sta_rssi %d, candidate_rssi_criteria %d, candidate %s, candidate_rssi %d.\n"
- ,uVar1,param_1,param_2,param_3,param_4,param_5);
- if ((DAT_001ddd34 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,
- "sta %s, sta_rssi %d, candidate_rssi_criteria %d, candidate %s, candidate_rssi %d.\n"
- ,param_1,param_2,param_3,param_4,param_5);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast",
- "sta %s, sta_rssi %d, candidate_rssi_criteria %d, candidate %s, candidate_rssi %d.\n"
- ,param_1,param_2,param_3,param_4,param_5);
- }
- if ((int)*(uint *)(DAT_001d45fc + 0x1a00) < 0x80) {
- uVar1 = file_lock("roaming");
- iVar2 = DAT_001d45fc;
- puVar6 = (undefined4 *)(*(int *)(DAT_001d45fc + 0x1a00) * 0x12 + DAT_001d45fc);
- puVar7 = param_1;
- do {
- puVar8 = puVar7 + 1;
- puVar4 = puVar6 + 1;
- *puVar6 = *puVar7;
- puVar6 = puVar4;
- puVar7 = puVar8;
- } while (puVar8 != param_1 + 4);
- *(undefined2 *)puVar4 = *(undefined2 *)puVar8;
- iVar9 = iVar2 + *(int *)(iVar2 + 0x1a00) * 4;
- *(undefined4 *)(iVar9 + 0x900) = param_2;
- tVar3 = time((time_t *)0x0);
- *(time_t *)(iVar9 + 0xb00) = tVar3;
- iVar9 = *(int *)(iVar2 + 0x1a00);
- *(undefined4 *)(iVar2 + (iVar9 + 0x340) * 4) = param_3;
- puVar6 = (undefined4 *)(iVar9 * 0x12 + iVar2 + 0xf00);
- puVar7 = param_4;
- do {
- puVar8 = puVar7 + 1;
- puVar4 = puVar6 + 1;
- *puVar6 = *puVar7;
- puVar6 = puVar4;
- puVar7 = puVar8;
- } while (puVar8 != param_4 + 4);
- *(undefined2 *)puVar4 = *(undefined2 *)puVar8;
- iVar5 = *(int *)(iVar2 + 0x1a00);
- iVar9 = iVar2 + iVar5 * 4;
- *(undefined4 *)(iVar9 + 0x1800) = param_5;
- *(undefined4 *)(iVar9 + 0x1a04) = param_6;
- puVar6 = param_7;
- puVar7 = (undefined4 *)(iVar5 * 0x12 + iVar2 + 0x1c04);
- do {
- puVar4 = puVar6 + 1;
- puVar8 = puVar7 + 1;
- *puVar7 = *puVar6;
- puVar6 = puVar4;
- puVar7 = puVar8;
- } while (puVar4 != param_7 + 4);
- *(undefined2 *)puVar8 = *(undefined2 *)puVar4;
- *(int *)(iVar2 + 0x1a00) = *(int *)(iVar2 + 0x1a00) + 1;
- file_unlock(uVar1);
- return;
- }
- FUN_000fab08(*(uint *)(DAT_001d45fc + 0x1a00) & 0x7f,param_1,param_2,param_3,param_4,param_5,
- param_6,param_7);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fab08 |
fullname | FUN_000fab08 |
refcount | 1 |
length | 260 |
called | ::file_lock ::file_unlock ::time |
calling | FUN_000fa8a8 |
paramcount | 8 |
address | 000fab08 |
sig | undefined __stdcall FUN_000fab08(int param_1, undefined4 * param_2, undefined4 param_3, undefined4 param_4, undefined4 * param_5, undefined4 param_6, undefined4 param_7, undefined4 * param_8) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fab08
+++ FUN_000fab08
@@ -1,59 +0,0 @@
-
-void FUN_000fab08(int param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,
- undefined4 *param_5,undefined4 param_6,undefined4 param_7,undefined4 *param_8)
-
-{
- int iVar1;
- undefined4 uVar2;
- undefined4 *puVar3;
- undefined4 *puVar4;
- time_t tVar5;
- undefined4 *puVar6;
- int iVar7;
- int iVar8;
- undefined4 *puVar9;
-
- uVar2 = file_lock("roaming");
- iVar1 = DAT_001d45fc;
- iVar8 = param_1 * 0x12;
- puVar3 = (undefined4 *)(DAT_001d45fc + iVar8);
- puVar6 = param_2;
- do {
- puVar9 = puVar6 + 1;
- puVar4 = puVar3 + 1;
- *puVar3 = *puVar6;
- puVar3 = puVar4;
- puVar6 = puVar9;
- } while (puVar9 != param_2 + 4);
- iVar7 = iVar1 + param_1 * 4;
- *(undefined2 *)puVar4 = *(undefined2 *)puVar9;
- *(undefined4 *)(iVar7 + 0x900) = param_3;
- tVar5 = time((time_t *)0x0);
- *(undefined4 *)(iVar7 + 0xd00) = param_4;
- *(time_t *)(iVar7 + 0xb00) = tVar5;
- puVar3 = (undefined4 *)(iVar1 + iVar8 + 0xf00);
- puVar6 = param_5;
- do {
- puVar9 = puVar6 + 1;
- puVar4 = puVar3 + 1;
- *puVar3 = *puVar6;
- puVar3 = puVar4;
- puVar6 = puVar9;
- } while (puVar9 != param_5 + 4);
- *(undefined2 *)puVar4 = *(undefined2 *)puVar9;
- *(undefined4 *)(iVar7 + 0x1800) = param_6;
- *(undefined4 *)(iVar7 + 0x1a04) = param_7;
- puVar3 = param_8;
- puVar6 = (undefined4 *)(iVar1 + iVar8 + 0x1c04);
- do {
- puVar4 = puVar3 + 1;
- puVar9 = puVar6 + 1;
- *puVar6 = *puVar3;
- puVar3 = puVar4;
- puVar6 = puVar9;
- } while (puVar4 != param_8 + 4);
- *(undefined2 *)puVar9 = *(undefined2 *)puVar4;
- file_unlock(uVar2);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fac14 |
fullname | FUN_000fac14 |
refcount | 0 |
length | 1108 |
called | Expand for full list: |
calling | |
paramcount | 1 |
address | 000fac14 |
sig | undefined4 __stdcall FUN_000fac14(undefined4 param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fac14
+++ FUN_000fac14
@@ -1,116 +0,0 @@
-
-undefined4 FUN_000fac14(undefined4 param_1)
-
-{
- bool bVar1;
- int iVar2;
- char *__s2;
- int iVar3;
- undefined4 *puVar4;
- undefined4 uVar5;
- undefined4 uVar6;
- undefined4 uVar7;
- undefined4 uVar8;
- char *pcVar9;
- char *pcVar10;
- int iVar11;
- int *piVar12;
- undefined4 uVar13;
- undefined4 local_40;
- undefined4 local_3c;
- undefined4 local_38;
- undefined4 local_34 [2];
- undefined2 local_2c [6];
-
- local_40 = 0;
- puVar4 = local_34;
- local_3c = 0;
- local_38 = 0;
- pcVar10 = "00:00:00:00:00:00";
- do {
- pcVar9 = pcVar10 + 8;
- uVar5 = *(undefined4 *)(pcVar10 + 4);
- *puVar4 = *(undefined4 *)pcVar10;
- puVar4[1] = uVar5;
- puVar4 = puVar4 + 2;
- pcVar10 = pcVar9;
- } while (pcVar9 != "0");
- bVar1 = false;
- iVar11 = 0;
- *(undefined2 *)puVar4 = 0x30;
- iVar2 = uptime();
- uVar5 = json_tokener_parse(param_1);
- json_object_object_get_ex(uVar5,&DAT_001865a0,&local_40);
- json_object_object_get_ex(local_40,"STA",&local_3c);
- json_object_object_get_ex(local_40,"PRESENT_AP",&local_38);
- pcVar9 = (char *)&DAT_001de408;
- pcVar10 = pcVar9;
- piVar12 = &DAT_001ddf50;
- do {
- if (*piVar12 != 0) {
- __s2 = (char *)json_object_get_string(local_3c);
- iVar3 = strcmp(pcVar9,__s2);
- if (iVar3 == 0) {
- uVar7 = *(undefined4 *)(pcVar10 + 0xd00);
- uVar8 = *(undefined4 *)(pcVar10 + 0x1800);
- uVar6 = *(undefined4 *)(pcVar10 + 0x1a04);
- uVar13 = *(undefined4 *)(pcVar10 + 0x900);
- puVar4 = (undefined4 *)json_object_get_string(local_38);
- FUN_000fa8a8((undefined4 *)pcVar9,uVar13,uVar7,(undefined4 *)(pcVar9 + 0xf00),uVar8,uVar6,
- puVar4);
- if ((DAT_001e0918 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- uVar6 = uptime();
- cprintf("RAST %lu: %s set to conndiag table ,clean it\n",uVar6,pcVar9);
- }
- if ((DAT_001ddd34 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"%s set to conndiag table ,clean it\n",pcVar9);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","%s set to conndiag table ,clean it\n",pcVar9);
- }
- bVar1 = true;
- *piVar12 = 0;
- }
- else if (3 < iVar2 - (&DAT_001ddd38)[iVar11]) {
- if ((DAT_001e0918 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- uVar6 = uptime();
- cprintf("RAST %lu: %s timeout and does not receive exap info ,clean it\n",uVar6,pcVar9);
- }
- if ((DAT_001ddd34 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"%s timeout and does not receive exap info ,clean it\n"
- ,pcVar9);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","%s timeout and does not receive exap info ,clean it\n",pcVar9
- );
- }
- FUN_000fa8a8((undefined4 *)pcVar9,*(undefined4 *)(pcVar10 + 0x900),
- *(undefined4 *)(pcVar10 + 0xd00),(undefined4 *)(pcVar9 + 0xf00),
- *(undefined4 *)(pcVar10 + 0x1800),*(undefined4 *)(pcVar10 + 0x1a04),local_34);
- *piVar12 = 0;
- }
- }
- iVar11 = iVar11 + 1;
- pcVar10 = pcVar10 + 4;
- pcVar9 = pcVar9 + 0x12;
- piVar12 = piVar12 + 1;
- } while (iVar11 != 0x80);
- if (!bVar1) {
- if ((DAT_001e0918 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
- uVar6 = uptime();
- uVar7 = json_object_get_string(local_3c);
- cprintf("RAST %lu: Error: exap info do not match related table %s\n",uVar6,uVar7);
- }
- if ((DAT_001ddd34 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
- uVar6 = json_object_get_string(local_3c);
- asusdebuglog(6,"roamast.log",0,1,0,"Error: exap info do not match related table %s\n",uVar6);
- }
- if (DAT_001e090c != 0) {
- uVar6 = json_object_get_string(local_3c);
- logmessage_normal("roamast","Error: exap info do not match related table %s\n",uVar6);
- }
- }
- json_object_put(uVar5);
- return 0;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fb0e8 |
fullname | FUN_000fb0e8 |
refcount | 2 |
length | 1340 |
called | Expand for full list:FUN_000fa8a8 |
calling | FUN_000fb98c |
paramcount | 1 |
address | 000fb0e8 |
sig | undefined4 __stdcall FUN_000fb0e8(undefined4 param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fb0e8
+++ FUN_000fb0e8
@@ -1,170 +0,0 @@
-
-undefined4 FUN_000fb0e8(undefined4 param_1)
-
-{
- bool bVar1;
- int iVar2;
- undefined4 uVar3;
- int iVar4;
- char *pcVar5;
- undefined4 *puVar6;
- undefined4 *puVar7;
- undefined4 uVar8;
- undefined4 *puVar9;
- undefined4 *puVar10;
- int iVar11;
- char *pcVar12;
- undefined4 *puVar13;
- int *piVar14;
- int iVar15;
- int *local_78;
- undefined4 local_54;
- undefined4 local_50;
- undefined4 local_4c;
- undefined4 local_48;
- undefined4 local_44;
- undefined4 local_40;
- undefined4 local_3c;
- undefined4 local_38;
- undefined4 local_34 [2];
- undefined2 local_2c [6];
-
- local_54 = 0;
- puVar13 = local_34;
- local_50 = 0;
- local_4c = 0;
- local_48 = 0;
- local_44 = 0;
- local_40 = 0;
- local_3c = 0;
- local_38 = 0;
- pcVar12 = "00:00:00:00:00:00";
- do {
- pcVar5 = pcVar12 + 8;
- uVar8 = *(undefined4 *)(pcVar12 + 4);
- *puVar13 = *(undefined4 *)pcVar12;
- puVar13[1] = uVar8;
- puVar13 = puVar13 + 2;
- pcVar12 = pcVar5;
- } while (pcVar5 != "0");
- *(undefined2 *)puVar13 = 0x30;
- iVar2 = uptime();
- uVar8 = json_tokener_parse(param_1);
- iVar11 = -1;
- json_object_object_get_ex(uVar8,&DAT_001865a0,&local_54);
- json_object_object_get_ex(local_54,"STA",&local_50);
- json_object_object_get_ex(local_54,"RSSI",&local_4c);
- json_object_object_get_ex(local_54,"AP_RSSI",&local_48);
- json_object_object_get_ex(local_54,"CANDIDATE",&local_44);
- json_object_object_get_ex(local_54,"AP_RSSI_CRITERIA",&local_40);
- json_object_object_get_ex(local_54,"AP_TARGET_MAC",&local_3c);
- json_object_object_get_ex(local_54,"RET_11V",&local_38);
- pcVar12 = (char *)&DAT_001de408;
- puVar13 = &DAT_001ded08;
- piVar14 = &DAT_001ddd38;
- iVar15 = 0;
- bVar1 = false;
- local_78 = &DAT_001ddf50;
- do {
- if (*local_78 == 0) {
- if (iVar11 == -1) {
- iVar11 = iVar15;
- }
- }
- else if (iVar2 - *piVar14 < 4) {
- pcVar5 = (char *)json_object_get_string(local_50);
- iVar4 = strcmp(pcVar12,pcVar5);
- if (iVar4 == 0) {
- if ((DAT_001e0918 != 0) || (iVar4 = f_exists("/tmp/RAST_DEBUG"), iVar4 != 0)) {
- uVar3 = uptime();
- cprintf("RAST %lu: %s reflashing\n",uVar3,pcVar12);
- }
- if ((DAT_001ddd34 != 0) || (iVar4 = f_exists("/tmp/RAST_DEBUG"), iVar4 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"%s reflashing\n",pcVar12);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","%s reflashing\n",pcVar12);
- }
- iVar4 = uptime();
- bVar1 = true;
- *piVar14 = iVar4;
- }
- }
- else {
- *local_78 = 0;
- if ((DAT_001e0918 != 0) || (iVar4 = f_exists("/tmp/RAST_DEBUG"), iVar4 != 0)) {
- uVar3 = uptime();
- cprintf("RAST %lu: %s timeout and does not receive exap info ,clean it\n",uVar3,pcVar12);
- }
- if ((DAT_001ddd34 != 0) || (iVar4 = f_exists("/tmp/RAST_DEBUG"), iVar4 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"%s timeout and does not receive exap info ,clean it\n",
- pcVar12);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","%s timeout and does not receive exap info ,clean it\n",pcVar12)
- ;
- }
- FUN_000fa8a8((undefined4 *)pcVar12,*puVar13,puVar13[0x100],(undefined4 *)(pcVar12 + 0xf00),
- puVar13[0x3c0],puVar13[0x441],local_34);
- }
- iVar15 = iVar15 + 1;
- puVar13 = puVar13 + 1;
- pcVar12 = pcVar12 + 0x12;
- piVar14 = piVar14 + 1;
- local_78 = local_78 + 1;
- } while (iVar15 != 0x80);
- if (!bVar1) {
- if (iVar11 == -1) {
- uVar3 = uptime();
- cprintf("RAST %lu: roaming pre table full\n",uVar3);
- if ((DAT_001ddd34 != 0) || (iVar11 = f_exists("/tmp/RAST_DEBUG"), iVar11 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"roaming pre table full\n");
- }
- uVar3 = 0xffffffff;
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","roaming pre table full\n");
- }
- goto LAB_000fb320;
- }
- puVar6 = (undefined4 *)json_object_get_string(local_50);
- puVar13 = puVar6;
- puVar10 = (undefined4 *)((int)&DAT_001de408 + iVar11 * 0x12);
- do {
- puVar7 = puVar13 + 1;
- puVar9 = puVar10 + 1;
- *puVar10 = *puVar13;
- puVar13 = puVar7;
- puVar10 = puVar9;
- } while (puVar7 != puVar6 + 4);
- *(undefined2 *)puVar9 = *(undefined2 *)puVar7;
- uVar3 = json_object_get_int(local_4c);
- (&DAT_001de408)[iVar11 + 0x240] = uVar3;
- uVar3 = json_object_get_int(local_40);
- (&DAT_001de408)[iVar11 + 0x340] = uVar3;
- puVar6 = (undefined4 *)json_object_get_string(local_44);
- puVar13 = puVar6;
- puVar10 = (undefined4 *)((int)&DAT_001df308 + iVar11 * 0x12);
- do {
- puVar7 = puVar13 + 1;
- puVar9 = puVar10 + 1;
- *puVar10 = *puVar13;
- puVar13 = puVar7;
- puVar10 = puVar9;
- } while (puVar7 != puVar6 + 4);
- *(undefined2 *)puVar9 = *(undefined2 *)puVar7;
- uVar3 = json_object_get_int(local_48);
- (&DAT_001de408)[iVar11 + 0x600] = uVar3;
- uVar3 = json_object_get_int(local_38);
- (&DAT_001de40c)[iVar11 + 0x680] = uVar3;
- uVar3 = uptime();
- (&DAT_001de408)[iVar11 + 0x2c0] = uVar3;
- uVar3 = uptime();
- (&DAT_001ddd38)[iVar11] = uVar3;
- (&DAT_001ddf50)[iVar11] = 1;
- }
- uVar3 = 0;
-LAB_000fb320:
- json_object_put(uVar8);
- return uVar3;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fb6b4 |
fullname | FUN_000fb6b4 |
refcount | 1 |
length | 484 |
called | ::asusdebuglog ::cprintf ::f_exists ::file_lock ::file_unlock ::logmessage_normal ::time ::uptime FUN_000fb8c4 |
calling | FUN_001028ac |
paramcount | 7 |
address | 000fb6b4 |
sig | undefined __stdcall FUN_000fb6b4(undefined4 * param_1, undefined4 param_2, undefined4 param_3, undefined4 param_4, undefined4 param_5, undefined4 param_6, undefined4 param_7) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fb6b4
+++ FUN_000fb6b4
@@ -1,60 +0,0 @@
-
-void FUN_000fb6b4(undefined4 *param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4,
- undefined4 param_5,undefined4 param_6,undefined4 param_7)
-
-{
- undefined4 uVar1;
- int iVar2;
- undefined4 uVar3;
- time_t tVar4;
- undefined4 uVar5;
- undefined4 *puVar6;
- undefined4 *puVar7;
- int iVar8;
- int iVar9;
- undefined4 *puVar10;
-
- uVar1 = uptime();
- cprintf("RAST %lu: sta %s, band_unit %d, sta_rssi %d.\n",uVar1,param_1,param_2,param_3);
- if ((DAT_001ddd34 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"sta %s, band_unit %d, sta_rssi %d.\n",param_1,param_2,
- param_3);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","sta %s, band_unit %d, sta_rssi %d.\n",param_1,param_2,param_3);
- }
- if ((int)*(uint *)(DAT_001d4600 + 0x1700) < 0x80) {
- uVar1 = file_lock("tg_roaming");
- iVar2 = DAT_001d4600;
- puVar10 = param_1 + 4;
- puVar6 = (undefined4 *)(*(int *)(DAT_001d4600 + 0x1700) * 0x12 + DAT_001d4600);
- do {
- puVar7 = puVar6 + 2;
- uVar3 = *param_1;
- uVar5 = param_1[1];
- param_1 = param_1 + 2;
- *puVar6 = uVar3;
- puVar6[1] = uVar5;
- puVar6 = puVar7;
- } while (param_1 != puVar10);
- *(undefined2 *)puVar7 = *(undefined2 *)param_1;
- iVar8 = iVar2 + *(int *)(iVar2 + 0x1700) * 4;
- *(undefined4 *)(iVar8 + 0x900) = param_2;
- *(undefined4 *)(iVar8 + 0xb00) = param_3;
- tVar4 = time((time_t *)0x0);
- *(time_t *)(iVar8 + 0xd00) = tVar4;
- iVar8 = *(int *)(iVar2 + 0x1700);
- iVar9 = iVar2 + iVar8 * 4;
- *(undefined4 *)(iVar9 + 0xf00) = param_4;
- *(undefined4 *)(iVar9 + 0x1300) = param_6;
- *(undefined4 *)(iVar9 + 0x1100) = param_5;
- *(undefined4 *)(iVar9 + 0x1500) = param_7;
- *(int *)(iVar2 + 0x1700) = iVar8 + 1;
- file_unlock(uVar1);
- return;
- }
- FUN_000fb8c4(*(uint *)(DAT_001d4600 + 0x1700) & 0x7f,param_1,param_2,param_3,param_4,param_5,
- param_6,param_7);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fb8c4 |
fullname | FUN_000fb8c4 |
refcount | 1 |
length | 192 |
called | ::file_lock ::file_unlock ::time |
calling | FUN_000fb6b4 |
paramcount | 8 |
address | 000fb8c4 |
sig | undefined __stdcall FUN_000fb8c4(int param_1, undefined4 * param_2, undefined4 param_3, undefined4 param_4, undefined4 param_5, undefined4 param_6, undefined4 param_7, undefined4 param_8) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fb8c4
+++ FUN_000fb8c4
@@ -1,41 +0,0 @@
-
-void FUN_000fb8c4(int param_1,undefined4 *param_2,undefined4 param_3,undefined4 param_4,
- undefined4 param_5,undefined4 param_6,undefined4 param_7,undefined4 param_8)
-
-{
- undefined4 uVar1;
- undefined4 uVar2;
- time_t tVar3;
- undefined4 uVar4;
- undefined4 *puVar5;
- undefined4 *puVar6;
- undefined4 *puVar7;
- int iVar8;
-
- uVar1 = file_lock("tg_roaming");
- iVar8 = DAT_001d4600;
- puVar5 = param_2 + 4;
- puVar6 = (undefined4 *)(param_1 * 0x12 + DAT_001d4600);
- do {
- puVar7 = puVar6 + 2;
- uVar2 = *param_2;
- uVar4 = param_2[1];
- param_2 = param_2 + 2;
- *puVar6 = uVar2;
- puVar6[1] = uVar4;
- puVar6 = puVar7;
- } while (param_2 != puVar5);
- iVar8 = iVar8 + param_1 * 4;
- *(undefined2 *)puVar7 = *(undefined2 *)param_2;
- *(undefined4 *)(iVar8 + 0x900) = param_3;
- *(undefined4 *)(iVar8 + 0xb00) = param_4;
- tVar3 = time((time_t *)0x0);
- *(undefined4 *)(iVar8 + 0xf00) = param_5;
- *(time_t *)(iVar8 + 0xd00) = tVar3;
- *(undefined4 *)(iVar8 + 0x1300) = param_7;
- *(undefined4 *)(iVar8 + 0x1100) = param_6;
- *(undefined4 *)(iVar8 + 0x1500) = param_8;
- file_unlock(uVar1);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fb98c |
fullname | FUN_000fb98c |
refcount | 1 |
length | 1288 |
called | Expand for full list:FUN_000fb0e8 |
calling | |
paramcount | 1 |
address | 000fb98c |
sig | undefined __stdcall FUN_000fb98c(int param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fb98c
+++ FUN_000fb98c
@@ -1,108 +0,0 @@
-
-void FUN_000fb98c(int param_1)
-
-{
- ssize_t sVar1;
- undefined4 uVar2;
- int iVar3;
- undefined4 uVar4;
- char *pcVar5;
- int iVar6;
- int *piVar7;
- undefined4 local_828;
- int local_824;
- undefined auStack_820 [2048];
-
- memset(auStack_820,0,0x800);
- sVar1 = read(param_1,auStack_820,0x800);
- if (sVar1 < 1) {
- if ((DAT_001e0918 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- uVar2 = uptime();
- cprintf("RAST %lu: internal ipc read socket error!\n",uVar2);
- }
- if ((DAT_001ddd34 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"internal ipc read socket error!\n");
- }
- if (DAT_001e090c == 0) {
- return;
- }
- logmessage_normal("roamast","internal ipc read socket error!\n");
- return;
- }
- if ((DAT_001e0918 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- uVar2 = uptime();
- cprintf("RAST %lu: internal IPC Receive: %s <<< RCV EVENT >>>\n",uVar2,auStack_820);
- }
- if ((DAT_001ddd34 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"internal IPC Receive: %s <<< RCV EVENT >>>\n",auStack_820);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","internal IPC Receive: %s <<< RCV EVENT >>>\n",auStack_820);
- }
- uVar2 = json_tokener_parse(auStack_820);
- local_828 = 0;
- local_824 = 0;
- json_object_object_get_ex(uVar2,&DAT_001865a0,&local_828);
- json_object_object_get_ex(local_828,&DAT_00186757,&local_824);
- if (local_824 == 0) {
- if ((DAT_001e0918 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- uVar4 = uptime();
- cprintf("RAST %lu: eidObj NULL\n",uVar4);
- }
- if ((DAT_001ddd34 != 0) || (iVar3 = f_exists("/tmp/RAST_DEBUG"), iVar3 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"eidObj NULL\n");
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","eidObj NULL\n");
- }
- goto LAB_000fbbfc;
- }
- iVar3 = json_object_get_int();
- piVar7 = &DAT_001ad5f0;
- while( true ) {
- iVar6 = *piVar7;
- if (iVar6 < 1) break;
- if (iVar6 == iVar3) goto LAB_000fbc78;
- piVar7 = piVar7 + 2;
- }
- if (iVar6 == 0) {
-LAB_000fbc78:
- if ((DAT_001e0918 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- uVar4 = uptime();
- cprintf("RAST %lu: process event (%d)\n",uVar4,iVar3);
- }
- if ((DAT_001ddd34 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"process event (%d)\n",iVar3);
- }
- if (DAT_001e090c != 0) {
- logmessage_normal("roamast","process event (%d)\n",iVar3);
- }
- iVar6 = (*(code *)piVar7[1])(auStack_820);
- if (iVar6 != 0) goto LAB_000fbbfc;
- if ((DAT_001e0918 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- uVar4 = uptime();
- cprintf("RAST %lu: fail to process event(%d)\n",uVar4,iVar3);
- }
- if ((DAT_001ddd34 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"fail to process event(%d)\n",iVar3);
- }
- if (DAT_001e090c == 0) goto LAB_000fbbfc;
- pcVar5 = "fail to process event(%d)\n";
- }
- else {
- if ((DAT_001e0918 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- uVar4 = uptime();
- cprintf("RAST %lu: no corresponding function pointer(%d)",uVar4,iVar3);
- }
- if ((DAT_001ddd34 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"no corresponding function pointer(%d)",iVar3);
- }
- if (DAT_001e090c == 0) goto LAB_000fbbfc;
- pcVar5 = "no corresponding function pointer(%d)";
- }
- logmessage_normal("roamast",pcVar5,iVar3);
-LAB_000fbbfc:
- json_object_put(uVar2);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_000fd7d8 |
fullname | FUN_000fd7d8 |
refcount | 2 |
length | 52 |
called | ::file_lock ::file_unlock ::memset |
calling | FUN_000fd850 FUN_0010207c |
paramcount | 0 |
address | 000fd7d8 |
sig | undefined __stdcall FUN_000fd7d8(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000fd7d8
+++ FUN_000fd7d8
@@ -1,12 +0,0 @@
-
-void FUN_000fd7d8(void)
-
-{
- undefined4 uVar1;
-
- uVar1 = file_lock("tg_roaming");
- memset(DAT_001d4600,0,0x1704);
- file_unlock(uVar1);
- return;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_00146b04 |
fullname | FUN_00146b04 |
refcount | 1 |
length | 48 |
called | ::snprintf FUN_00146ae4 |
calling | |
paramcount | 5 |
address | 00146b04 |
sig | undefined4 __stdcall FUN_00146b04(undefined param_1, undefined param_2, undefined param_3, undefined param_4, undefined4 param_5) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00146b04
+++ FUN_00146b04
@@ -1,12 +0,0 @@
-
-undefined4
-FUN_00146b04(undefined param_1,undefined param_2,undefined param_3,byte param_4,size_t param_5)
-
-{
- undefined *puVar1;
-
- puVar1 = FUN_00146ae4();
- snprintf((char *)(uint)param_4,param_5,"%s",puVar1);
- return 0;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | FUN_0014ab98 |
fullname | FUN_0014ab98 |
refcount | 1 |
length | 180 |
called | ::cprintf ::memset ::snprintf FUN_0014a9a4 |
calling | |
paramcount | 5 |
address | 0014ab98 |
sig | undefined4 __stdcall FUN_0014ab98(int param_1, undefined4 param_2, undefined4 param_3, char * param_4, size_t param_5) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_0014ab98
+++ FUN_0014ab98
@@ -1,43 +0,0 @@
-
-undefined4
-FUN_0014ab98(int param_1,undefined4 param_2,undefined4 param_3,char *param_4,size_t param_5)
-
-{
- int iVar1;
- undefined4 uVar2;
- char local_228 [528];
-
- uVar2 = 0;
- local_228[0x10] = '\0';
- local_228[0x11] = '\0';
- local_228[0x12] = '\0';
- local_228[0x13] = '\0';
- memset(local_228 + 0x14,0,0x1fc);
- local_228[0] = '\0';
- local_228[1] = '\0';
- local_228[2] = '\0';
- local_228[3] = '\0';
- local_228[4] = '\0';
- local_228[5] = '\0';
- local_228[6] = '\0';
- local_228[7] = '\0';
- local_228[8] = '\0';
- local_228[9] = '\0';
- local_228[10] = '\0';
- local_228[0xb] = '\0';
- local_228[0xc] = '\0';
- local_228[0xd] = '\0';
- local_228[0xe] = '\0';
- local_228[0xf] = '\0';
- iVar1 = FUN_0014a9a4(param_1,local_228);
- if (iVar1 < 0) {
- cprintf("Err: rc: %d: fetching primary iface name for %s\n",0xd9c,param_1);
- uVar2 = 0xffffffff;
- }
- else {
- snprintf(local_228 + 0x10,0x200,"%s_%s",local_228,param_2);
- snprintf(param_4,param_5,"%s","1");
- }
- return uVar2;
-}
-
Key | old_FW_RT_AX55_300438651598_sbin_rc |
---|---|
name | shmctl |
fullname | ::shmctl |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 3 |
address | EXTERNAL:0000004f |
sig | int shmctl(int __shmid, int __cmd, shmid_ds * __buf) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::shmctl
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00034afc |
fullname | FUN_00034afc |
refcount | 4 |
length | 56 |
called | ::inet_pton |
calling | FUN_00034b34 FUN_00100fb0 |
paramcount | 1 |
address | 00034afc |
sig | bool __stdcall FUN_00034afc(char * param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00034afc
+++ FUN_00034afc
@@ -0,0 +1,14 @@
+
+bool FUN_00034afc(char *param_1)
+
+{
+ int iVar1;
+ undefined auStack_1c [28];
+
+ if (param_1 != (char *)0x0) {
+ iVar1 = inet_pton(10,param_1,auStack_1c);
+ return iVar1 == 1;
+ }
+ return false;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00034b34 |
fullname | FUN_00034b34 |
refcount | 4 |
length | 564 |
called | ::f_exists ::fgets ::pclose ::popen ::resolv_addr6 ::snprintf ::strncpy FUN_00034638 FUN_00034afc |
calling | FUN_00100fb0 |
paramcount | 3 |
address | 00034b34 |
sig | char * __stdcall FUN_00034b34(char * param_1, char * param_2, size_t param_3) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00034b34
+++ FUN_00034b34
@@ -0,0 +1,66 @@
+
+char * FUN_00034b34(char *param_1,char *param_2,size_t param_3)
+
+{
+ bool bVar1;
+ int iVar2;
+ FILE *__stream;
+ char *pcVar3;
+ char *pcVar4;
+ char local_250 [48];
+ char acStack_220 [516];
+
+ iVar2 = resolv_addr6();
+ if (iVar2 < 0) {
+ pcVar3 = param_1;
+ snprintf(acStack_220,0x200,
+ "nslookup \"%s\" | grep \"Address 1:\" | grep \"%s\" | awk -F \" \" \'{printf $3}\' 2>/dev/null"
+ ,param_1,param_1);
+ iVar2 = f_exists("/tmp/S46_DEBUG");
+ if (iVar2 != 0) {
+ pcVar3 = acStack_220;
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][CMD]:[%s]\n","get_AFTR_addr",0xd6);
+ }
+ __stream = popen(acStack_220,"r");
+ if (__stream == (FILE *)0x0) {
+LAB_00034bf8:
+ snprintf(acStack_220,0x200,
+ "nslookup \"%s\" | grep \"Address 1:\" | awk -F \" \" \'{printf $3}\' 2>/dev/null",
+ param_1,pcVar3);
+ iVar2 = f_exists("/tmp/S46_DEBUG");
+ if (iVar2 != 0) {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][CMD]:[%s]\n","get_AFTR_addr",0xe6);
+ }
+ __stream = popen(acStack_220,"r");
+ if (__stream == (FILE *)0x0) {
+ return (char *)0x0;
+ }
+ do {
+ pcVar3 = fgets(local_250,0x2e,__stream);
+ if (pcVar3 == (char *)0x0) {
+ pclose(__stream);
+ return (char *)0x0;
+ }
+ } while ((local_250[0] == '\0') || (bVar1 = FUN_00034afc(local_250), !bVar1));
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]AFTR:[%s]\n","get_AFTR_addr",0xea);
+ strncpy(param_2,local_250,param_3);
+ }
+ else {
+ do {
+ pcVar4 = fgets(local_250,0x2e,__stream);
+ if (pcVar4 == (char *)0x0) {
+ pclose(__stream);
+ goto LAB_00034bf8;
+ }
+ } while ((local_250[0] == '\0') || (bVar1 = FUN_00034afc(local_250), !bVar1));
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]AFTR:[%s]\n","get_AFTR_addr",0xda);
+ strncpy(param_2,local_250,param_3);
+ }
+ pclose(__stream);
+ }
+ else {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]AFTR:[%s]\n","get_AFTR_addr",0xd0);
+ }
+ return param_2;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00035130 |
fullname | FUN_00035130 |
refcount | 4 |
length | 268 |
called | ::inet_pton ::memset |
calling | FUN_0003523c |
paramcount | 3 |
address | 00035130 |
sig | undefined4 __stdcall FUN_00035130(char * param_1, char * param_2, uint param_3) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00035130
+++ FUN_00035130
@@ -0,0 +1,58 @@
+
+undefined4 FUN_00035130(char *param_1,char *param_2,uint param_3)
+
+{
+ size_t __n;
+ byte bVar1;
+ byte bVar2;
+ int iVar3;
+ byte *pbVar4;
+ size_t sVar5;
+ uint uVar6;
+ uint uVar7;
+ byte *pbVar8;
+ byte *pbVar9;
+ byte abStack_58 [16];
+ byte local_48 [16];
+ byte abStack_38 [16];
+ undefined auStack_28 [20];
+
+ iVar3 = inet_pton(10,param_1,abStack_58);
+ if (0 < iVar3) {
+ iVar3 = inet_pton(10,param_2,local_48);
+ if (0 < iVar3) {
+ uVar7 = param_3 + 7;
+ if (-1 < (int)param_3) {
+ uVar7 = param_3;
+ }
+ uVar6 = param_3 & 7;
+ __n = (int)uVar7 >> 3;
+ if ((int)param_3 < 1) {
+ uVar6 = -(-param_3 & 7);
+ }
+ pbVar4 = (byte *)memset(auStack_28,0xff,__n);
+ if (0 < (int)uVar6) {
+ auStack_28[__n] = (char)(0xff << (8 - uVar6 & 0xff));
+ }
+ sVar5 = 0;
+ pbVar8 = abStack_58;
+ pbVar9 = abStack_38;
+ while( true ) {
+ bVar1 = *pbVar8;
+ bVar2 = *pbVar4;
+ *pbVar9 = bVar1 & bVar2;
+ if ((((int)sVar5 < (int)__n) || (0 < (int)uVar6 && __n == sVar5)) &&
+ (local_48[sVar5] != (bVar1 & bVar2))) break;
+ sVar5 = sVar5 + 1;
+ pbVar4 = pbVar4 + 1;
+ pbVar8 = pbVar8 + 1;
+ pbVar9 = pbVar9 + 1;
+ if (sVar5 == 0x10) {
+ return 1;
+ }
+ }
+ }
+ }
+ return 0;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_0003f88c |
fullname | FUN_0003f88c |
refcount | 2 |
length | 256 |
called | Expand for full list: |
calling | FUN_0004c3b8 |
paramcount | 2 |
address | 0003f88c |
sig | char * __stdcall FUN_0003f88c(X509 * param_1, char * param_2) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_0003f88c
+++ FUN_0003f88c
@@ -0,0 +1,49 @@
+
+char * FUN_0003f88c(X509 *param_1,char *param_2)
+
+{
+ size_t *psVar1;
+ int iVar2;
+ X509_EXTENSION *ext;
+ BIO_METHOD *type;
+ BIO *out;
+ char *__s;
+ size_t __n;
+ size_t *local_20;
+ char *pcStack_1c;
+
+ local_20 = (size_t *)0x0;
+ if (param_1 != (X509 *)0x0) {
+ pcStack_1c = param_2;
+ iVar2 = X509_get_ext_by_NID(param_1,(int)param_2,-1);
+ ext = X509_get_ext(param_1,iVar2);
+ if (ext != (X509_EXTENSION *)0x0) {
+ type = BIO_s_mem();
+ out = BIO_new(type);
+ iVar2 = X509V3_EXT_print(out,ext,0,0);
+ if (iVar2 == 0) {
+ dbg("%s: nid %d X509V3_EXT_print() fail!\n","x509v3ext2str_by_nid",param_2);
+ __s = (char *)0x0;
+ }
+ else {
+ BIO_ctrl(out,0xb,0,(void *)0x0);
+ BIO_ctrl(out,0x73,0,&local_20);
+ psVar1 = local_20;
+ __n = *local_20;
+ __s = (char *)malloc(__n + 1);
+ if (__s != (char *)0x0) {
+ memcpy(__s,(void *)psVar1[1],__n);
+ __s[*psVar1] = '\0';
+ strtok_r(__s,"\r\n",&pcStack_1c);
+ }
+ }
+ if (out == (BIO *)0x0) {
+ return __s;
+ }
+ BIO_free(out);
+ return __s;
+ }
+ }
+ return (char *)0x0;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_0004c3b8 |
fullname | FUN_0004c3b8 |
refcount | 2 |
length | 2028 |
called | Expand for full list:::fopen |
calling | FUN_0004cc68 FUN_0005096c |
paramcount | 0 |
address | 0004c3b8 |
sig | undefined4 __stdcall FUN_0004c3b8(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_0004c3b8
+++ FUN_0004c3b8
@@ -0,0 +1,279 @@
+
+undefined4 FUN_0004c3b8(void)
+
+{
+ bool bVar1;
+ int iVar2;
+ int iVar3;
+ FILE *pFVar4;
+ X509 *pXVar5;
+ size_t __n;
+ int iVar6;
+ char *__s1;
+ char *pcVar7;
+ char *__s;
+ char *__s2;
+ X509 *local_98;
+ X509 *local_94;
+ char *local_90;
+ undefined4 local_8c;
+ undefined4 uStack_88;
+ undefined4 uStack_84;
+ char acStack_80 [24];
+ char local_68 [36];
+ char local_44 [36];
+
+ local_68[0] = '\0';
+ local_68[1] = '\0';
+ local_68[2] = '\0';
+ local_68[3] = '\0';
+ memset(local_68 + 4,0,0x1d);
+ local_44[0] = '\0';
+ local_44[1] = '\0';
+ local_44[2] = '\0';
+ local_44[3] = '\0';
+ memset(local_44 + 4,0,0x1d);
+ local_98 = (X509 *)0x0;
+ local_94 = (X509 *)0x0;
+ iVar2 = nvram_get("sw_mode");
+ if (iVar2 == 0) {
+ pcVar7 = (char *)nvram_default_get("sw_mode");
+ iVar2 = atoi(pcVar7);
+ }
+ else {
+ iVar2 = nvram_get_int();
+ }
+ iVar2 = iVar2 + -1;
+ if (iVar2 != 0) {
+ iVar2 = 1;
+ }
+ if (iVar2 != 0) {
+ return 0;
+ }
+ snprintf(acStack_80,0x18,"md5sum %s","/etc/cert.pem");
+ iVar2 = f_exists("/etc/cert.pem");
+ if (iVar2 != 0) {
+ exec_and_return_string(acStack_80,0,local_68,0x21);
+ }
+ iVar2 = 2;
+ while (iVar3 = nvram_get_int("le_enable"), iVar3 != 1) {
+ if (iVar3 == 2) {
+ iVar6 = f_exists("/jffs/.cert/cacert.pem");
+ if ((iVar6 == 0) || (iVar6 = f_exists("/jffs/.cert/cakey.pem"), iVar6 == 0)) {
+ iVar6 = f_exists("/jffs/.cert/cert.pem");
+ if ((iVar6 != 0) &&
+ ((iVar6 = f_exists("/jffs/.cert/key.pem"), iVar6 != 0 &&
+ (iVar6 = illegal_cert_and_key("/jffs/.cert/cert.pem","/jffs/.cert/key.pem"), iVar6 == 0)
+ ))) {
+ local_90 = DAT_001b3620;
+ local_8c = DAT_001b3624;
+ uStack_88 = DAT_001b3628;
+ uStack_84 = DAT_001b362c;
+ _eval(&local_90,0,0,0);
+ local_90 = DAT_001b3630;
+ local_8c = DAT_001b3634;
+ uStack_88 = DAT_001b3638;
+ uStack_84 = DAT_001b363c;
+ _eval(&local_90,0,0,0);
+ iVar2 = f_exists("/jffs/.cert/cacert.pem");
+ if (iVar2 != 0) {
+ unlink("/jffs/.cert/cacert.pem");
+ }
+ iVar2 = f_exists("/jffs/.cert/cakey.pem");
+ if (iVar2 != 0) {
+ unlink("/jffs/.cert/cakey.pem");
+ }
+ goto LAB_0004c4e4;
+ }
+ }
+ else {
+ iVar6 = illegal_cert_and_key("/jffs/.cert/cacert.pem","/jffs/.cert/cakey.pem");
+ if (iVar6 == 0) {
+ local_90 = DAT_001b35e0;
+ local_8c = DAT_001b35e4;
+ uStack_88 = DAT_001b35e8;
+ uStack_84 = DAT_001b35ec;
+ _eval(&local_90,0,0,0);
+ local_90 = DAT_001b35f0;
+ local_8c = DAT_001b35f4;
+ uStack_88 = DAT_001b35f8;
+ uStack_84 = DAT_001b35fc;
+ _eval(&local_90,0,0,0);
+ iVar2 = f_exists("/jffs/.cert/cert_gen.pem");
+ if (iVar2 != 0) {
+ local_90 = DAT_001b3600;
+ local_8c = DAT_001b3604;
+ uStack_88 = DAT_001b3608;
+ uStack_84 = DAT_001b360c;
+ _eval(&local_90,0,0,0);
+ }
+ iVar2 = f_exists("/jffs/.cert/key_gen.pem");
+ if (iVar2 != 0) {
+ local_90 = DAT_001b3610;
+ local_8c = DAT_001b3614;
+ uStack_88 = DAT_001b3618;
+ uStack_84 = DAT_001b361c;
+ _eval(&local_90,0,0);
+ }
+ iVar2 = f_exists("/jffs/.cert/cert.pem");
+ if (iVar2 != 0) {
+ unlink("/jffs/.cert/cert.pem");
+ }
+ iVar2 = f_exists("/jffs/.cert/key.pem");
+ if (iVar2 != 0) {
+ unlink("/jffs/.cert/key.pem");
+ }
+ goto LAB_0004c588;
+ }
+ }
+ }
+ else {
+ iVar6 = f_exists("/etc/cacert_gen.pem");
+ if (((iVar6 != 0) && (iVar6 = f_exists("/etc/cakey_gen.pem"), iVar6 != 0)) &&
+ (iVar6 = illegal_cert_and_key("/etc/cacert_gen.pem","/etc/cakey_gen.pem"), iVar6 == 0)) {
+ local_90 = DAT_001b3640;
+ local_8c = DAT_001b3644;
+ uStack_88 = DAT_001b3648;
+ uStack_84 = DAT_001b364c;
+ _eval(&local_90,0,0,0);
+ local_90 = DAT_001b3650;
+ local_8c = DAT_001b3654;
+ uStack_88 = DAT_001b3658;
+ uStack_84 = DAT_001b365c;
+ _eval(&local_90,0,0,0);
+ iVar2 = f_exists("/etc/cert_gen.pem");
+ if (iVar2 != 0) {
+ local_90 = DAT_001b3660;
+ local_8c = DAT_001b3664;
+ uStack_88 = DAT_001b3668;
+ uStack_84 = DAT_001b366c;
+ _eval(&local_90,0,0,0);
+ }
+ iVar2 = f_exists("/etc/key_gen.pem");
+ if (iVar2 != 0) {
+ local_90 = DAT_001b3670;
+ local_8c = DAT_001b3674;
+ uStack_88 = DAT_001b3678;
+ uStack_84 = DAT_001b367c;
+ _eval(&local_90,0,0);
+ }
+ goto LAB_0004c588;
+ }
+ }
+ if ((iVar2 == 1) || (bVar1 = FUN_0003f6e8("le_enable","0"), bVar1)) {
+ dbg("%s: Still no workable certificate, generate again.\n","prepare_cert_in_etc");
+ goto LAB_0004ca48;
+ }
+ dbg("%s: No workable uploaded certificate, fallback to self-signed certificate.\n",
+ "prepare_cert_in_etc");
+ remove_all_uploaded_cert_from_jffs();
+ iVar2 = 1;
+ nvram_set("le_enable","0");
+ }
+ iVar2 = is_le_cert("/etc/cert.pem");
+ if ((iVar2 == 0) || (iVar2 = cert_key_match("/etc/cert.pem","/etc/key.pem"), iVar2 == 0)) {
+ cp_le_cert(2,"/etc/cert.pem");
+ cp_le_cert(0,"/etc/key.pem");
+ goto LAB_0004c4e4;
+ }
+LAB_0004c588:
+ iVar2 = f_exists("/etc/cert.pem");
+ if ((iVar2 != 0) && (iVar2 = f_exists("/etc/key.pem"), iVar2 != 0)) {
+ pFVar4 = fopen("/etc/cacert.pem","r");
+ if (pFVar4 == (FILE *)0x0) {
+LAB_0004c614:
+ pcVar7 = (char *)0x0;
+ __s = (char *)0x0;
+ }
+ else {
+ pXVar5 = PEM_read_X509(pFVar4,&local_98,(undefined1 *)0x0,(void *)0x0);
+ if (pXVar5 == (X509 *)0x0) {
+ fseek(pFVar4,0,0);
+ d2i_X509_fp(pFVar4,&local_98);
+ }
+ fclose(pFVar4);
+ if ((local_98 == (X509 *)0x0) ||
+ (pcVar7 = FUN_0003f88c(local_98,(char *)0x52), pcVar7 == (char *)0x0)) goto LAB_0004c614;
+ iVar2 = strncmp(pcVar7,"keyid:",6);
+ __s = pcVar7;
+ if (iVar2 == 0) {
+ __s = pcVar7 + 6;
+ }
+ }
+ pFVar4 = fopen("/etc/cert.pem","r");
+ if (pFVar4 == (FILE *)0x0) {
+LAB_0004c638:
+ __s1 = (char *)0x0;
+ __s2 = (char *)0x0;
+ }
+ else {
+ pXVar5 = PEM_read_X509(pFVar4,&local_94,(undefined1 *)0x0,(void *)0x0);
+ if (pXVar5 == (X509 *)0x0) {
+ fseek(pFVar4,0,0);
+ d2i_X509_fp(pFVar4,&local_94);
+ }
+ fclose(pFVar4);
+ if ((local_94 == (X509 *)0x0) ||
+ (__s1 = FUN_0003f88c(local_94,(char *)0x5a), __s1 == (char *)0x0)) goto LAB_0004c638;
+ iVar2 = strncmp(__s1,"keyid:",6);
+ __s2 = __s1;
+ if (iVar2 == 0) {
+ __s2 = __s1 + 6;
+ }
+ }
+ if (__s2 == (char *)0x0 || __s == (char *)0x0) {
+ iVar2 = 1;
+ }
+ else {
+ __n = strlen(__s);
+ iVar2 = strncmp(__s,__s2,__n);
+ if (iVar2 != 0) {
+ iVar2 = 1;
+ }
+ }
+ if (pcVar7 != (char *)0x0) {
+ free(pcVar7);
+ }
+ if (__s1 != (char *)0x0) {
+ free(__s1);
+ }
+ if (local_98 != (X509 *)0x0) {
+ X509_free(local_98);
+ }
+ if (local_94 != (X509 *)0x0) {
+ X509_free(local_94);
+ }
+ if (iVar2 == 0) goto LAB_0004c4e4;
+ }
+LAB_0004ca48:
+ local_8c = 0;
+ local_90 = "gencert.sh";
+ _eval(&local_90,0,0,0);
+ iVar2 = f_exists("/jffs/.cert/cacert.pem");
+ if ((iVar2 != 0) && (iVar2 = f_exists("/jffs/.cert/cakey.pem"), iVar2 != 0 && iVar3 == 2)) {
+ local_90 = DAT_001b3680;
+ local_8c = DAT_001b3684;
+ uStack_88 = DAT_001b3688;
+ uStack_84 = DAT_001b368c;
+ _eval(&local_90,0,0,0);
+ local_90 = DAT_001b3690;
+ local_8c = DAT_001b3694;
+ uStack_88 = DAT_001b3698;
+ uStack_84 = DAT_001b369c;
+ _eval(&local_90,0,0,0);
+ }
+LAB_0004c4e4:
+ save_cert();
+ iVar2 = f_exists("/etc/cert.pem");
+ if (iVar2 != 0) {
+ exec_and_return_string(acStack_80,0,local_44,0x21);
+ }
+ if (((local_68[0] != '\0') && (local_44[0] != '\0')) &&
+ (iVar2 = strcmp(local_68,local_44), iVar2 == 0)) {
+ return 0;
+ }
+ dbg("%s: %s changed, MD5 [%s] -> [%s].\n","prepare_cert_in_etc","/etc/cert.pem",local_68,local_44)
+ ;
+ return 1;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_0007e128 |
fullname | FUN_0007e128 |
refcount | 0 |
length | 40 |
called | FUN_00029cf8 |
calling | |
paramcount | 1 |
address | 0007e128 |
sig | undefined __stdcall FUN_0007e128(char * param_1) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_0007e128
+++ FUN_0007e128
@@ -0,0 +1,8 @@
+
+void FUN_0007e128(char *param_1)
+
+{
+ FUN_00029cf8(param_1,0x1043,"0.0.0.0",(char *)0x0,(char *)0x0,0);
+ return;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000bb9e8 |
fullname | FUN_000bb9e8 |
refcount | 1 |
length | 100 |
called | ::strcmp FUN_000b8c70 |
calling | FUN_000798d0 |
paramcount | 0 |
address | 000bb9e8 |
sig | undefined FUN_000bb9e8(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000bb9e8
+++ FUN_000bb9e8
@@ -0,0 +1,26 @@
+
+int FUN_000bb9e8(char *param_1)
+
+{
+ byte *__s1;
+ int iVar1;
+ uint uVar2;
+
+ __s1 = FUN_000b8c70("wifi_psk");
+ if (param_1 != (char *)0x0) {
+ iVar1 = strcmp((char *)__s1,param_1);
+ if (iVar1 == 0) {
+ return 0;
+ }
+ iVar1 = strcmp(param_1,"NONE");
+ if (iVar1 == 0) {
+ uVar2 = (uint)*__s1;
+ if (uVar2 != 0) {
+ uVar2 = 1;
+ }
+ return -uVar2;
+ }
+ }
+ return -1;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000bc844 |
fullname | FUN_000bc844 |
refcount | 1 |
length | 724 |
called | Expand for full list:::strcspn |
calling | FUN_000e98c4 |
paramcount | 0 |
address | 000bc844 |
sig | undefined __stdcall FUN_000bc844(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000bc844
+++ FUN_000bc844
@@ -0,0 +1,107 @@
+
+void FUN_000bc844(void)
+
+{
+ undefined2 uVar1;
+ undefined4 *puVar2;
+ undefined *puVar3;
+ size_t sVar4;
+ size_t sVar5;
+ int iVar6;
+ __pid_t _Var7;
+ undefined4 uVar8;
+ undefined4 *puVar9;
+ char *pcVar10;
+ char *pcVar11;
+ int local_13c;
+ char local_138 [4];
+ undefined4 auStack_134 [2];
+ undefined2 local_12c [2];
+ undefined4 local_128;
+ undefined4 local_124;
+ undefined4 local_120;
+ undefined4 local_11c;
+ char *local_118;
+ undefined *local_114;
+ undefined4 *local_110;
+ char *local_10c;
+ undefined4 local_108;
+ char acStack_104 [100];
+ char local_a0 [127];
+ undefined local_21;
+
+ local_13c = 0;
+ pcVar11 = local_138;
+ puVar2 = &DAT_00167b71;
+ do {
+ puVar9 = puVar2;
+ pcVar10 = pcVar11;
+ uVar8 = puVar9[1];
+ *(undefined4 *)pcVar10 = *puVar9;
+ *(undefined4 *)(pcVar10 + 4) = uVar8;
+ pcVar11 = pcVar10 + 8;
+ puVar2 = puVar9 + 2;
+ } while (puVar9 + 2 != &DAT_00167b79);
+ uVar1 = *(undefined2 *)(puVar9 + 3);
+ pcVar11[0] = 'X';
+ pcVar11[1] = 'X';
+ pcVar11[2] = 'X';
+ pcVar11[3] = 'X';
+ *(undefined2 *)(pcVar10 + 0xc) = uVar1;
+ local_128 = 0;
+ local_124 = 0;
+ local_120 = 0;
+ local_11c = 0;
+ puVar3 = FUN_000bc6fc();
+ pcVar11 = FUN_000bc6fc();
+ sVar4 = strspn(pcVar11," ");
+ strncpy(local_a0,puVar3 + sVar4,0x80);
+ local_21 = 0;
+ sVar5 = strcspn(local_a0," ");
+ local_a0[sVar5] = '\0';
+ pcVar11 = strchr(puVar3 + sVar4,0x20);
+ while (local_a0[0] != '\0') {
+ local_13c = -1;
+ wl_ioctl(local_a0,0xe,&local_13c);
+ snprintf(acStack_104,100,"wl%d_nband",local_13c);
+ iVar6 = nvram_get_int(acStack_104);
+ if (iVar6 == 2) break;
+ pcVar10 = "";
+ if (pcVar11 != (char *)0x0) {
+ sVar4 = strspn(pcVar11," ");
+ pcVar10 = pcVar11 + sVar4;
+ }
+ strncpy(local_a0,pcVar10,0x80);
+ local_21 = 0;
+ sVar4 = strcspn(local_a0," ");
+ local_a0[sVar4] = '\0';
+ pcVar11 = strchr(pcVar10,0x20);
+ }
+ if (local_13c != -1) {
+ snprintf(local_138,0xe,"wl%d_");
+ strcpy(acStack_104,local_138);
+ strcat(acStack_104,"mode");
+ pcVar11 = (char *)nvram_get(acStack_104);
+ if ((pcVar11 == (char *)0x0) || (iVar6 = strcmp(pcVar11,"ap"), iVar6 != 0)) {
+ snprintf(local_138,0xe,"wl%d.1_",local_13c);
+ }
+ strcpy(acStack_104,local_138);
+ strcat(acStack_104,"ifname");
+ puVar3 = FUN_000bc6fc();
+ strlcpy(&local_128,puVar3,0x10);
+ iVar6 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar6) {
+ _Var7 = getpid();
+ uVar8 = uptime();
+ dbg("OBD(%d) %lu: Send probe-req\n\n",_Var7,uVar8);
+ }
+ local_118 = "wl";
+ local_114 = &DAT_00167399;
+ local_10c = "scan";
+ local_108 = 0;
+ local_110 = &local_128;
+ _eval(&local_118,0,0);
+ }
+ return;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000bcb5c |
fullname | FUN_000bcb5c |
refcount | 1 |
length | 2584 |
called | Expand for full list:::nvram_default_get |
calling | FUN_000e98c4 |
paramcount | 0 |
address | 000bcb5c |
sig | void * __stdcall FUN_000bcb5c(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000bcb5c
+++ FUN_000bcb5c
@@ -0,0 +1,359 @@
+
+void * FUN_000bcb5c(void)
+
+{
+ byte *pbVar1;
+ char cVar2;
+ undefined2 uVar3;
+ ushort uVar4;
+ undefined *puVar5;
+ char *pcVar6;
+ size_t sVar7;
+ size_t sVar8;
+ int iVar9;
+ __pid_t _Var10;
+ void *__s;
+ int iVar11;
+ int iVar12;
+ undefined4 *puVar13;
+ undefined4 uVar14;
+ undefined4 *puVar15;
+ char *pcVar16;
+ int *piVar17;
+ undefined uVar18;
+ bool bVar19;
+ uint uStack_105bc;
+ undefined4 *puStack_105b8;
+ int iStack_105a8;
+ int iStack_105a4;
+ int iStack_105a0;
+ int iStack_1059c;
+ char acStack_10598 [4];
+ undefined4 auStack_10594 [2];
+ undefined2 auStack_1058c [2];
+ char acStack_10588 [4];
+ undefined4 auStack_10584 [2];
+ undefined2 auStack_1057c [2];
+ undefined4 uStack_10578;
+ undefined4 uStack_10574;
+ undefined4 uStack_10570;
+ undefined4 uStack_1056c;
+ char acStack_10568 [100];
+ char acStack_10504 [100];
+ char acStack_104a0 [127];
+ undefined uStack_10421;
+ char acStack_10420 [127];
+ undefined uStack_103a1;
+ undefined4 uStack_10020;
+ int iStack_1001c;
+ uint uStack_10018;
+ int aiStack_10014 [16381];
+
+ iStack_105a8 = 0;
+ pcVar6 = acStack_10598;
+ puVar15 = &DAT_00167b71;
+ do {
+ puVar13 = puVar15;
+ pcVar16 = pcVar6;
+ uVar14 = puVar13[1];
+ *(undefined4 *)pcVar16 = *puVar13;
+ *(undefined4 *)(pcVar16 + 4) = uVar14;
+ pcVar6 = pcVar16 + 8;
+ puVar15 = puVar13 + 2;
+ } while (puVar13 + 2 != &DAT_00167b79);
+ uVar3 = *(undefined2 *)(puVar13 + 3);
+ pcVar6[0] = 'X';
+ pcVar6[1] = 'X';
+ pcVar6[2] = 'X';
+ pcVar6[3] = 'X';
+ *(undefined2 *)(pcVar16 + 0xc) = uVar3;
+ puVar5 = FUN_000bc6fc();
+ pcVar6 = FUN_000bc6fc();
+ sVar7 = strspn(pcVar6," ");
+ strncpy(acStack_104a0,puVar5 + sVar7,0x80);
+ uStack_10421 = 0;
+ sVar8 = strcspn(acStack_104a0," ");
+ acStack_104a0[sVar8] = '\0';
+ pcVar6 = strchr(puVar5 + sVar7,0x20);
+ while (acStack_104a0[0] != '\0') {
+ iStack_105a8 = -1;
+ wl_ioctl(acStack_104a0,0xe,&iStack_105a8,4);
+ snprintf(acStack_10568,100,"wl%d_nband",iStack_105a8);
+ iVar9 = nvram_get_int(acStack_10568);
+ if (iVar9 == 2) break;
+ pcVar16 = "";
+ if (pcVar6 != (char *)0x0) {
+ sVar7 = strspn(pcVar6," ");
+ pcVar16 = pcVar6 + sVar7;
+ }
+ strncpy(acStack_104a0,pcVar16,0x80);
+ uStack_10421 = 0;
+ sVar7 = strcspn(acStack_104a0," ");
+ acStack_104a0[sVar7] = '\0';
+ pcVar6 = strchr(pcVar16,0x20);
+ }
+ if (iStack_105a8 != -1) {
+ uVar4 = FUN_000ad4c4(iStack_105a8);
+ pcVar6 = strcpy(acStack_10568,acStack_10598);
+ strcat(pcVar6,"reg_mode");
+ pcVar6 = (char *)nvram_get();
+ if (((pcVar6 == (char *)0x0) || (iVar9 = strcmp(pcVar6,"h"), iVar9 != 0)) || (99 < uVar4 - 0x31)
+ ) {
+ iVar9 = nvram_get("sw_mode");
+ if (iVar9 == 0) {
+ pcVar6 = (char *)nvram_default_get("sw_mode");
+ iVar9 = atoi(pcVar6);
+ }
+ else {
+ iVar9 = nvram_get_int();
+ }
+ if ((iVar9 == 1) && (iVar9 = nvram_get_int("obd_allow_scan"), iVar9 == 0)) {
+ sleep(1);
+ return (void *)0x0;
+ }
+ iVar9 = nvram_get_int("wlc_scan_state");
+ if (3 < iVar9 - 1U) {
+ nvram_set_int("obd_scan_state",1);
+ iStack_105a0 = 0x14;
+ iStack_1059c = 0x28;
+ pcVar6 = acStack_10588;
+ puVar15 = &DAT_00167b71;
+ do {
+ puVar13 = puVar15;
+ pcVar16 = pcVar6;
+ uVar14 = puVar13[1];
+ *(undefined4 *)pcVar16 = *puVar13;
+ *(undefined4 *)(pcVar16 + 4) = uVar14;
+ pcVar6 = pcVar16 + 8;
+ puVar15 = puVar13 + 2;
+ } while (puVar13 + 2 != &DAT_00167b79);
+ uVar3 = *(undefined2 *)(puVar13 + 3);
+ pcVar6[0] = 'X';
+ pcVar6[1] = 'X';
+ pcVar6[2] = 'X';
+ pcVar6[3] = 'X';
+ *(undefined2 *)(pcVar16 + 0xc) = uVar3;
+ uStack_10578 = 0;
+ uStack_10574 = 0;
+ uStack_10570 = 0;
+ uStack_1056c = 0;
+ puVar5 = FUN_000bc6fc();
+ pcVar6 = FUN_000bc6fc();
+ sVar7 = strspn(pcVar6," ");
+ strncpy(acStack_10420,puVar5 + sVar7,0x80);
+ uStack_103a1 = 0;
+ sVar8 = strcspn(acStack_10420," ");
+ acStack_10420[sVar8] = '\0';
+ pcVar6 = strchr(puVar5 + sVar7,0x20);
+ while (acStack_10420[0] != '\0') {
+ iStack_105a4 = -1;
+ wl_ioctl(acStack_10420,0xe,&iStack_105a4,4);
+ snprintf(acStack_10504,100,"wl%d_nband",iStack_105a4);
+ iVar9 = nvram_get_int(acStack_10504);
+ if (iVar9 == 2) break;
+ pcVar16 = "";
+ if (pcVar6 != (char *)0x0) {
+ sVar7 = strspn(pcVar6," ");
+ pcVar16 = pcVar6 + sVar7;
+ }
+ strncpy(acStack_10420,pcVar16,0x80);
+ uStack_103a1 = 0;
+ sVar7 = strcspn(acStack_10420," ");
+ acStack_10420[sVar7] = '\0';
+ pcVar6 = strchr(pcVar16,0x20);
+ }
+ if (iStack_105a4 != -1) {
+ snprintf(acStack_10588,0xe,"wl%d_");
+ strcpy(acStack_10504,acStack_10588);
+ strcat(acStack_10504,"ifname");
+ puVar5 = FUN_000bc6fc();
+ strlcpy(&uStack_10578,puVar5,0x10);
+ nvram_set_int("obd_scan_state",2);
+ __s = malloc(0xd0);
+ if (__s != (void *)0x0) {
+ memset(__s,0,0xd0);
+ *(undefined4 *)((int)__s + 0x24) = 0xffffffff;
+ *(undefined2 *)((int)__s + 0x28) = 0xffff;
+ *(undefined2 *)((int)__s + 0x2a) = 0x102;
+ *(undefined4 *)((int)__s + 0x2c) = 0xffffffff;
+ *(undefined4 *)((int)__s + 0x30) = 0xffffffff;
+ *(undefined4 *)((int)__s + 0x34) = 0xffffffff;
+ *(undefined4 *)((int)__s + 0x38) = 0xffffffff;
+ wl_ioctl(&uStack_10578,0xb8,&iStack_105a0,4);
+ if (iStack_105a0 < iStack_1059c) {
+ wl_ioctl(&uStack_10578,0xb9,&iStack_1059c,4);
+ }
+ iVar9 = 0;
+ while (iVar11 = wl_ioctl(&uStack_10578,0x32,__s,0xd0), iVar11 < 0) {
+ if (iVar9 == 3) {
+ iVar9 = 4;
+ break;
+ }
+ iVar9 = iVar9 + 1;
+ iVar11 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar11) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: set scan command failed, retry %d\n",_Var10,uVar14,iVar9);
+ }
+ sleep(1);
+ }
+ free(__s);
+ wl_ioctl(&uStack_10578,0xb9,&iStack_105a0,4);
+ iVar12 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar12) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: [obd] Please wait %d seconds ",_Var10,uVar14,3);
+ }
+ uStack_105bc = 3;
+ do {
+ sleep(1);
+ iVar12 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar12) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: .",_Var10,uVar14);
+ }
+ uStack_105bc = uStack_105bc + -1;
+ } while (uStack_105bc != 0);
+ iVar12 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar12) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: \n\n",_Var10,uVar14);
+ }
+ if (iVar11 == 0) {
+ uStack_10020 = 0x10000;
+ iVar11 = wl_ioctl(&uStack_10578,0x33,&uStack_10020);
+ if (iVar11 < 0) {
+ iVar11 = f_exists("/tmp/OBD_DEBUG");
+ if (iVar11 < 1) {
+ return (void *)0x0;
+ }
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: get scan result failed, retry %d\n",_Var10,uVar14,iVar9);
+ return (void *)0x0;
+ }
+ }
+ else if (iVar11 < 0) {
+ return (void *)0x0;
+ }
+ nvram_set_int("obd_scan_state",5);
+ if (uStack_10018 != 0) {
+ if (iStack_1001c - 0x6bU < 3) {
+ puVar15 = (undefined4 *)0x0;
+ puStack_105b8 = (undefined4 *)0x0;
+ piVar17 = aiStack_10014;
+ uStack_105bc = 0;
+ do {
+ if (uStack_10018 <= uStack_105bc) {
+ nvram_set_int("obd_scan_state",0);
+ return puVar15;
+ }
+ iVar9 = *piVar17;
+ if (g_swap == '\0') {
+ bVar19 = iVar9 == 0x6b;
+ }
+ else {
+ bVar19 = iVar9 == 0x6b000000;
+ }
+ if (bVar19) {
+ if (*(byte *)(piVar17 + 0x12) < 0xf) {
+ uVar4 = 0;
+ }
+ else {
+ uVar4 = 0xc000;
+ }
+ *(ushort *)(piVar17 + 0x12) = *(byte *)(piVar17 + 0x12) | uVar4 | 0x1000;
+ piVar17[0x1e] = piVar17[0x15];
+ *(undefined2 *)(piVar17 + 0x1d) = 0x58;
+ }
+ iVar11 = piVar17[0x1e];
+ if (iVar11 != 0) {
+ if (g_swap == '\0') {
+ bVar19 = iVar9 == 0x6b;
+ }
+ else {
+ bVar19 = iVar9 == 0x6b000000;
+ }
+ if ((bVar19) || (*(char *)((int)piVar17 + 0x51) == '\0')) {
+ uVar18 = *(undefined *)(piVar17 + 0x12);
+ }
+ else {
+ uVar18 = *(undefined *)(piVar17 + 0x16);
+ }
+ pcVar6 = (char *)((int)piVar17 + (uint)*(ushort *)(piVar17 + 0x1d));
+ for (; 0 < iVar11; iVar11 = iVar11 - (*pbVar1 + 2)) {
+ if ((*pcVar6 == -0x23) &&
+ (iVar9 = memcmp(pcVar6 + 2,&DAT_0017c45c,3), iVar9 == 0)) {
+ puVar13 = (undefined4 *)malloc(0x414);
+ memset(puVar13,0,0x414);
+ cVar2 = pcVar6[1];
+ *(undefined *)(puVar13 + 2) = uVar18;
+ *(byte *)((int)puVar13 + 0xf) = cVar2 - 3U;
+ memcpy(puVar13 + 4,pcVar6 + 5,(uint)(byte)(cVar2 - 3U));
+ iVar9 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar9) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: %s vsie_len=%d\n",_Var10,uVar14,acStack_10420,
+ *(undefined *)((int)puVar13 + 0xf));
+ }
+ uVar3 = *(undefined2 *)(piVar17 + 3);
+ *(int *)((int)puVar13 + 9) = piVar17[2];
+ *(undefined2 *)((int)puVar13 + 0xd) = uVar3;
+ ether_etoa((int)puVar13 + 9,acStack_10504);
+ iVar9 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar9) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: BSSID=%s\n",_Var10,uVar14,acStack_10504);
+ }
+ *(char *)(puVar13 + 0x104) = (char)*(undefined2 *)((int)piVar17 + 0x4e);
+ memset(acStack_10420,0,0x400);
+ hex2str(pcVar6 + 5,acStack_10420,*(undefined *)((int)puVar13 + 0xf));
+ if (puStack_105b8 != (undefined4 *)0x0) {
+ *puStack_105b8 = puVar13;
+ }
+ puStack_105b8 = puVar13;
+ if (puVar15 == (undefined4 *)0x0) {
+ puVar15 = puVar13;
+ }
+ break;
+ }
+ pbVar1 = (byte *)(pcVar6 + 1);
+ pcVar6 = pcVar6 + *pbVar1 + 2;
+ }
+ piVar17 = (int *)((int)piVar17 + piVar17[1]);
+ }
+ uStack_105bc = uStack_105bc + 1;
+ } while( true );
+ }
+ iVar9 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar9) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: Sorry, your driver has bss_info_version %d but this program supports only version %d.\n"
+ ,_Var10,uVar14,iStack_1001c,0x6d);
+ }
+ }
+ nvram_set_int("obd_scan_state",0);
+ }
+ }
+ }
+ }
+ else {
+ iVar9 = f_exists("/tmp/OBD_DEBUG");
+ if (0 < iVar9) {
+ _Var10 = getpid();
+ uVar14 = uptime();
+ dbg("OBD(%d) %lu: scan rejected under DFS mode\n",_Var10,uVar14);
+ return (void *)0x0;
+ }
+ }
+ }
+ return (void *)0x0;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000bd670 |
fullname | FUN_000bd670 |
refcount | 1 |
length | 44 |
called | ::wl_add_ie |
calling | FUN_000e98c4 |
paramcount | 3 |
address | 000bd670 |
sig | undefined __stdcall FUN_000bd670(undefined4 param_1, undefined4 param_2, undefined4 param_3) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000bd670
+++ FUN_000bd670
@@ -0,0 +1,8 @@
+
+void FUN_000bd670(undefined4 param_1,undefined4 param_2,undefined4 param_3)
+
+{
+ wl_add_ie(param_1,0,0x10,param_2,&DAT_0017c45c,param_3,param_3);
+ return;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000e7664 |
fullname | FUN_000e7664 |
refcount | 1 |
length | 52 |
called | |
calling | FUN_000e7698 |
paramcount | 2 |
address | 000e7664 |
sig | undefined __stdcall FUN_000e7664(int param_1, uint param_2) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000e7664
+++ FUN_000e7664
@@ -0,0 +1,23 @@
+
+void FUN_000e7664(int param_1,uint param_2)
+
+{
+ byte bVar1;
+ int iVar2;
+ byte *pbVar3;
+
+ pbVar3 = (byte *)(param_1 + -1);
+ iVar2 = 0;
+ while( true ) {
+ pbVar3 = pbVar3 + 1;
+ bVar1 = *pbVar3;
+ if (bVar1 == 0) break;
+ if (bVar1 != param_2) {
+ *(byte *)(param_1 + iVar2) = bVar1;
+ iVar2 = iVar2 + 1;
+ }
+ }
+ *(byte *)(param_1 + iVar2) = bVar1;
+ return;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000e7698 |
fullname | FUN_000e7698 |
refcount | 1 |
length | 1960 |
called | Expand for full list:::get_ddns_macaddr |
calling | FUN_000e7f38 |
paramcount | 0 |
address | 000e7698 |
sig | undefined4 __stdcall FUN_000e7698(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000e7698
+++ FUN_000e7698
@@ -0,0 +1,261 @@
+
+undefined4 FUN_000e7698(void)
+
+{
+ char *pcVar1;
+ char *pcVar2;
+ byte *pbVar3;
+ int iVar4;
+ int iVar5;
+ int iVar6;
+ int iVar7;
+ size_t sVar8;
+ undefined *puVar9;
+ int iVar10;
+ FILE *__stream;
+ char *pcVar11;
+ char *__format;
+ undefined4 uVar12;
+ int iVar13;
+ int iVar14;
+ byte *__s;
+ int local_5b0;
+ byte local_594 [52];
+ char acStack_560 [64];
+ char acStack_520 [256];
+ MD5_CTX aMStack_420 [11];
+
+ iVar13 = 0;
+ local_594[0] = 0;
+ local_594[1] = 0;
+ local_594[2] = 0;
+ local_594[3] = 0;
+ local_594[4] = 0;
+ local_594[5] = 0;
+ local_594[6] = 0;
+ local_594[7] = 0;
+ local_594[8] = 0;
+ local_594[9] = 0;
+ local_594[10] = 0;
+ local_594[0xb] = 0;
+ local_594[0xc] = 0;
+ local_594[0xd] = 0;
+ local_594[0xe] = 0;
+ local_594[0xf] = 0;
+ local_594[0x10] = 0;
+ local_594[0x11] = 0;
+ local_594[0x12] = 0;
+ local_594[0x13] = 0;
+ memset(local_594 + 0x14,0,0x1d);
+ pcVar1 = FUN_000e7640();
+ pcVar2 = FUN_000e7640();
+ pbVar3 = FUN_000e7640();
+ if ((*pcVar1 == '\0') || (*pcVar2 == '\0')) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]No userticket.\n\" >> /tmp/asusddns.log","_acquire_token",
+ 0x8a);
+ system((char *)aMStack_420);
+ return 0xfffffffe;
+ }
+ if ((*pbVar3 == 0) || ((*pbVar3 & 0xfd) != 0x30)) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]No sid (service id).\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0x8f);
+ system((char *)aMStack_420);
+ return 0xfffffff9;
+ }
+ iVar4 = json_object_new_object();
+ if (iVar4 == 0) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot create json object!\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0x97);
+ system((char *)aMStack_420);
+ return 0xfffffffa;
+ }
+ iVar5 = json_object_new_string(pcVar1);
+ if (iVar5 == 0) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot add json object, cusid!\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0xa1);
+ system((char *)aMStack_420);
+ uVar12 = 0xfffffffa;
+ goto LAB_000e78a4;
+ }
+ json_object_object_add(iVar4,"cusid",iVar5);
+ iVar6 = json_object_new_string(pcVar2);
+ if (iVar6 == 0) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot add json object, userticket!\n\" >> /tmp/asusddns.log"
+ ,"_acquire_token",0xab);
+ system((char *)aMStack_420);
+ iVar13 = 0;
+LAB_000e7844:
+ uVar12 = 0xfffffffa;
+ }
+ else {
+ json_object_object_add(iVar4,"userticket",iVar6);
+ uVar12 = get_ddns_macaddr();
+ snprintf(acStack_560,0x40,"%s",uVar12);
+ FUN_000e7664((int)acStack_560,0x3a);
+ iVar7 = json_object_new_string(acStack_560);
+ if (iVar7 == 0) {
+ uVar12 = 0xb7;
+ pcVar1 =
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot add json object, devicemac!\n\" >> /tmp/asusddns.log";
+ iVar13 = 0;
+LAB_000e7918:
+ snprintf((char *)aMStack_420,0x400,pcVar1,"_acquire_token",uVar12);
+ system((char *)aMStack_420);
+ goto LAB_000e7844;
+ }
+ json_object_object_add(iVar4,"devicemac",iVar7);
+ pcVar1 = FUN_000e7640();
+ sVar8 = strlen(pcVar1);
+ MD5_Init(aMStack_420);
+ MD5_Update(aMStack_420,pcVar1,sVar8);
+ MD5_Final(local_594,aMStack_420);
+ pbVar3 = local_594;
+ __s = local_594 + 0x10;
+ do {
+ iVar13 = iVar13 + 1;
+ sprintf((char *)__s,"%02x",(uint)*pbVar3);
+ __s = __s + 2;
+ pbVar3 = pbVar3 + 1;
+ } while (iVar13 != 0x10);
+ iVar13 = json_object_new_string(local_594 + 0x10);
+ if (iVar13 == 0) {
+ uVar12 = 200;
+ pcVar1 =
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot add json object, devicemd5mac!\n\" >> /tmp/asusddns.log";
+ goto LAB_000e7918;
+ }
+ json_object_object_add(iVar4,"devicemd5mac",iVar13);
+ iVar7 = is_account_bound();
+ if (iVar7 == 0) {
+ puVar9 = &DAT_0016a811;
+ }
+ else {
+ puVar9 = &DAT_0018919f;
+ }
+ iVar10 = json_object_new_string(puVar9);
+ if (iVar10 == 0) {
+ uVar12 = 0xde;
+ pcVar1 = "echo \"[ASUSDDNS][%s:(%d)]Cannot add json object, sid!\n\" >> /tmp/asusddns.log";
+ goto LAB_000e7918;
+ }
+ iVar14 = -1;
+ json_object_object_add(iVar4,"sid",iVar10);
+ pcVar2 = (char *)json_object_to_json_string(iVar4);
+ pcVar1 = pcVar2;
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]auth_string=%s\n\" >> /tmp/asusddns.log","_acquire_token",
+ 0xe4,pcVar2);
+ system((char *)aMStack_420);
+ local_5b0 = 5;
+ do {
+ __stream = fopen("/tmp/asusddns_res","wb");
+ if (__stream == (FILE *)0x0) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot open file for response data.\n\" >> /tmp/asusddns.log"
+ ,"_acquire_token",0xee,pcVar1);
+ system((char *)aMStack_420);
+ return 0xfffffffb;
+ }
+ iVar10 = curl_easy_init();
+ if (iVar10 == 0) {
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]Cannot init CURL\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0x129);
+ system((char *)aMStack_420);
+LAB_000e7e08:
+ uVar12 = 0xfffffffc;
+ }
+ else {
+ if (((iVar7 == 0) ||
+ (pcVar11 = (char *)nvram_get("ddns_replace_status"), pcVar11 == (char *)0x0)) ||
+ (iVar14 = strcmp(pcVar11,"1"), iVar14 != 0)) {
+LAB_000e7b94:
+ pcVar11 = (char *)nvram_get("ddns_server_x");
+ if ((pcVar11 == (char *)0x0) || (iVar14 = strcmp(pcVar11,"WWW.ASUS.COM.CN"), iVar14 != 0))
+ {
+ pcVar11 = "https://ns1.asuscomm.com";
+ }
+ else {
+ pcVar11 = "https://ns1.asuscomm.cn";
+ }
+ __format = "%s%s";
+ }
+ else {
+ pcVar11 = FUN_000e7640();
+ pcVar11 = strstr(pcVar11,".asuscomm.com");
+ if (pcVar11 == (char *)0x0) {
+LAB_000e7b70:
+ pcVar11 = FUN_000e7640();
+ pcVar11 = strstr(pcVar11,".asuscomm.cn");
+ if (pcVar11 != (char *)0x0) {
+ pcVar11 = FUN_000e7640();
+ pcVar11 = strstr(pcVar11,".asuscomm.cn");
+ if (pcVar11 != (char *)0x0) goto LAB_000e7c00;
+ }
+ goto LAB_000e7b94;
+ }
+ pcVar11 = FUN_000e7640();
+ pcVar11 = strstr(pcVar11,".asuscomm.com");
+ if (pcVar11 == (char *)0x0) goto LAB_000e7b70;
+LAB_000e7c00:
+ pcVar11 = FUN_000e7640();
+ __format = "https://%s%s";
+ }
+ snprintf(acStack_520,0x100,__format,pcVar11,"/ddnsv2/acquireToken.php");
+ curl_easy_setopt(iVar10,0x2712,acStack_520);
+ curl_easy_setopt(iVar10,0xb5,2);
+ curl_easy_setopt(iVar10,0x51,0);
+ curl_easy_setopt(iVar10,0x40,0);
+ curl_easy_setopt(iVar10,0x271f,pcVar2);
+ sVar8 = strlen(pcVar2);
+ curl_easy_setopt(iVar10,0x3c,sVar8);
+ curl_easy_setopt(iVar10,0x29,1);
+ curl_easy_setopt(iVar10,0x4e,10);
+ curl_easy_setopt(iVar10,0xd,0x78);
+ curl_easy_setopt(iVar10,0x4e2b,&LAB_000e7660);
+ curl_easy_setopt(iVar10,0x2711,__stream);
+ curl_easy_setopt(iVar10,0x2d,1);
+ iVar14 = curl_easy_perform(iVar10);
+ fclose(__stream);
+ curl_easy_cleanup(iVar10);
+ if (iVar14 != 0) {
+ pcVar1 = (char *)curl_easy_strerror(iVar14);
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]CURL perform fail: %s(%d)\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0x120,pcVar1,iVar14);
+ system((char *)aMStack_420);
+ unlink("/tmp/asusddns_res");
+ local_5b0 = local_5b0 + -1;
+ sleep(1);
+ goto LAB_000e7e08;
+ }
+ snprintf((char *)aMStack_420,0x400,
+ "echo \"[ASUSDDNS][%s:(%d)]CURL perform success\n\" >> /tmp/asusddns.log",
+ "_acquire_token",0x11b);
+ system((char *)aMStack_420);
+ uVar12 = 1;
+ }
+ iVar10 = iVar14;
+ if (iVar14 != 0) {
+ iVar10 = local_5b0;
+ }
+ } while ((iVar14 != 0 && local_5b0 != 0) && -1 < iVar10);
+ curl_global_cleanup();
+ }
+ json_object_put(iVar5);
+ if (iVar6 != 0) {
+ json_object_put(iVar6);
+ }
+ if (iVar13 != 0) {
+ json_object_put(iVar13);
+ }
+LAB_000e78a4:
+ json_object_put(iVar4);
+ return uVar12;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_000e98c4 |
fullname | FUN_000e98c4 |
refcount | 1 |
length | 3148 |
called | Expand for full list:::nvram_get_int |
calling | FUN_000ea624 |
paramcount | 0 |
address | 000e98c4 |
sig | undefined4 __stdcall FUN_000e98c4(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_000e98c4
+++ FUN_000e98c4
@@ -0,0 +1,404 @@
+
+undefined4 FUN_000e98c4(void)
+
+{
+ char cVar1;
+ undefined uVar2;
+ bool bVar3;
+ bool bVar4;
+ bool bVar5;
+ undefined *puVar6;
+ char *pcVar7;
+ size_t sVar8;
+ size_t sVar9;
+ int iVar10;
+ __pid_t _Var11;
+ undefined4 uVar12;
+ undefined4 uVar13;
+ int iVar14;
+ undefined2 *puVar15;
+ void *__src;
+ undefined *puVar16;
+ undefined4 *puVar17;
+ char *__src_00;
+ uint uVar18;
+ int *piVar19;
+ int *piVar20;
+ int iVar21;
+ uint uVar22;
+ int *local_270;
+ int local_268;
+ int local_260;
+ int local_248;
+ undefined auStack_244 [8];
+ undefined4 local_23c;
+ undefined2 local_238;
+ undefined auStack_234 [20];
+ char acStack_220 [128];
+ char local_1a0 [127];
+ undefined local_121;
+ undefined auStack_120 [2];
+ undefined local_11e;
+ undefined local_11d;
+ undefined local_11c;
+ undefined4 local_11b;
+ undefined2 local_117;
+ undefined local_115;
+ undefined local_114;
+ undefined auStack_113 [5];
+ ushort uStack_10e;
+ undefined auStack_10c [2];
+ undefined2 uStack_10a;
+ undefined auStack_108 [2];
+ ushort uStack_106;
+ undefined auStack_104 [228];
+
+ local_248 = 0;
+ local_270 = (int *)FUN_000bcb5c();
+ if (local_270 != (int *)0x0) {
+ puVar6 = FUN_000e9828();
+ pcVar7 = FUN_000e9828();
+ sVar8 = strspn(pcVar7," ");
+ strncpy(local_1a0,puVar6 + sVar8,0x80);
+ local_121 = 0;
+ sVar9 = strcspn(local_1a0," ");
+ local_1a0[sVar9] = '\0';
+ pcVar7 = strchr(puVar6 + sVar8,0x20);
+ while (local_1a0[0] != '\0') {
+ local_248 = -1;
+ wl_ioctl(local_1a0,0xe,&local_248,4);
+ snprintf(acStack_220,0x80,"wl%d_nband",local_248);
+ iVar10 = nvram_get_int(acStack_220);
+ if (iVar10 == 2) break;
+ __src_00 = "";
+ if (pcVar7 != (char *)0x0) {
+ sVar8 = strspn(pcVar7," ");
+ __src_00 = pcVar7 + sVar8;
+ }
+ strncpy(local_1a0,__src_00,0x80);
+ local_121 = 0;
+ sVar8 = strcspn(local_1a0," ");
+ local_1a0[sVar8] = '\0';
+ pcVar7 = strchr(__src_00,0x20);
+ }
+ if (local_248 != -1) {
+ if ((DAT_001de530 == 0) &&
+ (((DAT_001de52c & 0x10) != 0 || (iVar10 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar10)))) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: %-4s%-18s\n",_Var11,uVar12,&DAT_0017aef6,"BSSID");
+ }
+ uVar12 = get_lan_hwaddr();
+ ether_atoe(uVar12,auStack_244);
+ iVar10 = 0;
+ local_268 = 0;
+ cVar1 = '\0';
+ piVar20 = local_270;
+ do {
+ if (*(char *)((int)piVar20 + 0xf) != '\0') {
+ puVar17 = (undefined4 *)((int)piVar20 + 9);
+ ether_etoa(puVar17,auStack_234);
+ if (((DAT_001de52c & 0x10) != 0) || (iVar21 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar21)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: BSSID=%s, RSSI=%d, VSIE_LEN=%d\n",_Var11,uVar12,auStack_234,
+ (int)*(char *)(piVar20 + 0x104),*(undefined *)((int)piVar20 + 0xf));
+ }
+ piVar19 = piVar20 + 4;
+ iVar21 = 0;
+ bVar3 = false;
+ bVar5 = false;
+ bVar4 = false;
+ for (local_260 = (uint)*(byte *)((int)piVar20 + 0xf) -
+ (*(byte *)((int)piVar20 + 0x11) + 2); uVar22 = DAT_001de52c,
+ 0 < local_260; local_260 = local_260 - iVar14) {
+ switch(*(undefined *)piVar19) {
+ case 1:
+ if (*(char *)((int)piVar19 + 1) == '\x01') {
+ cVar1 = *(char *)((int)piVar19 + 2);
+ if (((DAT_001de52c & 0x10) == 0) &&
+ (iVar14 = f_exists("/tmp/OBD_DEBUG"), iVar14 < 1)) {
+ bVar4 = true;
+ }
+ else {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Status: %x\n",_Var11,uVar12,cVar1);
+ bVar4 = true;
+ }
+ }
+ break;
+ case 2:
+ if (*(char *)((int)piVar19 + 1) == '\x01') {
+ uVar2 = *(undefined *)((int)piVar19 + 2);
+ if (((DAT_001de52c & 0x10) == 0) &&
+ (iVar14 = f_exists("/tmp/OBD_DEBUG"), iVar14 < 1)) {
+ bVar5 = true;
+ }
+ else {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Cost: %x\n",_Var11,uVar12,uVar2);
+ bVar5 = true;
+ }
+ }
+ break;
+ case 3:
+ if (*(char *)((int)piVar19 + 1) == '\x14') {
+ if (((DAT_001de52c & 0x10) != 0) ||
+ (iVar14 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar14)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: ID: ",_Var11,uVar12);
+ }
+ if ((DAT_001de52c & 0x10) != 0) {
+ for (puVar6 = (undefined *)((int)piVar19 + 2);
+ puVar6 + (-2 - (int)piVar19) < (undefined *)(uint)*(byte *)((int)piVar19 + 1);
+ puVar6 = puVar6 + 1) {
+ dbg("%02X",*puVar6);
+ }
+ dbg("\n");
+ }
+ bVar3 = true;
+ }
+ break;
+ case 4:
+ if (*(char *)((int)piVar19 + 1) == '\x06') {
+ iVar21 = memcmp(auStack_244,(undefined *)((int)piVar19 + 2),6);
+ if (iVar21 == 0) {
+ iVar21 = 1;
+ }
+ else {
+ iVar21 = -1;
+ }
+ if (((uVar22 & 0x10) != 0) || (iVar14 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar14)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ uVar13 = ether_etoa((undefined *)((int)piVar19 + 2),auStack_234);
+ dbg("OBD(%d) %lu: MAC address: %s\n",_Var11,uVar12,uVar13);
+ }
+ }
+ break;
+ case 5:
+ default:
+switchD_000e9cfc_caseD_7:
+ if (((DAT_001de52c & 1) != 0) || (iVar14 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar14)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Unknown TLV: ",_Var11,uVar12);
+ }
+ if ((DAT_001de52c & 0x10) != 0) {
+ dbg("%02X",*(undefined *)piVar19);
+ dbg("%02X",*(undefined *)((int)piVar19 + 1));
+ for (puVar6 = (undefined *)((int)piVar19 + 2);
+ puVar6 + (-2 - (int)piVar19) < (undefined *)(uint)*(byte *)((int)piVar19 + 1);
+ puVar6 = puVar6 + 1) {
+ dbg("%02X",*puVar6);
+ }
+ dbg("\n");
+ }
+ break;
+ case 6:
+ goto switchD_000e9cfc_caseD_7;
+ case 7:
+ }
+ iVar14 = *(byte *)((int)piVar19 + 1) + 2;
+ piVar19 = (int *)((int)piVar19 + iVar14);
+ }
+ if ((DAT_001de52c & 0x10) != 0) {
+ dbg("\n");
+ }
+ if ((bVar4 && bVar5) && bVar3) {
+ if (DAT_001de530 == 0) {
+ if (cVar1 == '\x02') {
+ if (iVar10 == 0) {
+ nvram_set_int("amesh_found_cap",iVar10 + 1);
+ }
+ iVar21 = iVar10 * 7;
+ *(undefined4 *)((int)&DAT_001e7bf1 + iVar21) = *puVar17;
+ *(undefined2 *)((int)&DAT_001e7bf5 + iVar21) = *(undefined2 *)((int)piVar20 + 0xd);
+ (&DAT_001e7bf7)[iVar21] = *(undefined *)(piVar20 + 0x104);
+LAB_000e9c20:
+ iVar10 = iVar10 + 1;
+ }
+ }
+ else if (DAT_001de530 == 1) {
+ if (cVar1 == '\x02') {
+ iVar14 = iVar10 * 7;
+ *(undefined4 *)((int)&DAT_001e7bf1 + iVar14) = *puVar17;
+ *(undefined2 *)((int)&DAT_001e7bf5 + iVar14) = *(undefined2 *)((int)piVar20 + 0xd);
+ (&DAT_001e7bf7)[iVar14] = *(undefined *)(piVar20 + 0x104);
+ if (iVar21 == 1) {
+ nvram_set_int("amesh_led",1);
+ FUN_000bd6b4();
+ }
+ else if (iVar21 == -1) {
+ nvram_set_int("amesh_led");
+ FUN_000bd6c8();
+ }
+ goto LAB_000e9c20;
+ }
+ if (cVar1 == '\x04') {
+ if (iVar21 == -1) {
+ local_268 = local_268 + 1;
+ }
+ else if (iVar21 == 1) {
+ nvram_set_int("amesh_found_cap");
+ local_268 = 1;
+ goto LAB_000ea0b0;
+ }
+ }
+ }
+ }
+ }
+ piVar20 = (int *)*piVar20;
+ } while (piVar20 != (int *)0x0);
+ if (local_268 == 0) {
+LAB_000ea0b0:
+ iVar14 = uptime();
+ iVar21 = local_248;
+ if (iVar14 - DAT_001de534 < 0x12d) {
+ if ((local_268 == 0) || (DAT_001de530 != 1)) {
+ if ((iVar10 != 0) && (DAT_001de530 < 2)) {
+ DAT_001e7bf0 = (byte)iVar10;
+ pcVar7 = (char *)get_productid();
+ if (*pcVar7 != '\0') {
+ for (puVar17 = &DAT_001b6bd0; (char *)*puVar17 != (char *)0x0; puVar17 = puVar17 + 4
+ ) {
+ iVar10 = strcmp((char *)*puVar17,pcVar7);
+ if (iVar10 == 0) {
+ uVar22 = puVar17[1];
+ if (599 < uVar22 - 1) {
+ uVar22 = 0;
+ }
+ uVar18 = 0;
+ if (puVar17[3] - 1 < 300) {
+ uVar18 = puVar17[3];
+ }
+ goto LAB_000ea2f0;
+ }
+ }
+ }
+ uVar22 = 0xb4;
+ uVar18 = 0x3c;
+LAB_000ea2f0:
+ puVar15 = (undefined2 *)memset(auStack_120,0,0x100);
+ local_11e = 3;
+ *puVar15 = 0x101;
+ uVar12 = get_lan_hwaddr();
+ ether_atoe(uVar12,&local_23c);
+ local_11d = 4;
+ local_11c = 6;
+ local_11b = local_23c;
+ local_117 = local_238;
+ __src = (void *)get_productid();
+ pcVar7 = (char *)get_productid();
+ sVar8 = strlen(pcVar7);
+ if (sVar8 != 0) {
+ local_114 = (undefined)sVar8;
+ local_115 = 5;
+ memcpy(auStack_113,__src,sVar8);
+ }
+ sVar9 = (uint)DAT_001e7bf0 * 7 + 1;
+ iVar14 = (uint)DAT_001e7bf0 * 7 + 3;
+ auStack_113[sVar8] = 6;
+ iVar10 = iVar14 + (sVar8 - 0x113);
+ auStack_113[sVar8 + 1] = (char)sVar9;
+ memcpy(auStack_113 + sVar8 + 2,&DAT_001e7bf0,sVar9);
+ auStack_113[iVar14 + (sVar8 - 0x113) + 0x113] = 0xf;
+ *(ushort *)(auStack_113 + iVar10 + 0x115) =
+ (ushort)((uVar22 & 0xff) << 8) | (ushort)(uVar22 >> 8) & 0xff;
+ auStack_113[iVar10 + 0x114] = 2;
+ auStack_113[iVar10 + 0x117] = 0x10;
+ auStack_113[iVar10 + 0x118] = 2;
+ auStack_113[iVar10 + 0x11c] = 2;
+ *(undefined2 *)(auStack_113 + iVar10 + 0x119) = 0x7800;
+ *(ushort *)(auStack_113 + iVar10 + 0x11d) =
+ (ushort)((uVar18 & 0xff) << 8) | (ushort)(uVar18 >> 8) & 0xff;
+ puVar6 = auStack_113 + iVar10 + 0x11f;
+ auStack_113[iVar10 + 0x11b] = 0x11;
+ pcVar7 = FUN_000e9828();
+ if (*pcVar7 != '\0') {
+ puVar16 = FUN_000e9828();
+ pcVar7 = FUN_000e9828();
+ sVar8 = strlen(pcVar7);
+ if (sVar8 != 0) {
+ auStack_113[iVar10 + 0x11f] = 0x16;
+ auStack_113[iVar10 + 0x120] = (char)sVar8;
+ memcpy(auStack_113 + iVar10 + 0x121,puVar16,sVar8);
+ }
+ puVar6 = puVar6 + sVar8 + 2;
+ }
+ if (0 < (int)DAT_001de528) {
+ *puVar6 = 0x1b;
+ puVar16 = puVar6 + 2;
+ puVar6[1] = (char)DAT_001de528;
+ puVar6 = puVar6 + DAT_001de528 + 2;
+ memcpy(puVar16,&DAT_001e7db1,DAT_001de528);
+ }
+ FUN_000bd6a0(iVar21);
+ FUN_000bd670(iVar21,puVar6 + (3 - (int)auStack_120),auStack_120);
+ FUN_000bc844();
+ if (DAT_001de530 == 0) {
+ DAT_001de530 = 1;
+ }
+ DAT_001de534 = uptime();
+ }
+ }
+ else {
+ iVar10 = nvram_get_int("amesh_led");
+ if (iVar10 == 1) {
+ FUN_000bd6c8();
+ nvram_set_int("amesh_led",0);
+ }
+ if (((DAT_001de52c & 0x10) != 0) || (iVar10 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar10)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Start WPS Enroll\n\n",_Var11,uVar12);
+ }
+ DAT_001de538 = 0;
+ FUN_000bd634();
+ DAT_001de530 = 2;
+ }
+ }
+ else {
+ if (((DAT_001de52c & 0x10) != 0) || (iVar10 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar10)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Reset due to timeout\n\n",_Var11,uVar12);
+ }
+ DAT_001de530 = 0;
+ DAT_001de534 = uptime();
+ nvram_set_int("amesh_found_cap",0);
+ iVar10 = nvram_get_int("amesh_led");
+ if (iVar10 == 1) {
+ FUN_000bd6c8();
+ nvram_set_int("amesh_led",0);
+ }
+ }
+ do {
+ piVar20 = (int *)*local_270;
+ free(local_270);
+ local_270 = piVar20;
+ } while (piVar20 != (int *)0x0);
+ }
+ else {
+ if (((DAT_001de52c & 0x10) != 0) || (iVar10 = f_exists("/tmp/OBD_DEBUG"), 0 < iVar10)) {
+ _Var11 = getpid();
+ uVar12 = uptime();
+ dbg("OBD(%d) %lu: Reset due to mismatch of RE MAC address\n\n",_Var11,uVar12);
+ }
+ DAT_001de530 = 0;
+ DAT_001de534 = uptime();
+ nvram_set_int("amesh_found_cap",0);
+ do {
+ piVar20 = (int *)*local_270;
+ free(local_270);
+ local_270 = piVar20;
+ } while (piVar20 != (int *)0x0);
+ }
+ }
+ }
+ return 0;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00100fb0 |
fullname | FUN_00100fb0 |
refcount | 2 |
length | 1964 |
called | Expand for full list:FUN_00034638 |
calling | FUN_00101acc |
paramcount | 0 |
address | 00100fb0 |
sig | undefined __stdcall FUN_00100fb0(void) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00100fb0
+++ FUN_00100fb0
@@ -0,0 +1,190 @@
+
+void FUN_00100fb0(void)
+
+{
+ bool bVar1;
+ int iVar2;
+ undefined4 uVar3;
+ char *pcVar4;
+ undefined *puVar5;
+ undefined4 uVar6;
+ char acStack_88 [16];
+ char acStack_78 [48];
+ char acStack_48 [48];
+
+ if (DAT_001b7724 != 0) {
+ iVar2 = nvram_pf_get_int(&DAT_001de764,"s46_hgw_case");
+ if (iVar2 == 0) {
+ FUN_00100f08(5);
+ if (DAT_001de740 == 1) {
+ logmessage_normal("[DS-Lite]","Checking scenario...");
+ nvram_pf_set(&DAT_001de764,"s46_dslite_svc",&DAT_00165aad);
+ iVar2 = nvram_pf_get_int(&DAT_001de764,"s46_dslite_mode");
+ if (iVar2 == 0) {
+ uVar3 = ipv6_nvname_by_unit("ipv6_s46_aftr",DAT_001de774);
+ nvram_set(uVar3,"");
+ }
+ }
+ if (DAT_001de740 == 6) {
+ FUN_00100f08(0x1e);
+ DAT_001de740 = 0;
+ DAT_001b7724 = 0;
+ nvram_pf_set_int(&DAT_001de764,"s46_hgw_case",6);
+ pcVar4 = strcpy(acStack_48,&DAT_001de764);
+ strcat(pcVar4,"ifname");
+ puVar5 = FUN_00100ee8();
+ snprintf(acStack_78,0x10,"%s",puVar5);
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]### HGW OFF ### (DS-Lite start.)\n","do_dslite_check"
+ ,0xd2);
+ logmessage_normal("[DS-Lite]","DS-Lite start.");
+ FUN_00038d3c(acStack_78);
+ }
+ DAT_001de740 = DAT_001de740 + 1;
+ return;
+ }
+ iVar2 = nvram_pf_get_int(&DAT_001de764,"s46_hgw_case");
+ if (iVar2 == 3) {
+ FUN_00100f08(0xf);
+ DAT_001b7724 = 0;
+ pcVar4 = strcpy(acStack_48,&DAT_001de764);
+ strcat(pcVar4,"ifname");
+ puVar5 = FUN_00100ee8();
+ snprintf(acStack_78,0x10,"%s",puVar5);
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]### HGW OFF ### (DS-Lite is not activated on HGW)\n",
+ "do_dslite_check",0xdd);
+ logmessage_normal("[DS-Lite]","DS-Lite start.(DS-Lite is not activated on HGW)");
+ FUN_00038d3c(acStack_78);
+ sleep(2);
+ return;
+ }
+ iVar2 = nvram_pf_get_int(&DAT_001de764,"s46_hgw_case");
+ if (iVar2 == 2) {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)]### HGW ON ### (DS-Lite is active on HGW)\n",
+ "do_dslite_check",0xe6);
+ logmessage_normal("[DS-Lite]","DS-Lite is active on HGW");
+ FUN_00042860(DAT_001de774);
+ return;
+ }
+ }
+ uVar3 = DAT_001de774;
+ if (DAT_001b7720 == 0) {
+ return;
+ }
+ DAT_001b7720 = 0;
+ snprintf(acStack_88,0x10,"wan%d_",DAT_001de774);
+ uVar6 = ipv6_nvname_by_unit("ipv6_ra_addr",uVar3);
+ bVar1 = FUN_0003445c(uVar6,"");
+ if (bVar1) {
+ puVar5 = FUN_00034870(uVar3);
+ }
+ else {
+ ipv6_nvname_by_unit("ipv6_ra_addr",uVar3);
+ puVar5 = FUN_00100ee8();
+ }
+ snprintf(acStack_78,0x2e,"%s",puVar5);
+ bVar1 = FUN_00034afc(acStack_78);
+ if (bVar1) {
+ iVar2 = nvram_pf_get_int(acStack_88,"s46_dslite_mode");
+ if (iVar2 == 0) {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Auto Mode.\n","setup_dslite",0x83);
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_b4addr",uVar3);
+ nvram_set(uVar6,"192.0.0.2");
+ iVar2 = FUN_0003523c(acStack_78);
+ if (iVar2 == 2) {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Line is transix(East)\n","setup_dslite",
+ 0x90);
+ nvram_pf_set(acStack_88,"s46_dslite_svc","transix");
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ nvram_set(uVar6,"gw.transix.jp");
+ pcVar4 = FUN_00034b34("gw.transix.jp",acStack_48,0x2e);
+ if (pcVar4 == (char *)0x0) {
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr_addr",uVar3);
+ pcVar4 = "2404:8e00::feed:100";
+ }
+ else {
+LAB_001014fc:
+ pcVar4 = acStack_48;
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr_addr",uVar3);
+ }
+ }
+ else if (iVar2 == 3) {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Line is transix(West)\n","setup_dslite",
+ 0x99);
+ nvram_pf_set(acStack_88,"s46_dslite_svc","transix");
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ nvram_set(uVar6,"gw.transix.jp");
+ pcVar4 = FUN_00034b34("gw.transix.jp",acStack_48,0x2e);
+ if (pcVar4 != (char *)0x0) goto LAB_001014fc;
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr_addr",uVar3);
+ pcVar4 = "2404:8e01::feed:100";
+ }
+ else {
+ if (iVar2 != 1) {
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_env_aftr",uVar3);
+ bVar1 = FUN_0003445c(uVar6,"");
+ if (!bVar1) {
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ ipv6_nvname_by_unit("ipv6_s46_env_aftr",uVar3);
+ puVar5 = FUN_00100ee8();
+ nvram_set(uVar6,puVar5);
+ }
+ goto LAB_0010138c;
+ }
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Line is xpass\n","setup_dslite",0x87);
+ nvram_pf_set(acStack_88,"s46_dslite_svc","xpass");
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ nvram_set(uVar6,"dgw.xpass.jp");
+ pcVar4 = FUN_00034b34("dgw.xpass.jp",acStack_48,0x2e);
+ if (pcVar4 != (char *)0x0) goto LAB_001014fc;
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr_addr",uVar3);
+ pcVar4 = "2001:f60:0:200::1:1";
+ }
+ }
+ else {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Manual Mode.\n","setup_dslite",0x7e);
+LAB_0010138c:
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ bVar1 = FUN_0003445c(uVar6,"dgw.xpass.jp");
+ if (bVar1) {
+ pcVar4 = "xpass";
+ }
+ else {
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ bVar1 = FUN_0003445c(uVar6,"gw.transix.jp");
+ if (bVar1) {
+ pcVar4 = "transix";
+ }
+ else {
+ pcVar4 = "none";
+ }
+ }
+ nvram_pf_set(acStack_88,"s46_dslite_svc",pcVar4);
+ ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ pcVar4 = FUN_00100ee8();
+ bVar1 = FUN_00034afc(pcVar4);
+ if (!bVar1) {
+ ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ pcVar4 = FUN_00100ee8();
+ pcVar4 = FUN_00034b34(pcVar4,acStack_48,0x2e);
+ if (pcVar4 != (char *)0x0) goto LAB_001014fc;
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][Err][DS-Lite] Cannot get AFTR addr\n","setup_dslite"
+ ,0xb9);
+ goto LAB_00101310;
+ }
+ uVar6 = ipv6_nvname_by_unit("ipv6_s46_aftr_addr",uVar3);
+ ipv6_nvname_by_unit("ipv6_s46_aftr",uVar3);
+ pcVar4 = FUN_00100ee8();
+ }
+ nvram_set(uVar6,pcVar4);
+ FUN_00042364(DAT_001de774,0);
+ FUN_00041880(DAT_001de774);
+ }
+ else {
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite]Invalid RA [%s]\n","setup_dslite",0x78);
+LAB_00101310:
+ FUN_00034638("/jffs/s46.log","[%s:(%d)][DS-Lite] Configure error, exit.\n","do_dslite_check",
+ 0xf3);
+ }
+ return;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00101acc |
fullname | FUN_00101acc |
refcount | 1 |
length | 440 |
called | Expand for full list:::sigaction |
calling | |
paramcount | 2 |
address | 00101acc |
sig | undefined __stdcall FUN_00101acc(int param_1, char * * param_2) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00101acc
+++ FUN_00101acc
@@ -0,0 +1,47 @@
+
+void FUN_00101acc(int param_1,char **param_2)
+
+{
+ int iVar1;
+ char *__src;
+ FILE *__stream;
+ __pid_t _Var2;
+ char acStack_124 [128];
+ _union_1051 local_a4;
+ undefined auStack_a0 [136];
+
+ DAT_001de774 = wan_primary_ifunit();
+ while( true ) {
+ iVar1 = getopt(param_1,param_2,"u:");
+ if (iVar1 == -1) {
+ __src = (char *)get_wan6_ifname(DAT_001de774);
+ strncpy(&DAT_001de744,__src,0x20);
+ snprintf(&DAT_001de764,0x10,"wan%d_",DAT_001de774);
+ snprintf(acStack_124,0x80,"/var/run/dslited.%d.pid",DAT_001de774);
+ get_wan_proto(&DAT_001de764);
+ __stream = fopen(acStack_124,"w");
+ if (__stream != (FILE *)0x0) {
+ _Var2 = getpid();
+ fprintf(__stream,"%d",_Var2);
+ fclose(__stream);
+ }
+ memset(auStack_a0,0,0x88);
+ local_a4.sa_handler = (__sighandler_t)&LAB_001018f4;
+ sigaction(10,(sigaction *)&local_a4,(sigaction *)0x0);
+ sigaction(0xc,(sigaction *)&local_a4,(sigaction *)0x0);
+ sigaction(0xe,(sigaction *)&local_a4,(sigaction *)0x0);
+ sigaction(0xf,(sigaction *)&local_a4,(sigaction *)0x0);
+ memset(&DAT_001de778,0,0x10);
+ FUN_00100fb0();
+ do {
+ pause();
+ } while( true );
+ }
+ if (iVar1 != 0x75) break;
+ DAT_001de774 = strtoul(optarg,(char **)0x0,0);
+ }
+ fputs("Usage: [options] -u <wan unit>\n",stderr);
+ /* WARNING: Subroutine does not return */
+ exit(1);
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | FUN_00152ce0 |
fullname | FUN_00152ce0 |
refcount | 1 |
length | 548 |
called | ::RAND_bytes ::__aeabi_idivmod ::__aeabi_uidivmod ::nvram_commit ::nvram_set ::snprintf ::strcmp ::strncpy ::strtoul FUN_0014e948 |
calling | |
paramcount | 5 |
address | 00152ce0 |
sig | undefined4 __stdcall FUN_00152ce0(undefined4 param_1, undefined4 param_2, undefined4 param_3, char * param_4, size_t param_5) |
sym_type | Function |
sym_source | DEFAULT |
external | False |
--- FUN_00152ce0
+++ FUN_00152ce0
@@ -0,0 +1,66 @@
+
+undefined4
+FUN_00152ce0(undefined4 param_1,undefined4 param_2,undefined4 param_3,char *param_4,size_t param_5)
+
+{
+ undefined *puVar1;
+ int iVar2;
+ ulong uVar3;
+ int extraout_r1;
+ int extraout_r1_00;
+ int extraout_r1_01;
+ int extraout_r1_02;
+ int extraout_r1_03;
+ int extraout_r1_04;
+ int extraout_r1_05;
+ int extraout_r1_06;
+ int extraout_r1_07;
+ uint uVar4;
+ undefined4 local_40 [2];
+ char acStack_38 [7];
+ undefined local_31;
+ undefined local_30;
+ char local_2c [8];
+ ushort local_24;
+
+ local_2c[0] = '\0';
+ local_2c[1] = '\0';
+ local_2c[2] = '\0';
+ local_2c[3] = '\0';
+ local_2c[4] = '\0';
+ local_2c[5] = '\0';
+ local_2c[6] = '\0';
+ local_2c[7] = '\0';
+ local_24 = 0;
+ puVar1 = FUN_0014e948();
+ snprintf(local_2c,10,"%s",puVar1);
+ if ((local_2c[0] == '\0') || (iVar2 = strcmp(local_2c,"12345670"), iVar2 == 0)) {
+ RAND_bytes((uchar *)local_40,8);
+ snprintf(acStack_38,9,"%08u",local_40[0]);
+ local_31 = 0;
+ uVar3 = strtoul(acStack_38,(char **)0x0,10);
+ uVar4 = uVar3 * 10;
+ __aeabi_uidivmod(uVar4 / 10000000,10,uVar3 * 0x31bde82e);
+ __aeabi_uidivmod((uVar4 >> 5) / 0xc35,10,(uVar4 >> 5) * 0xa7c5ac5);
+ __aeabi_uidivmod(uVar4 / 1000,10,uVar3 * -0x5c28f5c2);
+ __aeabi_idivmod(uVar4 / 10,10,uVar3 * 2);
+ __aeabi_uidivmod(uVar4 / 1000000,10,uVar3 * -0x60e94ee2);
+ __aeabi_uidivmod(uVar4 / 10000,10,uVar3 * 0x3126e97a);
+ __aeabi_uidivmod(uVar4 / 100,10,uVar3 * 0x33333336);
+ __aeabi_uidivmod((extraout_r1 + extraout_r1_00 + extraout_r1_01 + extraout_r1_02) * 3 +
+ extraout_r1_03 + extraout_r1_04 + extraout_r1_05,10);
+ __aeabi_idivmod(10 - extraout_r1_06,10);
+ snprintf(acStack_38,9,"%08u",extraout_r1_07 + uVar4);
+ local_30 = 0;
+ strncpy(local_2c,acStack_38,9);
+ local_24 = local_24 & 0xff;
+ snprintf(param_4,param_5,"%s",local_2c);
+ nvram_set(param_2,local_2c);
+ nvram_commit();
+ }
+ else {
+ snprintf(param_4,param_5,"%s",local_2c);
+ }
+ return 0;
+}
+
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | BIO_new |
fullname | ::BIO_new |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 1 |
address | EXTERNAL:000002b3 |
sig | BIO * BIO_new(BIO_METHOD * type) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::BIO_new
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | get_first_connected_dual_wan_unit |
fullname | ::get_first_connected_dual_wan_unit |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000021a |
sig | undefined get_first_connected_dual_wan_unit(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::get_first_connected_dual_wan_unit
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | pw_enc |
fullname | ::pw_enc |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000003d |
sig | undefined pw_enc(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::pw_enc
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | d2i_X509_fp |
fullname | ::d2i_X509_fp |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 2 |
address | EXTERNAL:0000005f |
sig | X509 * d2i_X509_fp(FILE * fp, X509 * * x509) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::d2i_X509_fp
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | notify_rc_and_wait_2min |
fullname | ::notify_rc_and_wait_2min |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000000ec |
sig | undefined notify_rc_and_wait_2min(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::notify_rc_and_wait_2min
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | notify_rc_and_wait_1min |
fullname | ::notify_rc_and_wait_1min |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000000ff |
sig | undefined notify_rc_and_wait_1min(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::notify_rc_and_wait_1min
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | X509_free |
fullname | ::X509_free |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 1 |
address | EXTERNAL:000002c9 |
sig | void X509_free(X509 * a) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::X509_free
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | save_cert |
fullname | ::save_cert |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000002ec |
sig | undefined save_cert(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::save_cert
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | BIO_free |
fullname | ::BIO_free |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 1 |
address | EXTERNAL:00000059 |
sig | int BIO_free(BIO * a) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::BIO_free
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | BIO_ctrl |
fullname | ::BIO_ctrl |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 4 |
address | EXTERNAL:0000009e |
sig | long BIO_ctrl(BIO * bp, int cmd, long larg, void * parg) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::BIO_ctrl
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | illegal_cert_and_key |
fullname | ::illegal_cert_and_key |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000002cc |
sig | undefined illegal_cert_and_key(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::illegal_cert_and_key
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | is_account_bound |
fullname | ::is_account_bound |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000193 |
sig | undefined is_account_bound(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::is_account_bound
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | BIO_s_mem |
fullname | ::BIO_s_mem |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000125 |
sig | BIO_METHOD * BIO_s_mem(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::BIO_s_mem
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | PEM_read_X509 |
fullname | ::PEM_read_X509 |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 4 |
address | EXTERNAL:00000063 |
sig | X509 * PEM_read_X509(FILE * fp, X509 * * x, pem_password_cb * cb, void * u) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::PEM_read_X509
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | pthread_equal |
fullname | ::pthread_equal |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 2 |
address | EXTERNAL:00000094 |
sig | int pthread_equal(pthread_t __thread1, pthread_t __thread2) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::pthread_equal
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | resolv_addr6 |
fullname | ::resolv_addr6 |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000106 |
sig | undefined resolv_addr6(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::resolv_addr6
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | X509V3_EXT_print |
fullname | ::X509V3_EXT_print |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 4 |
address | EXTERNAL:00000212 |
sig | int X509V3_EXT_print(BIO * out, X509_EXTENSION * ext, ulong flag, int indent) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::X509V3_EXT_print
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | restore_cert |
fullname | ::restore_cert |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000217 |
sig | undefined restore_cert(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::restore_cert
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | X509_get_ext |
fullname | ::X509_get_ext |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 2 |
address | EXTERNAL:0000001d |
sig | X509_EXTENSION * X509_get_ext(X509 * x, int loc) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::X509_get_ext
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | adjust_62_nv_list |
fullname | ::adjust_62_nv_list |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000001d4 |
sig | undefined adjust_62_nv_list(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::adjust_62_nv_list
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | X509_get_ext_by_NID |
fullname | ::X509_get_ext_by_NID |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 3 |
address | EXTERNAL:000000e0 |
sig | int X509_get_ext_by_NID(X509 * x, int nid, int lastpos) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::X509_get_ext_by_NID
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | RAND_bytes |
fullname | ::RAND_bytes |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 2 |
address | EXTERNAL:00000140 |
sig | int RAND_bytes(uchar * buf, int num) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::RAND_bytes
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | exec_and_return_string |
fullname | ::exec_and_return_string |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000034 |
sig | undefined exec_and_return_string(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::exec_and_return_string
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | get_ddns_macaddr |
fullname | ::get_ddns_macaddr |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000022e |
sig | undefined get_ddns_macaddr(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::get_ddns_macaddr
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | strnlen |
fullname | ::strnlen |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 2 |
address | EXTERNAL:00000127 |
sig | size_t strnlen(char * __string, size_t __maxlen) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::strnlen
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | is_valid_oauth_code |
fullname | ::is_valid_oauth_code |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000023d |
sig | undefined is_valid_oauth_code(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::is_valid_oauth_code
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | get_pid_by_process_name |
fullname | ::get_pid_by_process_name |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000060 |
sig | undefined get_pid_by_process_name(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::get_pid_by_process_name
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | update_srv_cert_if_lan_ip_changed |
fullname | ::update_srv_cert_if_lan_ip_changed |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000273 |
sig | undefined update_srv_cert_if_lan_ip_changed(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::update_srv_cert_if_lan_ip_changed
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | update_srv_cert_if_wan_ip_changed |
fullname | ::update_srv_cert_if_wan_ip_changed |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:000001ce |
sig | undefined update_srv_cert_if_wan_ip_changed(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::update_srv_cert_if_wan_ip_changed
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | aae_sendIpcMsgAndWaitResp |
fullname | ::aae_sendIpcMsgAndWaitResp |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000004a |
sig | undefined aae_sendIpcMsgAndWaitResp(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::aae_sendIpcMsgAndWaitResp
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | update_srv_cert_if_wan_ipv6_changed |
fullname | ::update_srv_cert_if_wan_ipv6_changed |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:0000018d |
sig | undefined update_srv_cert_if_wan_ipv6_changed(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::update_srv_cert_if_wan_ipv6_changed
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | remove_all_uploaded_cert_from_jffs |
fullname | ::remove_all_uploaded_cert_from_jffs |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000050 |
sig | undefined remove_all_uploaded_cert_from_jffs(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::remove_all_uploaded_cert_from_jffs
Key | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
name | update_srv_cert_if_ddns_changed |
fullname | ::update_srv_cert_if_ddns_changed |
refcount | 1 |
length | 0 |
called | |
calling | |
paramcount | 0 |
address | EXTERNAL:00000041 |
sig | undefined update_srv_cert_if_ddns_changed(void) |
sym_type | Function |
sym_source | IMPORTED |
external | True |
No code available for ::update_srv_cert_if_ddns_changed
Modified functions contain code changes
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.87 |
i_ratio | 0.47 |
m_ratio | 0.98 |
b_ratio | 0.97 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00128ecc | FUN_00130548 |
fullname |
FUN_00128ecc | FUN_00130548 |
refcount | 1 | 1 |
length |
2500 | 2548 |
called |
Expand for full list:::memset |
Expand for full list:::memset |
calling |
FUN_0001ca70 | FUN_0001d490 |
paramcount | 0 | 0 |
address |
00128ecc | 00130548 |
sig |
undefined4 __stdcall FUN_00128ecc(void) | undefined4 __stdcall FUN_00130548(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00128ecc called
+++ FUN_00130548 called
@@ -29,9 +29,9 @@
-FUN_00119f1c
-FUN_0011a544
-FUN_0011a6dc
-FUN_0011a730
-FUN_0011a7b0
-FUN_0011aa08
-FUN_0011cf48
-FUN_0011f2fc
-FUN_001281b8
+FUN_001209f0
+FUN_00121018
+FUN_001211b0
+FUN_00121204
+FUN_00121284
+FUN_001214dc
+FUN_00123be4
+FUN_00126110
+FUN_0012f810
--- FUN_00128ecc calling
+++ FUN_00130548 calling
@@ -1 +1 @@
-FUN_0001ca70
+FUN_0001d490
--- FUN_00128ecc
+++ FUN_00130548
@@ -1,292 +1,294 @@
-undefined4 FUN_00128ecc(void)
+undefined4 FUN_00130548(void)
{
char cVar1;
undefined4 *puVar2;
time_t tVar3;
uint uVar4;
char *pcVar5;
char *pcVar6;
int iVar7;
undefined *puVar8;
size_t sVar9;
size_t sVar10;
int iVar11;
int iVar12;
FILE *__stream;
__pid_t __pid;
undefined4 uVar13;
__fd_mask *p_Var14;
uint uVar15;
undefined4 *puVar16;
int *piVar17;
int *piVar18;
int local_324;
char local_314 [4];
undefined4 auStack_310 [2];
char local_308 [4];
uint local_304;
undefined auStack_300 [28];
char acStack_2e4 [48];
undefined auStack_2b4 [68];
undefined auStack_270 [68];
uint local_22c;
undefined auStack_228 [124];
_union_1051 local_1ac [33];
undefined4 local_128;
byte local_120 [255];
undefined local_21;
- dbg("%s(0x%04x): Start amas_wlcconnect\n","amas_wlcconnect_main",0xf07);
+ dbg("%s(0x%04x): Start amas_wlcconnect\n","amas_wlcconnect_main",0xf0c);
tVar3 = time((time_t *)0x0);
uVar4 = getAmasSupportMode();
if ((uVar4 & 2) == 0) {
- uVar13 = 0xf11;
+ uVar13 = 0xf16;
pcVar5 = "%s(0x%04x): not support RE\n";
}
else {
memset(acStack_2e4,0,0x30);
memset(auStack_2b4,0,0x41);
memset(auStack_270,0,0x41);
snprintf(acStack_2e4,0x2f,"%ld|%s",tVar3,"g2hkhuig238789ajkhc");
uVar13 = get_auth_code(acStack_2e4,auStack_2b4,0x41);
pcVar5 = (char *)hw_auth_check(&DAT_0,uVar13,tVar3,auStack_270,0x41);
snprintf(acStack_2e4,0x2f,"%ld|%s|%s",tVar3,"g2hkhuig238789ajkhc",&DAT_0);
pcVar6 = (char *)get_auth_code(acStack_2e4,auStack_2b4,0x41);
iVar7 = strcmp(pcVar5,pcVar6);
if (iVar7 == 0) {
- dbg("%s(0x%04x): This is ASUS router\n","amas_wlcconnect_main",0xf24);
- DAT_1 = nvram_get_int(&DAT_0018c889);
+ dbg("%s(0x%04x): This is ASUS router\n","amas_wlcconnect_main",0xf29);
+ DAT_1 = nvram_get_int(&DAT_00196c4a);
DAT_2 = 0;
DAT_3 = 0;
DAT_4 = 0;
nvram_set("amas_wlc_action","");
- puVar8 = FUN_00119f1c();
- pcVar5 = FUN_00119f1c();
+ puVar8 = FUN_001209f0();
+ pcVar5 = FUN_001209f0();
sVar9 = strspn(pcVar5," ");
strncpy((char *)local_120,puVar8 + sVar9,0x100);
local_21 = 0;
sVar10 = strcspn((char *)local_120," ");
local_120[sVar10] = 0;
pcVar5 = strchr(puVar8 + sVar9,0x20);
while (local_120[0] != 0) {
pcVar6 = "";
if (pcVar5 != (char *)0x0) {
sVar9 = strspn(pcVar5," ");
pcVar6 = pcVar5 + sVar9;
}
strncpy((char *)local_120,pcVar6,0x100);
local_21 = 0;
sVar9 = strcspn((char *)local_120," ");
local_120[sVar9] = 0;
pcVar5 = strchr(pcVar6,0x20);
}
- FUN_0011a6dc(0);
+ FUN_001211b0(0);
nvram_set_int("amas_wlc_request_lock",0);
iVar7 = nvram_get_int("amas_wlcconnect_handler_pid");
local_304 = (uint)local_120[0];
memset(auStack_300,0,0x1c);
if (0 < iVar7) {
- iVar11 = FUN_0011a730(iVar7);
+ iVar11 = FUN_00121204(iVar7);
if (iVar11 != 0) {
kill(iVar7,0xf);
iVar11 = 0x1e;
do {
if (DAT_1 != 0) {
uVar13 = uptime();
- dbg("%s(0x%04x): WLC %lu: Waitting Pre amas_wlcconnect\n","amas_wlcconnect_main",0xf48
+ dbg("%s(0x%04x): WLC %lu: Waitting Pre amas_wlcconnect\n","amas_wlcconnect_main",0xf4d
,uVar13);
}
- pcVar5 = FUN_00119f1c();
+ pcVar5 = FUN_001209f0();
iVar12 = strcmp(pcVar5,"1");
if (iVar12 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"Waitting Pre amas_wlcconnect\n");
}
- iVar12 = FUN_0011a730(iVar7);
+ iVar12 = FUN_00121204(iVar7);
if (iVar12 == 0) break;
sleep(1);
iVar11 = iVar11 + -1;
} while (iVar11 != 0);
- iVar11 = FUN_0011a730(iVar7);
+ iVar11 = FUN_00121204(iVar7);
if (iVar11 != 0) {
kill(iVar7,9);
}
}
nvram_set_int("amas_wlcconnect_handler_pid",0);
}
for (iVar7 = 0; iVar7 < DAT_4; iVar7 = iVar7 + 1) {
snprintf((char *)&local_304,0x20,"amas_wlc%d_connection_pid",iVar7);
iVar11 = nvram_get_int(&local_304);
if (0 < iVar11) {
__pid = nvram_get_int(&local_304);
kill(__pid,9);
nvram_set_int(&local_304,0);
}
}
sleep(1);
- FUN_0011f2fc();
- local_1ac[0].sa_handler = FUN_0011cf48;
+ FUN_00126110();
+ local_1ac[0].sa_handler = FUN_00123be4;
local_128 = 0x40000000;
sigaction(0xf,(sigaction *)local_1ac,(sigaction *)0x0);
signal(0x11,(__sighandler_t)0x1);
if (DAT_1 != 0) {
uVar13 = uptime();
dbg("%s(0x%04x): WLC %lu: amas_free_all_memory_exit signal handler is registered for SIGTERM...\n"
- ,"amas_wlcconnect_main",0xf6a,uVar13);
- }
- pcVar5 = FUN_00119f1c();
+ ,"amas_wlcconnect_main",0xf6f,uVar13);
+ }
+ pcVar5 = FUN_001209f0();
iVar7 = strcmp(pcVar5,"1");
if (iVar7 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,
"amas_free_all_memory_exit signal handler is registered for SIGTERM...\n");
}
if (DAT_1 != 0) {
uVar13 = uptime();
- dbg("%s(0x%04x): WLC %lu: Ignore SIGCHLD...\n","amas_wlcconnect_main",0xf6b,uVar13);
- }
- pcVar5 = FUN_00119f1c();
+ dbg("%s(0x%04x): WLC %lu: Ignore SIGCHLD...\n","amas_wlcconnect_main",0xf70,uVar13);
+ }
+ pcVar5 = FUN_001209f0();
iVar7 = strcmp(pcVar5,"1");
if (iVar7 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"Ignore SIGCHLD...\n");
}
DAT_5 = getpid();
__stream = fopen("/var/run/amas_wlcconnect.pid","w");
if (__stream != (FILE *)0x0) {
fprintf(__stream,"%d",DAT_5);
fclose(__stream);
}
iVar7 = check_if_dir_exist("/tmp/amas/");
if (iVar7 == 0) {
if (DAT_1 != 0) {
uVar13 = uptime();
- dbg("%s(0x%04x): WLC %lu: create a folder for cfg_mnt (%s)\n","amas_wlcconnect_main",0xf76
+ dbg("%s(0x%04x): WLC %lu: create a folder for cfg_mnt (%s)\n","amas_wlcconnect_main",0xf7b
,uVar13,"/tmp/amas/");
}
- pcVar5 = FUN_00119f1c();
+ pcVar5 = FUN_001209f0();
iVar7 = strcmp(pcVar5,"1");
if (iVar7 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"create a folder for cfg_mnt (%s)\n",
"/tmp/amas/");
}
mkdir("/tmp/amas/",0x1ed);
}
- iVar11 = FUN_0011a7b0();
+ iVar11 = FUN_00121284();
iVar7 = DAT_4;
if (iVar11 != 0) {
local_22c = 0;
memset(auStack_228,0,0x1c);
pcVar5 = local_314;
puVar2 = &DAT_6;
do {
puVar16 = puVar2;
pcVar6 = pcVar5;
uVar13 = puVar16[1];
*(undefined4 *)pcVar6 = *puVar16;
*(undefined4 *)(pcVar6 + 4) = uVar13;
pcVar5 = pcVar6 + 8;
puVar2 = puVar16 + 2;
} while (puVar16 + 2 != &DAT_7);
cVar1 = *(char *)(puVar16 + 3);
pcVar5[0] = 'X';
pcVar5[1] = 'X';
pcVar5[2] = 'X';
pcVar5[3] = '_';
pcVar6[0xc] = cVar1;
piVar18 = &DAT_8;
piVar17 = &DAT_9;
for (local_324 = 0; local_324 < iVar7; local_324 = local_324 + 1) {
snprintf(local_314,0xd,"amas_wlc%d_",local_324);
- FUN_0011aa08(local_314,"connect_timeout",(char *)&local_22c);
+ FUN_001214dc(local_314,"connect_timeout",(char *)&local_22c);
iVar11 = nvram_get_int();
*piVar17 = iVar11;
if (iVar11 < 0xb4) {
if (iVar11 != 0) {
if (DAT_1 != 0) {
uVar13 = uptime();
dbg("%s(0x%04x): WLC %lu: Connection Timeout value(%d) invalid!!!.\n",
"init_conn_time",0x3c,uVar13,*piVar17);
}
- pcVar5 = FUN_00119f1c();
+ pcVar5 = FUN_001209f0();
iVar11 = strcmp(pcVar5,"1");
if (iVar11 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,
"Connection Timeout value(%d) invalid!!!.\n",*piVar17);
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,
- "Connection Timeout value(%d) invalid!!!.\n",*piVar17);
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,
+ "%s(%d) - Connection Timeout value(%d) invalid!!!.\n","init_conn_time",
+ 0x3c,*piVar17);
}
*piVar17 = 0xb4;
}
- FUN_0011aa08(local_314,"profile_timeout",(char *)&local_22c);
+ FUN_001214dc(local_314,"profile_timeout",(char *)&local_22c);
iVar11 = nvram_get_int();
*piVar18 = iVar11;
if (iVar11 < 0x1e) {
if (iVar11 != 0) {
if (DAT_1 != 0) {
uVar13 = uptime();
dbg("%s(0x%04x): WLC %lu: Profile switch Timeout value(%d) invalid!!!.\n",
"init_conn_time",0x42,uVar13,*piVar18);
}
- pcVar5 = FUN_00119f1c();
+ pcVar5 = FUN_001209f0();
iVar11 = strcmp(pcVar5,"1");
if (iVar11 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,
"Profile switch Timeout value(%d) invalid!!!.\n",*piVar18);
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,
- "Profile switch Timeout value(%d) invalid!!!.\n",*piVar18);
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,
+ "%s(%d) - Profile switch Timeout value(%d) invalid!!!.\n",
+ "init_conn_time",0x42,*piVar18);
}
*piVar18 = 0x1e;
}
piVar18 = piVar18 + 1;
piVar17 = piVar17 + 1;
}
- FUN_0011a544(0);
+ FUN_00121018(0);
while( true ) {
iVar7 = 0;
p_Var14 = (__fd_mask *)&local_22c;
do {
iVar7 = iVar7 + 1;
*p_Var14 = 0;
p_Var14 = p_Var14 + 1;
} while (iVar7 != 0x20);
uVar4 = DAT_10 & 0x1f;
uVar15 = DAT_10 + 0x1f;
if (-1 < (int)DAT_10) {
uVar15 = DAT_10;
}
iVar7 = ((int)uVar15 >> 5) * 4;
if ((int)DAT_10 < 1) {
uVar4 = -(-DAT_10 & 0x1f);
}
*(uint *)(auStack_228 + iVar7 + -4) =
*(uint *)(auStack_228 + iVar7 + -4) | 1 << (uVar4 & 0xff);
iVar7 = select(DAT_10 + 1,(fd_set *)&local_22c,(fd_set *)0x0,(fd_set *)0x0,
(timeval *)0x0);
if (iVar7 < 0) break;
uVar4 = DAT_10 + 0x1f;
if (-1 < (int)DAT_10) {
uVar4 = DAT_10;
}
uVar15 = DAT_10 & 0x1f;
if ((int)DAT_10 < 1) {
uVar15 = -(-DAT_10 & 0x1f);
}
if ((*(uint *)(auStack_228 + ((int)uVar4 >> 5) * 4 + -4) & 1 << (uVar15 & 0xff)) != 0) {
- FUN_001281b8();
- }
- }
- }
- uVar13 = 0xf94;
+ FUN_0012f810();
+ }
+ }
+ }
+ uVar13 = 0xf99;
pcVar5 = "%s(0x%04x): amas_wlcconnect exit\n";
}
else {
- uVar13 = 0xf27;
+ uVar13 = 0xf2c;
pcVar5 = "%s(0x%04x): This is not ASUS router\n";
}
}
dbg(pcVar5,"amas_wlcconnect_main",uVar13);
return 0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.48 |
i_ratio | 0.19 |
m_ratio | 0.8 |
b_ratio | 0.83 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_001164c0 | FUN_0011cefc |
fullname |
FUN_001164c0 | FUN_0011cefc |
refcount | 3 | 3 |
length |
940 | 932 |
called |
Expand for full list:::wgn_vlan_list_find |
Expand for full list:::wgn_vlan_list_find |
calling |
FUN_0002db20 FUN_0002fa54 |
FUN_0002e8b4 FUN_000307ec |
paramcount | 0 | 0 |
address |
001164c0 | 0011cefc |
sig |
undefined __stdcall FUN_001164c0(void) | undefined __stdcall FUN_0011cefc(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_001164c0 called
+++ FUN_0011cefc called
@@ -15,9 +15,9 @@
-FUN_0010fdd0
-FUN_00110948
-FUN_00111ad8
-FUN_00111f54
-FUN_001120b8
-FUN_00112160
-FUN_00113340
-FUN_00113374
-FUN_001154a8
+FUN_00116758
+FUN_001172d0
+FUN_00118538
+FUN_001189b0
+FUN_00118b14
+FUN_00118bbc
+FUN_00119d8c
+FUN_00119dc0
+FUN_0011bee4
--- FUN_001164c0 calling
+++ FUN_0011cefc calling
@@ -1,2 +1,2 @@
-FUN_0002db20
-FUN_0002fa54
+FUN_0002e8b4
+FUN_000307ec
--- FUN_001164c0
+++ FUN_0011cefc
@@ -1,108 +1,108 @@
-void FUN_001164c0(void)
+void FUN_0011cefc(void)
{
bool bVar1;
int iVar2;
char *pcVar3;
- int *piVar4;
- void *pvVar5;
+ void *pvVar4;
+ int *piVar5;
char *pcVar6;
char *pcVar7;
- uint uStack_6a27c;
- char *pcStack_6a274;
- uint uStack_6a260;
- int iStack_6a25c;
- uint uStack_6a258;
- int iStack_6a254;
- int iStack_6a250;
- char acStack_6a24c [36];
- char acStack_6a228 [4100];
- char acStack_69224 [4100];
- char acStack_68220 [12800];
- undefined auStack_65020 [25600];
- undefined auStack_5ec20 [388096];
+ uint local_bf78;
+ char *local_bf70;
+ uint local_bf60;
+ int local_bf5c;
+ uint local_bf58;
+ int local_bf54;
+ int local_bf50;
+ char acStack_bf4c [36];
+ char local_bf28 [2052];
+ char local_b724 [2052];
+ char acStack_af20 [6400];
+ undefined auStack_9620 [12800];
+ undefined auStack_6420 [25600];
- uStack_6a258 = 0;
- iStack_6a254 = 0;
- iStack_6a250 = 0;
- memset(acStack_6a228,0,0x1001);
- memset(acStack_69224,0,0x1001);
+ local_bf58 = 0;
+ local_bf54 = 0;
+ local_bf50 = 0;
+ memset(local_bf28,0,0x801);
+ memset(local_b724,0,0x801);
iVar2 = nvram_get("sw_mode");
if (iVar2 == 0) {
pcVar3 = (char *)nvram_default_get("sw_mode");
iVar2 = atoi(pcVar3);
}
else {
iVar2 = nvram_get_int();
}
iVar2 = iVar2 + -1;
if (iVar2 != 0) {
iVar2 = 1;
}
- if (((iVar2 == 0) || (bVar1 = FUN_0010fdd0(), bVar1)) ||
+ if (((iVar2 == 0) || (bVar1 = FUN_00116758(), bVar1)) ||
(iVar2 = nvram_get_int("re_mode"), iVar2 == 1)) {
iVar2 = nvram_get_int("re_mode");
if (iVar2 == 1) {
- FUN_00111ad8();
+ FUN_00118538();
}
- memset(acStack_68220,0,0x3200);
- pcVar3 = FUN_00110948(acStack_68220,0x100,&uStack_6a258);
- if ((pcVar3 != (char *)0x0) && (uStack_6a258 != 0)) {
- memset(auStack_65020,0,0x6400);
- iVar2 = wgn_vlan_list_get_from_nvram(auStack_65020,0x100,&iStack_6a254);
- if ((iVar2 != 0) && (iStack_6a254 != 0)) {
- memset(auStack_5ec20,0,0x5ec00);
- iVar2 = wgn_subnet_list_get_from_nvram(auStack_5ec20,0x100,&iStack_6a250);
- if ((iVar2 != 0) && (iStack_6a250 != 0)) {
+ memset(acStack_af20,0,0x1900);
+ pcVar3 = FUN_001172d0(acStack_af20,0x80,&local_bf58);
+ if ((pcVar3 != (char *)0x0) && (local_bf58 != 0)) {
+ memset(auStack_9620,0,0x3200);
+ iVar2 = wgn_vlan_list_get_from_nvram(auStack_9620,0x80,&local_bf54);
+ if ((iVar2 != 0) && (local_bf54 != 0)) {
+ pvVar4 = memset(auStack_6420,0,0x6400);
+ iVar2 = wgn_subnet_list_get_from_nvram(pvVar4,0x80,&local_bf50);
+ if ((iVar2 != 0) && (local_bf50 != 0)) {
iVar2 = nvram_get_int("re_mode");
if (iVar2 == 1) {
- wgn_vlan_list_wl_subunit_shift(auStack_65020,iStack_6a254);
+ wgn_vlan_list_wl_subunit_shift(auStack_9620,local_bf54);
}
- pcStack_6a274 = acStack_68220;
- for (uStack_6a27c = 0; uStack_6a27c < uStack_6a258; uStack_6a27c = uStack_6a27c + 1) {
- piVar4 = (int *)wgn_vlan_list_find(auStack_65020,iStack_6a254,pcStack_6a274 + 0x11);
- if (((((piVar4 != (int *)0x0) && (piVar4[1] != -1)) && (*piVar4 != 0)) &&
- ((wgn_get_wl_unit(&uStack_6a260,&iStack_6a25c,piVar4), -1 < (int)uStack_6a260 &&
- (0 < iStack_6a25c)))) &&
- ((iVar2 = FUN_001120b8(uStack_6a260,iStack_6a25c), iVar2 != 0 &&
- (iVar2 = FUN_00111f54(uStack_6a260,iStack_6a25c), iVar2 == 0)))) {
- memset(acStack_6a24c,0,0x21);
- pvVar5 = FUN_00112160(uStack_6a260,iStack_6a25c,acStack_6a24c,0x20);
- if ((pvVar5 != (void *)0x0) && (piVar4[1] != 0)) {
+ local_bf70 = acStack_af20;
+ for (local_bf78 = 0; local_bf78 < local_bf58; local_bf78 = local_bf78 + 1) {
+ piVar5 = (int *)wgn_vlan_list_find(auStack_9620,local_bf54,local_bf70 + 0x11);
+ if (((((piVar5 != (int *)0x0) && (piVar5[1] != -1)) && (*piVar5 != 0)) &&
+ ((wgn_get_wl_unit(&local_bf60,&local_bf5c,piVar5), -1 < (int)local_bf60 &&
+ (0 < local_bf5c)))) &&
+ ((iVar2 = FUN_00118b14(local_bf60,local_bf5c), iVar2 != 0 &&
+ (iVar2 = FUN_001189b0(local_bf60,local_bf5c), iVar2 == 0)))) {
+ memset(acStack_bf4c,0,0x21);
+ pvVar4 = FUN_00118bbc(local_bf60,local_bf5c,acStack_bf4c,0x20);
+ if ((pvVar4 != (void *)0x0) && (piVar5[1] != 0)) {
iVar2 = nvram_get_int("re_mode");
if (iVar2 == 1) {
pcVar6 = (char *)0x0;
pcVar3 = (char *)0x0;
}
else {
- pcVar3 = (char *)wgn_subnet_list_find(auStack_5ec20,iStack_6a250);
+ pcVar3 = (char *)wgn_subnet_list_find(auStack_6420,local_bf50);
if (pcVar3 == (char *)0x0) goto LAB_0;
pcVar6 = pcVar3 + 0x11;
}
- pcVar7 = acStack_68220 + uStack_6a27c * 0x32;
- iVar2 = FUN_001154a8(pcVar7,pcVar3,pcVar6,acStack_6a24c,piVar4[1]);
+ pcVar7 = acStack_af20 + local_bf78 * 0x32;
+ iVar2 = FUN_0011bee4(pcVar7,pcVar3,pcVar6,acStack_bf4c,piVar5[1]);
if (iVar2 != 0) {
- strlcat(acStack_69224,acStack_6a24c,0x1001);
- strlcat(acStack_69224," ",0x1001);
- strlcat(acStack_6a228,pcVar7,0x1001);
- strlcat(acStack_6a228," ",0x1001);
+ strlcat(local_b724,acStack_bf4c,0x801);
+ strlcat(local_b724," ",0x801);
+ strlcat(local_bf28,pcVar7,0x801);
+ strlcat(local_bf28," ",0x801);
}
}
}
LAB_0:
- pcStack_6a274 = pcStack_6a274 + 0x32;
+ local_bf70 = local_bf70 + 0x32;
}
- if ((acStack_69224[0] != '\0') && (acStack_6a228[0] != '\0')) {
- FUN_00113340(acStack_69224);
- FUN_00113374(acStack_69224);
- nvram_set("wgn_ifnames",acStack_6a228);
+ if ((local_b724[0] != '\0') && (local_bf28[0] != '\0')) {
+ FUN_00119d8c(local_b724);
+ FUN_00119dc0(local_b724);
+ nvram_set("wgn_ifnames",local_bf28);
nvram_set_int("wgn_enabled",1);
}
}
}
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling |
ratio | 0.98 |
i_ratio | 0.64 |
m_ratio | 0.97 |
b_ratio | 0.99 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00141fac | FUN_00149b54 |
fullname |
FUN_00141fac | FUN_00149b54 |
refcount | 3 | 3 |
length |
352 | 356 |
called | ::asusdebuglog ::dbg ::f_exists ::nvram_get_int ::nvram_set_int ::snprintf ::strcat ::strcpy |
::asusdebuglog ::dbg ::f_exists ::nvram_get_int ::nvram_set_int ::snprintf ::strcat ::strcpy |
calling |
FUN_00142574 | FUN_0014a120 |
paramcount | 2 | 2 |
address |
00141fac | 00149b54 |
sig |
undefined __stdcall FUN_00141fac(undefined4 param_1, undefined4 param_2) | undefined __stdcall FUN_00149b54(undefined4 param_1, undefined4 param_2) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00141fac calling
+++ FUN_00149b54 calling
@@ -1 +1 @@
-FUN_00142574
+FUN_0014a120
--- FUN_00141fac
+++ FUN_00149b54
@@ -1,51 +1,51 @@
-void FUN_00141fac(undefined4 param_1,undefined4 param_2)
+void FUN_00149b54(undefined4 param_1,undefined4 param_2)
{
undefined2 uVar1;
undefined4 *puVar2;
int iVar3;
undefined4 uVar4;
char *pcVar5;
undefined4 *puVar6;
char *pcVar7;
char local_8c [4];
undefined4 auStack_88 [2];
undefined2 local_80 [2];
char acStack_7c [104];
pcVar7 = local_8c;
puVar2 = &DAT_0;
do {
puVar6 = puVar2;
pcVar5 = pcVar7;
uVar4 = puVar6[1];
*(undefined4 *)pcVar5 = *puVar6;
*(undefined4 *)(pcVar5 + 4) = uVar4;
pcVar7 = pcVar5 + 8;
puVar2 = puVar6 + 2;
} while (puVar6 + 2 != &DAT_1);
uVar1 = *(undefined2 *)(puVar6 + 3);
pcVar7[0] = 'X';
pcVar7[1] = 'X';
pcVar7[2] = 'X';
pcVar7[3] = 'X';
*(undefined2 *)(pcVar5 + 0xc) = uVar1;
snprintf(local_8c,0xe,"amas_wlc%d_",param_1);
if ((0 < DAT_2) || (iVar3 = f_exists("/tmp/SSD_DEBUG"), 0 < iVar3)) {
dbg("SSD %s(%d): unit(%d) - change site survey status to %d\n","update_site_survey_status",0x10b
,param_1,param_2);
}
iVar3 = nvram_get_int("ssd_syslog");
if (iVar3 != 0) {
asusdebuglog(6,"amas_ssd.log",0,1,0,"unit(%d) - change site survey status to %d\n",param_1,
param_2);
}
- asusdebuglog(6,"/jffs/.sys/amas/amas_ssd_dbg.log",0,1,0,
+ asusdebuglog(6,"/jffs/.sys/amas/amas_ssd_dbg.log",0,1,0x200,
"unit(%d) - change site survey status to %d\n",param_1,param_2);
pcVar7 = strcpy(acStack_7c,local_8c);
pcVar7 = strcat(pcVar7,"ss_status");
nvram_set_int(pcVar7,param_2);
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.91 |
i_ratio | 0.55 |
m_ratio | 0.96 |
b_ratio | 0.96 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0011af60 | FUN_00121ae0 |
fullname |
FUN_0011af60 | FUN_00121ae0 |
refcount | 3 | 3 |
length |
592 | 640 |
called |
::asusdebuglog ::dbg ::nvram_get ::nvram_get_int ::sleep ::snprintf ::strcmp ::uptime FUN_00119f1c FUN_0011aa08 |
::asusdebuglog ::dbg ::nvram_get ::nvram_get_int ::sleep ::snprintf ::strcmp ::uptime FUN_001209f0 FUN_001214dc |
calling |
FUN_00122678 FUN_00124dc4 |
FUN_00129508 FUN_0012c180 |
paramcount | 1 | 1 |
address |
0011af60 | 00121ae0 |
sig |
undefined4 __stdcall FUN_0011af60(undefined4 param_1) | undefined4 __stdcall FUN_00121ae0(undefined4 param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0011af60 called
+++ FUN_00121ae0 called
@@ -9,2 +9,2 @@
-FUN_00119f1c
-FUN_0011aa08
+FUN_001209f0
+FUN_001214dc
--- FUN_0011af60 calling
+++ FUN_00121ae0 calling
@@ -1,2 +1,2 @@
-FUN_00122678
-FUN_00124dc4
+FUN_00129508
+FUN_0012c180
--- FUN_0011af60
+++ FUN_00121ae0
@@ -1,82 +1,84 @@
-undefined4 FUN_0011af60(undefined4 param_1)
+undefined4 FUN_00121ae0(undefined4 param_1)
{
char cVar1;
undefined4 *puVar2;
int iVar3;
int iVar4;
int iVar5;
undefined4 uVar6;
char *pcVar7;
undefined4 *puVar8;
char *pcVar9;
char local_50 [4];
undefined4 auStack_4c [2];
char local_44 [4];
char acStack_40 [32];
iVar3 = nvram_get_int("amas_ssd_exit_time");
pcVar9 = local_50;
puVar2 = &DAT_0;
if (iVar3 == 0) {
iVar3 = 0x1e;
}
do {
puVar8 = puVar2;
pcVar7 = pcVar9;
uVar6 = puVar8[1];
*(undefined4 *)pcVar7 = *puVar8;
*(undefined4 *)(pcVar7 + 4) = uVar6;
pcVar9 = pcVar7 + 8;
puVar2 = puVar8 + 2;
} while (puVar8 + 2 != &DAT_1);
cVar1 = *(char *)(puVar8 + 3);
pcVar9[0] = 'X';
pcVar9[1] = 'X';
pcVar9[2] = 'X';
pcVar9[3] = '_';
pcVar7[0xc] = cVar1;
if (DAT_2 != 0) {
uVar6 = uptime();
dbg("%s(0x%04x): WLC %lu: BandIndex(%d) wait amas_ssd exit\n","waitting_ssd_exit",0x1d3,uVar6,
param_1);
}
- pcVar9 = FUN_00119f1c();
+ pcVar9 = FUN_001209f0();
iVar4 = strcmp(pcVar9,"1");
if (iVar4 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"BandIndex(%d) wait amas_ssd exit\n",param_1);
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,"BandIndex(%d) wait amas_ssd exit\n",param_1);
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,"%s(%d) - BandIndex(%d) wait amas_ssd exit\n"
+ ,"waitting_ssd_exit",0x1d3,param_1);
iVar4 = nvram_get("ssd_not_exit");
if (iVar4 == 0) {
snprintf(local_50,0xd,"amas_wlc%d_",param_1);
for (iVar4 = 0; iVar4 <= iVar3; iVar4 = iVar4 + 1) {
sleep(1);
- FUN_0011aa08(local_50,"ss_status",acStack_40);
+ FUN_001214dc(local_50,"ss_status",acStack_40);
iVar5 = nvram_get_int();
if (iVar5 == 4) {
LAB_3:
if (DAT_2 != 0) {
uVar6 = uptime();
dbg("%s(0x%04x): WLC %lu: BandIndex(%d) amas_ssd have exited\n","waitting_ssd_exit",0x1dd,
uVar6,param_1);
}
- pcVar9 = FUN_00119f1c();
+ pcVar9 = FUN_001209f0();
iVar3 = strcmp(pcVar9,"1");
if (iVar3 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"BandIndex(%d) amas_ssd have exited\n",param_1)
;
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,"BandIndex(%d) amas_ssd have exited\n",
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,
+ "%s(%d) - BandIndex(%d) amas_ssd have exited\n","waitting_ssd_exit",0x1dd,
param_1);
return 1;
}
- FUN_0011aa08(local_50,"ss_status",acStack_40);
+ FUN_001214dc(local_50,"ss_status",acStack_40);
iVar5 = nvram_get_int();
if (iVar5 == 3) goto LAB_3;
}
}
return 0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.32 |
i_ratio | 0.39 |
m_ratio | 0.6 |
b_ratio | 0.65 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00116e20 | FUN_0011d838 |
fullname |
FUN_00116e20 | FUN_0011d838 |
refcount | 2 | 2 |
length |
1128 | 1112 |
called |
Expand for full list:::strspn |
Expand for full list:::strspn |
calling |
FUN_0002c548 FUN_0002f614 |
FUN_0002d2d8 FUN_000303ac |
paramcount | 0 | 0 |
address |
00116e20 | 0011d838 |
sig |
undefined __stdcall FUN_00116e20(void) | undefined __stdcall FUN_0011d838(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00116e20 called
+++ FUN_0011d838 called
@@ -15,7 +15,7 @@
-FUN_000add2c
-FUN_000adfd4
-FUN_0010fe30
-FUN_00110558
-FUN_00110948
-FUN_001109bc
-FUN_00114eb4
+FUN_000b3a68
+FUN_000b3d10
+FUN_001167b8
+FUN_00116ee0
+FUN_001172d0
+FUN_00117344
+FUN_0011b8f0
--- FUN_00116e20 calling
+++ FUN_0011d838 calling
@@ -1,2 +1,2 @@
-FUN_0002c548
-FUN_0002f614
+FUN_0002d2d8
+FUN_000303ac
--- FUN_00116e20
+++ FUN_0011d838
@@ -1,124 +1,124 @@
-void FUN_00116e20(void)
+void FUN_0011d838(void)
{
char *pcVar1;
char *pcVar2;
void *pvVar3;
int iVar4;
size_t sVar5;
size_t sVar6;
int iVar7;
undefined4 uVar8;
- uint local_9ec4;
- int local_9ec0;
- undefined4 local_9ebc;
- char local_9eb8 [63];
- undefined local_9e79;
- char acStack_9e78 [84];
- char *local_9e24;
- char *local_9e20;
- char *local_9e1c;
- char *local_9e18;
- undefined *local_9e14;
- char *local_9e10;
- undefined *local_9e0c;
- char *local_9e08;
- undefined4 local_9e04;
- char acStack_9620 [12800];
- undefined auStack_6420 [25600];
+ uint local_53c4;
+ int local_53c0;
+ undefined4 local_53bc;
+ char local_53b8 [63];
+ undefined local_5379;
+ char acStack_5378 [84];
+ char *local_5324;
+ char *local_5320;
+ char *local_531c;
+ char *local_5318;
+ undefined *local_5314;
+ char *local_5310;
+ undefined *local_530c;
+ char *local_5308;
+ undefined4 local_5304;
+ char acStack_4b20 [6400];
+ undefined auStack_3220 [12800];
- local_9ec4 = 0;
- local_9ec0 = 0;
- local_9ebc = 0;
+ local_53c4 = 0;
+ local_53c0 = 0;
+ local_53bc = 0;
pcVar1 = (char *)nvram_get("wgn_ifnames");
if (pcVar1 != (char *)0x0) {
- pcVar2 = (char *)memset(acStack_9620,0,0x3200);
- pcVar2 = FUN_00110948(pcVar2,0x100,&local_9ec4);
- if ((pcVar2 != (char *)0x0) && (local_9ec4 != 0)) {
- pvVar3 = memset(auStack_6420,0,0x6400);
- iVar4 = wgn_vlan_list_get_from_nvram(pvVar3,0x100,&local_9ec0);
- if ((iVar4 != 0) && (local_9ec0 != 0)) {
- FUN_00114eb4();
+ pcVar2 = (char *)memset(acStack_4b20,0,0x1900);
+ pcVar2 = FUN_001172d0(pcVar2,0x80,&local_53c4);
+ if ((pcVar2 != (char *)0x0) && (local_53c4 != 0)) {
+ pvVar3 = memset(auStack_3220,0,0x3200);
+ iVar4 = wgn_vlan_list_get_from_nvram(pvVar3,0x80,&local_53c0);
+ if ((iVar4 != 0) && (local_53c0 != 0)) {
+ FUN_0011b8f0();
sVar5 = strspn(pcVar1," ");
- strncpy(local_9eb8,pcVar1 + sVar5,0x40);
- local_9e79 = 0;
- sVar6 = strcspn(local_9eb8," ");
- local_9eb8[sVar6] = '\0';
+ strncpy(local_53b8,pcVar1 + sVar5,0x40);
+ local_5379 = 0;
+ sVar6 = strcspn(local_53b8," ");
+ local_53b8[sVar6] = '\0';
pcVar1 = strchr(pcVar1 + sVar5,0x20);
- while (local_9eb8[0] != '\0') {
- pcVar2 = FUN_001109bc(acStack_9620,local_9ec4,local_9eb8);
+ while (local_53b8[0] != '\0') {
+ pcVar2 = FUN_00117344(acStack_4b20,local_53c4,local_53b8);
if (pcVar2 != (char *)0x0) {
- iVar4 = wgn_vlan_list_find(auStack_6420,local_9ec0,pcVar2 + 0x11);
- if ((iVar4 != 0) && (iVar7 = __isoc99_sscanf(local_9eb8,"br%d",&local_9ebc), iVar7 == 1)
+ iVar4 = wgn_vlan_list_find(auStack_3220,local_53c0,pcVar2 + 0x11);
+ if ((iVar4 != 0) && (iVar7 = __isoc99_sscanf(local_53b8,"br%d",&local_53bc), iVar7 == 1)
) {
- local_9e10 = "1";
- local_9e04 = 0;
- local_9e24 = "bcmmcastctl";
- local_9e20 = "mode";
- local_9e1c = &DAT_0;
- local_9e18 = local_9eb8;
- local_9e14 = &DAT_1;
- local_9e0c = &DAT_2;
- local_9e08 = "0";
- _eval(&local_9e24,0,0,0);
- local_9e04 = 0;
- local_9e10 = &DAT_3;
- local_9e24 = "bcmmcastctl";
- local_9e20 = "mode";
- local_9e1c = &DAT_0;
- local_9e18 = local_9eb8;
- local_9e14 = &DAT_1;
- local_9e0c = &DAT_2;
- local_9e08 = "0";
- _eval(&local_9e24,0,0,0);
- FUN_000add2c(*(undefined4 *)(iVar4 + 4));
- FUN_0010fe30(local_9eb8,0,(char *)0x0,(char *)0x0);
- local_9e24 = "brctl";
- local_9e20 = "delbr";
+ local_5310 = "1";
+ local_5304 = 0;
+ local_5324 = "bcmmcastctl";
+ local_5320 = "mode";
+ local_531c = &DAT_0;
+ local_5318 = local_53b8;
+ local_5314 = &DAT_1;
+ local_530c = &DAT_2;
+ local_5308 = "0";
+ _eval(&local_5324,0,0,0);
+ local_5304 = 0;
+ local_5310 = &DAT_3;
+ local_5324 = "bcmmcastctl";
+ local_5320 = "mode";
+ local_531c = &DAT_0;
+ local_5318 = local_53b8;
+ local_5314 = &DAT_1;
+ local_530c = &DAT_2;
+ local_5308 = "0";
+ _eval(&local_5324,0,0,0);
+ FUN_000b3a68(*(undefined4 *)(iVar4 + 4));
+ FUN_001167b8(local_53b8,0,(char *)0x0,(char *)0x0);
+ local_5324 = "brctl";
+ local_5320 = "delbr";
uVar8 = 0;
- local_9e18 = (char *)0x0;
- local_9e1c = local_9eb8;
- iVar4 = _eval(&local_9e24,0,0);
+ local_5318 = (char *)0x0;
+ local_531c = local_53b8;
+ iVar4 = _eval(&local_5324,0,0);
if (iVar4 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,"*** WARNING, eval() return -1 ***",
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,"*** WARNING, eval() return -1 ***",
uVar8);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0xaba,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0xada,pcVar2);
}
- FUN_000adfd4();
- memset(acStack_9e78,0,0x51);
- snprintf(acStack_9e78,0x50,"lan%d_ifname",local_9ebc);
- nvram_unset(acStack_9e78);
- memset(acStack_9e78,0,0x51);
- snprintf(acStack_9e78,0x50,"lan%d_ifnames",local_9ebc);
- nvram_unset(acStack_9e78);
- memset(acStack_9e78,0,0x51);
- snprintf(acStack_9e78,0x50,"br%d_ifname",local_9ebc);
- nvram_unset(acStack_9e78);
- memset(acStack_9e78,0,0x51);
- snprintf(acStack_9e78,0x50,"br%d_ifnames",local_9ebc);
- nvram_unset(acStack_9e78);
+ FUN_000b3d10();
+ memset(acStack_5378,0,0x51);
+ snprintf(acStack_5378,0x50,"lan%d_ifname",local_53bc);
+ nvram_unset(acStack_5378);
+ memset(acStack_5378,0,0x51);
+ snprintf(acStack_5378,0x50,"lan%d_ifnames",local_53bc);
+ nvram_unset(acStack_5378);
+ memset(acStack_5378,0,0x51);
+ snprintf(acStack_5378,0x50,"br%d_ifname",local_53bc);
+ nvram_unset(acStack_5378);
+ memset(acStack_5378,0,0x51);
+ snprintf(acStack_5378,0x50,"br%d_ifnames",local_53bc);
+ nvram_unset(acStack_5378);
}
}
if (pcVar1 == (char *)0x0) {
pcVar1 = "";
}
else {
sVar5 = strspn(pcVar1," ");
pcVar1 = pcVar1 + sVar5;
}
- strncpy(local_9eb8,pcVar1,0x40);
- local_9e79 = 0;
- sVar5 = strcspn(local_9eb8," ");
- local_9eb8[sVar5] = '\0';
+ strncpy(local_53b8,pcVar1,0x40);
+ local_5379 = 0;
+ sVar5 = strcspn(local_53b8," ");
+ local_53b8[sVar5] = '\0';
pcVar1 = strchr(pcVar1,0x20);
}
nvram_unset("wgn_ifnames");
nvram_set_int("wgn_enabled",0);
}
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.1 |
i_ratio | 0.03 |
m_ratio | 0.18 |
b_ratio | 0.21 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000361c4 | FUN_0004b0fc |
fullname |
FUN_000361c4 | FUN_0004b0fc |
refcount | 1 | 1 |
length |
556 | 144 |
called |
::_eval FUN_00034bd4 FUN_00061bf0 |
::_eval ::nvram_get_int ::snprintf ::strtol FUN_0003f6c8 |
calling |
FUN_00038078 | FUN_0005096c |
paramcount | 1 | 0 |
address |
000361c4 | 0004b0fc |
sig |
undefined __stdcall FUN_000361c4(undefined4 param_1) | undefined __stdcall FUN_0004b0fc(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000361c4 called
+++ FUN_0004b0fc called
@@ -2,2 +2,4 @@
-FUN_00034bd4
-FUN_00061bf0
+<EXTERNAL>::nvram_get_int
+<EXTERNAL>::snprintf
+<EXTERNAL>::strtol
+FUN_0003f6c8
--- FUN_000361c4 calling
+++ FUN_0004b0fc calling
@@ -1 +1 @@
-FUN_00038078
+FUN_0005096c
--- FUN_000361c4
+++ FUN_0004b0fc
@@ -1,101 +1,31 @@
-void FUN_000361c4(undefined4 param_1)
+void FUN_0004b0fc(void)
{
- bool bVar1;
- undefined *puVar2;
- undefined *puVar3;
- char *pcVar4;
- char *pcVar5;
- undefined *puVar6;
- char *pcVar7;
- undefined *puVar8;
- undefined *puVar9;
- char *pcVar10;
- char *pcVar11;
- char *local_60;
- undefined *local_5c;
- char *local_58;
- undefined *local_54;
- char *local_50;
- undefined *local_4c;
- undefined4 local_48;
- undefined *local_44;
- char *local_40;
- char *local_3c;
- undefined *local_38;
- char *local_34;
- undefined *local_30;
- undefined *local_2c;
- undefined *local_28;
- undefined4 local_24;
+ int iVar1;
+ char *__nptr;
+ long lVar2;
+ undefined auStack_28 [4];
+ char acStack_24 [8];
+ undefined4 uStack_1c;
+ undefined4 uStack_18;
+ undefined4 uStack_14;
+ char *local_10;
+ undefined4 local_c;
- local_58 = "INPUT";
- puVar2 = &DAT_0;
- pcVar11 = "ebtables";
- puVar3 = &DAT_1;
- pcVar4 = "broadcast";
- pcVar10 = "ipv4";
- pcVar5 = "--ip-proto";
- puVar6 = &DAT_2;
- pcVar7 = "--ip-destination-port";
- puVar8 = &DAT_3;
- puVar9 = &DAT_4;
- local_24 = 0;
- local_60 = pcVar11;
- local_5c = &DAT_5;
- local_54 = &DAT_6;
- local_50 = pcVar10;
- local_4c = puVar2;
- local_48 = param_1;
- local_44 = puVar3;
- local_40 = pcVar4;
- local_3c = pcVar5;
- local_38 = puVar6;
- local_34 = pcVar7;
- local_30 = puVar8;
- local_2c = puVar9;
- local_28 = &DAT_7;
- _eval(&local_60,0,0,0,param_1,&DAT_1,"broadcast","--ip-proto",&DAT_0016e11d,
- "--ip-destination-port",&DAT_3,&DAT_0015f192,&DAT_0015f0bd);
- local_24 = 0;
- local_60 = pcVar11;
- local_5c = &DAT_5;
- local_58 = "FORWARD";
- local_54 = &DAT_6;
- local_50 = pcVar10;
- local_4c = puVar2;
- local_48 = param_1;
- local_44 = puVar3;
- local_40 = pcVar4;
- local_3c = pcVar5;
- local_38 = puVar6;
- local_34 = pcVar7;
- local_30 = puVar8;
- local_2c = puVar9;
- local_28 = &DAT_7;
- _eval(&local_60,0,0,0);
- local_4c = &DAT_8;
- local_24 = 0;
- local_60 = pcVar11;
- local_5c = &DAT_5;
- local_58 = "FORWARD";
- local_54 = &DAT_6;
- local_50 = pcVar10;
- local_48 = param_1;
- local_44 = puVar3;
- local_40 = pcVar4;
- local_3c = pcVar5;
- local_38 = puVar6;
- local_34 = pcVar7;
- local_30 = puVar8;
- local_2c = puVar9;
- local_28 = &DAT_7;
- _eval(&local_60,0,0,0);
- bVar1 = FUN_00034bd4("switch_wantag","hinet_mesh");
- if (bVar1) {
- FUN_00061bf0("dhcpfwd");
+ uStack_1c = DAT_0;
+ uStack_18 = DAT_1;
+ uStack_14 = DAT_2;
+ local_10 = DAT_3;
+ local_c = DAT_4;
+ iVar1 = nvram_get_int("iperf3_svr_port");
+ if (iVar1 != 0) {
+ __nptr = FUN_0003f6c8();
+ lVar2 = strtol(__nptr,(char **)0x0,10);
+ snprintf(acStack_24,8,"%d",lVar2);
+ local_10 = acStack_24;
}
+ _eval(&uStack_1c,0,0,auStack_28);
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.96 |
i_ratio | 0.46 |
m_ratio | 0.99 |
b_ratio | 0.99 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00075564 | FUN_00078d18 |
fullname |
FUN_00075564 | FUN_00078d18 |
refcount | 1 | 1 |
length |
212 | 208 |
called |
::_eval ::get_ipv6_service ::get_wan6face ::nvram_get_int FUN_00070278 FUN_00075554 |
::_eval ::get_ipv6_service ::get_wan6face ::nvram_get_int FUN_0007374c FUN_00078d08 |
calling |
FUN_000371f8 | FUN_00038d3c |
paramcount | 0 | 0 |
address |
00075564 | 00078d18 |
sig |
undefined4 __stdcall FUN_00075564(void) | undefined4 __stdcall FUN_00078d18(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00075564 called
+++ FUN_00078d18 called
@@ -5,2 +5,2 @@
-FUN_00070278
-FUN_00075554
+FUN_0007374c
+FUN_00078d08
--- FUN_00075564 calling
+++ FUN_00078d18 calling
@@ -1 +1 @@
-FUN_000371f8
+FUN_00038d3c
--- FUN_00075564
+++ FUN_00078d18
@@ -1,53 +1,53 @@
-undefined4 FUN_00075564(void)
+undefined4 FUN_00078d18(void)
{
undefined *puVar1;
char *pcVar2;
int iVar3;
undefined4 uVar4;
int iVar5;
undefined4 auStack_38 [4];
undefined4 uStack_28;
undefined4 uStack_24;
undefined *local_20;
undefined4 local_1c;
undefined4 local_18;
undefined4 uStack_14;
- puVar1 = FUN_00070278();
+ puVar1 = FUN_0007374c();
pcVar2 = (char *)get_wan6face();
auStack_38[0] = DAT_0;
auStack_38[1] = DAT_1;
auStack_38[2] = DAT_2;
auStack_38[3] = DAT_3;
uStack_28 = DAT_4;
uStack_24 = DAT_5;
local_20 = DAT_6;
local_1c = DAT_7;
local_18 = DAT_8;
uStack_14 = DAT_9;
iVar3 = get_ipv6_service();
if (iVar3 == 6) {
if ((pcVar2 == (char *)0x0) || (*pcVar2 == '\0')) {
uVar4 = 0xffffffff;
}
else {
- FUN_00075554();
+ FUN_00078d08();
iVar5 = nvram_get_int("ipv6_debug");
iVar3 = 6;
if (iVar5 != 0) {
iVar3 = 7;
local_20 = &DAT_10;
}
auStack_38[iVar3] = pcVar2;
auStack_38[iVar3 + 1] = puVar1;
uVar4 = _eval(auStack_38,0,0);
}
}
else {
uVar4 = 0;
}
return uVar4;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.6 |
i_ratio | 0.37 |
m_ratio | 0.96 |
b_ratio | 0.98 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00112ad4 | FUN_00119530 |
fullname |
FUN_00112ad4 | FUN_00119530 |
refcount | 1 | 1 |
length |
580 | 576 |
called |
Expand for full list: |
Expand for full list: |
calling |
FUN_00042c98 | FUN_00044a20 |
paramcount | 1 | 1 |
address |
00112ad4 | 00119530 |
sig |
undefined __stdcall FUN_00112ad4(FILE * param_1) | undefined __stdcall FUN_00119530(FILE * param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00112ad4 called
+++ FUN_00119530 called
@@ -9,3 +9,3 @@
-FUN_0010fdd0
-FUN_00110948
-FUN_00111ad8
+FUN_00116758
+FUN_001172d0
+FUN_00118538
--- FUN_00112ad4 calling
+++ FUN_00119530 calling
@@ -1 +1 @@
-FUN_00042c98
+FUN_00044a20
--- FUN_00112ad4
+++ FUN_00119530
@@ -1,73 +1,74 @@
-void FUN_00112ad4(FILE *param_1)
+void FUN_00119530(FILE *param_1)
{
bool bVar1;
int iVar2;
char *pcVar3;
undefined4 uVar4;
int iVar5;
int iVar6;
- char *__s;
- uint uVar7;
- uint uStack_61e28;
- int iStack_61e24;
- char acStack_61e20 [12800];
- undefined auStack_5ec20 [388096];
+ char *pcVar7;
+ uint uVar8;
+ uint local_7d28;
+ int local_7d24;
+ char acStack_7d20 [6400];
+ undefined auStack_6420 [25600];
- uStack_61e28 = 0;
- iStack_61e24 = 0;
+ pcVar7 = acStack_7d20;
+ local_7d28 = 0;
+ local_7d24 = 0;
iVar2 = nvram_get_int("re_mode");
if (iVar2 != 1) {
iVar2 = nvram_get("sw_mode");
if (iVar2 == 0) {
pcVar3 = (char *)nvram_default_get("sw_mode");
iVar2 = atoi(pcVar3);
}
else {
iVar2 = nvram_get_int();
}
iVar2 = iVar2 + -1;
if (iVar2 != 0) {
iVar2 = 1;
}
- if (((iVar2 == 0) || (bVar1 = FUN_0010fdd0(), bVar1)) && (param_1 != (FILE *)0x0)) {
+ if (((iVar2 == 0) || (bVar1 = FUN_00116758(), bVar1)) && (param_1 != (FILE *)0x0)) {
pcVar3 = (char *)nvram_get("wgn_brif_rulelist");
if ((pcVar3 == (char *)0x0) || (*pcVar3 == '\0')) {
- FUN_00111ad8();
+ FUN_00118538();
}
- __s = acStack_61e20;
- memset(__s,0,0x3200);
- pcVar3 = FUN_00110948(__s,0x100,&uStack_61e28);
- if ((pcVar3 != (char *)0x0) && (uStack_61e28 != 0)) {
- memset(auStack_5ec20,0,0x5ec00);
- iVar2 = wgn_subnet_list_get_from_nvram(auStack_5ec20,0x100,&iStack_61e24);
- if ((iVar2 != 0) && (iStack_61e24 != 0)) {
- for (uVar7 = 0; uVar7 < uStack_61e28; uVar7 = uVar7 + 1) {
- iVar2 = wgn_subnet_list_find(auStack_5ec20,iStack_61e24,__s + 0x11);
+ memset(acStack_7d20,0,0x1900);
+ pcVar3 = FUN_001172d0(acStack_7d20,0x80,&local_7d28);
+ if ((pcVar3 != (char *)0x0) && (local_7d28 != 0)) {
+ memset(auStack_6420,0,0x6400);
+ iVar2 = wgn_subnet_list_get_from_nvram(auStack_6420,0x80,&local_7d24);
+ if ((iVar2 != 0) && (local_7d24 != 0)) {
+ for (uVar8 = 0; uVar8 < local_7d28; uVar8 = uVar8 + 1) {
+ iVar2 = wgn_subnet_list_find(auStack_6420,local_7d24,pcVar7 + 0x11);
if ((iVar2 != 0) && (*(int *)(iVar2 + 0x24) != 0)) {
- fprintf(param_1,"interface=%s\n",__s);
+ fprintf(param_1,"interface=%s\n",pcVar7);
uVar4 = *(undefined4 *)(iVar2 + 0x4c);
iVar5 = iVar2 + 0x11;
iVar6 = iVar2 + 0x39;
- fprintf(param_1,"dhcp-range=%s,%s,%s,%s,%ds\n",__s,iVar2 + 0x28,iVar6,iVar5,uVar4);
- fprintf(param_1,"dhcp-option=%s,3,%s\n",__s,iVar2);
+ fprintf(param_1,"dhcp-range=%s,%s,%s,%s,%ds\n",pcVar7,iVar2 + 0x28,iVar6,iVar5,uVar4);
+ fprintf(param_1,"dhcp-option=%s,3,%s\n",pcVar7,iVar2);
if (*(char *)(iVar2 + 0x50) != '\0') {
- fprintf(param_1,"dhcp-option=%s,15,%s\n",__s,iVar2 + 0x50,iVar6,iVar5,uVar4);
+ fprintf(param_1,"dhcp-option=%s,15,%s\n",pcVar7,iVar2 + 0x50,iVar6,iVar5,uVar4);
}
- if (*(char *)(iVar2 + 0xd5) != '\0') {
- fprintf(param_1,"dhcp-option=%s,6,%s,0.0.0.0\n",__s,iVar2 + 0xd5,iVar6,iVar5,uVar4);
+ if (*(char *)(iVar2 + 0x91) != '\0') {
+ fprintf(param_1,"dhcp-option=%s,6,%s,0.0.0.0\n",pcVar7,iVar2 + 0x91,iVar6,iVar5,
+ uVar4);
}
- if (*(char *)(iVar2 + 0x15a) != '\0') {
- fprintf(param_1,"dhcp-option=%s,44,%s\n",__s,iVar2 + 0x15a,iVar6,iVar5,uVar4);
+ if (*(char *)(iVar2 + 0xa2) != '\0') {
+ fprintf(param_1,"dhcp-option=%s,44,%s\n",pcVar7,iVar2 + 0xa2,iVar6,iVar5,uVar4);
}
}
- __s = __s + 0x32;
+ pcVar7 = pcVar7 + 0x32;
}
}
}
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.44 |
i_ratio | 0.24 |
m_ratio | 0.57 |
b_ratio | 0.58 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000d0d1c | FUN_000d6d2c |
fullname |
FUN_000d0d1c | FUN_000d6d2c |
refcount | 3 | 3 |
length |
2456 | 2540 |
called |
Expand for full list:::curl_formadd |
Expand for full list:::curl_formadd |
calling |
FUN_000d176c | FUN_000d77d0 |
paramcount | 3 | 3 |
address |
000d0d1c | 000d6d2c |
sig |
int __stdcall FUN_000d0d1c(undefined4 param_1, undefined4 param_2, char * param_3) | int __stdcall FUN_000d6d2c(undefined4 param_1, undefined4 param_2, char * param_3) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000d0d1c called
+++ FUN_000d6d2c called
@@ -33,2 +33,2 @@
-FUN_000d0a8c
-FUN_000d0aac
+FUN_000d6a9c
+FUN_000d6abc
--- FUN_000d0d1c calling
+++ FUN_000d6d2c calling
@@ -1 +1 @@
-FUN_000d176c
+FUN_000d77d0
--- FUN_000d0d1c
+++ FUN_000d6d2c
@@ -1,247 +1,252 @@
-int FUN_000d0d1c(undefined4 param_1,undefined4 param_2,char *param_3)
+/* WARNING: Restarted to delay deadcode elimination for space: stack */
+
+int FUN_000d6d2c(undefined4 param_1,undefined4 param_2,char *param_3)
{
bool bVar1;
int iVar2;
FILE *pFVar3;
char *pcVar4;
size_t sVar5;
undefined *puVar6;
undefined *puVar7;
undefined *puVar8;
size_t sVar9;
undefined4 uVar10;
char *pcVar11;
int iVar12;
byte *pbVar13;
undefined8 uVar14;
- char *local_d5c;
- undefined4 local_d40;
- undefined4 local_d3c;
- undefined4 local_d38;
- undefined4 uStack_d34;
- undefined4 local_d30;
- undefined4 uStack_d2c;
- undefined4 local_d28;
- undefined4 uStack_d24;
- char *local_d20;
- char *local_d1c;
- byte local_d18 [12];
- byte abStack_d0c [16];
- char acStack_cfc [64];
- char acStack_cbc [64];
- MD5_CTX MStack_c7c;
+ char *local_1060;
+ int local_105c;
+ undefined4 local_1040;
+ undefined4 local_103c;
+ undefined4 local_1038;
+ undefined4 uStack_1034;
+ undefined4 local_1030;
+ undefined4 uStack_102c;
+ undefined4 local_1028;
+ undefined4 uStack_1024;
+ char *local_1020;
+ char *local_101c;
+ byte local_1018 [12];
+ byte abStack_100c [16];
+ char acStack_ffc [64];
+ char acStack_fbc [64];
+ MD5_CTX MStack_f7c;
+ undefined auStack_f20 [64];
+ undefined auStack_ee0 [64];
+ undefined auStack_ea0 [64];
+ undefined auStack_e60 [64];
+ undefined auStack_e20 [64];
+ undefined auStack_de0 [64];
+ undefined auStack_da0 [64];
+ undefined auStack_d60 [64];
+ undefined auStack_d20 [64];
+ undefined auStack_ce0 [64];
+ undefined auStack_ca0 [64];
+ undefined auStack_c60 [64];
undefined auStack_c20 [64];
undefined auStack_be0 [64];
undefined auStack_ba0 [64];
undefined auStack_b60 [64];
- undefined auStack_b20 [64];
- undefined auStack_ae0 [64];
- undefined auStack_aa0 [64];
- undefined auStack_a60 [64];
- undefined auStack_a20 [64];
- undefined auStack_9e0 [64];
- undefined auStack_9a0 [64];
- undefined auStack_960 [64];
- undefined auStack_920 [64];
- undefined auStack_8e0 [64];
- undefined auStack_8a0 [64];
- undefined auStack_860 [64];
- byte local_820 [2047];
+ byte local_b20 [2815];
undefined local_21;
- local_d40 = 0;
- local_d3c = 0;
- local_d38 = 0;
- uStack_d34 = 0;
- local_d30 = 0;
- uStack_d2c = 0;
- local_d28 = 0;
- uStack_d24 = 0;
- memcpy(auStack_c20,"label_mac",0x400);
+ local_1040 = 0;
+ local_103c = 0;
+ local_1038 = 0;
+ uStack_1034 = 0;
+ local_1030 = 0;
+ uStack_102c = 0;
+ local_1028 = 0;
+ uStack_1024 = 0;
+ memcpy(auStack_f20,"label_mac",0x400);
iVar2 = check_if_file_exist("/tmp/FB_DEBUG");
if ((iVar2 != 0) && (pFVar3 = fopen("/tmp/fb_debug.log","a"), pFVar3 != (FILE *)0x0)) {
fprintf(pFVar3,"attach_cmd=[%s]\n",param_3);
fclose(pFVar3);
}
iVar2 = curl_easy_init();
if (iVar2 == 0) {
iVar12 = 2;
}
else {
- snprintf(acStack_cfc,0x40,"%s",auStack_c20);
- pcVar4 = FUN_000d0a8c();
- MD5_Init(&MStack_c7c);
+ snprintf(acStack_ffc,0x40,"%s",auStack_f20);
+ pcVar4 = FUN_000d6a9c();
+ MD5_Init(&MStack_f7c);
sVar5 = strlen(pcVar4);
- MD5_Update(&MStack_c7c,pcVar4,sVar5);
- MD5_Final(abStack_d0c,&MStack_c7c);
- local_d18[0] = 0;
- local_d18[1] = 0;
- local_d18[2] = 0;
- local_d18[3] = 0;
- local_d18[4] = 0;
- local_d18[5] = 0;
- local_d18[6] = 0;
- local_d18[7] = 0;
- local_d18[8] = 0;
- local_d18[9] = 0;
+ MD5_Update(&MStack_f7c,pcVar4,sVar5);
+ MD5_Final(abStack_100c,&MStack_f7c);
+ local_1018[0] = 0;
+ local_1018[1] = 0;
+ local_1018[2] = 0;
+ local_1018[3] = 0;
+ local_1018[4] = 0;
+ local_1018[5] = 0;
+ local_1018[6] = 0;
+ local_1018[7] = 0;
+ local_1018[8] = 0;
+ local_1018[9] = 0;
pFVar3 = fopen("/dev/urandom","r");
if (pFVar3 != (FILE *)0x0) {
- fread(local_d18,1,10,pFVar3);
+ fread(local_1018,1,10,pFVar3);
fclose(pFVar3);
}
- snprintf(acStack_cfc,0x40,"%s",auStack_ba0);
- snprintf(acStack_cbc,0x40,"%s",auStack_be0);
- bVar1 = FUN_000d0aac(acStack_cbc,"");
+ snprintf(acStack_ffc,0x40,"%s",auStack_ea0);
+ snprintf(acStack_fbc,0x40,"%s",auStack_ee0);
+ bVar1 = FUN_000d6abc(acStack_fbc,"");
if (!bVar1) {
- puVar6 = FUN_000d0a8c();
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,puVar6,0x11);
- }
- snprintf(acStack_cfc,0x40,"%s",auStack_b60);
+ puVar6 = FUN_000d6a9c();
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,puVar6,0x11);
+ }
+ snprintf(acStack_ffc,0x40,"%s",auStack_e60);
iVar12 = 0;
- pbVar13 = local_d18;
- pcVar4 = acStack_cbc;
+ pbVar13 = local_1018;
+ pcVar4 = acStack_fbc;
do {
iVar12 = iVar12 + 1;
sprintf(pcVar4,"%02x",(uint)*pbVar13);
pcVar4 = pcVar4 + 2;
pbVar13 = pbVar13 + 1;
} while (iVar12 != 10);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_b20);
- snprintf(acStack_cbc,0x40,"Ver%04d",1);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_ae0);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,param_1,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_aa0);
- snprintf(acStack_cbc,0x40,"%s",auStack_a60);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_a20);
- snprintf(acStack_cbc,0x40,"%s",auStack_9e0);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_9a0);
- puVar6 = FUN_000d0a8c();
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,puVar6,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_960);
- puVar6 = FUN_000d0a8c();
- puVar7 = FUN_000d0a8c();
- puVar8 = FUN_000d0a8c();
- snprintf(acStack_cbc,0x40,"%s.%s_%s",puVar6,puVar7,puVar8);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_e20);
+ snprintf(acStack_fbc,0x40,"Ver%04d",1);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_de0);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,param_1,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_da0);
+ snprintf(acStack_fbc,0x40,"%s",auStack_d60);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_d20);
+ snprintf(acStack_fbc,0x40,"%s",auStack_ce0);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_ca0);
+ puVar6 = FUN_000d6a9c();
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,puVar6,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_c60);
+ puVar6 = FUN_000d6a9c();
+ puVar7 = FUN_000d6a9c();
+ puVar8 = FUN_000d6a9c();
+ snprintf(acStack_fbc,0x40,"%s.%s_%s",puVar6,puVar7,puVar8);
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
iVar12 = 0;
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_920);
- pbVar13 = abStack_d0c;
- local_d5c = acStack_cbc;
+ snprintf(acStack_ffc,0x40,"%s",auStack_c20);
+ pbVar13 = abStack_100c;
+ local_1060 = acStack_fbc;
do {
iVar12 = iVar12 + 1;
- sprintf(local_d5c,"%02x",(uint)*pbVar13);
- local_d5c = local_d5c + 2;
+ sprintf(local_1060,"%02x",(uint)*pbVar13);
+ local_1060 = local_1060 + 2;
pbVar13 = pbVar13 + 1;
} while (iVar12 != 0x10);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_8e0);
- pcVar4 = FUN_000d0a8c();
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_be0);
+ pcVar4 = FUN_000d6a9c();
pcVar4 = strchr(pcVar4,0x60);
if (pcVar4 == (char *)0x0) {
- puVar6 = FUN_000d0a8c();
- snprintf(acStack_cbc,0x40,"%s",puVar6);
+ puVar6 = FUN_000d6a9c();
+ snprintf(acStack_fbc,0x40,"%s",puVar6);
}
else {
- strcpy(acStack_cbc,"[email protected]");
- }
- curl_formadd(&local_d40,&local_d3c,1,acStack_cfc,4,acStack_cbc,0x11);
- snprintf(acStack_cfc,0x40,"%s",auStack_8a0);
- local_d5c = (char *)check_if_file_exist(param_2);
- if (local_d5c != (char *)0x0) {
- snprintf(acStack_cbc,0x40,"%s[%d]",acStack_cfc,0);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cbc,10,param_2,0x11);
- local_d5c = (char *)0x1;
+ strcpy(acStack_fbc,"[email protected]");
+ }
+ curl_formadd(&local_1040,&local_103c,1,acStack_ffc,4,acStack_fbc,0x11);
+ snprintf(acStack_ffc,0x40,"%s",auStack_ba0);
+ local_105c = check_if_file_exist(param_2);
+ if (local_105c != 0) {
+ snprintf(acStack_fbc,0x40,"%s[%d]",acStack_ffc,0);
+ curl_formadd(&local_1040,&local_103c,1,acStack_fbc,10,param_2,0x11);
+ local_105c = 1;
}
sVar5 = strspn(param_3," ");
- strncpy((char *)local_820,param_3 + sVar5,0x800);
+ strncpy((char *)local_b20,param_3 + sVar5,0xb00);
local_21 = 0;
- sVar9 = strcspn((char *)local_820," ");
- local_820[sVar9] = 0;
+ sVar9 = strcspn((char *)local_b20," ");
+ local_b20[sVar9] = 0;
pcVar4 = strchr(param_3 + sVar5,0x20);
- while (pcVar11 = (char *)(uint)local_820[0], pcVar11 != (char *)0x0) {
- pcVar11 = strstr((char *)local_820,"-a");
- if ((pcVar11 == (char *)0x0) && (iVar12 = check_if_file_exist(local_820), iVar12 != 0)) {
- snprintf(acStack_cbc,0x40,"%s[%d]",acStack_cfc,local_d5c);
- curl_formadd(&local_d40,&local_d3c,1,acStack_cbc,10,local_820,0x11);
- local_d5c = (char *)((int)local_d5c + 1);
+ while( true ) {
+ pcVar11 = (char *)(uint)local_b20[0];
+ if (pcVar11 == (char *)0x0) break;
+ pcVar11 = strstr((char *)local_b20,"-a");
+ if ((pcVar11 == (char *)0x0) && (iVar12 = check_if_file_exist(local_b20), iVar12 != 0)) {
+ snprintf(acStack_fbc,0x40,"%s[%d]",acStack_ffc,local_105c);
+ curl_formadd(&local_1040,&local_103c,1,acStack_fbc,10,local_b20,0x11);
+ local_105c = local_105c + 1;
}
if (pcVar4 == (char *)0x0) {
pcVar4 = "";
}
else {
sVar5 = strspn(pcVar4," ");
pcVar4 = pcVar4 + sVar5;
}
- strncpy((char *)local_820,pcVar4,0x800);
+ strncpy((char *)local_b20,pcVar4,0xb00);
local_21 = 0;
- sVar5 = strcspn((char *)local_820," ");
- local_820[sVar5] = 0;
+ sVar5 = strcspn((char *)local_b20," ");
+ local_b20[sVar5] = 0;
pcVar4 = strchr(pcVar4,0x20);
}
- snprintf(acStack_cbc,0x40,"%s",auStack_860);
- curl_easy_setopt(iVar2,0x2712,acStack_cbc);
- curl_easy_setopt(iVar2,0x2728,local_d40);
+ snprintf(acStack_fbc,0x40,"%s",auStack_b60);
+ curl_easy_setopt(iVar2,0x2712,acStack_fbc);
+ curl_easy_setopt(iVar2,0x2728,local_1040);
curl_easy_setopt(iVar2,0xb5,2);
curl_easy_setopt(iVar2,0x51,1);
curl_easy_setopt(iVar2,0x40,1);
curl_easy_setopt(iVar2,0x29,1);
curl_easy_setopt(iVar2,0x4e,0x1e);
curl_easy_setopt(iVar2,0xd,0xf0);
- local_d20 = pcVar11;
- local_d1c = pcVar11;
- pFVar3 = open_memstream(&local_d20,(size_t *)&local_d1c);
+ local_1020 = pcVar11;
+ local_101c = pcVar11;
+ pFVar3 = open_memstream(&local_1020,(size_t *)&local_101c);
if (pFVar3 != (FILE *)0x0) {
curl_easy_setopt(iVar2,0x2711,pFVar3);
}
iVar12 = curl_easy_perform(iVar2);
if (pFVar3 != (FILE *)0x0) {
fclose(pFVar3);
}
if (iVar12 == 0) {
- if (local_d20 == (char *)0x0) {
+ if (local_1020 == (char *)0x0) {
pcVar4 = "";
}
- else if (local_d1c == (char *)0x0) {
+ else if (local_101c == (char *)0x0) {
pcVar4 = "";
}
else {
pcVar4 = (char *)trimNL();
}
dbg("resp=[%s]\n",pcVar4);
- if (((local_d20 == (char *)0x0) || (local_d1c == (char *)0x0)) ||
- (pcVar4 = strstr(local_d20,"Upload successfully"), pcVar4 == (char *)0x0)) {
+ if (((local_1020 == (char *)0x0) || (local_101c == (char *)0x0)) ||
+ (pcVar4 = strstr(local_1020,"Upload successfully"), pcVar4 == (char *)0x0)) {
iVar12 = 0x16;
logmessage_normal("frs_feedback","curl_easy_perform() failed: CURLE_HTTP_RETURNED_ERROR\n");
}
else {
- curl_easy_getinfo(iVar2,0x30000a,&local_d38);
- curl_easy_getinfo(iVar2,0x300007,&local_d30);
- curl_easy_getinfo(iVar2,0x300003,&local_d28);
- uVar14 = __aeabi_dmul(local_d38,uStack_d34,0,0x3f500000);
+ curl_easy_getinfo(iVar2,0x30000a,&local_1038);
+ curl_easy_getinfo(iVar2,0x300007,&local_1030);
+ curl_easy_getinfo(iVar2,0x300003,&local_1028);
+ uVar14 = __aeabi_dmul(local_1038,uStack_1034,0,0x3f500000);
logmessage_normal("frs_feedback","Transfer rate: %.0f KB/sec (%.0f bytes in %.0f seconds)",
- (int)uVar14,(int)((ulonglong)uVar14 >> 0x20),local_d30,uStack_d2c,
- local_d28,uStack_d24);
- uVar14 = __aeabi_dmul(local_d38,uStack_d34,0,0x3f500000);
- dbg("Transfer rate: %.0f KB/sec (%.0f bytes in %.0f seconds)\n",uStack_d2c,(int)uVar14,
- (int)((ulonglong)uVar14 >> 0x20),local_d30,uStack_d2c,local_d28,uStack_d24);
+ (int)uVar14,(int)((ulonglong)uVar14 >> 0x20),local_1030,uStack_102c,
+ local_1028,uStack_1024);
+ uVar14 = __aeabi_dmul(local_1038,uStack_1034,0,0x3f500000);
+ dbg("Transfer rate: %.0f KB/sec (%.0f bytes in %.0f seconds)\n",uStack_102c,(int)uVar14,
+ (int)((ulonglong)uVar14 >> 0x20),local_1030,uStack_102c,local_1028,uStack_1024);
}
}
else {
uVar10 = curl_easy_strerror(iVar12);
dbg("curl_easy_perform() failed: %s\n",uVar10);
uVar10 = curl_easy_strerror(iVar12);
logmessage_normal("frs_feedback","curl_easy_perform() failed: %s\n",uVar10);
}
- curl_formfree(local_d40);
+ curl_formfree(local_1040);
curl_easy_cleanup(iVar2);
- free(local_d20);
+ free(local_1020);
}
return iVar12;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.59 |
i_ratio | 0.25 |
m_ratio | 0.95 |
b_ratio | 0.95 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000d23d4 | FUN_000d8438 |
fullname |
FUN_000d23d4 | FUN_000d8438 |
refcount | 1 | 1 |
length |
1896 | 1904 |
called |
Expand for full list:::memset |
Expand for full list:::memset |
calling |
FUN_0004d76c | FUN_0005096c |
paramcount | 1 | 1 |
address |
000d23d4 | 000d8438 |
sig |
undefined __stdcall FUN_000d23d4(char * param_1) | undefined __stdcall FUN_000d8438(char * param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000d23d4 called
+++ FUN_000d8438 called
@@ -28,4 +28,4 @@
-FUN_000d0a8c
-FUN_000d0adc
-FUN_000d1890
-FUN_0015bbf4
+FUN_000d6a9c
+FUN_000d6aec
+FUN_000d78f4
+FUN_00163d58
--- FUN_000d23d4 calling
+++ FUN_000d8438 calling
@@ -1 +1 @@
-FUN_0004d76c
+FUN_0005096c
--- FUN_000d23d4
+++ FUN_000d8438
@@ -1,209 +1,209 @@
-void FUN_000d23d4(char *param_1)
+void FUN_000d8438(char *param_1)
{
bool bVar1;
bool bVar2;
char *pcVar3;
undefined *puVar4;
int iVar5;
char *pcVar6;
FILE *__stream;
undefined *puVar7;
undefined *puVar8;
undefined4 uVar9;
DIR *__dirp;
dirent *pdVar10;
int *piVar11;
char *__haystack;
- undefined4 local_11b8;
- undefined auStack_11b4 [60];
- stat sStack_1178;
- char local_1120 [256];
- char acStack_1020 [512];
- char local_e20 [512];
- char local_c20 [1024];
- char local_820 [2048];
+ undefined4 local_14b8;
+ undefined auStack_14b4 [60];
+ stat sStack_1478;
+ char local_1420 [256];
+ char local_1320 [512];
+ char local_1120 [512];
+ char local_f20 [1024];
+ char local_b20 [2816];
- local_c20[0] = '\0';
- local_c20[1] = '\0';
- local_c20[2] = '\0';
- local_c20[3] = '\0';
- memset(local_c20 + 4,0,0x3fc);
- acStack_1020[0] = '\0';
- acStack_1020[1] = '\0';
- acStack_1020[2] = '\0';
- acStack_1020[3] = '\0';
- memset(acStack_1020 + 4,0,0x1fc);
+ local_f20[0] = '\0';
+ local_f20[1] = '\0';
+ local_f20[2] = '\0';
+ local_f20[3] = '\0';
+ memset(local_f20 + 4,0,0x3fc);
+ local_1320[0] = '\0';
+ local_1320[1] = '\0';
+ local_1320[2] = '\0';
+ local_1320[3] = '\0';
+ memset(local_1320 + 4,0,0x1fc);
+ local_1420[0] = '\0';
+ local_1420[1] = '\0';
+ local_1420[2] = '\0';
+ local_1420[3] = '\0';
+ memset(local_1420 + 4,0,0xfc);
local_1120[0] = '\0';
local_1120[1] = '\0';
local_1120[2] = '\0';
local_1120[3] = '\0';
- memset(local_1120 + 4,0,0xfc);
- local_e20[0] = '\0';
- local_e20[1] = '\0';
- local_e20[2] = '\0';
- local_e20[3] = '\0';
- memset(local_e20 + 4,0,0x1fc);
- local_11b8 = 0;
- memset(auStack_11b4,0,0x3c);
+ memset(local_1120 + 4,0,0x1fc);
+ local_14b8 = 0;
+ memset(auStack_14b4,0,0x3c);
logmessage_normal("senddblog","start_senddblog() start...\n");
- pcVar3 = FUN_000d0a8c();
+ pcVar3 = FUN_000d6a9c();
pcVar3 = strchr(pcVar3,0x60);
if (pcVar3 == (char *)0x0) {
- puVar4 = FUN_000d0a8c();
- strlcpy(&local_11b8,puVar4,0x40);
+ puVar4 = FUN_000d6a9c();
+ strlcpy(&local_14b8,puVar4,0x40);
}
iVar5 = check_if_file_exist(param_1);
if (iVar5 == 0) {
logmessage_normal("senddblog","No dblog file!\n");
uVar9 = 9;
}
else {
- snprintf(acStack_1020,0x200,"-a %s",param_1);
- snprintf(local_1120,0x100,"%s");
- pcVar6 = strrchr(local_1120,0x2f);
+ snprintf(local_1320,0x200,"-a %s",param_1);
+ snprintf(local_1420,0x100,"%s");
+ pcVar6 = strrchr(local_1420,0x2f);
pcVar3 = pcVar6;
if (pcVar6 != (char *)0x0) {
pcVar3 = pcVar6 + 1;
*pcVar6 = '\0';
}
nvram_set("fb_state","0");
__stream = fopen("/tmp/dblogmailcontent","w");
if (__stream != (FILE *)0x0) {
fputs("SYSTEM DEBUG LOG\n----------------------------------------------------------------------------------------------------------------\n\n"
,__stream);
fputs("Model: ",__stream);
pcVar6 = (char *)get_productid();
fputs(pcVar6,__stream);
fputs("\nFirmware Version: ",__stream);
- puVar4 = FUN_000d0a8c();
- puVar7 = FUN_000d0a8c();
- puVar8 = FUN_000d0a8c();
+ puVar4 = FUN_000d6a9c();
+ puVar7 = FUN_000d6a9c();
+ puVar8 = FUN_000d6a9c();
fprintf(__stream,"%s.%s_%s",puVar4,puVar7,puVar8);
fputs("\nInner Version: ",__stream);
- pcVar6 = FUN_000d0a8c();
+ pcVar6 = FUN_000d6a9c();
fputs(pcVar6,__stream);
fputs("\nMAC Address: ",__stream);
pcVar6 = (char *)get_label_mac();
fputs(pcVar6,__stream);
uVar9 = nvram_get_int("dblog_duration");
uVar9 = __aeabi_idiv(uVar9,0xe10);
fprintf(__stream,"\nSystem debug log capture duration: %d hrs\n",uVar9);
- puVar4 = FUN_000d0a8c();
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Group Id: %s\n",puVar4);
- puVar4 = FUN_000d0a8c();
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"System Diagnostic: %s\n",puVar4);
- puVar4 = FUN_000d0a8c();
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Transaction Id: %s\n",puVar4);
- puVar4 = FUN_000d0a8c();
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Dblog Remaining Time: %s\n",puVar4);
- fprintf(__stream,"E-mail: %s\n",&local_11b8);
- iVar5 = FUN_000d0adc("fb_contact_type","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ fprintf(__stream,"E-mail: %s\n",&local_14b8);
+ iVar5 = FUN_000d6aec("fb_contact_type","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"User_Contact_Type: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_phone","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_phone","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"User_Phone_Number: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_ptype","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_ptype","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Problem Type: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_pdesc","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_pdesc","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Problem Description: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_when_occur","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_when_occur","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"When did it occur: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_which_band","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_which_band","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Which band(s): %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_unstable_conn","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_unstable_conn","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Issue specifically with Wi-Fi or WAN: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_serviceno","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_serviceno","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"ASUS_Service_Number or CRS ID: %s\n",puVar4);
}
- iVar5 = FUN_000d0adc("fb_tech_account","");
- if (iVar5 != 0) {
- puVar4 = FUN_000d0a8c();
+ iVar5 = FUN_000d6aec("fb_tech_account","");
+ if (iVar5 != 0) {
+ puVar4 = FUN_000d6a9c();
fprintf(__stream,"Account_Name_ID: %s\n",puVar4);
}
fclose(__stream);
}
- FUN_0015bbf4(param_1,&sStack_1178);
- if (sStack_1178.st_size < 0x200001) {
+ FUN_00163d58(param_1,&sStack_1478);
+ if (sStack_1478.st_size < 0x200001) {
bVar1 = false;
}
else {
- memset(local_c20,0,0x400);
- snprintf(local_c20,0x400,"split -b 2m -a 1 %s %s.",param_1,param_1);
- iVar5 = system(local_c20);
+ memset(local_f20,0,0x400);
+ snprintf(local_f20,0x400,"split -b 2m -a 1 %s %s.",param_1,param_1);
+ iVar5 = system(local_f20);
if (iVar5 != 0) {
logmessage_normal("senddblog","Failed to split log file!\n");
uVar9 = 8;
goto LAB_0;
}
bVar1 = true;
}
- __dirp = opendir(local_1120);
+ __dirp = opendir(local_1420);
if (__dirp != (DIR *)0x0) {
while( true ) {
do {
pdVar10 = readdir(__dirp);
if (pdVar10 == (dirent *)0x0) {
closedir(__dirp);
nvram_set_int("dblog_state",6);
nvram_set("fb_state","1");
unlink("/tmp/dblogmailcontent");
unlink(param_1);
nvram_commit();
logmessage_normal("senddblog","start_senddblog() end...\n");
return;
}
__haystack = pdVar10->d_name;
pcVar6 = strstr(__haystack,"sysdblog");
} while ((pcVar6 == (char *)0x0) ||
((bVar1 && (iVar5 = strcmp(__haystack,pcVar3), iVar5 == 0))));
- snprintf(local_e20,0x200,"%s/%s",local_1120,__haystack);
- local_820[0] = '\0';
- local_820[1] = '\0';
- local_820[2] = '\0';
- local_820[3] = '\0';
- memset(local_820 + 4,0,0x7fc);
- snprintf(local_820,0x800,"-a %s",local_e20);
- bVar2 = FUN_000d1890("/tmp/dblogmailcontent",local_820);
+ snprintf(local_1120,0x200,"%s/%s",local_1420,__haystack);
+ local_b20[0] = '\0';
+ local_b20[1] = '\0';
+ local_b20[2] = '\0';
+ local_b20[3] = '\0';
+ memset(local_b20 + 4,0,0xafc);
+ snprintf(local_b20,0xb00,"-a %s",local_1120);
+ bVar2 = FUN_000d78f4("/tmp/dblogmailcontent",local_b20);
if (!bVar2) break;
- unlink(local_e20);
+ unlink(local_1120);
}
logmessage_normal("senddblog","Send Diagnostic Log failed\n");
nvram_set_int("dblog_state",7);
closedir(__dirp);
nvram_set("fb_state",&DAT_1);
return;
}
piVar11 = __errno_location();
pcVar3 = strerror(*piVar11);
- logmessage_normal("senddblog","Open Directory %s Error: %s\n",local_1120,pcVar3);
+ logmessage_normal("senddblog","Open Directory %s Error: %s\n",local_1420,pcVar3);
uVar9 = 9;
}
LAB_0:
nvram_set_int("dblog_state",uVar9);
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,refcount,length,sig,address,calling,called |
ratio | 0.61 |
i_ratio | 0.21 |
m_ratio | 0.65 |
b_ratio | 0.66 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0003643c | FUN_00037f70 |
fullname |
FUN_0003643c | FUN_00037f70 |
refcount |
13 | 15 |
length |
3156 | 3172 |
called |
Expand for full list:::nvram_default_get |
Expand for full list:::nvram_default_get |
calling |
FUN_00038010 FUN_00039000 FUN_000394a0 FUN_0003acc0 FUN_00070e04 FUN_0007203c FUN_000739ec FUN_00074f4c FUN_000c0110 FUN_000c7bb0 |
Expand for full list:FUN_001001d4 |
paramcount | 0 | 0 |
address |
0003643c | 00037f70 |
sig |
undefined4 __stdcall FUN_0003643c(void) | undefined4 __stdcall FUN_00037f70(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0003643c called
+++ FUN_00037f70 called
@@ -26,5 +26,5 @@
-FUN_00034bb4
-FUN_00034bd4
-FUN_00034c04
-FUN_0003ee00
-FUN_000ea674
+FUN_00036450
+FUN_00036470
+FUN_000364a0
+FUN_000405d4
+FUN_000f2074
--- FUN_0003643c calling
+++ FUN_00037f70 calling
@@ -1,10 +1,12 @@
-FUN_00038010
-FUN_00039000
-FUN_000394a0
-FUN_0003acc0
-FUN_00070e04
-FUN_0007203c
-FUN_000739ec
-FUN_00074f4c
-FUN_000c0110
-FUN_000c7bb0
+FUN_00039b80
+FUN_0003a628
+FUN_0003aac8
+FUN_0003c2cc
+FUN_0005096c
+FUN_0007430c
+FUN_00075620
+FUN_00076fc4
+FUN_00078610
+FUN_000c61b0
+FUN_000cdbc0
+FUN_001001d4
--- FUN_0003643c
+++ FUN_00037f70
@@ -1,346 +1,346 @@
-undefined4 FUN_0003643c(void)
+undefined4 FUN_00037f70(void)
{
bool bVar1;
int iVar2;
int iVar3;
int iVar4;
undefined4 uVar5;
FILE *__stream;
FILE *__stream_00;
undefined4 uVar6;
char *pcVar7;
char *pcVar8;
int iVar9;
char *pcVar10;
- char *pcVar11;
- int iVar12;
+ int iVar11;
+ size_t sVar12;
size_t sVar13;
- size_t sVar14;
- undefined *puVar15;
+ undefined *puVar14;
+ char *pcVar15;
char *pcVar16;
- char *pcVar17;
+ char *local_3b8;
char acStack_398 [16];
undefined auStack_388 [16];
undefined auStack_378 [36];
char local_354 [63];
undefined local_315;
char local_314 [99];
undefined local_2b1;
char local_2b0 [144];
undefined auStack_220 [256];
undefined auStack_120 [256];
iVar2 = wan_primary_ifunit();
iVar3 = nvram_get_int("dnspriv_enable");
- iVar4 = FUN_000ea674();
+ iVar4 = FUN_000f2074();
if (iVar4 != 0) {
return 0;
}
uVar5 = file_lock("resolv");
__stream = fopen("/tmp/resolv.conf","w+");
if (__stream == (FILE *)0x0) {
perror("/tmp/resolv.conf");
}
else {
__stream_00 = fopen("/tmp/resolv.dnsmasq","w+");
if (__stream_00 != (FILE *)0x0) {
iVar4 = 0;
do {
snprintf(acStack_398,0xf,"wan%d_",iVar4);
- uVar6 = FUN_00034c04(acStack_398,"dns",local_314);
+ uVar6 = FUN_000364a0(acStack_398,"dns",local_314);
pcVar7 = (char *)nvram_get_r(uVar6,local_2b0,0x8d);
if (pcVar7 == (char *)0x0) {
pcVar7 = "";
}
- uVar6 = FUN_00034c04(acStack_398,"xdns",local_314);
+ uVar6 = FUN_000364a0(acStack_398,"xdns",local_314);
pcVar8 = (char *)nvram_get_r(uVar6,auStack_378,0x22);
if (pcVar8 == (char *)0x0) {
pcVar8 = "";
}
if ((*pcVar7 != '\0') || (*pcVar8 != '\0')) {
- bVar1 = FUN_00034bd4("wans_mode","lb");
+ bVar1 = FUN_00036470("wans_mode","lb");
if (bVar1) {
iVar9 = is_phy_connect(iVar4);
if (iVar9 != 0) goto LAB_0;
}
else {
- bVar1 = FUN_00034bd4("wans_mode","fb");
+ bVar1 = FUN_00036470("wans_mode","fb");
if (bVar1) {
if (iVar2 == iVar4) goto LAB_0;
- pcVar16 = pcVar8;
+ pcVar15 = pcVar8;
if (*pcVar7 != '\0') goto LAB_1;
}
else {
if (iVar2 != iVar4) goto LAB_1;
LAB_0:
- pcVar16 = pcVar7;
+ pcVar15 = pcVar7;
if (*pcVar7 == '\0') {
- pcVar16 = pcVar8;
- }
- }
- sVar13 = strspn(pcVar16," ");
- pcVar10 = strncpy(local_314,pcVar16 + sVar13,100);
+ pcVar15 = pcVar8;
+ }
+ }
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = strncpy(local_314,pcVar15 + sVar12,100);
local_2b1 = 0;
- sVar14 = strcspn(pcVar10," ");
- local_314[sVar14] = '\0';
- pcVar16 = strchr(pcVar16 + sVar13,0x20);
+ sVar13 = strcspn(pcVar10," ");
+ local_314[sVar13] = '\0';
+ pcVar15 = strchr(pcVar15 + sVar12,0x20);
while (local_314[0] != '\0') {
fprintf(__stream,"nameserver %s\n",local_314);
pcVar10 = "";
- if (pcVar16 != (char *)0x0) {
- sVar13 = strspn(pcVar16," ");
- pcVar10 = pcVar16 + sVar13;
+ if (pcVar15 != (char *)0x0) {
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = pcVar15 + sVar12;
}
strncpy(local_314,pcVar10,100);
local_2b1 = 0;
- sVar13 = strcspn(local_314," ");
- local_314[sVar13] = '\0';
- pcVar16 = strchr(pcVar10,0x20);
+ sVar12 = strcspn(local_314," ");
+ local_314[sVar12] = '\0';
+ pcVar15 = strchr(pcVar10,0x20);
}
if ((iVar3 == 0) && (iVar9 = write_ovpn_resolv_dnsmasq(__stream_00), iVar9 == 0)) {
- bVar1 = FUN_00034bd4("wans_mode","lb");
- pcVar16 = pcVar7;
+ bVar1 = FUN_00036470("wans_mode","lb");
+ pcVar15 = pcVar7;
if (bVar1) {
if (*pcVar7 == '\0') goto LAB_2;
}
else if (*pcVar7 == '\0') {
- pcVar16 = pcVar8;
- }
- sVar13 = strspn(pcVar16," ");
- pcVar10 = strncpy(local_314,pcVar16 + sVar13,100);
+ pcVar15 = pcVar8;
+ }
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = strncpy(local_314,pcVar15 + sVar12,100);
local_2b1 = 0;
- sVar14 = strcspn(pcVar10," ");
- local_314[sVar14] = '\0';
- pcVar16 = strchr(pcVar16 + sVar13,0x20);
+ sVar13 = strcspn(pcVar10," ");
+ local_314[sVar13] = '\0';
+ pcVar15 = strchr(pcVar15 + sVar12,0x20);
while (local_314[0] != '\0') {
fprintf(__stream_00,"server=%s\n",local_314);
pcVar10 = "";
- if (pcVar16 != (char *)0x0) {
- sVar13 = strspn(pcVar16," ");
- pcVar10 = pcVar16 + sVar13;
+ if (pcVar15 != (char *)0x0) {
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = pcVar15 + sVar12;
}
strncpy(local_314,pcVar10,100);
local_2b1 = 0;
- sVar13 = strcspn(local_314," ");
- local_314[sVar13] = '\0';
- pcVar16 = strchr(pcVar10,0x20);
+ sVar12 = strcspn(local_314," ");
+ local_314[sVar12] = '\0';
+ pcVar15 = strchr(pcVar10,0x20);
}
}
LAB_2:
- uVar6 = FUN_00034c04(acStack_398,"domain",local_314);
- pcVar16 = (char *)nvram_get_r(uVar6,auStack_220,0x100);
- if (pcVar16 == (char *)0x0) {
- pcVar16 = "";
- }
- sVar13 = strspn(pcVar7," ");
- pcVar10 = strncpy(local_314,pcVar7 + sVar13,100);
+ uVar6 = FUN_000364a0(acStack_398,"domain",local_314);
+ local_3b8 = (char *)nvram_get_r(uVar6,auStack_220,0x100);
+ if (local_3b8 == (char *)0x0) {
+ local_3b8 = "";
+ }
+ sVar12 = strspn(pcVar7," ");
+ pcVar15 = strncpy(local_314,pcVar7 + sVar12,100);
local_2b1 = 0;
- sVar14 = strcspn(pcVar10," ");
- local_314[sVar14] = '\0';
- pcVar10 = strchr(pcVar7 + sVar13,0x20);
+ sVar13 = strcspn(pcVar15," ");
+ local_314[sVar13] = '\0';
+ pcVar15 = strchr(pcVar7 + sVar12,0x20);
while (local_314[0] != '\0') {
- sVar13 = strspn(pcVar16," ");
- pcVar11 = strncpy(local_354,pcVar16 + sVar13,0x40);
+ sVar12 = strspn(local_3b8," ");
+ pcVar10 = strncpy(local_354,local_3b8 + sVar12,0x40);
local_315 = 0;
- sVar14 = strcspn(pcVar11," ");
- local_354[sVar14] = '\0';
- pcVar11 = strchr(pcVar16 + sVar13,0x20);
+ sVar13 = strcspn(pcVar10," ");
+ local_354[sVar13] = '\0';
+ pcVar10 = strchr(local_3b8 + sVar12,0x20);
while (local_354[0] != '\0') {
fprintf(__stream_00,"server=/%s/%s\n",local_354,local_314);
- pcVar17 = "";
- if (pcVar11 != (char *)0x0) {
- sVar13 = strspn(pcVar11," ");
- pcVar17 = pcVar11 + sVar13;
+ pcVar16 = "";
+ if (pcVar10 != (char *)0x0) {
+ sVar12 = strspn(pcVar10," ");
+ pcVar16 = pcVar10 + sVar12;
}
- pcVar11 = strncpy(local_354,pcVar17,0x40);
+ pcVar10 = strncpy(local_354,pcVar16,0x40);
local_315 = 0;
- sVar13 = strcspn(pcVar11," ");
- local_354[sVar13] = '\0';
- pcVar11 = strchr(pcVar17,0x20);
- }
- if (pcVar10 == (char *)0x0) {
- pcVar10 = "";
+ sVar12 = strcspn(pcVar10," ");
+ local_354[sVar12] = '\0';
+ pcVar10 = strchr(pcVar16,0x20);
+ }
+ if (pcVar15 == (char *)0x0) {
+ pcVar15 = "";
}
else {
- sVar13 = strspn(pcVar10," ");
- pcVar10 = pcVar10 + sVar13;
- }
- strncpy(local_314,pcVar10,100);
+ sVar12 = strspn(pcVar15," ");
+ pcVar15 = pcVar15 + sVar12;
+ }
+ pcVar10 = strncpy(local_314,pcVar15,100);
local_2b1 = 0;
- sVar13 = strcspn(local_314," ");
- local_314[sVar13] = '\0';
- pcVar10 = strchr(pcVar10,0x20);
- }
- uVar6 = FUN_00034c04(acStack_398,"xdomain",local_314);
- pcVar10 = (char *)nvram_get_r(uVar6,auStack_120,0x100);
- if (pcVar10 == (char *)0x0) {
- pcVar10 = "";
- }
- sVar13 = strspn(pcVar8," ");
- pcVar8 = strncpy(local_314,pcVar8 + sVar13,100);
+ sVar12 = strcspn(pcVar10," ");
+ local_314[sVar12] = '\0';
+ pcVar15 = strchr(pcVar15,0x20);
+ }
+ uVar6 = FUN_000364a0(acStack_398,"xdomain",local_314);
+ pcVar15 = (char *)nvram_get_r(uVar6,auStack_120,0x100);
+ if (pcVar15 == (char *)0x0) {
+ pcVar15 = "";
+ }
+ sVar12 = strspn(pcVar8," ");
+ pcVar8 = strncpy(local_314,pcVar8 + sVar12,100);
local_2b1 = 0;
- sVar14 = strcspn(pcVar8," ");
- local_314[sVar14] = '\0';
- pcVar8 = strchr(pcVar8 + sVar13,0x20);
+ sVar13 = strcspn(pcVar8," ");
+ local_314[sVar13] = '\0';
+ pcVar8 = strchr(pcVar8 + sVar12,0x20);
while (local_314[0] != '\0') {
iVar9 = find_word(pcVar7,local_314);
- sVar13 = strspn(pcVar10," ");
- pcVar11 = strncpy(local_354,pcVar10 + sVar13,0x40);
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = strncpy(local_354,pcVar15 + sVar12,0x40);
local_315 = 0;
- sVar14 = strcspn(pcVar11," ");
- local_354[sVar14] = '\0';
- pcVar11 = strchr(pcVar10 + sVar13,0x20);
+ sVar13 = strcspn(pcVar10," ");
+ local_354[sVar13] = '\0';
+ pcVar10 = strchr(pcVar15 + sVar12,0x20);
while (local_354[0] != '\0') {
- if ((iVar9 == 0) || (iVar12 = find_word(pcVar16,local_354), iVar12 == 0)) {
+ if ((iVar9 == 0) || (iVar11 = find_word(local_3b8,local_354), iVar11 == 0)) {
fprintf(__stream_00,"server=/%s/%s\n",local_354,local_314);
}
- pcVar17 = "";
- if (pcVar11 != (char *)0x0) {
- sVar13 = strspn(pcVar11," ");
- pcVar17 = pcVar11 + sVar13;
+ pcVar16 = "";
+ if (pcVar10 != (char *)0x0) {
+ sVar12 = strspn(pcVar10," ");
+ pcVar16 = pcVar10 + sVar12;
}
- pcVar11 = strncpy(local_354,pcVar17,0x40);
+ pcVar10 = strncpy(local_354,pcVar16,0x40);
local_315 = 0;
- sVar13 = strcspn(pcVar11," ");
- local_354[sVar13] = '\0';
- pcVar11 = strchr(pcVar17,0x20);
+ sVar12 = strcspn(pcVar10," ");
+ local_354[sVar12] = '\0';
+ pcVar10 = strchr(pcVar16,0x20);
}
if (pcVar8 == (char *)0x0) {
pcVar8 = "";
}
else {
- sVar13 = strspn(pcVar8," ");
- pcVar8 = pcVar8 + sVar13;
- }
- pcVar11 = strncpy(local_314,pcVar8,100);
+ sVar12 = strspn(pcVar8," ");
+ pcVar8 = pcVar8 + sVar12;
+ }
+ pcVar10 = strncpy(local_314,pcVar8,100);
local_2b1 = 0;
- sVar13 = strcspn(pcVar11," ");
- local_314[sVar13] = '\0';
+ sVar12 = strcspn(pcVar10," ");
+ local_314[sVar12] = '\0';
pcVar8 = strchr(pcVar8,0x20);
}
}
}
LAB_1:
- if (iVar4 == 1) goto code_r0x000365a0;
+ if (iVar4 == 1) goto code_r0x000380d0;
iVar4 = 1;
} while( true );
}
perror("/tmp/resolv.dnsmasq");
fclose(__stream);
}
file_unlock(uVar5);
return 0xffffffff;
-code_r0x000365a0:
+code_r0x000380d0:
if (iVar3 != 0) {
fprintf(__stream,"nameserver %s\n","127.0.1.1");
fprintf(__stream_00,"server=%s\n","127.0.1.1");
}
iVar2 = get_ipv6_service();
if (iVar2 == 0) goto LAB_3;
iVar2 = nvram_get("sw_mode");
if (iVar2 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar2 = atoi(pcVar7);
}
else {
iVar2 = nvram_get_int();
}
if (iVar2 != 1) {
iVar2 = nvram_get("sw_mode");
if (iVar2 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar2 = atoi(pcVar7);
}
else {
iVar2 = nvram_get_int("sw_mode");
}
if (iVar2 != 4) goto LAB_3;
}
iVar2 = get_ipv6_service();
if ((iVar2 == 1) || (iVar2 == 6)) {
ipv6_nvname("ipv6_dnsenable");
iVar2 = nvram_get_int();
if (iVar2 == 0) goto LAB_4;
uVar6 = ipv6_nvname("ipv6_get_dns");
pcVar7 = (char *)nvram_get_r(uVar6,local_2b0,0x8d);
if (pcVar7 == (char *)0x0) {
pcVar7 = "";
}
uVar6 = ipv6_nvname("ipv6_get_domain");
pcVar8 = (char *)nvram_get_r(uVar6,auStack_220,0x100);
if (pcVar8 == (char *)0x0) {
pcVar8 = "";
}
}
else {
LAB_4:
pcVar7 = strcpy(local_2b0,"");
iVar2 = 1;
do {
snprintf(local_314,100,"ipv6_dns%d",iVar2);
if (local_2b0[0] != '\0') {
strlcat(local_2b0," ",0x8d);
}
iVar2 = iVar2 + 1;
ipv6_nvname(local_314);
- puVar15 = FUN_00034bb4();
- strlcat(local_2b0,puVar15,0x8d);
+ puVar14 = FUN_00036450();
+ strlcat(local_2b0,puVar14,0x8d);
} while (iVar2 != 4);
pcVar8 = "";
}
- sVar13 = strspn(pcVar7," ");
- strncpy(local_314,pcVar7 + sVar13,100);
+ sVar12 = strspn(pcVar7," ");
+ strncpy(local_314,pcVar7 + sVar12,100);
local_2b1 = 0;
- sVar14 = strcspn(local_314," ");
- local_314[sVar14] = '\0';
- pcVar7 = strchr(pcVar7 + sVar13,0x20);
+ sVar13 = strcspn(local_314," ");
+ local_314[sVar13] = '\0';
+ pcVar7 = strchr(pcVar7 + sVar12,0x20);
while (local_314[0] != '\0') {
iVar2 = inet_pton(10,local_314,auStack_388);
if (0 < iVar2) {
- sVar13 = strspn(pcVar8," ");
- strncpy(local_354,pcVar8 + sVar13,0x40);
+ sVar12 = strspn(pcVar8," ");
+ strncpy(local_354,pcVar8 + sVar12,0x40);
local_315 = 0;
- sVar14 = strcspn(local_354," ");
- local_354[sVar14] = '\0';
- pcVar16 = strchr(pcVar8 + sVar13,0x20);
+ sVar13 = strcspn(local_354," ");
+ local_354[sVar13] = '\0';
+ pcVar15 = strchr(pcVar8 + sVar12,0x20);
while (local_354[0] != '\0') {
fprintf(__stream_00,"server=/%s/%s\n",local_354,local_314);
pcVar10 = "";
- if (pcVar16 != (char *)0x0) {
- sVar13 = strspn(pcVar16," ");
- pcVar10 = pcVar16 + sVar13;
+ if (pcVar15 != (char *)0x0) {
+ sVar12 = strspn(pcVar15," ");
+ pcVar10 = pcVar15 + sVar12;
}
strncpy(local_354,pcVar10,0x40);
local_315 = 0;
- sVar13 = strcspn(local_354," ");
- local_354[sVar13] = '\0';
- pcVar16 = strchr(pcVar10,0x20);
+ sVar12 = strcspn(local_354," ");
+ local_354[sVar12] = '\0';
+ pcVar15 = strchr(pcVar10,0x20);
}
if (iVar3 == 0) {
- fprintf(__stream,"nameserver %s\n",local_314);
+ fprintf(__stream,"nameserver %s\n");
fprintf(__stream_00,"server=%s\n",local_314);
}
}
if (pcVar7 == (char *)0x0) {
pcVar7 = "";
}
else {
- sVar13 = strspn(pcVar7," ");
- pcVar7 = pcVar7 + sVar13;
- }
- strncpy(local_314,pcVar7,100);
+ sVar12 = strspn(pcVar7," ");
+ pcVar7 = pcVar7 + sVar12;
+ }
+ pcVar15 = strncpy(local_314,pcVar7,100);
local_2b1 = 0;
- sVar13 = strcspn(local_314," ");
- local_314[sVar13] = '\0';
+ sVar12 = strcspn(pcVar15," ");
+ local_314[sVar12] = '\0';
pcVar7 = strchr(pcVar7,0x20);
}
LAB_3:
fclose(__stream);
fclose(__stream_00);
file_unlock(uVar5);
- FUN_0003ee00();
+ FUN_000405d4();
return 0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.73 |
i_ratio | 0.46 |
m_ratio | 0.92 |
b_ratio | 0.94 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0011cf48 | FUN_00123be4 |
fullname |
FUN_0011cf48 | FUN_00123be4 |
refcount | 2 | 2 |
length |
532 | 604 |
called |
Expand for full list: |
Expand for full list: |
calling |
FUN_00128ecc | FUN_00130548 |
paramcount | 3 | 4 |
address |
0011cf48 | 00123be4 |
sig |
undefined __stdcall FUN_0011cf48(undefined4 param_1, undefined4 param_2, undefined4 param_3) | undefined __stdcall FUN_00123be4(undefined4 param_1, undefined4 param_2, undefined4 param_3, undefined4 param_4) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0011cf48 called
+++ FUN_00123be4 called
@@ -7,5 +7,5 @@
-FUN_00119f1c
-FUN_0011a544
-FUN_0011a6a0
-FUN_0011ced8
-FUN_0011cf10
+FUN_001209f0
+FUN_00121018
+FUN_00121174
+FUN_00123b74
+FUN_00123bac
--- FUN_0011cf48 calling
+++ FUN_00123be4 calling
@@ -1 +1 @@
-FUN_00128ecc
+FUN_00130548
--- FUN_0011cf48
+++ FUN_00123be4
@@ -1,56 +1,59 @@
-void FUN_0011cf48(undefined4 param_1,undefined4 param_2,undefined4 param_3)
+void FUN_00123be4(undefined4 param_1,undefined4 param_2,undefined4 param_3,undefined4 param_4)
{
undefined4 uVar1;
char *pcVar2;
int iVar3;
- FUN_0011cf10();
- FUN_0011ced8();
+ FUN_00123bac();
+ FUN_00123b74();
if (DAT_0 == 0) {
- FUN_0011a6a0();
+ FUN_00121174();
if (DAT_1 != 0) {
uVar1 = uptime();
dbg("%s(0x%04x): WLC %lu: The amas_wlcconnect main is be terminal.\n",
- "amas_free_all_memory_exit",0xa75,uVar1,param_1,param_2,param_3);
+ "amas_free_all_memory_exit",0xa75,uVar1,param_1,param_2,param_3,param_4);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar3 = strcmp(pcVar2,"1");
if (iVar3 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"The amas_wlcconnect main is be terminal.\n");
}
- pcVar2 = "The amas_wlcconnect main is be terminal.\n";
+ uVar1 = 0xa75;
+ pcVar2 = "%s(%d) - The amas_wlcconnect main is be terminal.\n";
}
else if ((DAT_0 == 1) && (iVar3 = nvram_get_int("amas_wlc_action_state"), iVar3 != 4)) {
- FUN_0011a544(2);
+ FUN_00121018(2);
if (DAT_1 != 0) {
uVar1 = uptime();
dbg("%s(0x%04x): WLC %lu: The Request is be terminal.\n","amas_free_all_memory_exit",0xa7d,
uVar1);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar3 = strcmp(pcVar2,"1");
if (iVar3 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"The Request is be terminal.\n");
}
- pcVar2 = "The Request is be terminal.\n";
+ uVar1 = 0xa7d;
+ pcVar2 = "%s(%d) - The Request is be terminal.\n";
}
else {
if (DAT_1 != 0) {
uVar1 = uptime();
dbg("%s(0x%04x): WLC %lu: The Connection process is be terminal.\n",
- "amas_free_all_memory_exit",0xa7f,uVar1,param_1,param_2,param_3);
+ "amas_free_all_memory_exit",0xa7f,uVar1,param_1,param_2,param_3,param_4);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar3 = strcmp(pcVar2,"1");
if (iVar3 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"The Connection process is be terminal.\n");
}
- pcVar2 = "The Connection process is be terminal.\n";
+ uVar1 = 0xa7f;
+ pcVar2 = "%s(%d) - The Connection process is be terminal.\n";
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,pcVar2);
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,pcVar2,"amas_free_all_memory_exit",uVar1);
/* WARNING: Subroutine does not return */
exit(0);
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.67 |
i_ratio | 0.26 |
m_ratio | 0.8 |
b_ratio | 0.91 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00111a5c | FUN_001184bc |
fullname |
FUN_00111a5c | FUN_001184bc |
refcount | 4 | 4 |
length |
1004 | 996 |
called |
Expand for full list:FUN_00110558 |
Expand for full list:FUN_00116ee0 |
calling |
FUN_0002db20 FUN_0002fa54 FUN_000394a0 |
FUN_0002e8b4 FUN_000307ec FUN_0003aac8 |
paramcount | 0 | 0 |
address |
00111a5c | 001184bc |
sig |
undefined __stdcall FUN_00111a5c(void) | undefined __stdcall FUN_001184bc(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00111a5c called
+++ FUN_001184bc called
@@ -11,4 +11,4 @@
-FUN_0010fdd0
-FUN_00110558
-FUN_00110a30
-FUN_00110fe0
+FUN_00116758
+FUN_00116ee0
+FUN_001173b8
+FUN_00117988
--- FUN_00111a5c calling
+++ FUN_001184bc calling
@@ -1,3 +1,3 @@
-FUN_0002db20
-FUN_0002fa54
-FUN_000394a0
+FUN_0002e8b4
+FUN_000307ec
+FUN_0003aac8
--- FUN_00111a5c
+++ FUN_001184bc
@@ -1,153 +1,153 @@
-void FUN_00111a5c(void)
+void FUN_001184bc(void)
{
int *piVar1;
bool bVar2;
bool bVar3;
char *pcVar4;
int iVar5;
undefined *puVar6;
int iVar7;
int iVar8;
undefined4 uVar9;
uint uVar10;
bool bVar11;
uint uVar12;
- undefined4 local_d040;
- undefined4 local_d03c;
- int local_d038;
- uint local_d034;
- int local_d030;
- int local_d02c;
- int local_d028;
- char acStack_d024 [2052];
- undefined auStack_c820 [25600];
- undefined auStack_6420 [4];
- int local_641c [6400];
+ undefined4 local_6c40;
+ undefined4 local_6c3c;
+ int local_6c38;
+ uint local_6c34;
+ int local_6c30;
+ int local_6c2c;
+ int local_6c28;
+ char acStack_6c24 [2052];
+ undefined auStack_6420 [12800];
+ undefined auStack_3220 [4];
+ int local_321c [3200];
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar4 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar4);
}
else {
iVar5 = nvram_get_int();
}
iVar5 = iVar5 + -1;
if (iVar5 != 0) {
iVar5 = 1;
}
- if (((iVar5 != 0) && (bVar3 = FUN_0010fdd0(), !bVar3)) &&
+ if (((iVar5 != 0) && (bVar3 = FUN_00116758(), !bVar3)) &&
(iVar5 = nvram_get_int("re_mode"), iVar5 != 1)) {
return;
}
- FUN_00110fe0();
- FUN_00110a30();
+ FUN_00117988();
+ FUN_001173b8();
uVar12 = 0;
- local_d03c = 0xff00ff;
- local_d030 = 0;
- local_d02c = 0;
- local_d028 = 0;
- local_d040 = 0;
- local_d038 = 0;
- local_d034 = 0;
- memset(auStack_c820,0,0x6400);
- iVar5 = wgn_vlan_list_get_other_from_nvram(auStack_c820,0x100,&local_d038);
+ local_6c3c = 0xff00ff;
+ local_6c30 = 0;
+ local_6c2c = 0;
+ local_6c28 = 0;
+ local_6c40 = 0;
+ local_6c38 = 0;
+ local_6c34 = 0;
+ memset(auStack_6420,0,0x3200);
+ iVar5 = wgn_vlan_list_get_other_from_nvram(auStack_6420,0x80,&local_6c38);
if (iVar5 != 0) {
- memset(auStack_6420,0,0x6400);
- iVar5 = wgn_vlan_list_get_from_nvram(auStack_6420,0x100,&local_d034);
+ memset(auStack_3220,0,0x3200);
+ iVar5 = wgn_vlan_list_get_from_nvram(auStack_3220,0x80,&local_6c34);
if (iVar5 != 0) {
+ get_iptv_and_dualwan_info(&local_6c30,3,&local_6c40,&local_6c3c);
+ bVar11 = false;
iVar5 = 0;
- get_iptv_and_dualwan_info(&local_d030,3,&local_d040,&local_d03c);
- bVar11 = false;
bVar3 = false;
bVar2 = false;
- while (uVar12 < local_d034) {
+ while (uVar12 < local_6c34) {
if (bVar11) {
if (iVar5 == 0) {
iVar7 = 0x1fe;
LAB_0:
- local_641c[uVar12 * 0x19] = iVar7;
- memset(acStack_d024,0,0x801);
+ local_321c[uVar12 * 0x19] = iVar7;
+ memset(acStack_6c24,0,0x801);
iVar5 = iVar7;
- pcVar4 = FUN_00110558(acStack_d024,0x800,"solve conflict: vlan_list[%d].vid: %d\n",
+ pcVar4 = FUN_00116ee0(acStack_6c24,0x800,"solve conflict: vlan_list[%d].vid: %d\n",
uVar12);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x2d5,pcVar4,iVar5);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x2f5,pcVar4,iVar5);
bVar3 = true;
iVar5 = iVar7;
goto LAB_1;
}
if (iVar5 == -1) {
- local_641c[uVar12 * 0x19] = -1;
+ local_321c[uVar12 * 0x19] = -1;
}
else {
iVar7 = iVar5 + 1;
if (bVar2) {
if (iVar7 < 0x1000) goto LAB_2;
}
else {
if (0x5e6 < iVar7) {
iVar7 = 0x32;
bVar2 = true;
goto LAB_0;
}
LAB_2:
if (iVar5 != -2) goto LAB_0;
}
iVar5 = -1;
- local_641c[uVar12 * 0x19] = -1;
+ local_321c[uVar12 * 0x19] = -1;
}
bVar3 = true;
LAB_3:
uVar12 = uVar12 + 1;
bVar11 = false;
}
else {
LAB_1:
- iVar7 = local_641c[uVar12 * 0x19];
+ iVar7 = local_321c[uVar12 * 0x19];
if (iVar7 != -1) {
- if (((iVar7 != local_d030) && (iVar7 != local_d02c)) && (iVar7 != local_d028)) {
- puVar6 = auStack_c820;
- for (iVar8 = 0; local_d038 != iVar8; iVar8 = iVar8 + 1) {
+ if (((iVar7 != local_6c30) && (iVar7 != local_6c2c)) && (iVar7 != local_6c28)) {
+ puVar6 = auStack_6420;
+ for (iVar8 = 0; local_6c38 != iVar8; iVar8 = iVar8 + 1) {
piVar1 = (int *)(puVar6 + 4);
puVar6 = puVar6 + 100;
if (iVar7 == *piVar1) {
- memset(acStack_d024,0,0x801);
- pcVar4 = FUN_00110558(acStack_d024,0x800,
+ memset(acStack_6c24,0,0x801);
+ pcVar4 = FUN_00116ee0(acStack_6c24,0x800,
"TAGGED_BASE conflict: vlan_list[%d].vid: %d\n",uVar12);
- uVar9 = 0x2f0;
+ uVar9 = 0x310;
goto LAB_4;
}
}
- puVar6 = auStack_6420;
- for (uVar10 = 0; local_d034 != uVar10; uVar10 = uVar10 + 1) {
+ puVar6 = auStack_3220;
+ for (uVar10 = 0; local_6c34 != uVar10; uVar10 = uVar10 + 1) {
if ((uVar12 != uVar10) && (iVar7 == *(int *)(puVar6 + 4))) {
- memset(acStack_d024,0,0x801);
- pcVar4 = FUN_00110558(acStack_d024,0x800,"WGN conflict: vlan_list[%d].vid: %d\n",
+ memset(acStack_6c24,0,0x801);
+ pcVar4 = FUN_00116ee0(acStack_6c24,0x800,"WGN conflict: vlan_list[%d].vid: %d\n",
uVar12);
- uVar9 = 0x301;
+ uVar9 = 0x321;
goto LAB_4;
}
puVar6 = puVar6 + 100;
}
goto LAB_3;
}
- memset(acStack_d024,0,0x801);
- pcVar4 = FUN_00110558(acStack_d024,0x800,"IPTV conflict: vlan_list[%d].vid: %d\n",uVar12
+ memset(acStack_6c24,0,0x801);
+ pcVar4 = FUN_00116ee0(acStack_6c24,0x800,"IPTV conflict: vlan_list[%d].vid: %d\n",uVar12
);
- uVar9 = 0x2e3;
+ uVar9 = 0x303;
LAB_4:
cprintf("%s(LINE:%d):%s\n","amas_wgn.c",uVar9,pcVar4,iVar7);
}
bVar11 = true;
}
}
if (bVar3) {
- wgn_vlan_list_set_to_nvram(auStack_6420);
+ wgn_vlan_list_set_to_nvram(auStack_3220);
}
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.3 |
i_ratio | 0.39 |
m_ratio | 0.8 |
b_ratio | 0.29 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00048260 | FUN_0004a4b8 |
fullname |
FUN_00048260 | FUN_0004a4b8 |
refcount | 10 | 10 |
length |
2024 | 1988 |
called |
Expand for full list:::get_lan_hwaddr |
Expand for full list:::get_lan_hwaddr |
calling |
FUN_000394a0 FUN_0004d584 FUN_0004d76c |
FUN_0003aac8 FUN_00050780 FUN_0005096c |
paramcount | 0 | 0 |
address |
00048260 | 0004a4b8 |
sig |
undefined __stdcall FUN_00048260(void) | undefined __stdcall FUN_0004a4b8(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00048260 called
+++ FUN_0004a4b8 called
@@ -31,5 +31,5 @@
-FUN_0003dfd4
-FUN_0003dff4
-FUN_0003e15c
-FUN_00060c20
-FUN_00061dfc
+FUN_0003f6c8
+FUN_0003f6e8
+FUN_0003f850
+FUN_00063ffc
+FUN_000651d8
--- FUN_00048260 calling
+++ FUN_0004a4b8 calling
@@ -1,3 +1,3 @@
-FUN_000394a0
-FUN_0004d584
-FUN_0004d76c
+FUN_0003aac8
+FUN_00050780
+FUN_0005096c
--- FUN_00048260
+++ FUN_0004a4b8
@@ -1,242 +1,239 @@
-void FUN_00048260(void)
+void FUN_0004a4b8(void)
{
- undefined4 uVar1;
- undefined4 uVar2;
- bool bVar3;
- __pid_t _Var4;
- __uid_t _Var5;
+ bool bVar1;
+ __pid_t _Var2;
+ __uid_t _Var3;
+ int iVar4;
+ int iVar5;
int iVar6;
- int iVar7;
- int iVar8;
FILE *__stream;
- undefined *puVar9;
- undefined *puVar10;
- uint uVar11;
+ undefined *puVar7;
+ undefined *puVar8;
+ uint uVar9;
+ undefined4 uVar10;
+ undefined4 uVar11;
undefined4 uVar12;
undefined4 uVar13;
- undefined4 uVar14;
- undefined4 uVar15;
+ char *pcVar14;
+ int iVar15;
char *pcVar16;
- int iVar17;
+ char *pcVar17;
char *pcVar18;
- char *pcVar19;
- char *pcVar20;
char *local_f8;
char *local_f4;
undefined auStack_f0 [4];
char *pcStack_ec;
undefined auStack_e8 [4];
undefined auStack_e4 [4];
char *local_e0;
char *local_dc;
byte local_d8;
byte local_d7;
byte local_d6;
byte local_d5;
byte local_d4;
byte local_d3;
char acStack_d0 [16];
char acStack_c0 [20];
char acStack_ac [40];
char acStack_84 [100];
- _Var4 = getpid();
- if ((_Var4 != 1) && (_Var5 = getuid(), _Var5 != 0)) {
+ _Var2 = getpid();
+ if ((_Var2 != 1) && (_Var3 = getuid(), _Var3 != 0)) {
notify_rc("start_upnp");
return;
}
- iVar6 = nvram_get("sw_mode");
+ iVar4 = nvram_get("sw_mode");
+ if (iVar4 == 0) {
+ pcVar18 = (char *)nvram_default_get("sw_mode");
+ iVar4 = atoi(pcVar18);
+ }
+ else {
+ iVar4 = nvram_get_int();
+ }
+ iVar4 = iVar4 + -1;
+ if (iVar4 != 0) {
+ iVar4 = 1;
+ }
+ if (iVar4 != 0) {
+ iVar4 = nvram_get("sw_mode");
+ if (iVar4 == 0) {
+ pcVar18 = (char *)nvram_default_get("sw_mode");
+ iVar4 = atoi(pcVar18);
+ }
+ else {
+ iVar4 = nvram_get_int();
+ }
+ iVar4 = iVar4 + -4;
+ if (iVar4 != 0) {
+ iVar4 = 1;
+ }
+ if (iVar4 != 0) {
+ return;
+ }
+ }
+ iVar4 = wan_primary_ifunit();
+ bVar1 = FUN_0003f6e8("wans_mode","lb");
+ if ((bVar1) && (iVar5 = is_phy_connect(iVar4), iVar5 == 0)) {
+ iVar4 = 1 - iVar4;
+ }
+ snprintf(acStack_d0,0xf,"wan%d_",iVar4);
+ iVar5 = nvram_get_int("upnp_mnp");
+ FUN_0003f850(acStack_d0,"upnp_enable",acStack_84);
+ iVar6 = nvram_get_int();
if (iVar6 == 0) {
- pcVar20 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar20);
- }
- else {
- iVar6 = nvram_get_int();
- }
- iVar6 = iVar6 + -1;
- if (iVar6 != 0) {
- iVar6 = 1;
- }
- if (iVar6 != 0) {
- iVar6 = nvram_get("sw_mode");
- if (iVar6 == 0) {
- pcVar20 = (char *)nvram_default_get("sw_mode");
- iVar6 = atoi(pcVar20);
- }
- else {
- iVar6 = nvram_get_int();
- }
- iVar6 = iVar6 + -4;
- if (iVar6 != 0) {
- iVar6 = 1;
- }
- if (iVar6 != 0) {
- return;
- }
- }
- iVar6 = wan_primary_ifunit();
- bVar3 = FUN_0003dff4("wans_mode","lb");
- if ((bVar3) && (iVar7 = is_phy_connect(iVar6), iVar7 == 0)) {
- iVar6 = 1 - iVar6;
- }
- snprintf(acStack_d0,0xf,"wan%d_",iVar6);
- iVar7 = nvram_get_int("upnp_mnp");
- FUN_0003e15c(acStack_d0,"upnp_enable",acStack_84);
- iVar8 = nvram_get_int();
- if (iVar8 == 0) {
return;
}
- pcVar20 = "/etc/upnp/config.alt";
+ pcVar18 = "/etc/upnp/config.alt";
mkdir("/etc/upnp",0x1ff);
- iVar8 = f_exists("/etc/upnp/config.alt");
- if (iVar8 != 0) goto LAB_0;
+ iVar6 = f_exists("/etc/upnp/config.alt");
+ if (iVar6 != 0) goto LAB_0;
__stream = fopen("/etc/upnp/config","w");
if (__stream == (FILE *)0x0) {
return;
}
- puVar9 = FUN_0003dfd4();
- puVar10 = FUN_0003dfd4();
- uVar11 = nvram_get_int("upnp_port");
- if (0xffff < uVar11) {
- uVar11 = 0;
- }
- uVar12 = get_lan_hwaddr();
- iVar8 = ether_atoe(uVar12,&local_d8);
- if (iVar8 == 0) {
+ puVar7 = FUN_0003f6c8();
+ puVar8 = FUN_0003f6c8();
+ uVar9 = nvram_get_int("upnp_port");
+ if (0xffff < uVar9) {
+ uVar9 = 0;
+ }
+ uVar10 = get_lan_hwaddr();
+ iVar6 = ether_atoe(uVar10,&local_d8);
+ if (iVar6 == 0) {
f_read("/dev/urandom",&local_d8,6);
}
snprintf(acStack_c0,0x12,"%02x:%02x:%02x:%02x:%02x:%02x",(uint)local_d8,(uint)local_d7,
(uint)local_d6,(uint)local_d5,(uint)local_d4,(uint)local_d3);
snprintf(acStack_ac,0x25,"3ddcd1d3-2380-45f5-b069-%02x%02x%02x%02x%02x%02x",(uint)local_d8,
(uint)local_d7,(uint)local_d6,(uint)local_d5,(uint)local_d4,(uint)local_d3);
- nvram_set_int("upnp_unit",iVar6);
- uVar12 = get_wan_ifname(iVar6);
- nvram_set("upnp_ifname",uVar12);
- uVar12 = get_wan_ifname(iVar6);
- if (iVar7 == 0) {
- pcVar20 = "no";
- }
- else {
- pcVar20 = "yes";
- }
- iVar6 = nvram_get_int("upnp_secure");
- if (iVar6 == 0) {
- pcVar19 = "no";
- }
- else {
- pcVar19 = "yes";
- }
- uVar13 = nvram_get_int("upnp_ssdp_interval");
- uVar14 = get_lan_hostname();
- uVar15 = get_productid();
- uVar2 = rt_serialno;
- uVar1 = rt_version;
- pcVar16 = (char *)nvram_get("serial_no");
- if (pcVar16 == (char *)0x0) {
- pcVar16 = acStack_c0;
+ nvram_set_int("upnp_unit",iVar4);
+ uVar10 = get_wan_ifname(iVar4);
+ nvram_set("upnp_ifname",uVar10);
+ uVar10 = get_wan_ifname(iVar4);
+ if (iVar5 == 0) {
+ pcVar18 = "no";
+ }
+ else {
+ pcVar18 = "yes";
+ }
+ iVar4 = nvram_get_int("upnp_secure");
+ if (iVar4 == 0) {
+ pcVar17 = "no";
+ }
+ else {
+ pcVar17 = "yes";
+ }
+ uVar11 = nvram_get_int("upnp_ssdp_interval");
+ uVar12 = get_lan_hostname();
+ uVar13 = get_productid();
+ pcVar14 = (char *)nvram_get("serial_no");
+ if (pcVar14 == (char *)0x0) {
+ pcVar14 = acStack_c0;
}
fprintf(__stream,
- "ext_ifname=%s\nlistening_ip=%s/%s\nport=%d\nenable_upnp=%s\nenable_natpmp=%s\nsecure_mode=%s\nupnp_forward_chain=FUPNP\nupnp_nat_chain=VUPNP\nnotify_interval=%d\nsystem_uptime=yes\nfriendly_name=%s\nmodel_name=%s\nmodel_description=%s\nmodel_number=%s.%s\nserial=%s\nuuid=%s\nlease_file=%s\n"
- ,uVar12,puVar9,puVar10,uVar11,&DAT_1,pcVar20,pcVar19,uVar13,uVar14,uVar15,
- "ASUS Wireless Router",uVar1,uVar2,pcVar16,acStack_ac,"/tmp/upnp.leases");
- iVar6 = nvram_get_int("upnp_clean");
- if (iVar6 == 0) {
+ "ext_ifname=%s\nlistening_ip=%s/%s\nport=%d\nenable_upnp=%s\nenable_natpmp=%s\nsecure_mode=%s\nupnp_forward_chain=FUPNP\nupnp_nat_chain=VUPNP\nnotify_interval=%d\nsystem_uptime=yes\nfriendly_name=%s\nmodel_name=%s\nmodel_description=%s\nmodel_number=%s\nserial=%s\nuuid=%s\nlease_file=%s\n"
+ ,uVar10,puVar7,puVar8,uVar9,&DAT_1,pcVar18,pcVar17,uVar11,uVar12,
+ "ASUS Wireless Router","ASUS Wireless Router",uVar13,pcVar14,acStack_ac,"/tmp/upnp.leases"
+ );
+ iVar4 = nvram_get_int("upnp_clean");
+ if (iVar4 == 0) {
fprintf(__stream,"clean_ruleset_interval=%d\n");
}
else {
nvram_get_int("upnp_clean_interval");
nvram_get_int("upnp_clean_threshold");
fprintf(__stream,"clean_ruleset_interval=%d\nclean_ruleset_threshold=%d\n");
}
fputs("presentation_url=",__stream);
- iVar6 = nvram_get_int("http_enable");
- if (iVar6 == 1) {
- iVar6 = nvram_get_int("https_lanport");
- pcVar20 = "https";
- if (iVar6 == 0) {
- iVar6 = 0x1bb;
- }
- }
- else {
- iVar6 = nvram_get_int("http_lanport");
- pcVar20 = "http";
- if (iVar6 == 0) {
- iVar6 = 0x50;
- }
- }
- fprintf(__stream,"%s://%s:%d/\n",pcVar20,puVar9,iVar6);
- iVar6 = is_nat_enabled();
- if ((iVar6 != 0) && (bVar3 = FUN_0003dff4("vts_enable_x","1"), bVar3)) {
- pcVar20 = FUN_0003dfd4();
- pcVar20 = strdup(pcVar20);
- local_e0 = pcVar20;
- while ((pcVar20 != (char *)0x0 && (pcVar19 = strsep(&local_e0,"<"), pcVar19 != (char *)0x0))) {
- iVar6 = _vstrsep(pcVar19,">",auStack_e4,&local_f4,auStack_e8,auStack_f0,&local_f8,&pcStack_ec,
+ iVar4 = nvram_get_int("http_enable");
+ if (iVar4 == 1) {
+ iVar4 = nvram_get_int("https_lanport");
+ pcVar18 = "https";
+ if (iVar4 == 0) {
+ iVar4 = 0x1bb;
+ }
+ }
+ else {
+ iVar4 = nvram_get_int("http_lanport");
+ pcVar18 = "http";
+ if (iVar4 == 0) {
+ iVar4 = 0x50;
+ }
+ }
+ fprintf(__stream,"%s://%s:%d/\n",pcVar18,puVar7,iVar4);
+ iVar4 = is_nat_enabled();
+ if ((iVar4 != 0) && (bVar1 = FUN_0003f6e8("vts_enable_x","1"), bVar1)) {
+ pcVar18 = FUN_0003f6c8();
+ pcVar18 = strdup(pcVar18);
+ local_e0 = pcVar18;
+ while ((pcVar18 != (char *)0x0 && (pcVar17 = strsep(&local_e0,"<"), pcVar17 != (char *)0x0))) {
+ iVar4 = _vstrsep(pcVar17,">",auStack_e4,&local_f4,auStack_e8,auStack_f0,&local_f8,&pcStack_ec,
0);
- if (4 < iVar6) {
- if (iVar6 == 5) {
+ if (4 < iVar4) {
+ if (iVar4 == 5) {
pcStack_ec = "";
}
- pcVar19 = strdup(local_f4);
- local_dc = pcVar19;
- while ((pcVar19 != (char *)0x0 &&
- (pcVar18 = strsep(&local_dc,","), pcVar16 = local_f8, pcVar18 != (char *)0x0))) {
- iVar6 = strcmp(local_f8,"TCP");
- if ((iVar6 == 0) || (iVar6 = strcmp(pcVar16,"BOTH"), iVar6 == 0)) {
- fprintf(__stream,"deny %s 0.0.0.0/0 0-65535\n",pcVar18);
+ pcVar17 = strdup(local_f4);
+ local_dc = pcVar17;
+ while ((pcVar17 != (char *)0x0 &&
+ (pcVar16 = strsep(&local_dc,","), pcVar14 = local_f8, pcVar16 != (char *)0x0))) {
+ iVar4 = strcmp(local_f8,"TCP");
+ if ((iVar4 == 0) || (iVar4 = strcmp(pcVar14,"BOTH"), iVar4 == 0)) {
+ fprintf(__stream,"deny %s 0.0.0.0/0 0-65535\n",pcVar16);
}
- pcVar16 = local_f8;
- iVar6 = strcmp(local_f8,"UDP");
- if ((iVar6 == 0) || (iVar6 = strcmp(pcVar16,"BOTH"), iVar6 == 0)) {
- fprintf(__stream,"deny %s 0.0.0.0/0 0-65535\n",pcVar18);
+ pcVar14 = local_f8;
+ iVar4 = strcmp(local_f8,"UDP");
+ if ((iVar4 == 0) || (iVar4 = strcmp(pcVar14,"BOTH"), iVar4 == 0)) {
+ fprintf(__stream,"deny %s 0.0.0.0/0 0-65535\n",pcVar16);
}
}
- free(pcVar19);
+ free(pcVar17);
}
}
- free(pcVar20);
- }
- iVar6 = nvram_get_int("misc_http_x");
- if (iVar6 != 0) {
- iVar6 = nvram_get_int("http_enable");
- if (iVar6 != 0) {
- iVar8 = nvram_get_int("misc_httpsport_x");
- iVar7 = 0x20fb;
- if (iVar8 != 0) {
- iVar7 = iVar8;
+ free(pcVar18);
+ }
+ iVar4 = nvram_get_int("misc_http_x");
+ if (iVar4 != 0) {
+ iVar4 = nvram_get_int("http_enable");
+ if (iVar4 != 0) {
+ iVar6 = nvram_get_int("misc_httpsport_x");
+ iVar5 = 0x20fb;
+ if (iVar6 != 0) {
+ iVar5 = iVar6;
}
- fprintf(__stream,"deny %d 0.0.0.0/0 0-65535\n",iVar7);
- if (iVar6 == 1) goto LAB_2;
- }
- iVar7 = nvram_get_int("misc_httpport_x");
- iVar6 = 0x1f90;
- if (iVar7 != 0) {
- iVar6 = iVar7;
- }
- fprintf(__stream,"deny %d 0.0.0.0/0 0-65535\n",iVar6);
+ fprintf(__stream,"deny %d 0.0.0.0/0 0-65535\n",iVar5);
+ if (iVar4 == 1) goto LAB_2;
+ }
+ iVar5 = nvram_get_int("misc_httpport_x");
+ iVar4 = 0x1f90;
+ if (iVar5 != 0) {
+ iVar4 = iVar5;
+ }
+ fprintf(__stream,"deny %d 0.0.0.0/0 0-65535\n",iVar4);
}
LAB_2:
- uVar11 = nvram_get_int("aae_enable");
- if ((uVar11 & 1) != 0) {
+ uVar9 = nvram_get_int("aae_enable");
+ if ((uVar9 & 1) != 0) {
fputs("deny 61689 0.0.0.0/0 0-65535\n",__stream);
}
- iVar6 = nvram_get_int("upnp_min_port_int");
- if ((((iVar6 < 1) || (iVar7 = nvram_get_int("upnp_max_port_int"), iVar7 < 1)) ||
- (iVar8 = nvram_get_int("upnp_min_port_ext"), iVar8 < 1)) ||
- (iVar17 = nvram_get_int("upnp_max_port_ext"), iVar17 < 1)) {
- fprintf(__stream,"allow 1024-65535 %s/%s 1024-65535\n",puVar9,puVar10);
- }
- else {
- fprintf(__stream,"allow %d-%d %s/%s %d-%d\n",iVar6,iVar7,puVar9,puVar10,iVar8,iVar17);
- }
- FUN_00061dfc(__stream,"/etc/upnp/config.custom");
+ iVar4 = nvram_get_int("upnp_min_port_int");
+ if ((((iVar4 < 1) || (iVar5 = nvram_get_int("upnp_max_port_int"), iVar5 < 1)) ||
+ (iVar6 = nvram_get_int("upnp_min_port_ext"), iVar6 < 1)) ||
+ (iVar15 = nvram_get_int("upnp_max_port_ext"), iVar15 < 1)) {
+ fprintf(__stream,"allow 1024-65535 %s/%s 1024-65535\n",puVar7,puVar8);
+ }
+ else {
+ fprintf(__stream,"allow %d-%d %s/%s %d-%d\n",iVar4,iVar5,puVar7,puVar8,iVar6,iVar15);
+ }
+ FUN_000651d8(__stream,"/etc/upnp/config.custom");
fputs("\ndeny 0-65535 0.0.0.0/0 0-65535\n",__stream);
fclose(__stream);
- pcVar20 = "/etc/upnp/config";
+ pcVar18 = "/etc/upnp/config";
LAB_0:
- FUN_00060c20("miniupnpd",0x1617d9,pcVar20,0);
+ FUN_00063ffc("miniupnpd",0x169c4d,pcVar18,0);
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.83 |
i_ratio | 0.61 |
m_ratio | 0.95 |
b_ratio | 0.89 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0011e608 | FUN_001252f8 |
fullname |
FUN_0011e608 | FUN_001252f8 |
refcount | 1 | 1 |
length |
824 | 848 |
called |
::__aeabi_f2d ::asusdebuglog ::dbg ::strcmp ::uptime FUN_00119f1c FUN_0011a1b8 |
::__aeabi_f2d ::asusdebuglog ::dbg ::strcmp ::uptime FUN_001209f0 FUN_00120c8c |
calling |
FUN_00121250 | FUN_00128074 |
paramcount | 1 | 1 |
address |
0011e608 | 001252f8 |
sig |
undefined __stdcall FUN_0011e608(undefined4 * param_1) | undefined __stdcall FUN_001252f8(undefined4 * param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0011e608 called
+++ FUN_001252f8 called
@@ -6,2 +6,2 @@
-FUN_00119f1c
-FUN_0011a1b8
+FUN_001209f0
+FUN_00120c8c
--- FUN_0011e608 calling
+++ FUN_001252f8 calling
@@ -1 +1 @@
-FUN_00121250
+FUN_00128074
--- FUN_0011e608
+++ FUN_001252f8
@@ -1,64 +1,65 @@
-void FUN_0011e608(undefined4 *param_1)
+void FUN_001252f8(undefined4 *param_1)
{
undefined4 uVar1;
char *pcVar2;
int iVar3;
undefined *puVar4;
int iVar5;
int iVar6;
undefined4 *puVar7;
undefined4 uVar8;
if (DAT_0 != 0) {
uVar1 = uptime();
dbg("%s(0x%04x): WLC %lu: Site Survey Result:\n","amas_dump_sitesurvey_ap",0x40b,uVar1);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar3 = strcmp(pcVar2,"1");
if (iVar3 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"Site Survey Result:\n");
}
iVar3 = 0;
for (; param_1 != (undefined4 *)0x0; param_1 = (undefined4 *)param_1[0x22]) {
puVar7 = param_1 + 3;
iVar6 = (int)param_1 + 0x2d;
if (DAT_0 != 0) {
uVar1 = uptime();
uVar8 = *param_1;
- puVar4 = FUN_0011a1b8(param_1[1]);
+ puVar4 = FUN_00120c8c(param_1[1]);
__aeabi_f2d(param_1[0x19]);
__aeabi_f2d(param_1[0x1b]);
dbg("%s(0x%04x): WLC %lu: [%d] UUID[%d] Band[%s] SSID[%s] BSSID[%s] Manual_mode[%d] CAP Role[%d] Prefer dev[%d] RSSI[%d] Channel[%d] BW[%d] Lastbytes[0x%02x,0x%02x,0x%02x,0x%02x] PAP Cost[%.1f] Cost[%.1f] Cost_Band[%d] Score[%d]\n"
,"amas_dump_sitesurvey_ap",0x410,uVar1,iVar3,uVar8,puVar4,puVar7,iVar6,param_1[0x12],
param_1[0x10],param_1[0x11],param_1[0x17],param_1[0x18],*(undefined *)(param_1 + 0x21),
param_1[0x13],param_1[0x14],param_1[0x15],param_1[0x16]);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar5 = strcmp(pcVar2,"1");
if (iVar5 == 0) {
uVar1 = *param_1;
- puVar4 = FUN_0011a1b8(param_1[1]);
+ puVar4 = FUN_00120c8c(param_1[1]);
__aeabi_f2d(param_1[0x19]);
__aeabi_f2d(param_1[0x1b]);
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,
"[%d] UUID[%d] Band[%s] SSID[%s] BSSID[%s] Manual_mode[%d] CAP Role[%d] Prefer dev[%d] RSSI[%d] Channel[%d] BW[%d] Lastbytes[0x%02x,0x%02x,0x%02x,0x%02x] PAP Cost[%.1f] Cost[%.1f] Cost_Band[%d] Score[%d]\n"
,iVar3,uVar1,puVar4,puVar7,iVar6,param_1[0x12],param_1[0x10],param_1[0x11],
param_1[0x17],param_1[0x18],*(undefined *)(param_1 + 0x21),param_1[0x13],
param_1[0x14],param_1[0x15],param_1[0x16]);
}
uVar1 = *param_1;
- puVar4 = FUN_0011a1b8(param_1[1]);
+ puVar4 = FUN_00120c8c(param_1[1]);
__aeabi_f2d(param_1[0x19]);
__aeabi_f2d(param_1[0x1b]);
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,
- "[%d] UUID[%d] Band[%s] SSID[%s] BSSID[%s] Manual_mode[%d] CAP Role[%d] Prefer dev[%d] RSSI[%d] Channel[%d] BW[%d] Lastbytes[0x%02x,0x%02x,0x%02x,0x%02x] PAP Cost[%.1f] Cost[%.1f] Cost_Band[%d] Score[%d]\n"
- ,iVar3,uVar1,puVar4,puVar7,iVar6,param_1[0x12],param_1[0x10],param_1[0x11],
- param_1[0x17],param_1[0x18],*(undefined *)(param_1 + 0x21),param_1[0x13],
- param_1[0x14],param_1[0x15],param_1[0x16]);
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,
+ "%s(%d) - [%d] UUID[%d] Band[%s] SSID[%s] BSSID[%s] Manual_mode[%d] CAP Role[%d] Prefer dev[%d] RSSI[%d] Channel[%d] BW[%d] Lastbytes[0x%02x,0x%02x,0x%02x,0x%02x] PAP Cost[%.1f] Cost[%.1f] Cost_Band[%d] Score[%d]\n"
+ ,"amas_dump_sitesurvey_ap",0x410,iVar3,uVar1,puVar4,puVar7,iVar6,param_1[0x12],
+ param_1[0x10],param_1[0x11],param_1[0x17],param_1[0x18],
+ *(undefined *)(param_1 + 0x21),param_1[0x13],param_1[0x14],param_1[0x15],
+ param_1[0x16]);
iVar3 = iVar3 + 1;
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.85 |
i_ratio | 0.3 |
m_ratio | 0.82 |
b_ratio | 0.83 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_001281b8 | FUN_0012f810 |
fullname |
FUN_001281b8 | FUN_0012f810 |
refcount | 1 | 1 |
length |
2916 | 2952 |
called |
Expand for full list:::nvram_set |
Expand for full list:::nvram_set |
calling |
FUN_00128ecc | FUN_00130548 |
paramcount | 0 | 0 |
address |
001281b8 | 0012f810 |
sig |
undefined __stdcall FUN_001281b8(void) | undefined __stdcall FUN_0012f810(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_001281b8 called
+++ FUN_0012f810 called
@@ -20,8 +20,8 @@
-FUN_00119f1c
-FUN_0011a244
-FUN_0011a544
-FUN_0011a558
-FUN_0011a6dc
-FUN_0011a730
-FUN_00124dc4
-FUN_001461c4
+FUN_001209f0
+FUN_00120d18
+FUN_00121018
+FUN_0012102c
+FUN_001211b0
+FUN_00121204
+FUN_0012c180
+FUN_0014e028
--- FUN_001281b8 calling
+++ FUN_0012f810 calling
@@ -1 +1 @@
-FUN_00128ecc
+FUN_00130548
--- FUN_001281b8
+++ FUN_0012f810
@@ -1,331 +1,333 @@
-void FUN_001281b8(void)
+void FUN_0012f810(void)
{
bool bVar1;
char *pcVar2;
undefined4 uVar3;
int iVar4;
__pid_t _Var5;
ulong uVar6;
ulong uVar7;
undefined *puVar8;
char *__s1;
int iVar9;
ulong uVar10;
int iVar11;
uint uVar12;
char local_32c [32];
char local_30c [32];
char local_2ec [32];
char local_2cc [32];
_union_1051 local_2ac [33];
undefined4 local_228;
char acStack_220 [512];
- DAT_0 = nvram_get_int(&DAT_0018c889);
+ DAT_0 = nvram_get_int(&DAT_00196c4a);
pcVar2 = (char *)accept(DAT_1,(sockaddr *)0x0,(socklen_t *)0x0);
if ((int)pcVar2 < 0) {
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: failed to socket accept()!\n","amas_ipc_receive_handler",0xe06,uVar3
+ dbg("%s(0x%04x): WLC %lu: failed to socket accept()!\n","amas_ipc_receive_handler",0xe07,uVar3
);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 != 0) {
return;
}
pcVar2 = "SSD %s(%d): failed to socket accept()!\n";
LAB_2:
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,pcVar2 + 0xc);
return;
}
_Var5 = fork();
if (_Var5 < 0) {
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: fork fail\n","amas_ipc_receive_handler",0xe0b,uVar3);
- }
- pcVar2 = FUN_00119f1c();
+ dbg("%s(0x%04x): WLC %lu: fork fail\n","amas_ipc_receive_handler",0xe0c,uVar3);
+ }
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 != 0) {
return;
}
pcVar2 = "SSD %s(%d): fork fail\n";
goto LAB_2;
}
if (_Var5 != 0) {
close((int)pcVar2);
return;
}
close(DAT_1);
DAT_1 = 0xffffffff;
- FUN_0011a6dc(1);
+ FUN_001211b0(1);
__s1 = acStack_220;
local_2ac[0].sa_handler = (__sighandler_t)&DAT_3;
local_228 = 0x40000000;
sigaction(0xf,(sigaction *)local_2ac,(sigaction *)0x0);
memset(__s1,0,0x200);
- iVar4 = FUN_001461c4(pcVar2,__s1,0x200,(byte *)"Received",3000);
+ iVar4 = FUN_0014e028(pcVar2,__s1,0x200,(byte *)"Received",3000);
if (iVar4 < 0) {
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: Read socket error!\n","amas_ipc_handle_socekt",0xdea,uVar3);
- }
- pcVar2 = FUN_00119f1c();
+ dbg("%s(0x%04x): WLC %lu: Read socket error!\n","amas_ipc_handle_socekt",0xdeb,uVar3);
+ }
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 != 0) goto LAB_4;
pcVar2 = "%s(0x%04x): WLC %lu: Read socket error!\n";
}
else {
iVar4 = nvram_get_int("amas_wlc_request_lock");
if (iVar4 != 1) {
nvram_set_int("amas_wlc_request_lock",1);
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: Receive event: %s\n","amas_ipc_event_handler",0xd6a,uVar3,__s1);
+ dbg("%s(0x%04x): WLC %lu: Receive event: %s\n","amas_ipc_event_handler",0xd6b,uVar3,__s1);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"Receive event: %s\n",__s1);
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,"Receive event: %s\n",__s1);
- pcVar2 = FUN_00119f1c();
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,"%s(%d) - Receive event: %s\n",
+ "amas_ipc_event_handler",0xd6b,__s1);
+ pcVar2 = FUN_001209f0();
uVar6 = strtoul(pcVar2,(char **)0x0,0x10);
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
uVar7 = strtoul(pcVar2,(char **)0x0,0x10);
local_32c[0] = '\0';
local_32c[1] = '\0';
local_32c[2] = '\0';
local_32c[3] = '\0';
memset(local_32c + 4,0,0x1c);
local_30c[0] = '\0';
local_30c[1] = '\0';
local_30c[2] = '\0';
local_30c[3] = '\0';
memset(local_30c + 4,0,0x1c);
local_2ec[0] = '\0';
local_2ec[1] = '\0';
local_2ec[2] = '\0';
local_2ec[3] = '\0';
memset(local_2ec + 4,0,0x1c);
local_2cc[0] = '\0';
local_2cc[1] = '\0';
local_2cc[2] = '\0';
local_2cc[3] = '\0';
memset(local_2cc + 4,0,0x1c);
iVar4 = strcmp(__s1,"START_CONNECTING");
if (iVar4 == 0) {
uVar12 = 1;
LAB_5:
iVar4 = nvram_get_int("amas_wlc_action_state");
if (iVar4 != 4) {
iVar4 = nvram_get_int("amas_wlcconnect_handler_pid");
- if ((0 < iVar4) && (iVar4 = FUN_0011a730(iVar4), iVar4 != 0)) {
- pcVar2 = FUN_00119f1c();
+ if ((0 < iVar4) && (iVar4 = FUN_00121204(iVar4), iVar4 != 0)) {
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,__s1);
if (iVar4 == 0) {
iVar4 = strcmp(__s1,"START_CONNECTING_BY_DRIVER");
if (iVar4 == 0) {
LAB_6:
if (DAT_0 != 0) {
uVar3 = uptime();
- puVar8 = FUN_00119f1c();
+ puVar8 = FUN_001209f0();
dbg("%s(0x%04x): WLC %lu: IPC: The event %s is same as the current processing event %s. Drop the request.\n"
- ,"amas_ipc_event_handler",0xda7,uVar3,acStack_220,puVar8);
+ ,"amas_ipc_event_handler",0xda8,uVar3,acStack_220,puVar8);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
- puVar8 = FUN_00119f1c();
+ puVar8 = FUN_001209f0();
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,
"IPC: The event %s is same as the current processing event %s. Drop the request.\n"
,acStack_220,puVar8);
}
- FUN_0011a544(1);
+ FUN_00121018(1);
for (iVar4 = 0; iVar9 = get_wl_count(), iVar4 < iVar9; iVar4 = iVar4 + 1) {
- iVar9 = FUN_0011a244(iVar4);
+ iVar9 = FUN_00120d18(iVar4);
if (iVar9 == 3) {
- FUN_0011a558(iVar4,1);
+ FUN_0012102c(iVar4,1);
}
}
goto LAB_7;
}
iVar4 = strcmp(__s1,"START_CONNECTING");
if ((iVar4 == 0) || (iVar4 = strcmp(__s1,"RESTART_CONNECTING"), iVar4 == 0)) {
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
uVar10 = strtoul(pcVar2,(char **)0x0,0x10);
if (uVar6 == uVar10) {
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
uVar10 = strtoul(pcVar2,(char **)0x0,0x10);
if (uVar7 == uVar10) {
bVar1 = false;
for (iVar4 = 0; iVar4 < DAT_8; iVar4 = iVar4 + 1) {
snprintf(local_30c,0x20,"amas_wlc%d_priority");
snprintf(local_2ec,0x20,"amas_wlc%d_priority_ongoing",iVar4);
iVar9 = nvram_get_int(local_30c);
iVar11 = nvram_get_int(local_2ec);
if (iVar9 != iVar11) goto LAB_9;
bVar1 = true;
}
if (bVar1) goto LAB_6;
}
}
}
}
}
LAB_9:
nvram_set("amas_wlc_action",acStack_220);
- FUN_0011a544(4);
+ FUN_00121018(4);
nvram_set_int("amas_wlc_request_lock",0);
_Var5 = nvram_get_int("amas_wlcconnect_handler_pid");
if (0 < _Var5) {
iVar4 = 0x1e;
kill(_Var5,0xf);
do {
- iVar9 = FUN_0011a730(_Var5);
+ iVar9 = FUN_00121204(_Var5);
if (iVar9 == 0) break;
sleep(1);
iVar4 = iVar4 + -1;
} while (iVar4 != 0);
}
- iVar4 = FUN_0011a730(_Var5);
+ iVar4 = FUN_00121204(_Var5);
if (iVar4 != 0) {
kill(_Var5,9);
for (iVar4 = 0; iVar4 < DAT_8; iVar4 = iVar4 + 1) {
snprintf(local_2cc,0x20,"amas_wlc%d_connection_pid",iVar4);
iVar9 = nvram_get_int(local_2cc);
if (0 < iVar9) {
_Var5 = nvram_get_int(local_2cc);
kill(_Var5,9);
nvram_set_int(local_2cc,0);
}
}
sleep(1);
}
_Var5 = getpid();
nvram_set_int("amas_wlcconnect_handler_pid",_Var5);
snprintf(local_32c,0x20,"%X",uVar6);
nvram_set("amas_wlc_active_ongoing",local_32c);
snprintf(local_32c,0x20,"%X",uVar7);
nvram_set("amas_wlc_action_ongoing",local_32c);
for (iVar4 = 0; iVar4 < DAT_8; iVar4 = iVar4 + 1) {
snprintf(local_30c,0x20,"amas_wlc%d_priority",iVar4);
snprintf(local_2ec,0x20,"amas_wlc%d_priority_ongoing",iVar4);
uVar3 = nvram_get_int(local_30c);
nvram_set_int(local_2ec,uVar3);
}
- FUN_00124dc4(uVar12);
- FUN_0011a544(2);
+ FUN_0012c180(uVar12);
+ FUN_00121018(2);
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: The Request Done.\n","amas_ipc_receive_handler",0xe1c,uVar3);
- }
- pcVar2 = FUN_00119f1c();
+ dbg("%s(0x%04x): WLC %lu: The Request Done.\n","amas_ipc_receive_handler",0xe1d,uVar3);
+ }
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"The Request Done.\n");
}
- asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0,"The Request Done.\n");
+ asusdebuglog(6,"/jffs/amas_wlcconnect.log",0,1,0x200,"%s(%d) - The Request Done.\n",
+ "amas_ipc_receive_handler",0xe1d);
nvram_set_int("amas_wlcconnect_handler_pid",0);
if (DAT_0 != 0) {
uVar3 = uptime();
_Var5 = getpid();
- dbg("%s(0x%04x): WLC %lu: Child(%d) exit\n","amas_ipc_receive_handler",0xe1e,uVar3,_Var5
+ dbg("%s(0x%04x): WLC %lu: Child(%d) exit\n","amas_ipc_receive_handler",0xe1f,uVar3,_Var5
);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,"Child(%d) exit\n",_Var5);
}
goto LAB_4;
}
if (DAT_0 != 0) {
uVar3 = uptime();
- puVar8 = FUN_00119f1c();
+ puVar8 = FUN_001209f0();
dbg("%s(0x%04x): WLC %lu: IPC: The current request %s state is READY PROCESSING. Drop the new request.\n"
- ,"amas_ipc_event_handler",0xd8c,uVar3,puVar8);
- }
- pcVar2 = FUN_00119f1c();
+ ,"amas_ipc_event_handler",0xd8d,uVar3,puVar8);
+ }
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
- __s1 = FUN_00119f1c();
+ __s1 = FUN_001209f0();
pcVar2 =
"%s(0x%04x): WLC %lu: IPC: The current request %s state is READY PROCESSING. Drop the new request.\n"
;
LAB_10:
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,pcVar2 + 0x15,__s1);
}
}
else {
iVar4 = strcmp(__s1,"START_SELF_OPTIMIZATION");
if (iVar4 == 0) {
uVar12 = 2;
goto LAB_5;
}
iVar4 = strcmp(__s1,"RESTART_CONNECTING");
if (iVar4 == 0) {
uVar12 = 3;
goto LAB_5;
}
iVar4 = strcmp(__s1,"MAINTAIN_STATUS_QUO");
if (iVar4 == 0) {
uVar12 = 4;
goto LAB_5;
}
iVar4 = strcmp(__s1,"STOP_SELF_OPTIMIZATION");
if (iVar4 == 0) {
uVar12 = 5;
goto LAB_5;
}
iVar4 = strcmp(__s1,"DISCONNECT_BAND");
if (iVar4 == 0) {
uVar12 = 6;
goto LAB_5;
}
iVar4 = strcmp(__s1,"START_CONNECTING_BY_DRIVER");
if (iVar4 == 0) {
uVar12 = 9;
goto LAB_5;
}
iVar4 = strcmp(__s1,"START_FOLLOW_CONNECTION");
if (iVar4 == 0) {
uVar12 = 10;
goto LAB_5;
}
if (DAT_0 != 0) {
uVar3 = uptime();
- dbg("%s(0x%04x): WLC %lu: IPC: Not support event: %s\n","amas_ipc_event_handler",0xd86,
+ dbg("%s(0x%04x): WLC %lu: IPC: Not support event: %s\n","amas_ipc_event_handler",0xd87,
uVar3,__s1);
}
- pcVar2 = FUN_00119f1c();
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 == 0) {
pcVar2 = "%s(0x%04x): WLC %lu: IPC: Not support event: %s\n";
goto LAB_10;
}
}
LAB_7:
nvram_set_int("amas_wlc_request_lock",0);
goto LAB_4;
}
if (DAT_0 != 0) {
uVar3 = uptime();
dbg("%s(0x%04x): WLC %lu: Request LOCK!! Drop incomming request.\n","amas_ipc_handle_socekt",
- 0xdef,uVar3);
- }
- pcVar2 = FUN_00119f1c();
+ 0xdf0,uVar3);
+ }
+ pcVar2 = FUN_001209f0();
iVar4 = strcmp(pcVar2,"1");
if (iVar4 != 0) goto LAB_4;
pcVar2 = "%s(0x%04x): WLC %lu: Request LOCK!! Drop incomming request.\n";
}
asusdebuglog(6,"amas_wlcconnect.log",0,1,0,pcVar2 + 0x15);
LAB_4:
/* WARNING: Subroutine does not return */
exit(0);
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.97 |
i_ratio | 0.43 |
m_ratio | 0.98 |
b_ratio | 0.98 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_001049c8 | FUN_0010af14 |
fullname |
FUN_001049c8 | FUN_0010af14 |
refcount | 1 | 1 |
length |
1104 | 1108 |
called |
::__ctype_toupper_loc ::asusdebuglog ::cprintf ::f_exists ::logmessage_normal ::memset ::strcmp ::uptime FUN_00103df8 FUN_00104434 |
::__ctype_toupper_loc ::asusdebuglog ::cprintf ::f_exists ::logmessage_normal ::memset ::strcmp ::uptime FUN_0010a344 FUN_0010a980 |
calling |
FUN_0010b084 | FUN_0011198c |
paramcount | 1 | 1 |
address |
001049c8 | 0010af14 |
sig |
undefined __stdcall FUN_001049c8(undefined * param_1) | undefined __stdcall FUN_0010af14(undefined * param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_001049c8 called
+++ FUN_0010af14 called
@@ -9,2 +9,2 @@
-FUN_00103df8
-FUN_00104434
+FUN_0010a344
+FUN_0010a980
--- FUN_001049c8 calling
+++ FUN_0010af14 calling
@@ -1 +1 @@
-FUN_0010b084
+FUN_0011198c
--- FUN_001049c8
+++ FUN_0010af14
@@ -1,109 +1,109 @@
-void FUN_001049c8(undefined *param_1)
+void FUN_0010af14(undefined *param_1)
{
byte bVar1;
bool bVar2;
__int32_t **pp_Var3;
undefined4 uVar4;
__int32_t *p_Var5;
int iVar6;
byte *pbVar7;
byte *pbVar8;
undefined *puVar9;
byte *pbVar10;
char *pcVar11;
char local_35;
byte local_34 [20];
do {
local_35 = '\0';
memset(local_34,0,0x12);
if (param_1 == (undefined *)0x0) {
return;
}
puVar9 = param_1 + 1;
pcVar11 = *(char **)(param_1 + 0x14);
- FUN_00104434((int)puVar9,&local_35,(char *)local_34);
+ FUN_0010a980((int)puVar9,&local_35,(char *)local_34);
for (; pcVar11 != (char *)0x0; pcVar11 = *(char **)(pcVar11 + 0x14)) {
pp_Var3 = __ctype_toupper_loc();
iVar6 = 0x11;
p_Var5 = *pp_Var3;
pbVar10 = local_34;
do {
iVar6 = iVar6 + -1;
*pbVar10 = (byte)p_Var5[*pbVar10];
pbVar10 = pbVar10 + 1;
} while (iVar6 != 0);
pbVar7 = (byte *)(pcVar11 + 1);
pbVar10 = pbVar7;
do {
pbVar8 = pbVar10 + 1;
*pbVar10 = (byte)p_Var5[*pbVar10];
pbVar10 = pbVar8;
} while (pbVar8 != (byte *)(pcVar11 + 0x12));
if ((DAT_0 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
uVar4 = uptime();
cprintf("RAST %lu: [%s][%s]\n",uVar4,local_34,pbVar7);
}
if ((DAT_1 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"[%s][%s]\n",local_34,pbVar7);
}
if (DAT_2 != 0) {
logmessage_normal("roamast","[%s][%s]\n",local_34,pbVar7);
}
iVar6 = strcmp((char *)local_34,(char *)pbVar7);
if (iVar6 == 0) {
- if ((int)local_35 != 0) {
+ if (local_35 != '\0') {
*param_1 = 1;
- bVar2 = FUN_00103df8((int)local_35,(int)*pcVar11);
+ bVar2 = FUN_0010a344((int)local_35,(int)*pcVar11);
if (bVar2) {
if ((DAT_0 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
uVar4 = uptime();
cprintf("RAST %lu: rcpi follow spec\n",uVar4);
}
if ((DAT_1 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"rcpi follow spec\n");
}
if (DAT_2 != 0) {
logmessage_normal("roamast","rcpi follow spec\n");
}
for (pbVar10 = *(byte **)(param_1 + 0x14); pbVar10 != (byte *)0x0;
pbVar10 = *(byte **)(pbVar10 + 0x14)) {
bVar1 = *pbVar10;
pbVar7 = pbVar10 + 1;
*pbVar10 = (bVar1 >> 1) + 0x92;
if ((DAT_0 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
uVar4 = uptime();
cprintf("RAST %lu: sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",uVar4,puVar9,
pbVar7,bVar1,*pbVar10);
}
if ((DAT_1 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,
"sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",puVar9,pbVar7,
bVar1,*pbVar10);
}
if (DAT_2 != 0) {
logmessage_normal("roamast","sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",
puVar9,pbVar7,bVar1,*pbVar10);
}
uVar4 = uptime();
cprintf("RAST %lu: sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",uVar4,puVar9,
pbVar7,bVar1,*pbVar10);
if ((DAT_1 != 0) || (iVar6 = f_exists("/tmp/RAST_DEBUG"), iVar6 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,
"sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",puVar9,pbVar7,
bVar1,*pbVar10);
}
logmessage_normal("roamast","sta[%s] on ap[%s], rcpi is %hhu and rssi is %hhd\n",
puVar9,pbVar7,bVar1,*pbVar10);
}
}
}
break;
}
}
param_1 = *(undefined **)(param_1 + 0x18);
} while( true );
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,refcount,length,sig,address,calling,called |
ratio | 0.88 |
i_ratio | 0.29 |
m_ratio | 0.96 |
b_ratio | 0.99 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000f9fac | FUN_001043b4 |
fullname |
FUN_000f9fac | FUN_001043b4 |
refcount |
5 | 3 |
length |
860 | 856 |
called |
Expand for full list:::strlen |
Expand for full list:::strlen |
calling |
FUN_000ff220 FUN_001003cc FUN_001016f4 FUN_001028ac |
FUN_00106b50 FUN_00107cac FUN_00108cb0 |
paramcount | 2 | 1 |
address |
000f9fac | 001043b4 |
sig |
undefined4 __stdcall FUN_000f9fac(char * param_1, char * param_2) | undefined4 __stdcall FUN_001043b4(char * param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000f9fac called
+++ FUN_001043b4 called
@@ -9 +8,0 @@
-<EXTERNAL>::snprintf
@@ -10,0 +10 @@
+<EXTERNAL>::strcpy
--- FUN_000f9fac calling
+++ FUN_001043b4 calling
@@ -1,4 +1,3 @@
-FUN_000ff220
-FUN_001003cc
-FUN_001016f4
-FUN_001028ac
+FUN_00106b50
+FUN_00107cac
+FUN_00108cb0
--- FUN_000f9fac
+++ FUN_001043b4
@@ -1,81 +1,81 @@
-undefined4 FUN_000f9fac(char *param_1,char *param_2)
+undefined4 FUN_001043b4(char *param_1)
{
int __fd;
undefined4 uVar1;
int iVar2;
size_t __n;
ssize_t sVar3;
int *piVar4;
char *pcVar5;
sockaddr local_90 [7];
__fd = socket(1,1,0);
if (__fd < 0) {
uVar1 = uptime();
cprintf("RAST %lu: ipc socket error!\n",uVar1);
if ((DAT_0 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"ipc socket error!\n");
}
if (DAT_1 != 0) {
pcVar5 = "RAST %lu: ipc socket error!\n";
LAB_2:
logmessage_normal("roamast",pcVar5 + 10);
}
}
else {
memset(local_90,0,0x6e);
local_90[0].sa_family = 1;
- snprintf(local_90[0].sa_data,0x6c,param_1);
+ strcpy(local_90[0].sa_data,"/var/run/cfgmnt_ipc_socket");
iVar2 = connect(__fd,local_90,0x6e);
if (iVar2 < 0) {
uVar1 = uptime();
cprintf("RAST %lu: ipc connect error\n",uVar1);
if ((DAT_0 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"ipc connect error\n");
}
if (DAT_1 != 0) {
pcVar5 = "RAST %lu: ipc connect error\n";
goto LAB_2;
}
}
else {
if ((DAT_3 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
uVar1 = uptime();
- cprintf("RAST %lu: IPC Send: %s <<< SEND EVENT >>>\n",uVar1,param_2);
+ cprintf("RAST %lu: IPC Send: %s <<< SEND EVENT >>>\n",uVar1,param_1);
}
if ((DAT_0 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
- asusdebuglog(6,"roamast.log",0,1,0,"IPC Send: %s <<< SEND EVENT >>>\n",param_2);
+ asusdebuglog(6,"roamast.log",0,1,0,"IPC Send: %s <<< SEND EVENT >>>\n",param_1);
}
if (DAT_1 != 0) {
- logmessage_normal("roamast","IPC Send: %s <<< SEND EVENT >>>\n",param_2);
+ logmessage_normal("roamast","IPC Send: %s <<< SEND EVENT >>>\n",param_1);
}
- __n = strlen(param_2);
- sVar3 = write(__fd,param_2,__n);
+ __n = strlen(param_1);
+ sVar3 = write(__fd,param_1,__n);
if (-1 < sVar3) {
uVar1 = 1;
goto LAB_4;
}
uVar1 = uptime();
piVar4 = __errno_location();
pcVar5 = strerror(*piVar4);
- cprintf("RAST %lu: [%s:(%d)] ERROR writing:%s.\n",uVar1,"rast_ipc_send_event",0x6b4,pcVar5);
+ cprintf("RAST %lu: [%s:(%d)] ERROR writing:%s.\n",uVar1,"rast_ipc_send_event",0x6c5,pcVar5);
if ((DAT_0 != 0) || (iVar2 = f_exists("/tmp/RAST_DEBUG"), iVar2 != 0)) {
pcVar5 = strerror(*piVar4);
asusdebuglog(6,"roamast.log",0,1,0,"[%s:(%d)] ERROR writing:%s.\n","rast_ipc_send_event",
- 0x6b4,pcVar5);
+ 0x6c5,pcVar5);
}
if (DAT_1 != 0) {
pcVar5 = strerror(*piVar4);
- logmessage_normal("roamast","[%s:(%d)] ERROR writing:%s.\n","rast_ipc_send_event",0x6b4,
+ logmessage_normal("roamast","[%s:(%d)] ERROR writing:%s.\n","rast_ipc_send_event",0x6c5,
pcVar5);
}
}
}
uVar1 = 0xffffffff;
LAB_4:
close(__fd);
return uVar1;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.31 |
i_ratio | 0.05 |
m_ratio | 0.36 |
b_ratio | 0.64 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00110a30 | FUN_001173b8 |
fullname |
FUN_00110a30 | FUN_001173b8 |
refcount | 1 | 1 |
length |
1424 | 1464 |
called |
Expand for full list:::wgn_subnet_list_set_to_nvram |
Expand for full list:::wgn_subnet_list_set_to_nvram |
calling |
FUN_00111a5c | FUN_001184bc |
paramcount | 0 | 0 |
address |
00110a30 | 001173b8 |
sig |
undefined __stdcall FUN_00110a30(void) | undefined __stdcall FUN_001173b8(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00110a30 called
+++ FUN_001173b8 called
@@ -16 +16 @@
-FUN_0010fdd0
+FUN_00116758
--- FUN_00110a30 calling
+++ FUN_001173b8 calling
@@ -1 +1 @@
-FUN_00111a5c
+FUN_001184bc
--- FUN_00110a30
+++ FUN_001173b8
@@ -1,163 +1,164 @@
-void FUN_00110a30(void)
+void FUN_001173b8(void)
{
in_addr iVar1;
bool bVar2;
int iVar3;
- char *pcVar4;
+ void *pvVar4;
char *pcVar5;
+ char *pcVar6;
+ uint uVar7;
char *__s;
- uint uVar6;
- char *pcVar7;
uint uVar8;
- uint uStack_ca05c;
- undefined *puStack_ca058;
- uint uStack_ca04c;
- int iStack_ca048;
- undefined *puStack_ca044;
- uint uStack_ca034;
- uint uStack_ca030;
- int iStack_ca02c;
- int iStack_ca028;
- in_addr iStack_ca024;
- undefined auStack_ca020 [25600];
- undefined auStack_c3c20 [53];
- undefined auStack_c3beb [25547];
- undefined auStack_bd820 [388096];
- undefined auStack_5ec20 [388096];
+ undefined *puVar9;
+ char *pcVar10;
+ uint uStack_12c50;
+ undefined *puStack_12c4c;
+ int iStack_12c48;
+ uint uStack_12c34;
+ uint uStack_12c30;
+ int iStack_12c2c;
+ int iStack_12c28;
+ in_addr iStack_12c24;
+ undefined auStack_12c20 [12800];
+ undefined auStack_fa20 [53];
+ undefined auStack_f9eb [12747];
+ undefined auStack_c820 [25600];
+ undefined auStack_6420 [25600];
- uStack_ca034 = 0;
- uStack_ca030 = 0;
- iStack_ca02c = 0;
- iStack_ca028 = 0;
+ uStack_12c34 = 0;
+ uStack_12c30 = 0;
+ iStack_12c2c = 0;
+ iStack_12c28 = 0;
iVar3 = nvram_get_int("re_mode");
if (iVar3 != 1) {
iVar3 = nvram_get("sw_mode");
if (iVar3 == 0) {
- pcVar4 = (char *)nvram_default_get("sw_mode");
- iVar3 = atoi(pcVar4);
+ pcVar5 = (char *)nvram_default_get("sw_mode");
+ iVar3 = atoi(pcVar5);
}
else {
iVar3 = nvram_get_int();
}
iVar3 = iVar3 + -1;
if (iVar3 != 0) {
iVar3 = 1;
}
- if ((iVar3 == 0) || (bVar2 = FUN_0010fdd0(), bVar2)) {
- memset(auStack_ca020,0,0x6400);
- iVar3 = wgn_vlan_list_get_other_from_nvram(auStack_ca020,0x100,&uStack_ca034);
- if ((iVar3 != 0) && (uStack_ca034 != 0)) {
- memset(auStack_5ec20,0,0x5ec00);
- iVar3 = wgn_subnet_list_get_other_from_nvram(auStack_5ec20,0x100,&iStack_ca028);
- if ((iVar3 != 0) && (iStack_ca028 != 0)) {
- memset(auStack_c3c20,0,0x6400);
- iVar3 = wgn_vlan_list_get_from_nvram(auStack_c3c20,0x100,&uStack_ca030);
- if ((iVar3 != 0) && (uStack_ca030 != 0)) {
- memset(auStack_bd820,0,0x5ec00);
- iVar3 = wgn_subnet_list_get_from_nvram(auStack_bd820,0x100,&iStack_ca02c);
- if ((iVar3 != 0) && (iStack_ca02c != 0)) {
+ if ((iVar3 == 0) || (bVar2 = FUN_00116758(), bVar2)) {
+ memset(auStack_12c20,0,0x3200);
+ iVar3 = wgn_vlan_list_get_other_from_nvram(auStack_12c20,0x80,&uStack_12c34);
+ if ((iVar3 != 0) && (uStack_12c34 != 0)) {
+ pvVar4 = memset(auStack_6420,0,0x6400);
+ iVar3 = wgn_subnet_list_get_other_from_nvram(pvVar4,0x80,&iStack_12c28);
+ if ((iVar3 != 0) && (iStack_12c28 != 0)) {
+ puStack_12c4c = auStack_fa20;
+ memset(puStack_12c4c,0,0x3200);
+ iVar3 = wgn_vlan_list_get_from_nvram(puStack_12c4c,0x80,&uStack_12c30);
+ if ((iVar3 != 0) && (uStack_12c30 != 0)) {
+ pvVar4 = memset(auStack_c820,0,0x6400);
+ iVar3 = wgn_subnet_list_get_from_nvram(pvVar4,0x80,&iStack_12c2c);
+ if ((iVar3 != 0) && (iStack_12c2c != 0)) {
bVar2 = false;
- uStack_ca05c = 0;
- puStack_ca058 = auStack_c3c20;
+ uStack_12c50 = 0;
LAB_0:
- if (uStack_ca05c < uStack_ca030) {
- __s = puStack_ca058 + 0x35;
- pcVar4 = (char *)wgn_subnet_list_find(auStack_bd820,iStack_ca02c,__s);
- if (pcVar4 != (char *)0x0) goto code_r0x00110c20;
+ if (uStack_12c50 < uStack_12c30) {
+ __s = puStack_12c4c + 0x35;
+ pcVar5 = (char *)wgn_subnet_list_find(auStack_c820,iStack_12c2c,__s);
+ if (pcVar5 != (char *)0x0) goto code_r0x001175a8;
goto LAB_1;
}
if (bVar2) {
- wgn_vlan_list_set_to_nvram(auStack_c3c20);
- wgn_subnet_list_set_to_nvram(auStack_bd820,iStack_ca02c);
+ wgn_vlan_list_set_to_nvram(auStack_fa20);
+ wgn_subnet_list_set_to_nvram(auStack_c820,iStack_12c2c);
}
}
}
}
}
}
}
return;
-code_r0x00110c20:
- iStack_ca048 = 0;
- puStack_ca044 = auStack_ca020;
- for (uStack_ca04c = 0; uStack_ca04c < uStack_ca034; uStack_ca04c = uStack_ca04c + 1) {
- iVar3 = wgn_subnet_list_find(auStack_5ec20,iStack_ca028,puStack_ca044 + 0x35);
+code_r0x001175a8:
+ iStack_12c48 = 0;
+ puVar9 = auStack_12c20;
+ for (uVar8 = 0; uVar8 < uStack_12c34; uVar8 = uVar8 + 1) {
+ iVar3 = wgn_subnet_list_find(auStack_6420,iStack_12c28,puVar9 + 0x35);
if (iVar3 != 0) {
- pcVar7 = pcVar4 + 0x11;
- iStack_ca048 = inet_deconflict(pcVar4,pcVar7,iVar3,iVar3 + 0x11,&iStack_ca024);
- iVar1.s_addr = iStack_ca024.s_addr;
- if (iStack_ca048 != 0) {
- memset(pcVar4,0,0x11);
- pcVar5 = inet_ntoa(iVar1);
- snprintf(pcVar4,0x10,"%s",pcVar5);
- memset(pcVar7,0,0x11);
- pcVar5 = inet_ntoa((in_addr)0xffffff);
- snprintf(pcVar7,0x10,"%s",pcVar5);
- uVar6 = (iStack_ca024.s_addr << 0x18 | (iStack_ca024.s_addr >> 8 & 0xff) << 0x10 |
- (iStack_ca024.s_addr >> 0x10 & 0xff) << 8 | iStack_ca024.s_addr >> 0x18) + 1;
- memset(pcVar4 + 0x28,0,0x11);
- pcVar7 = inet_ntoa((in_addr)(uVar6 * 0x1000000 | (uVar6 >> 8 & 0xff) << 0x10 |
- (uVar6 >> 0x10 & 0xff) << 8 | uVar6 >> 0x18));
- snprintf(pcVar4 + 0x28,0x10,"%s",pcVar7);
- uVar6 = iStack_ca024.s_addr & 0xffffff;
- memset(pcVar4 + 0x39,0,0x11);
- pcVar7 = inet_ntoa((in_addr)(uVar6 | 0xfe000000));
- snprintf(pcVar4 + 0x39,0x10,"%s",pcVar7);
+ pcVar10 = pcVar5 + 0x11;
+ iStack_12c48 = inet_deconflict(pcVar5,pcVar10,iVar3,iVar3 + 0x11,&iStack_12c24);
+ iVar1.s_addr = iStack_12c24.s_addr;
+ if (iStack_12c48 != 0) {
+ memset(pcVar5,0,0x11);
+ pcVar6 = inet_ntoa(iVar1);
+ snprintf(pcVar5,0x10,"%s",pcVar6);
+ memset(pcVar10,0,0x11);
+ pcVar6 = inet_ntoa((in_addr)0xffffff);
+ snprintf(pcVar10,0x10,"%s",pcVar6);
+ uVar7 = (iStack_12c24.s_addr << 0x18 | (iStack_12c24.s_addr >> 8 & 0xff) << 0x10 |
+ (iStack_12c24.s_addr >> 0x10 & 0xff) << 8 | iStack_12c24.s_addr >> 0x18) + 1;
+ memset(pcVar5 + 0x28,0,0x11);
+ pcVar10 = inet_ntoa((in_addr)(uVar7 * 0x1000000 | (uVar7 >> 8 & 0xff) << 0x10 |
+ (uVar7 >> 0x10 & 0xff) << 8 | uVar7 >> 0x18));
+ snprintf(pcVar5 + 0x28,0x10,"%s",pcVar10);
+ uVar7 = iStack_12c24.s_addr & 0xffffff;
+ memset(pcVar5 + 0x39,0,0x11);
+ pcVar10 = inet_ntoa((in_addr)(uVar7 | 0xfe000000));
+ snprintf(pcVar5 + 0x39,0x10,"%s",pcVar10);
memset(__s,0,0x21);
- uVar6 = ipmask_to_int(0xffffff00);
- snprintf(__s,0x20,"%s/%d",pcVar4,uVar6);
- pcVar4 = (char *)wgn_subnet_list_find(auStack_bd820,iStack_ca02c,__s);
- if (pcVar4 == (char *)0x0) {
+ uVar7 = ipmask_to_int(0xffffff00);
+ snprintf(__s,0x20,"%s/%d",pcVar5,uVar7);
+ pcVar5 = (char *)wgn_subnet_list_find(auStack_c820,iStack_12c2c,__s);
+ if (pcVar5 == (char *)0x0) {
bVar2 = true;
- uStack_ca05c = uStack_ca05c + 1;
- puStack_ca058 = puStack_ca058 + 100;
+ uStack_12c50 = uStack_12c50 + 1;
+ puStack_12c4c = puStack_12c4c + 100;
goto LAB_0;
}
bVar2 = true;
}
}
- puStack_ca044 = puStack_ca044 + 100;
+ puVar9 = puVar9 + 100;
}
- for (uVar6 = 0; uVar6 < uStack_ca030; uVar6 = uVar6 + 1) {
- if ((uStack_ca05c != uVar6) &&
- (iVar3 = wgn_subnet_list_find(auStack_bd820,iStack_ca02c,auStack_c3beb + uVar6 * 100),
- iVar3 != 0)) {
- pcVar7 = pcVar4 + 0x11;
- iStack_ca048 = inet_deconflict(pcVar4,pcVar7,iVar3,iVar3 + 0x11,&iStack_ca024);
- iVar1.s_addr = iStack_ca024.s_addr;
- if (iStack_ca048 != 0) {
- memset(pcVar4,0,0x11);
- pcVar5 = inet_ntoa(iVar1);
- snprintf(pcVar4,0x10,"%s",pcVar5);
- memset(pcVar7,0,0x11);
- pcVar5 = inet_ntoa((in_addr)0xffffff);
- snprintf(pcVar7,0x10,"%s",pcVar5);
- uVar8 = (iStack_ca024.s_addr << 0x18 | (iStack_ca024.s_addr >> 8 & 0xff) << 0x10 |
- (iStack_ca024.s_addr >> 0x10 & 0xff) << 8 | iStack_ca024.s_addr >> 0x18) + 1;
- memset(pcVar4 + 0x28,0,0x11);
- pcVar7 = inet_ntoa((in_addr)(uVar8 * 0x1000000 | (uVar8 >> 8 & 0xff) << 0x10 |
- (uVar8 >> 0x10 & 0xff) << 8 | uVar8 >> 0x18));
- snprintf(pcVar4 + 0x28,0x10,"%s",pcVar7);
- uVar8 = iStack_ca024.s_addr & 0xffffff;
- memset(pcVar4 + 0x39,0,0x11);
- pcVar7 = inet_ntoa((in_addr)(uVar8 | 0xfe000000));
- snprintf(pcVar4 + 0x39,0x10,"%s",pcVar7);
- memset(__s,0,0x21);
- uVar8 = ipmask_to_int(0xffffff00);
- bVar2 = true;
- snprintf(__s,0x20,"%s/%d",pcVar4,uVar8);
- pcVar4 = (char *)wgn_subnet_list_find(auStack_bd820,iStack_ca02c,__s);
- if (pcVar4 == (char *)0x0) break;
+ for (uVar8 = 0; uVar8 < uStack_12c30; uVar8 = uVar8 + 1) {
+ if (uStack_12c50 != uVar8) {
+ iVar3 = wgn_subnet_list_find(auStack_c820,iStack_12c2c,auStack_f9eb + uVar8 * 100);
+ if (iVar3 != 0) {
+ pcVar10 = pcVar5 + 0x11;
+ iStack_12c48 = inet_deconflict(pcVar5,pcVar10,iVar3,iVar3 + 0x11,&iStack_12c24);
+ iVar1.s_addr = iStack_12c24.s_addr;
+ if (iStack_12c48 != 0) {
+ memset(pcVar5,0,0x11);
+ pcVar6 = inet_ntoa(iVar1);
+ snprintf(pcVar5,0x10,"%s",pcVar6);
+ memset(pcVar10,0,0x11);
+ pcVar6 = inet_ntoa((in_addr)0xffffff);
+ snprintf(pcVar10,0x10,"%s",pcVar6);
+ uVar7 = (iStack_12c24.s_addr << 0x18 | (iStack_12c24.s_addr >> 8 & 0xff) << 0x10 |
+ (iStack_12c24.s_addr >> 0x10 & 0xff) << 8 | iStack_12c24.s_addr >> 0x18) + 1;
+ memset(pcVar5 + 0x28,0,0x11);
+ pcVar10 = inet_ntoa((in_addr)(uVar7 * 0x1000000 | (uVar7 >> 8 & 0xff) << 0x10 |
+ (uVar7 >> 0x10 & 0xff) << 8 | uVar7 >> 0x18));
+ snprintf(pcVar5 + 0x28,0x10,"%s",pcVar10);
+ uVar7 = iStack_12c24.s_addr & 0xffffff;
+ memset(pcVar5 + 0x39,0,0x11);
+ pcVar10 = inet_ntoa((in_addr)(uVar7 | 0xfe000000));
+ bVar2 = true;
+ snprintf(pcVar5 + 0x39,0x10,"%s",pcVar10);
+ memset(__s,0,0x21);
+ uVar7 = ipmask_to_int(0xffffff00);
+ snprintf(__s,0x20,"%s/%d",pcVar5,uVar7);
+ pcVar5 = (char *)wgn_subnet_list_find(auStack_c820,iStack_12c2c,__s);
+ if (pcVar5 == (char *)0x0) break;
+ }
}
}
}
- if (iStack_ca048 != 1) {
+ if (iStack_12c48 != 1) {
LAB_1:
- uStack_ca05c = uStack_ca05c + 1;
- puStack_ca058 = puStack_ca058 + 100;
+ uStack_12c50 = uStack_12c50 + 1;
+ puStack_12c4c = puStack_12c4c + 100;
}
goto LAB_0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.95 |
i_ratio | 0.45 |
m_ratio | 0.99 |
b_ratio | 0.84 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_001016f4 | FUN_00107cac |
fullname |
FUN_001016f4 | FUN_00107cac |
refcount | 2 | 2 |
length |
1816 | 1808 |
called |
Expand for full list:::logmessage_normal |
Expand for full list:::logmessage_normal |
calling |
FUN_000fc394 | FUN_00102d44 |
paramcount | 1 | 1 |
address |
001016f4 | 00107cac |
sig |
int __stdcall FUN_001016f4(undefined4 param_1) | int __stdcall FUN_00107cac(undefined4 param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_001016f4 called
+++ FUN_00107cac called
@@ -20,4 +20,4 @@
-FUN_000f94e8
-FUN_000f9fac
-FUN_000ff1ac
-FUN_00108304
+FUN_00101d60
+FUN_001043b4
+FUN_00105a1c
+FUN_0010ec0c
--- FUN_001016f4 calling
+++ FUN_00107cac calling
@@ -1 +1 @@
-FUN_000fc394
+FUN_00102d44
--- FUN_001016f4
+++ FUN_00107cac
@@ -1,174 +1,174 @@
-int FUN_001016f4(undefined4 param_1)
+int FUN_00107cac(undefined4 param_1)
{
undefined4 uVar1;
char *pcVar2;
undefined4 uVar3;
undefined *__n;
undefined4 *puVar4;
size_t sVar5;
undefined4 uVar6;
undefined4 uVar7;
undefined *puVar8;
int iVar9;
int iVar10;
undefined4 local_1a8;
int local_1a4;
int local_1a0;
int local_19c;
undefined4 local_198;
undefined4 auStack_194 [2];
char acStack_18c [8];
char acStack_184 [8];
char acStack_17c [8];
char acStack_174 [8];
char acStack_16c [16];
char acStack_15c [20];
char acStack_148 [20];
char acStack_134 [20];
char acStack_120 [256];
local_1a8 = 0;
local_1a4 = 0;
local_1a0 = 0;
local_19c = 0;
local_198 = 0;
if ((DAT_0 != 0) || (iVar10 = f_exists("/tmp/RAST_DEBUG"), iVar10 != 0)) {
uVar1 = uptime();
cprintf("RAST %lu: Process STAMON event\n",uVar1);
}
if ((DAT_1 != 0) || (iVar10 = f_exists("/tmp/RAST_DEBUG"), iVar10 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"Process STAMON event\n");
}
if (DAT_2 != 0) {
logmessage_normal("roamast","Process STAMON event\n");
}
uVar1 = json_tokener_parse(param_1);
json_object_object_get_ex(uVar1,&DAT_3,&local_1a8);
json_object_object_get_ex(local_1a8,"STA",&local_1a4);
json_object_object_get_ex(local_1a8,&DAT_4,&local_1a0);
json_object_object_get_ex(local_1a8,"BAND",&local_19c);
json_object_object_get_ex(local_1a8,"SERVED_AP_BSSID",&local_198);
if (((((local_1a4 == 0) || (pcVar2 = (char *)json_object_get_string(), *pcVar2 == '\0')) ||
(local_1a0 == 0)) ||
((pcVar2 = (char *)json_object_get_string(), *pcVar2 == '\0' || (local_19c == 0)))) ||
(pcVar2 = (char *)json_object_get_string(), *pcVar2 == '\0')) {
if ((DAT_0 != 0) || (iVar10 = f_exists("/tmp/RAST_DEBUG"), iVar10 != 0)) {
uVar3 = uptime();
cprintf("RAST %lu: incorrect data format!!\n",uVar3);
}
if ((DAT_1 != 0) || (iVar10 = f_exists("/tmp/RAST_DEBUG"), iVar10 != 0)) {
asusdebuglog(6,"roamast.log",0,1,0,"incorrect data format!!\n");
}
iVar10 = DAT_2;
if (DAT_2 != 0) {
iVar10 = 0;
logmessage_normal("roamast","incorrect data format!!\n");
}
}
else {
uVar3 = json_object_get_string(local_1a4);
snprintf(acStack_15c,0x12,"%s",uVar3);
uVar3 = json_object_get_string(local_1a0);
snprintf(acStack_16c,0x10,"%s",uVar3);
uVar3 = json_object_get_string(local_19c);
snprintf(acStack_18c,8,"%s",uVar3);
uVar3 = json_object_get_string(local_198);
snprintf(acStack_148,0x12,"%s",uVar3);
nvram_set("nac_bssid",acStack_148);
puVar8 = &DAT_5;
for (iVar10 = 0; iVar10 < (int)(uint)DAT_6; iVar10 = iVar10 + 1) {
if (*(int *)(puVar8 + 0x40) == 2) {
__n = (undefined *)strlen(acStack_18c);
pcVar2 = "2";
LAB_7:
iVar9 = strncmp(acStack_18c,pcVar2,(size_t)__n);
if ((iVar9 == 0) && (*(int *)(puVar8 + 0x7c) == 1)) {
if ((DAT_0 != 0) || (iVar9 = f_exists("/tmp/RAST_DEBUG"), iVar9 != 0)) {
uVar3 = uptime();
__n = puVar8;
cprintf("RAST %lu: [%s] perform sta monitor...\n",uVar3);
}
if ((DAT_1 != 0) || (iVar9 = f_exists("/tmp/RAST_DEBUG"), iVar9 != 0)) {
__n = (undefined *)0x0;
asusdebuglog(6,"roamast.log",0,1,0,"[%s] perform sta monitor...\n",puVar8);
}
if (DAT_2 != 0) {
__n = puVar8;
logmessage_normal("roamast","[%s] perform sta monitor...\n");
}
- puVar4 = FUN_000ff1ac(acStack_15c,auStack_194,__n);
- iVar9 = FUN_00108304(iVar10,puVar4);
+ puVar4 = FUN_00105a1c(acStack_15c,auStack_194,__n);
+ iVar9 = FUN_0010ec0c(iVar10,puVar4);
if (iVar9 != 0) {
uVar3 = (&DAT_8)[iVar10 * 0x36];
goto LAB_9;
}
}
}
else if (*(int *)(puVar8 + 0x40) == 1) {
__n = (undefined *)strlen(acStack_18c);
pcVar2 = "1";
goto LAB_7;
}
puVar8 = puVar8 + 0xd8;
}
uVar3 = 0xffffff9d;
iVar9 = -99;
LAB_9:
iVar10 = nvram_get_int("re_mode");
if (iVar10 == 0) {
sVar5 = strlen(acStack_18c);
iVar10 = strncmp(acStack_18c,"2",sVar5);
if (iVar10 == 0) {
- puVar8 = FUN_000f94e8();
+ puVar8 = FUN_00101d60();
}
else {
- puVar8 = FUN_000f94e8();
+ puVar8 = FUN_00101d60();
}
}
else {
sVar5 = strlen(acStack_18c);
iVar10 = strncmp(acStack_18c,"2",sVar5);
if (iVar10 == 0) {
- puVar8 = FUN_000f94e8();
+ puVar8 = FUN_00101d60();
}
else {
- puVar8 = FUN_000f94e8();
+ puVar8 = FUN_00101d60();
}
}
snprintf(acStack_134,0x12,"%s",puVar8);
- puVar8 = FUN_000f94e8();
+ puVar8 = FUN_00101d60();
snprintf(acStack_17c,8,"%d",2);
snprintf(acStack_184,8,"%d",iVar9);
snprintf(acStack_174,8,"%d",uVar3);
uVar3 = json_object_new_object();
uVar6 = json_object_new_object();
uVar7 = json_object_new_string(acStack_17c);
json_object_object_add(uVar6,&DAT_10,uVar7);
uVar7 = json_object_new_string(acStack_15c);
json_object_object_add(uVar6,"STA",uVar7);
uVar7 = json_object_new_string(acStack_184);
json_object_object_add(uVar6,"RSSI",uVar7);
uVar7 = json_object_new_string(acStack_16c);
json_object_object_add(uVar6,&DAT_4,uVar7);
uVar7 = json_object_new_string(puVar8);
json_object_object_add(uVar6,&DAT_11,uVar7);
uVar7 = json_object_new_string(acStack_18c);
json_object_object_add(uVar6,"BAND",uVar7);
uVar7 = json_object_new_string(acStack_174);
json_object_object_add(uVar6,"AP_RSSI_CRITERIA",uVar7);
uVar7 = json_object_new_string(acStack_134);
json_object_object_add(uVar6,"AP_TARGET_MAC",uVar7);
json_object_object_add(uVar3,&DAT_12,uVar6);
memset(acStack_120,0,0x100);
uVar6 = json_object_to_json_string(uVar3);
snprintf(acStack_120,0x100,"%s",uVar6);
json_object_put(uVar3);
- FUN_000f9fac("/var/run/cfgmnt_ipc_socket",acStack_120);
+ FUN_001043b4(acStack_120);
iVar10 = 1;
}
json_object_put(uVar1);
return iVar10;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.4 |
i_ratio | 0.33 |
m_ratio | 0.96 |
b_ratio | 1.0 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00113500 | FUN_00119f4c |
fullname |
FUN_00113500 | FUN_00119f4c |
refcount | 2 | 2 |
length |
1640 | 1624 |
called |
Expand for full list:FUN_0010fe30 |
Expand for full list:FUN_001167b8 |
calling |
FUN_0002ce30 | FUN_0002dbc0 |
paramcount | 2 | 2 |
address |
00113500 | 00119f4c |
sig |
undefined __stdcall FUN_00113500(char * param_1, uint param_2) | undefined __stdcall FUN_00119f4c(char * param_1, uint param_2) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00113500 called
+++ FUN_00119f4c called
@@ -12,6 +12,6 @@
-FUN_0010fe30
-FUN_00110558
-FUN_001105c0
-FUN_00110948
-FUN_00111f54
-FUN_001120b8
+FUN_001167b8
+FUN_00116ee0
+FUN_00116f48
+FUN_001172d0
+FUN_001189b0
+FUN_00118b14
--- FUN_00113500 calling
+++ FUN_00119f4c calling
@@ -1 +1 @@
-FUN_0002ce30
+FUN_0002dbc0
--- FUN_00113500
+++ FUN_00119f4c
@@ -1,172 +1,172 @@
/* WARNING: Type propagation algorithm not settling */
-void FUN_00113500(char *param_1,uint param_2)
+void FUN_00119f4c(char *param_1,uint param_2)
{
int iVar1;
char *pcVar2;
int *piVar3;
int iVar4;
uint uVar5;
undefined4 uVar6;
- uint local_9e98;
- char *local_9e94;
- int local_9e78;
- int local_9e74 [6];
- char acStack_9e5c [20];
- char acStack_9e48 [36];
- char *local_9e24;
- char *local_9e20;
- char *local_9e1c;
- char *local_9e18;
- int local_9e14;
- char acStack_9620 [12800];
- undefined auStack_6420 [25600];
+ uint local_5398;
+ char *local_5394;
+ int local_5378;
+ int local_5374 [6];
+ char acStack_535c [20];
+ char acStack_5348 [36];
+ char *local_5324;
+ char *local_5320;
+ char *local_531c;
+ char *local_5318;
+ int local_5314;
+ char acStack_4b20 [6400];
+ undefined auStack_3220 [12800];
- local_9e78 = 0;
- local_9e74[0] = 0;
- local_9e74[1] = 0;
- local_9e74[2] = 0;
- local_9e74[3] = 0;
- local_9e74[4] = 0;
- local_9e74[5] = 0;
+ local_5378 = 0;
+ local_5374[0] = 0;
+ local_5374[1] = 0;
+ local_5374[2] = 0;
+ local_5374[3] = 0;
+ local_5374[4] = 0;
+ local_5374[5] = 0;
if ((((param_1 != (char *)0x0) && (*param_1 != '\0')) && (param_2 < 2)) &&
(iVar1 = strncmp(param_1,"wds",3), iVar1 == 0)) {
- iVar1 = __isoc99_sscanf(param_1,"wds%d.%d.%d.%d.%d",&local_9e78,local_9e74,local_9e74 + 1,
- local_9e74 + 2,local_9e74 + 3);
+ iVar1 = __isoc99_sscanf(param_1,"wds%d.%d.%d.%d.%d",&local_5378,local_5374,local_5374 + 1,
+ local_5374 + 2,local_5374 + 3);
if (iVar1 == 3) {
- pcVar2 = FUN_00110948(acStack_9620,0x100,(uint *)(local_9e74 + 4));
+ pcVar2 = FUN_001172d0(acStack_4b20,0x80,(uint *)(local_5374 + 4));
if (pcVar2 != (char *)0x0) {
- iVar1 = wgn_vlan_list_get_from_nvram(auStack_6420,0x100,local_9e74 + 5);
+ iVar1 = wgn_vlan_list_get_from_nvram(auStack_3220,0x80,local_5374 + 5);
if (iVar1 != 0) {
iVar1 = nvram_get_int("re_mode");
if (iVar1 == 1) {
- wgn_vlan_list_wl_subunit_shift(auStack_6420,local_9e74[5]);
+ wgn_vlan_list_wl_subunit_shift(auStack_3220,local_5374[5]);
}
- local_9e94 = acStack_9620;
- for (local_9e98 = 0; local_9e98 < (uint)local_9e74[4]; local_9e98 = local_9e98 + 1) {
- piVar3 = (int *)wgn_vlan_list_find(auStack_6420,local_9e74[5],local_9e94 + 0x11);
+ local_5394 = acStack_4b20;
+ for (local_5398 = 0; local_5398 < (uint)local_5374[4]; local_5398 = local_5398 + 1) {
+ piVar3 = (int *)wgn_vlan_list_find(auStack_3220,local_5374[5],local_5394 + 0x11);
if (((piVar3 != (int *)0x0) && (*piVar3 != 0)) && (piVar3[1] != 0)) {
- local_9e74[0] = 0;
- local_9e78 = 0;
- wgn_get_wl_unit(&local_9e78,local_9e74,piVar3);
- iVar1 = FUN_001120b8(local_9e78,local_9e74[0]);
- if ((iVar1 != 0) && (iVar1 = FUN_00111f54(local_9e78,local_9e74[0]), iVar1 == 0)) {
- memset(acStack_9e5c,0,0x11);
- snprintf(acStack_9e5c,0x10,"%s.%d",param_1,piVar3[1]);
- memset(acStack_9e48,0,0x21);
- snprintf(acStack_9e48,0x20,"%d",piVar3[1]);
+ local_5374[0] = 0;
+ local_5378 = 0;
+ wgn_get_wl_unit(&local_5378,local_5374,piVar3);
+ iVar1 = FUN_00118b14(local_5378,local_5374[0]);
+ if ((iVar1 != 0) && (iVar1 = FUN_001189b0(local_5378,local_5374[0]), iVar1 == 0)) {
+ memset(acStack_535c,0,0x11);
+ snprintf(acStack_535c,0x10,"%s.%d",param_1,piVar3[1]);
+ memset(acStack_5348,0,0x21);
+ snprintf(acStack_5348,0x20,"%d",piVar3[1]);
if (param_2 == 1) {
iVar1 = strncmp(param_1,"wds",3);
if (iVar1 == 0) {
- local_9e24 = "brctl";
- local_9e20 = "delif";
- local_9e1c = &DAT_0;
- local_9e18 = param_1;
- local_9e14 = iVar1;
- iVar4 = _eval(&local_9e24,0,0);
+ local_5324 = "brctl";
+ local_5320 = "delif";
+ local_531c = &DAT_0;
+ local_5318 = param_1;
+ local_5314 = iVar1;
+ iVar4 = _eval(&local_5324,0,0);
if (iVar4 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",iVar1);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x66c,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x68c,pcVar2);
}
}
- local_9e24 = DAT_1;
- local_9e20 = (char *)DAT_2;
- local_9e1c = (char *)DAT_3;
- local_9e18 = (char *)DAT_4;
+ local_5324 = DAT_1;
+ local_5320 = (char *)DAT_2;
+ local_531c = (char *)DAT_3;
+ local_5318 = (char *)DAT_4;
uVar6 = 0;
- iVar1 = _eval(&local_9e24,0,0);
+ iVar1 = _eval(&local_5324,0,0);
if (iVar1 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",uVar6);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x66d,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x68d,pcVar2);
}
- local_9e24 = "vconfig";
- local_9e14 = 0;
- local_9e20 = "add";
+ local_5324 = "vconfig";
+ local_5320 = "add";
uVar6 = 0;
- local_9e1c = param_1;
- local_9e18 = acStack_9e48;
- iVar1 = _eval(&local_9e24,0,0);
+ local_5314 = 0;
+ local_531c = param_1;
+ local_5318 = acStack_5348;
+ iVar1 = _eval(&local_5324,0,0);
if (iVar1 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",uVar6);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x66f,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x68f,pcVar2);
}
- FUN_0010fe30(acStack_9e5c,0x1043,(char *)0x0,(char *)0x0);
+ FUN_001167b8(acStack_535c,0x1043,(char *)0x0,(char *)0x0);
iVar1 = strncmp(param_1,"wds",3);
if (iVar1 == 0) {
- local_9e24 = "brctl";
- local_9e20 = "addif";
- local_9e1c = &DAT_0;
- local_9e18 = param_1;
- local_9e14 = iVar1;
- iVar4 = _eval(&local_9e24,0,0);
+ local_5324 = "brctl";
+ local_5320 = "addif";
+ local_531c = &DAT_0;
+ local_5318 = param_1;
+ local_5314 = iVar1;
+ iVar4 = _eval(&local_5324,0,0);
if (iVar4 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",iVar1);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x674,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x694,pcVar2);
}
}
- local_9e24 = "brctl";
- local_9e20 = "addif";
- local_9e14 = 0;
- local_9e1c = acStack_9620 + local_9e98 * 0x32;
+ local_5324 = "brctl";
+ local_5320 = "addif";
+ local_5314 = 0;
+ local_531c = acStack_4b20 + local_5398 * 0x32;
uVar6 = 0;
- local_9e18 = acStack_9e5c;
- iVar1 = _eval(&local_9e24,0,0);
+ local_5318 = acStack_535c;
+ iVar1 = _eval(&local_5324,0,0);
if (iVar1 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",uVar6);
- cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x675,pcVar2);
+ cprintf("%s(LINE:%d):%s\n","amas_wgn.c",0x695,pcVar2);
}
- local_9e24 = DAT_5;
- local_9e20 = DAT_6;
- local_9e1c = DAT_7;
- local_9e18 = (char *)DAT_8;
+ local_5324 = DAT_5;
+ local_5320 = DAT_6;
+ local_531c = DAT_7;
+ local_5318 = (char *)DAT_8;
uVar6 = 0;
- iVar1 = _eval(&local_9e24,0,0);
+ iVar1 = _eval(&local_5324,0,0);
if (iVar1 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",uVar6);
- uVar6 = 0x676;
+ uVar6 = 0x696;
LAB_9:
cprintf("%s(LINE:%d):%s\n","amas_wgn.c",uVar6,pcVar2);
}
}
else {
- uVar5 = FUN_001105c0((uint)acStack_9e5c);
+ uVar5 = FUN_00116f48((uint)acStack_535c);
if (uVar5 != 0) {
- local_9e24 = "vconfig";
- local_9e20 = &DAT_10;
- local_9e1c = acStack_9e5c;
- local_9e18 = (char *)iVar1;
- iVar4 = _eval(&local_9e24,0,0);
+ local_5324 = "vconfig";
+ local_5320 = &DAT_10;
+ local_531c = acStack_535c;
+ local_5318 = (char *)iVar1;
+ iVar4 = _eval(&local_5324,0,0);
if (iVar4 == -1) {
- memset(&local_9e24,0,0x801);
- pcVar2 = FUN_00110558((char *)&local_9e24,0x800,
+ memset(&local_5324,0,0x801);
+ pcVar2 = FUN_00116ee0((char *)&local_5324,0x800,
"*** WARNING, eval() return -1 ***",iVar1);
- uVar6 = 0x68e;
+ uVar6 = 0x6ae;
goto LAB_9;
}
}
}
}
}
- local_9e94 = local_9e94 + 0x32;
+ local_5394 = local_5394 + 0x32;
}
}
}
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.69 |
i_ratio | 0.45 |
m_ratio | 0.8 |
b_ratio | 0.78 |
match_types | StructuralGraphExactHash |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000f1c20 | FUN_000f9610 |
fullname |
FUN_000f1c20 | FUN_000f9610 |
refcount | 1 | 1 |
length |
3540 | 3552 |
called |
Expand for full list:::nvram_get_int |
Expand for full list:::nvram_get_int |
calling |
FUN_000f2ba0 | FUN_000fa5a0 |
paramcount | 1 | 1 |
address |
000f1c20 | 000f9610 |
sig |
undefined __stdcall FUN_000f1c20(int param_1) | undefined __stdcall FUN_000f9610(int param_1) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000f1c20 called
+++ FUN_000f9610 called
@@ -13,0 +14 @@
+<EXTERNAL>::pthread_equal
@@ -24,8 +25,8 @@
-FUN_000ebc74
-FUN_000ebfc0
-FUN_000ec42c
-FUN_000eccb0
-FUN_000ed1c4
-FUN_000ed2d8
-FUN_000eeb04
-FUN_000f030c
+FUN_000f3664
+FUN_000f39b0
+FUN_000f3e1c
+FUN_000f46a0
+FUN_000f4bb4
+FUN_000f4cc8
+FUN_000f64f4
+FUN_000f7cfc
--- FUN_000f1c20 calling
+++ FUN_000f9610 calling
@@ -1 +1 @@
-FUN_000f2ba0
+FUN_000fa5a0
--- FUN_000f1c20
+++ FUN_000f9610
@@ -1,417 +1,417 @@
-void FUN_000f1c20(int param_1)
+void FUN_000f9610(int param_1)
{
+ pthread_t __thread1;
ssize_t sVar1;
int iVar2;
int *piVar3;
char *pcVar4;
__pid_t _Var5;
FILE *pFVar6;
int iVar7;
- pthread_t pVar8;
- pthread_t pVar9;
- char *pcVar10;
- int *piVar11;
- int *piVar12;
- undefined4 uVar13;
- undefined4 uVar14;
+ pthread_t __thread2;
+ char *pcVar8;
+ int *piVar9;
+ int *piVar10;
+ undefined4 uVar11;
+ undefined4 uVar12;
int local_1cc;
char local_1bc [16];
undefined4 local_1ac;
undefined auStack_1a8 [16];
int local_198;
undefined4 uStack_194;
undefined4 uStack_190;
undefined4 uStack_18c;
undefined4 local_188;
undefined4 uStack_184;
undefined4 uStack_180;
undefined4 uStack_17c;
undefined4 local_178;
undefined4 uStack_174;
int iStack_170;
int local_16c [5];
undefined4 uStack_158;
undefined4 uStack_154;
undefined4 uStack_150;
undefined4 local_14c;
undefined auStack_148 [4];
undefined4 uStack_144;
undefined4 uStack_140;
undefined4 local_13c;
undefined4 uStack_138;
int local_134;
int iStack_130;
undefined4 local_12c;
undefined4 uStack_128;
undefined4 uStack_124;
char local_120 [256];
memset(&local_198,0,0x3c);
sVar1 = read(param_1,&local_198,0x3c);
if (sVar1 < 0) {
puts("ERROR reading from socket.");
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
piVar3 = __errno_location();
pcVar4 = strerror(*piVar3);
- cprintf("[AMASLIB][%s:(%d)] socket read error : %s\n","receive_s",0x428,pcVar4);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ cprintf("[AMASLIB][%s:(%d)] socket read error : %s\n","receive_s",0x42a,pcVar4);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
if (iVar2 != 0) {
_Var5 = getpid();
piVar3 = __errno_location();
pcVar4 = strerror(*piVar3);
- uVar14 = 0x428;
- pcVar10 = "[%s][%d]][%s:(%d)] socket read error : %s\n";
+ uVar12 = 0x42a;
+ pcVar8 = "[%s][%d]][%s:(%d)] socket read error : %s\n";
LAB_0:
- asusdebuglog(6,"amas_lib.log",0,1,0,pcVar10,uVar13,_Var5,"receive_s",uVar14,pcVar4);
+ asusdebuglog(6,"amas_lib.log",0,1,0,pcVar8,uVar11,_Var5,"receive_s",uVar12,pcVar4);
}
}
else if (local_198 == 0) {
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] Get AMASLIB_ACTION_NODE_MAC_UPDATE\n","receive_s",0x42e);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ cprintf("[AMASLIB][%s:(%d)] Get AMASLIB_ACTION_NODE_MAC_UPDATE\n","receive_s",0x430);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
if (iVar2 != 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Get AMASLIB_ACTION_NODE_MAC_UPDATE\n"
- ,uVar13,_Var5,"receive_s",0x42e);
+ ,uVar11,_Var5,"receive_s",0x430);
}
local_16c[4] = local_198;
uStack_158 = uStack_194;
uStack_154 = uStack_190;
uStack_150 = uStack_18c;
local_14c = local_188;
auStack_148 = (undefined [4])uStack_184;
uStack_144 = uStack_180;
uStack_140 = uStack_17c;
local_13c = local_178;
uStack_138 = uStack_174;
local_134 = iStack_170;
iStack_130 = local_16c[0];
local_12c = local_16c[1];
uStack_128 = local_16c[2];
uStack_124 = local_16c[3];
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] sta2g=%s, sta5g=%s, flag=%d\n","amaslib_scan_mode",0x3b9,
+ cprintf("[AMASLIB][%s:(%d)] sta2g=%s, sta5g=%s, flag=%d\n","amaslib_scan_mode",0x3bb,
&uStack_158,auStack_148 + 2,local_134);
}
iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] sta2g=%s, sta5g=%s, flag=%d\n",uVar13
- ,_Var5,"amaslib_scan_mode",0x3b9,&uStack_158,auStack_148 + 2,local_134);
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] sta2g=%s, sta5g=%s, flag=%d\n",uVar11
+ ,_Var5,"amaslib_scan_mode",0x3bb,&uStack_158,auStack_148 + 2,local_134);
}
if (local_134 == 0) {
- FUN_000ec42c();
- FUN_000f030c(0);
+ FUN_000f3e1c();
+ FUN_000f7cfc(0);
}
else if (local_134 == 1) {
- iVar2 = FUN_000ebc74((char *)&uStack_158);
+ iVar2 = FUN_000f3664((char *)&uStack_158);
if (iVar2 != 1) {
- FUN_000eccb0(&uStack_158);
+ FUN_000f46a0(&uStack_158);
}
- iVar2 = FUN_000ebc74(auStack_148 + 2);
+ iVar2 = FUN_000f3664(auStack_148 + 2);
if (iVar2 != 1) {
- FUN_000eccb0((undefined4 *)(auStack_148 + 2));
+ FUN_000f46a0((undefined4 *)(auStack_148 + 2));
}
- FUN_000ec42c();
+ FUN_000f3e1c();
}
else if (local_134 == 2) {
- FUN_000ec42c();
- iVar2 = FUN_000ed1c4(&uStack_158,auStack_148 + 2);
+ FUN_000f3e1c();
+ iVar2 = FUN_000f4bb4(&uStack_158,auStack_148 + 2);
if ((iVar2 != 0) &&
- (iVar2 = FUN_000ebfc0((char *)&uStack_158,auStack_148 + 2), 1 < iVar2 - 1U)) {
+ (iVar2 = FUN_000f39b0((char *)&uStack_158,auStack_148 + 2), 1 < iVar2 - 1U)) {
local_120[0] = '\0';
local_120[1] = '\0';
local_120[2] = '\0';
local_120[3] = '\0';
memset(local_120 + 4,0,0xfc);
local_1ac = 0;
memset(auStack_1a8,0,0xe);
local_1bc[0] = '\0';
local_1bc[1] = '\0';
local_1bc[2] = '\0';
local_1bc[3] = '\0';
local_1bc[4] = '\0';
local_1bc[5] = '\0';
local_1bc[6] = '\0';
local_1bc[7] = '\0';
local_1bc[8] = '\0';
local_1bc[9] = '\0';
local_1bc[10] = '\0';
local_1bc[0xb] = '\0';
local_1bc[0xc] = '\0';
local_1bc[0xd] = '\0';
local_1bc[0xe] = '\0';
local_1bc[0xf] = '\0';
pFVar6 = fopen("/var/lib/misc/dnsmasq.leases","r");
if (pFVar6 == (FILE *)0x0) {
printf("FAIL to open %s\n","/var/lib/misc/dnsmasq.leases");
pcVar4 = (char *)0x0;
}
else {
do {
pcVar4 = fgets(local_120,0x100,pFVar6);
if (pcVar4 == (char *)0x0) goto LAB_1;
memset(&local_1ac,0,0x12);
memset(local_1bc,0,0x10);
iVar2 = __isoc99_sscanf(local_120,"%*s %s %s %*s %*s",&local_1ac,local_1bc);
} while (((iVar2 != 2) ||
(iVar2 = strcasecmp((char *)&uStack_158,(char *)&local_1ac), iVar2 != 0)) ||
(iVar2 = strcasecmp(auStack_148 + 2,local_1bc), iVar2 != 0));
pcVar4 = (char *)0x1;
LAB_1:
fclose(pFVar6);
}
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
cprintf("[AMASLIB][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",
- "check_dhcp_lease_table",0x275,&uStack_158,auStack_148 + 2,&local_1ac,local_1bc,
+ "check_dhcp_lease_table",0x277,&uStack_158,auStack_148 + 2,&local_1ac,local_1bc,
pcVar4);
}
iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ uVar11 = __progname;
if (iVar2 != 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_lib.log",0,1,0,
- "[%s][%d]][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",uVar13,
- _Var5,"check_dhcp_lease_table",0x275,&uStack_158,auStack_148 + 2,&local_1ac,
+ "[%s][%d]][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",uVar11,
+ _Var5,"check_dhcp_lease_table",0x277,&uStack_158,auStack_148 + 2,&local_1ac,
local_1bc,pcVar4);
}
if (pcVar4 == (char *)0x1) {
local_120[0] = '\0';
local_120[1] = '\0';
local_120[2] = '\0';
local_120[3] = '\0';
memset(local_120 + 4,0,0xfc);
local_1ac = 0;
memset(auStack_1a8,0,0xe);
local_1cc = 10;
local_1bc[0] = '\0';
local_1bc[1] = '\0';
local_1bc[2] = '\0';
local_1bc[3] = '\0';
local_1bc[4] = '\0';
local_1bc[5] = '\0';
local_1bc[6] = '\0';
local_1bc[7] = '\0';
local_1bc[8] = '\0';
local_1bc[9] = '\0';
local_1bc[10] = '\0';
local_1bc[0xb] = '\0';
local_1bc[0xc] = '\0';
local_1bc[0xd] = '\0';
local_1bc[0xe] = '\0';
local_1bc[0xf] = '\0';
do {
pFVar6 = fopen("/proc/net/arp","r");
if (pFVar6 == (FILE *)0x0) {
printf("FAIL to open %s\n","/proc/net/arp");
iVar2 = 0;
break;
}
fgets(local_120,0x100,pFVar6);
do {
pcVar4 = fgets(local_120,0x100,pFVar6);
if (pcVar4 == (char *)0x0) {
iVar2 = 0;
goto LAB_2;
}
memset(&local_1ac,0,0x12);
memset(local_1bc,0,0x10);
iVar2 = __isoc99_sscanf(local_120,"%15s %*s %*s %s %*s %*s",local_1bc,&local_1ac);
} while ((iVar2 != 2) || (iVar2 = strcmp(local_1bc,auStack_148 + 2), iVar2 != 0));
iVar7 = strcasecmp((char *)&local_1ac,(char *)&uStack_158);
iVar2 = 1;
if (iVar7 == 0) {
LAB_2:
fclose(pFVar6);
break;
}
iVar2 = strcasecmp((char *)&local_1ac,"00:00:00:00:00:00");
if (iVar2 != 0) {
iVar2 = 2;
goto LAB_2;
}
fclose(pFVar6);
sleep(1);
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
cprintf("[AMASLIB][%s:(%d)] IP matched but mac is empty, retry to read arp table!!\n",
- "check_arp_entry_table",0x2a0);
+ "check_arp_entry_table",0x2a2);
}
iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ uVar11 = __progname;
if (iVar2 != 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_lib.log",0,1,0,
"[%s][%d]][%s:(%d)] IP matched but mac is empty, retry to read arp table!!\n"
- ,uVar13,_Var5,"check_arp_entry_table",0x2a0);
+ ,uVar11,_Var5,"check_arp_entry_table",0x2a2);
}
local_1cc = local_1cc + -1;
iVar2 = 0;
} while (local_1cc != 0);
iVar7 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar7) {
cprintf("[AMASLIB][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",
- "check_arp_entry_table",0x2b0,&uStack_158,auStack_148 + 2,&local_1ac,local_1bc,
+ "check_arp_entry_table",0x2b2,&uStack_158,auStack_148 + 2,&local_1ac,local_1bc,
iVar2);
}
iVar7 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ uVar11 = __progname;
if (iVar7 != 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_lib.log",0,1,0,
- "[%s][%d]][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",uVar13,
- _Var5,"check_arp_entry_table",0x2b0,&uStack_158,auStack_148 + 2,&local_1ac,
+ "[%s][%d]][%s:(%d)] mac=%s, ip=%s, macbuf=%s, ipbuf=%s, ret=%d\n",uVar11,
+ _Var5,"check_arp_entry_table",0x2b2,&uStack_158,auStack_148 + 2,&local_1ac,
local_1bc,iVar2);
}
if (iVar2 == 2) {
- iVar2 = FUN_000ed1c4(&uStack_158,auStack_148 + 2);
+ iVar2 = FUN_000f4bb4(&uStack_158,auStack_148 + 2);
if (iVar2 != 0) {
- FUN_000ed2d8(&uStack_158,(undefined4 *)(auStack_148 + 2));
+ FUN_000f4cc8(&uStack_158,(undefined4 *)(auStack_148 + 2));
}
}
}
}
- FUN_000eeb04();
- }
- else if ((local_134 == 3) && (FUN_000ec42c(), DAT_3 == 0)) {
- pVar8 = getpid();
- pVar9 = pthread_self();
- if (pVar8 == pVar9) {
+ FUN_000f64f4();
+ }
+ else if ((local_134 == 3) && (FUN_000f3e1c(), __thread1 = DAT_3, DAT_001de69c == 0)) {
+ __thread2 = pthread_self();
+ iVar2 = pthread_equal(__thread1,__thread2);
+ if (iVar2 == 0) {
+ sleep(0x1e);
+ DAT_4 = 1;
+ }
+ else {
alarm(0x1e);
}
- else {
- sleep(0x1e);
- DAT_3 = 1;
- }
}
}
else if (local_198 == 1) {
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] Enter.\n","get_ip_from_amas_entry_list",0x21e);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Enter.\n",uVar13,_Var5,
- "get_ip_from_amas_entry_list",0x21e);
- }
- pthread_mutex_lock((pthread_mutex_t *)&DAT_4);
- iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
- if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] Enter. Entry locked\n","get_ip_from_amas_entry_list",0x220);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Enter. Entry locked\n",uVar13,_Var5,
+ cprintf("[AMASLIB][%s:(%d)] Enter.\n","get_ip_from_amas_entry_list",0x220);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Enter.\n",uVar11,_Var5,
"get_ip_from_amas_entry_list",0x220);
}
- piVar3 = (int *)*DAT_5;
-LAB_6:
+ pthread_mutex_lock((pthread_mutex_t *)&DAT_5);
+ iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
+ if (0 < iVar2) {
+ cprintf("[AMASLIB][%s:(%d)] Enter. Entry locked\n","get_ip_from_amas_entry_list",0x222);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Enter. Entry locked\n",uVar11,_Var5,
+ "get_ip_from_amas_entry_list",0x222);
+ }
+ piVar3 = (int *)*DAT_6;
+LAB_7:
if (piVar3 != (int *)0x0) {
pcVar4 = (char *)piVar3[2];
if ((pcVar4 == (char *)0x0) || (iVar2 = strcasecmp(pcVar4,(char *)&uStack_194), iVar2 != 0))
- goto LAB_7;
- piVar12 = local_16c;
+ goto LAB_8;
+ piVar10 = local_16c;
piVar3 = (int *)(pcVar4 + 0x12);
do {
- piVar11 = piVar3 + 2;
+ piVar9 = piVar3 + 2;
iVar2 = piVar3[1];
- *piVar12 = *piVar3;
- piVar12[1] = iVar2;
- piVar12 = piVar12 + 2;
- piVar3 = piVar11;
- } while (piVar11 != (int *)(pcVar4 + 0x22));
+ *piVar10 = *piVar3;
+ piVar10[1] = iVar2;
+ piVar10 = piVar10 + 2;
+ piVar3 = piVar9;
+ } while (piVar9 != (int *)(pcVar4 + 0x22));
piVar3 = (int *)0x1;
}
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] Leave. Entry unlocked\n","get_ip_from_amas_entry_list",0x229);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Leave. Entry unlocked\n",uVar13,_Var5
- ,"get_ip_from_amas_entry_list",0x229);
- }
- pthread_mutex_unlock((pthread_mutex_t *)&DAT_4);
- iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
- if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] Leave.\n","get_ip_from_amas_entry_list",0x22b);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Leave.\n",uVar13,_Var5,
- "get_ip_from_amas_entry_list",0x22b);
- }
- iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
- if (0 < iVar2) {
- cprintf("[AMASLIB][%s:(%d)] mac=%s, ip=%s, ret=%d\n","get_ip_from_amas_entry_list",0x22d,
+ cprintf("[AMASLIB][%s:(%d)] Leave. Entry unlocked\n","get_ip_from_amas_entry_list",0x22b);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Leave. Entry unlocked\n",uVar11,_Var5
+ ,"get_ip_from_amas_entry_list",0x22b);
+ }
+ pthread_mutex_unlock((pthread_mutex_t *)&DAT_5);
+ iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
+ if (0 < iVar2) {
+ cprintf("[AMASLIB][%s:(%d)] Leave.\n","get_ip_from_amas_entry_list",0x22d);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] Leave.\n",uVar11,_Var5,
+ "get_ip_from_amas_entry_list",0x22d);
+ }
+ iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
+ if (0 < iVar2) {
+ cprintf("[AMASLIB][%s:(%d)] mac=%s, ip=%s, ret=%d\n","get_ip_from_amas_entry_list",0x22f,
&uStack_194,local_16c,piVar3);
}
iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
- if (iVar2 != 0) {
- _Var5 = getpid();
- asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] mac=%s, ip=%s, ret=%d\n",uVar13,_Var5
- ,"get_ip_from_amas_entry_list",0x22d,&uStack_194,local_16c,piVar3);
+ uVar11 = __progname;
+ if (iVar2 != 0) {
+ _Var5 = getpid();
+ asusdebuglog(6,"amas_lib.log",0,1,0,"[%s][%d]][%s:(%d)] mac=%s, ip=%s, ret=%d\n",uVar11,_Var5
+ ,"get_ip_from_amas_entry_list",0x22f,&uStack_194,local_16c,piVar3);
}
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
cprintf("[AMASLIB][%s:(%d)] Get AMASLIB_ACTION_DEVICE_IP_QUERY, MAC=%s, IP=%s\n","receive_s",
- 0x433,&uStack_194,local_16c);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ 0x435,&uStack_194,local_16c);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
if (iVar2 != 0) {
_Var5 = getpid();
asusdebuglog(6,"amas_lib.log",0,1,0,
- "[%s][%d]][%s:(%d)] Get AMASLIB_ACTION_DEVICE_IP_QUERY, MAC=%s, IP=%s\n",uVar13,
- _Var5,"receive_s",0x433,&uStack_194,local_16c);
+ "[%s][%d]][%s:(%d)] Get AMASLIB_ACTION_DEVICE_IP_QUERY, MAC=%s, IP=%s\n",uVar11,
+ _Var5,"receive_s",0x435,&uStack_194,local_16c);
}
sVar1 = write(param_1,&local_198,0x3c);
if (-1 < sVar1) {
return;
}
puts("ERROR writing to socket.");
iVar2 = f_exists("/tmp/AMASLIB_DEBUG");
if (0 < iVar2) {
piVar3 = __errno_location();
pcVar4 = strerror(*piVar3);
- cprintf("[AMASLIB][%s:(%d)] socket write error : %s\n","receive_s",0x437,pcVar4);
- }
- iVar2 = nvram_get_int("amaslib_syslog");
- uVar13 = __progname;
+ cprintf("[AMASLIB][%s:(%d)] socket write error : %s\n","receive_s",0x439,pcVar4);
+ }
+ iVar2 = nvram_get_int("amaslib_syslog");
+ uVar11 = __progname;
if (iVar2 == 0) {
return;
}
_Var5 = getpid();
piVar3 = __errno_location();
pcVar4 = strerror(*piVar3);
- uVar14 = 0x437;
- pcVar10 = "[%s][%d]][%s:(%d)] socket write error : %s\n";
+ uVar12 = 0x439;
+ pcVar8 = "[%s][%d]][%s:(%d)] socket write error : %s\n";
goto LAB_0;
}
return;
-LAB_7:
+LAB_8:
piVar3 = (int *)*piVar3;
- goto LAB_6;
+ goto LAB_7;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,refcount,length,sig,address,calling,called |
ratio | 0.29 |
i_ratio | 0.28 |
m_ratio | 0.69 |
b_ratio | 0.68 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0009871c | FUN_0009e184 |
fullname |
FUN_0009871c | FUN_0009e184 |
refcount |
2 | 1 |
length |
548 | 412 |
called |
::sprintf ::strchr ::strcmp ::strcspn ::strncpy ::strspn ::syslog FUN_0007a3fc FUN_0007a4a8 |
::cprintf ::nvram_get_int ::nvram_set ::sprintf ::strchr ::strcspn ::strncpy ::strspn FUN_0007dcc4 |
calling |
FUN_00098754 | FUN_00049c50 |
paramcount | 1 | 0 |
address |
0009871c | 0009e184 |
sig |
undefined __stdcall FUN_0009871c(undefined4 param_1) | undefined __stdcall FUN_0009e184(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0009871c called
+++ FUN_0009e184 called
@@ -0,0 +1,3 @@
+<EXTERNAL>::cprintf
+<EXTERNAL>::nvram_get_int
+<EXTERNAL>::nvram_set
@@ -3 +5,0 @@
-<EXTERNAL>::strcmp
@@ -7,3 +9 @@
-<EXTERNAL>::syslog
-FUN_0007a3fc
-FUN_0007a4a8
+FUN_0007dcc4
--- FUN_0009871c calling
+++ FUN_0009e184 calling
@@ -1 +1 @@
-FUN_00098754
+FUN_00049c50
--- FUN_0009871c
+++ FUN_0009e184
@@ -1,64 +1,52 @@
-void FUN_0009871c(undefined4 param_1)
+void FUN_0009e184(void)
{
- bool bVar1;
+ int iVar1;
undefined *puVar2;
char *pcVar3;
size_t sVar4;
size_t sVar5;
+ char *__src;
int iVar6;
- char *__src;
- int iVar7;
- int iVar8;
+ char acStack_160 [32];
char acStack_140 [32];
char local_120 [255];
undefined local_21;
- bVar1 = FUN_0007a4a8("cfg_abl","1");
- if (!bVar1) {
- return;
- }
- puVar2 = FUN_0007a3fc();
- pcVar3 = FUN_0007a3fc();
- sVar4 = strspn(pcVar3," ");
- iVar8 = 0;
- strncpy(local_120,puVar2 + sVar4,0x100);
- local_21 = 0;
- sVar5 = strcspn(local_120," ");
- local_120[sVar5] = '\0';
- pcVar3 = strchr(puVar2 + sVar4,0x20);
- while (local_120[0] != '\0') {
- iVar8 = iVar8 + 1;
- __src = "";
- if (pcVar3 != (char *)0x0) {
- sVar4 = strspn(pcVar3," ");
- __src = pcVar3 + sVar4;
+ iVar1 = nvram_get_int("re_mode");
+ if (iVar1 != 1) {
+ puVar2 = FUN_0007dcc4();
+ pcVar3 = FUN_0007dcc4();
+ sVar4 = strspn(pcVar3," ");
+ iVar1 = 0;
+ strncpy(local_120,puVar2 + sVar4,0x100);
+ local_21 = 0;
+ sVar5 = strcspn(local_120," ");
+ local_120[sVar5] = '\0';
+ pcVar3 = strchr(puVar2 + sVar4,0x20);
+ while (local_120[0] != '\0') {
+ iVar1 = iVar1 + 1;
+ __src = "";
+ if (pcVar3 != (char *)0x0) {
+ sVar4 = strspn(pcVar3," ");
+ __src = pcVar3 + sVar4;
+ }
+ strncpy(local_120,__src,0x100);
+ local_21 = 0;
+ sVar4 = strcspn(local_120," ");
+ local_120[sVar4] = '\0';
+ pcVar3 = strchr(__src,0x20);
}
- strncpy(local_120,__src,0x100);
- local_21 = 0;
- sVar4 = strcspn(local_120," ");
- local_120[sVar4] = '\0';
- pcVar3 = strchr(__src,0x20);
- }
- for (iVar7 = 0; iVar8 != iVar7; iVar7 = iVar7 + 1) {
- sprintf(acStack_140,"wl%d_acs_excl_chans",iVar7);
- pcVar3 = FUN_0007a3fc();
- iVar6 = strcmp(pcVar3,"1");
- if (iVar6 == 0) {
- puVar2 = FUN_0007a3fc();
- syslog(5,"[%s(%d)]:[%s] wl%d_acs_excl_chans:\n%s\n\n","dump_acs_excl_chans",0x2a7a,param_1,
- iVar7,puVar2);
- }
- sprintf(acStack_140,"wl%d_acs_excl_chans_cfg",iVar7);
- pcVar3 = FUN_0007a3fc();
- iVar6 = strcmp(pcVar3,"1");
- if (iVar6 == 0) {
- puVar2 = FUN_0007a3fc();
- syslog(5,"[%s(%d)]:[%s] wl%d_acs_excl_chans_cfg:\n%s\n\n","dump_acs_excl_chans",0x2a7c,param_1
- ,iVar7,puVar2);
+ for (iVar6 = 0; iVar6 != iVar1; iVar6 = iVar6 + 1) {
+ sprintf(acStack_160,"wl%d_acs_excl_chans",iVar6);
+ sprintf(acStack_140,"wl%d_acs_excl_chans_valid",iVar6);
+ puVar2 = FUN_0007dcc4();
+ nvram_set(acStack_140,puVar2);
+ puVar2 = FUN_0007dcc4();
+ cprintf("\nset exclchans valid[%d]:[%s]=[%s]\n",iVar6,acStack_140,puVar2);
}
}
return;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.66 |
i_ratio | 0.3 |
m_ratio | 0.66 |
b_ratio | 0.81 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_0004d76c | FUN_0005096c |
fullname |
FUN_0004d76c | FUN_0005096c |
refcount | 2 | 2 |
length |
20648 | 20948 |
called |
Expand for full list:::fopen |
Expand for full list:::fopen |
calling |
FUN_0001e168 FUN_00025d04 |
FUN_0001eb88 FUN_00026a44 |
paramcount | 0 | 0 |
address |
0004d76c | 0005096c |
sig |
undefined __stdcall FUN_0004d76c(void) | undefined __stdcall FUN_0005096c(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_0004d76c called
+++ FUN_0005096c called
@@ -15,0 +16 @@
+<EXTERNAL>::get_ipv6_service
@@ -17,0 +19 @@
+<EXTERNAL>::get_userdns_r
@@ -76,0 +79,2 @@
+<EXTERNAL>::update_srv_cert_if_ddns_changed
+<EXTERNAL>::update_srv_cert_if_lan_ip_changed
@@ -82,226 +86,230 @@
-FUN_00023ee8
-FUN_00025c5c
-FUN_000297f0
-FUN_000298c0
-FUN_0002ad80
-FUN_0002ad90
-FUN_0002af4c
-FUN_0002be8c
-FUN_0002bf80
-FUN_0002bfd0
-FUN_0002c548
-FUN_0002db20
-FUN_0002f614
-FUN_0002fa54
-FUN_00030ae4
-FUN_00031918
-FUN_00031b44
-FUN_00031d5c
-FUN_00031da0
-FUN_0003203c
-FUN_000322d4
-FUN_00032474
-FUN_0003252c
-FUN_000326e4
-FUN_00032f14
-FUN_00032f5c
-FUN_00038078
-FUN_00038448
-FUN_000384d4
-FUN_000394a0
-FUN_0003a864
-FUN_0003acc0
-FUN_0003bd2c
-FUN_0003d8ac
-FUN_0003d998
-FUN_0003dfd4
-FUN_0003dff4
-FUN_0003e15c
-FUN_0003e17c
-FUN_0003e29c
-FUN_0003ee00
-FUN_0003ee38
-FUN_0003ef20
-FUN_0003efe4
-FUN_00040900
-FUN_000409d0
-FUN_00040a58
-FUN_00040b28
-FUN_00040bb0
-FUN_00040fa8
-FUN_00040fb8
-FUN_00041068
-FUN_00041384
-FUN_00041c20
-FUN_00041e38
-FUN_00042550
-FUN_000425a0
-FUN_000425ec
-FUN_000425fc
-FUN_00042658
-FUN_00042668
-FUN_000426c4
-FUN_000426d4
-FUN_00042728
-FUN_00042784
-FUN_00042794
-FUN_000427a4
-FUN_000427fc
-FUN_0004280c
-FUN_00042868
-FUN_00042894
-FUN_00042950
-FUN_00042c98
-FUN_000441f0
-FUN_00045174
-FUN_00045254
-FUN_00045b4c
-FUN_00046310
-FUN_0004640c
-FUN_00046448
-FUN_00046498
-FUN_000472d0
-FUN_00047320
-FUN_00047380
-FUN_000474a0
-FUN_000474cc
-FUN_000477b4
-FUN_000477bc
-FUN_00047808
-FUN_00047d68
-FUN_00047dec
-FUN_00048260
-FUN_00048b8c
-FUN_00048cbc
-FUN_00048d38
-FUN_00048d64
-FUN_00048e1c
-FUN_00048e98
-FUN_00048ea8
-FUN_00048ed4
-FUN_00048f54
-FUN_0004955c
-FUN_00049604
-FUN_00049640
-FUN_00049704
-FUN_00049718
-FUN_00049728
-FUN_00049748
-FUN_00049914
-FUN_00049960
-FUN_000499e8
-FUN_00049a50
-FUN_00049a8c
-FUN_00049b20
-FUN_00049b30
-FUN_00049b68
-FUN_00049bc0
-FUN_0004a02c
-FUN_0004a030
-FUN_0004a058
-FUN_0004a174
-FUN_0004a1bc
-FUN_0004a1f8
-FUN_0004a2b8
-FUN_0004a2f4
-FUN_0004a3b4
-FUN_0004a400
-FUN_0004a4c0
-FUN_0004a50c
-FUN_0004a5cc
-FUN_0004a618
-FUN_0004a6f8
-FUN_0004a744
-FUN_0004a804
-FUN_0004a850
-FUN_0004a90c
-FUN_0004affc
-FUN_0004b06c
-FUN_0004b9f4
-FUN_0004ba7c
-FUN_0004bad0
-FUN_0004bb4c
-FUN_0004be94
-FUN_0004bea4
-FUN_0004bef8
-FUN_0004bf8c
-FUN_0004c04c
-FUN_0004c060
-FUN_0004c6ac
-FUN_0004c778
-FUN_0004c7a4
-FUN_0004c7e8
-FUN_0004ca64
-FUN_0004cac4
-FUN_0004cd30
-FUN_0004cd5c
-FUN_0004cd98
-FUN_0004cdf4
-FUN_0004ce04
-FUN_0004d1c4
-FUN_0004d360
-FUN_00058f28
-FUN_00058ff4
-FUN_0005ef4c
-FUN_00061b48
-FUN_000625b0
-FUN_0006d8c4
-FUN_0006fa68
-FUN_0006fab0
-FUN_0006fbcc
-FUN_0006ff84
-FUN_00072a84
-FUN_00075298
-FUN_000752a8
-FUN_00075554
-FUN_0007be08
-FUN_00099d04
-FUN_000a0ed0
-FUN_000a12e8
-FUN_000a1660
-FUN_000a1b98
-FUN_000a245c
-FUN_000a3a38
-FUN_000a5cc4
-FUN_000a68dc
-FUN_000a6a30
-FUN_000b15b0
-FUN_000b329c
-FUN_000b9c10
-FUN_000bc540
-FUN_000bc5c4
-FUN_000bc648
-FUN_000bc864
-FUN_000bd0c0
-FUN_000c6434
-FUN_000c6528
-FUN_000c6aa4
-FUN_000c6d34
-FUN_000c7af4
-FUN_000c8b88
-FUN_000c9010
-FUN_000c9128
-FUN_000c937c
-FUN_000cb6e4
-FUN_000d23d4
-FUN_000d3c30
-FUN_000d3ca0
-FUN_000d3f9c
-FUN_000e8548
-FUN_000e87d8
-FUN_000eb508
-FUN_000f2c94
-FUN_000f4a20
-FUN_000f4a34
-FUN_000f5260
-FUN_000f5434
-FUN_0010dd80
-FUN_00117774
-FUN_00117828
-FUN_001178b8
-FUN_0014df80
-FUN_0014f084
-FUN_0014f130
-FUN_0014f228
-FUN_0014f3c8
-thunk_FUN_0003e6cc
+FUN_00024c84
+FUN_0002699c
+FUN_0002a580
+FUN_0002a650
+FUN_0002bb10
+FUN_0002bb20
+FUN_0002bcdc
+FUN_0002cc1c
+FUN_0002cd10
+FUN_0002cd60
+FUN_0002d2d8
+FUN_0002e8b4
+FUN_000303ac
+FUN_000307ec
+FUN_0003187c
+FUN_000326b0
+FUN_000328dc
+FUN_00032af4
+FUN_00032b38
+FUN_00032dd4
+FUN_0003306c
+FUN_0003320c
+FUN_000332c4
+FUN_0003347c
+FUN_00033cb0
+FUN_00033cf8
+FUN_00037f70
+FUN_00039be8
+FUN_00039fec
+FUN_0003a078
+FUN_0003aac8
+FUN_0003be70
+FUN_0003c2cc
+FUN_0003d41c
+FUN_0003efa0
+FUN_0003f08c
+FUN_0003f6c8
+FUN_0003f6e8
+FUN_0003f850
+FUN_0003f870
+FUN_0003fa9c
+FUN_000405d4
+FUN_0004060c
+FUN_000406f4
+FUN_000407b8
+FUN_000424e0
+FUN_000425b0
+FUN_00042638
+FUN_00042708
+FUN_000428e8
+FUN_00042ce0
+FUN_00042cf0
+FUN_00042da0
+FUN_000430bc
+FUN_00043958
+FUN_00043b70
+FUN_00044288
+FUN_000442d8
+FUN_00044324
+FUN_00044334
+FUN_00044390
+FUN_000443a0
+FUN_000443e0
+FUN_000443f0
+FUN_0004444c
+FUN_0004445c
+FUN_000444b0
+FUN_0004450c
+FUN_0004451c
+FUN_0004452c
+FUN_00044584
+FUN_00044594
+FUN_000445f0
+FUN_0004461c
+FUN_000446d8
+FUN_00044a20
+FUN_00046194
+FUN_00047474
+FUN_00047554
+FUN_00048190
+FUN_00048be0
+FUN_00048cdc
+FUN_00048d18
+FUN_00048d68
+FUN_00049ba0
+FUN_00049bf0
+FUN_00049c50
+FUN_00049d74
+FUN_00049da0
+FUN_0004a088
+FUN_0004a090
+FUN_0004a0dc
+FUN_0004a4b8
+FUN_0004adb4
+FUN_0004aee4
+FUN_0004af60
+FUN_0004af8c
+FUN_0004b044
+FUN_0004b0c0
+FUN_0004b0d0
+FUN_0004b0fc
+FUN_0004b198
+FUN_0004b7a0
+FUN_0004b848
+FUN_0004b884
+FUN_0004b948
+FUN_0004b95c
+FUN_0004b96c
+FUN_0004b98c
+FUN_0004bb58
+FUN_0004bba4
+FUN_0004bc2c
+FUN_0004bc94
+FUN_0004bcd0
+FUN_0004bd64
+FUN_0004bd74
+FUN_0004bdac
+FUN_0004be04
+FUN_0004c270
+FUN_0004c274
+FUN_0004c29c
+FUN_0004c3b8
+FUN_0004cc68
+FUN_0004d21c
+FUN_0004d338
+FUN_0004d380
+FUN_0004d3bc
+FUN_0004d47c
+FUN_0004d4b8
+FUN_0004d578
+FUN_0004d5c4
+FUN_0004d684
+FUN_0004d6d0
+FUN_0004d790
+FUN_0004d7dc
+FUN_0004d8bc
+FUN_0004d908
+FUN_0004d9c8
+FUN_0004da14
+FUN_0004dad0
+FUN_0004e17c
+FUN_0004e1ec
+FUN_0004eb74
+FUN_0004ebfc
+FUN_0004ec50
+FUN_0004eccc
+FUN_0004f014
+FUN_0004f024
+FUN_0004f078
+FUN_0004f10c
+FUN_0004f1cc
+FUN_0004f1e0
+FUN_0004f82c
+FUN_0004f8f8
+FUN_0004f924
+FUN_0004f968
+FUN_0004fbe4
+FUN_0004fc44
+FUN_0004fedc
+FUN_0004ff08
+FUN_0004ff44
+FUN_0004ffa0
+FUN_0004ffb0
+FUN_00050394
+FUN_0005055c
+FUN_0005c2c8
+FUN_0005c394
+FUN_000622f8
+FUN_00064f24
+FUN_000659b4
+FUN_00070d98
+FUN_00072f3c
+FUN_00072f84
+FUN_000730a0
+FUN_00073458
+FUN_00076068
+FUN_0007895c
+FUN_0007896c
+FUN_00078d08
+FUN_0007f508
+FUN_0009f8d8
+FUN_000a6a68
+FUN_000a6e80
+FUN_000a71f8
+FUN_000a7730
+FUN_000a802c
+FUN_000a9608
+FUN_000ab984
+FUN_000ac5e0
+FUN_000ac734
+FUN_000b733c
+FUN_000b916c
+FUN_000bfbc8
+FUN_000c2530
+FUN_000c25b4
+FUN_000c2638
+FUN_000c28ac
+FUN_000c3160
+FUN_000cc4d4
+FUN_000cc5c8
+FUN_000ccb44
+FUN_000ccdd4
+FUN_000cdb04
+FUN_000ceb98
+FUN_000cf020
+FUN_000cf138
+FUN_000cf38c
+FUN_000d16f4
+FUN_000d8438
+FUN_000d9c9c
+FUN_000d9d0c
+FUN_000da008
+FUN_000eff48
+FUN_000f01d8
+FUN_000f2ef8
+FUN_000fa694
+FUN_000fc434
+FUN_000fc448
+FUN_000fcc74
+FUN_000fce48
+FUN_00114688
+FUN_0011e17c
+FUN_0011e250
+FUN_0011e2e0
+FUN_00156000
+FUN_00157230
+FUN_001572dc
+FUN_001573d4
+FUN_00157574
+thunk_FUN_0003fea0
--- FUN_0004d76c calling
+++ FUN_0005096c calling
@@ -1,2 +1,2 @@
-FUN_0001e168
-FUN_00025d04
+FUN_0001eb88
+FUN_00026a44
--- FUN_0004d76c
+++ FUN_0005096c
@@ -1,3376 +1,3422 @@
/* WARNING: Type propagation algorithm not settling */
-void FUN_0004d76c(void)
+void FUN_0005096c(void)
{
char cVar1;
undefined2 uVar2;
undefined4 *puVar3;
bool bVar4;
undefined *puVar5;
char *pcVar6;
char *pcVar7;
int iVar8;
__pid_t _Var9;
undefined4 uVar10;
FILE *pFVar11;
char *pcVar12;
byte *pbVar13;
size_t sVar14;
char **ppcVar15;
char **ppcVar16;
in_addr_t iVar17;
int iVar18;
- undefined *puVar19;
+ char **ppcVar19;
undefined *puVar20;
+ undefined *puVar21;
undefined4 extraout_r1;
undefined4 extraout_r1_00;
undefined4 extraout_r1_01;
undefined4 extraout_r1_02;
undefined4 extraout_r1_03;
undefined *extraout_r1_04;
undefined4 extraout_r1_05;
undefined4 extraout_r1_06;
undefined4 extraout_r1_07;
undefined4 extraout_r1_08;
undefined4 extraout_r1_09;
undefined *extraout_r1_10;
undefined4 extraout_r1_11;
undefined4 extraout_r1_12;
undefined4 extraout_r1_13;
undefined4 extraout_r1_14;
undefined *extraout_r1_15;
undefined4 extraout_r1_16;
undefined4 extraout_r1_17;
undefined4 extraout_r1_18;
uint extraout_r1_19;
undefined4 extraout_r1_20;
undefined4 extraout_r1_21;
uint extraout_r1_22;
uint extraout_r1_23;
undefined4 extraout_r1_24;
undefined *extraout_r1_25;
undefined4 extraout_r1_26;
undefined4 extraout_r1_27;
undefined4 extraout_r1_28;
undefined4 extraout_r1_29;
undefined4 extraout_r1_30;
undefined4 extraout_r1_31;
undefined4 extraout_r1_32;
uint extraout_r1_33;
uint extraout_r1_34;
undefined4 extraout_r1_35;
undefined4 extraout_r1_36;
uint extraout_r1_37;
undefined4 extraout_r1_38;
undefined *extraout_r1_39;
undefined4 extraout_r1_40;
undefined4 extraout_r1_41;
undefined4 extraout_r1_42;
uint extraout_r1_43;
uint extraout_r1_44;
uint extraout_r1_45;
uint extraout_r1_46;
uint extraout_r1_47;
uint extraout_r1_48;
uint extraout_r1_49;
uint extraout_r1_50;
uint extraout_r1_51;
uint extraout_r1_52;
uint extraout_r1_53;
uint extraout_r1_54;
- char ***pppcVar21;
+ char ***pppcVar22;
char *__dest;
- undefined4 uVar22;
- char *pcVar23;
- uint uVar24;
+ undefined4 uVar23;
+ char *pcVar24;
uint uVar25;
- int *piVar26;
- char **ppcVar27;
+ uint uVar26;
+ int *piVar27;
undefined *puVar28;
undefined4 *puVar29;
char ***pppcVar30;
uint uVar31;
uint uVar32;
int iVar33;
int iVar34;
undefined8 uVar35;
longlong lVar36;
char *local_162c;
char *local_1628;
char local_1624 [36];
- char *local_1600 [8];
+ char *local_1600;
+ char **local_15fc;
+ char *local_15f8;
+ char *local_15f4;
char **ppcStack_15e0;
char **ppcStack_15dc;
char **ppcStack_15d8;
char *apcStack_15a0 [32];
char local_1520 [256];
in_addr local_1420;
undefined4 local_141c;
- char **local_1220;
- char **local_121c [2];
+ char **local_1220 [3];
undefined *local_1214;
char *local_1210;
undefined4 local_120c;
char *local_1020;
- char *local_101c [2];
+ char **local_101c;
+ char *local_1018;
undefined4 local_1014;
int local_1010;
- puVar5 = FUN_0003dfd4();
+ puVar5 = FUN_0003f6c8();
strlcpy(local_1520,puVar5,0x100);
__dest = local_1624 + 4;
uVar31 = 0;
local_1628 = local_1520;
do {
+ ppcVar19 = &local_1020;
pcVar6 = strsep(&local_1628,";");
iVar34 = 0;
local_162c = pcVar6;
- memset(local_1600,0,0x20);
+ memset(&local_1600,0,0x20);
do {
pcVar7 = strtok_r(pcVar6," ",&local_162c);
if (pcVar7 == (char *)0x0) {
if (iVar34 == 0) {
nvram_set("rc_service","");
return;
}
break;
}
cprintf("cmd[%d]=%s\n",iVar34);
pcVar6 = (char *)0x0;
- local_1600[iVar34] = pcVar7;
+ (&local_1600)[iVar34] = pcVar7;
iVar34 = iVar34 + 1;
} while (iVar34 != 8);
- pcVar6 = local_1600[0];
- iVar8 = strncmp(local_1600[0],"start_",6);
+ pcVar6 = local_1600;
+ iVar8 = strncmp(local_1600,"start_",6);
if (iVar8 == 0) {
uVar31 = uVar31 | 2;
pcVar6 = pcVar6 + 6;
}
else {
iVar8 = strncmp(pcVar6,"stop_",5);
if (iVar8 == 0) {
uVar31 = uVar31 | 1;
pcVar6 = pcVar6 + 5;
}
else {
iVar8 = strncmp(pcVar6,"restart_",8);
if (iVar8 == 0) {
pcVar6 = pcVar6 + 8;
uVar31 = 3;
}
else {
uVar31 = 0;
}
}
}
_Var9 = getpid();
- psname(_Var9,&local_1020,0x10);
+ psname(_Var9,ppcVar19,0x10);
uVar10 = uptime();
- ppcVar16 = &local_1020;
- cprintf("[%d %s:%s +%ld] running: %d %s\n",_Var9,&local_1020,"handle_notifications",uVar10,
- uVar31,pcVar6);
+ ppcVar16 = ppcVar19;
+ cprintf("[%d %s:%s +%ld] running: %d %s\n",_Var9,ppcVar19,"handle_notifications",uVar10,uVar31,
+ pcVar6);
iVar8 = strcmp(pcVar6,"reboot");
if ((iVar8 == 0) || (iVar8 = strcmp(pcVar6,"rebootandrestore"), iVar8 == 0)) {
iVar8 = wait_action_idle(10);
if (iVar8 != 0) {
set_action(8);
}
iVar33 = 1;
DAT_0 = 1;
- uVar22 = 0;
+ uVar23 = 0;
uVar10 = 0;
f_write_string("/tmp/reboot","1");
uVar35 = nvram_set_int("wlready",0);
- FUN_0003a864((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),uVar10,uVar22);
+ FUN_0003be70((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),uVar10,uVar23);
iVar8 = strcmp(pcVar6,"rebootandrestore");
if (iVar8 == 0) {
for (; iVar33 < iVar34; iVar33 = iVar33 + 1) {
- pcVar6 = local_1600[iVar33];
+ pcVar6 = (&local_1600)[iVar33];
if (pcVar6 != (char *)0x0) {
- FUN_00025c5c(pcVar6);
+ FUN_0002699c(pcVar6);
}
}
}
}
else {
pcVar7 = (char *)strcmp(pcVar6,"resetdefault_erase");
if (pcVar7 == (char *)0x0) {
local_1020 = DAT_1;
- local_101c[0] = DAT_2;
- local_101c[1] = DAT_3;
+ local_101c = DAT_2;
+ local_1018 = DAT_3;
pcVar6 = pcVar7;
- uVar35 = _eval(&local_1020,0);
- FUN_0004a058((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20),pcVar7,pcVar6);
+ uVar35 = _eval(ppcVar19,0);
+ FUN_0004c29c((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20),pcVar7,pcVar6);
}
else {
iVar8 = strcmp(pcVar6,"resetdefault");
if (iVar8 == 0) {
- FUN_0004a058((undefined *)0x0,extraout_r1,ppcVar16,pcVar7);
+ FUN_0004c29c((undefined *)0x0,extraout_r1,ppcVar16,pcVar7);
}
else {
iVar8 = strcmp(pcVar6,"jitterentropy");
if (iVar8 == 0) {
if ((uVar31 & 1) == 0) {
if ((uVar31 & 2) != 0) {
- FUN_00049604(0,extraout_r1_00);
+ FUN_0004b848(0,extraout_r1_00);
}
}
else {
- FUN_00049640(0);
+ FUN_0004b884(0);
}
}
else {
iVar8 = strcmp(pcVar6,"all");
if (iVar8 == 0) {
nvram_set("sys_reboot_reason","rc_all");
sleep(2);
- FUN_00031d5c();
- FUN_00031b44(6);
+ FUN_00032af4();
+ FUN_000328dc(6);
kill(1,0xf);
}
else {
iVar8 = strcmp(pcVar6,"upgrade_ate");
if (iVar8 == 0) {
iVar34 = nvram_get_int("asus_stop_commit");
if (iVar34 == 0) {
nvram_set("asus_stop_commit","1");
wait_action_idle(10);
}
iVar34 = 1;
DAT_4 = 1;
f_write_string("/tmp/upgrade","1",0);
- if (local_1600[1] != (char *)0x0) {
- iVar34 = atoi(local_1600[1]);
+ if (local_15fc != (char **)0x0) {
+ iVar34 = atoi((char *)local_15fc);
}
- pcVar6 = local_1600[2];
- if (local_1600[2] != (char *)0x0) {
- pcVar6 = (char *)atoi(local_1600[2]);
+ pcVar6 = local_15f8;
+ if (local_15f8 != (char *)0x0) {
+ pcVar6 = (char *)atoi(local_15f8);
}
- pcVar7 = local_1600[3];
- if (local_1600[3] != (char *)0x0) {
- pcVar7 = (char *)atoi(local_1600[3]);
+ pcVar7 = local_15f4;
+ if (local_15f4 != (char *)0x0) {
+ pcVar7 = (char *)atoi(local_15f4);
}
pcVar12 = pcVar6;
cprintf("REBOOT = %d, RESET = %d, BOOTNEW = %d\n",iVar34,pcVar6,pcVar7);
- bVar4 = FUN_000b329c();
+ bVar4 = FUN_000b916c();
if (!bVar4) {
uVar10 = ATE_UPGRADE_MODE_STR();
- bVar4 = FUN_0003dff4(uVar10,"1");
+ bVar4 = FUN_0003f6e8(uVar10,"1");
if (!bVar4) {
cprintf("Only support under ATE test mode, Skip...\n");
nvram_set_int("ate_upgrade_state",0);
goto LAB_5;
}
}
if ((uVar31 & 1) != 0) {
pFVar11 = fopen("/tmp/ate_upgrade_state","w");
if (pFVar11 == (FILE *)0x0) {
cprintf("Fail to open /tmp/ate_upgrade_state\n");
}
else {
fputs("stop_upgarde_ate\n",pFVar11);
fclose(pFVar11);
}
iVar8 = nvram_get("sw_mode");
if (iVar8 == 0) {
- pcVar23 = (char *)nvram_default_get("sw_mode");
- iVar8 = atoi(pcVar23);
+ pcVar24 = (char *)nvram_default_get("sw_mode");
+ iVar8 = atoi(pcVar24);
}
else {
iVar8 = nvram_get_int();
}
if (iVar8 == 2) {
- FUN_0004a2b8();
+ FUN_0004d47c();
}
- FUN_0004c04c();
- FUN_0004ce04();
- FUN_0004640c();
- FUN_00048b8c();
- FUN_00061b48();
- FUN_00072a84(-1);
- FUN_00075554();
- FUN_00075298();
- FUN_000c6434(1);
- FUN_00042868();
- FUN_000427fc();
- FUN_0004cd30();
- FUN_0004ca64();
- FUN_00049914();
- FUN_00049a8c();
+ FUN_0004f1cc();
+ FUN_0004ffb0();
+ FUN_00048cdc();
+ FUN_0004adb4();
+ FUN_00064f24();
+ FUN_00076068(-1);
+ FUN_00078d08();
+ FUN_0007895c();
+ FUN_000cc4d4(1);
+ FUN_000445f0();
+ FUN_00044584();
+ FUN_0004fedc();
+ FUN_0004fbe4();
+ FUN_0004bb58();
+ FUN_0004bcd0();
}
cprintf(">> wait upgrading\n");
- pcVar23 = "*";
+ pcVar24 = "*";
iVar8 = 0;
do {
cprintf("*");
sleep(1);
- bVar4 = FUN_0003dff4("upgrade_done","1");
+ bVar4 = FUN_0003f6e8("upgrade_done","1");
if (bVar4) {
nvram_set("upgrade_done","0");
break;
}
iVar8 = iVar8 + 1;
} while (iVar8 != 0x78);
cprintf("<< wait upgrading %d secs\n",iVar8);
if ((pcVar7 != (char *)0x0) || (iVar8 = nvram_get_int("bootnew"), iVar8 == 1)) {
pcVar12 = (char *)nvram_get_int("bootnew");
cprintf("[ATE] BOOTNEW...(%d)(%d)\n",pcVar7);
iVar8 = setBootImageState(0x30);
if (iVar8 != 0) {
cprintf("%s: setBootImageState(BOOT_SET_NEW_IMAGE) failed..\n",
"handle_notifications");
}
}
if (pcVar6 != (char *)0x0) {
uVar35 = cprintf("[ATE] Reset Default...\n");
- FUN_000a3a38((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),pcVar12,pcVar23);
+ FUN_000a9608((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),pcVar12,pcVar24);
}
if (iVar34 != 0) {
nvram_set("sys_reboot_reason","ate_upg_rbt");
cprintf("[ATE] REBOOT...\n");
kill(1,0xf);
}
}
else {
iVar8 = strcmp(pcVar6,"upgrade");
if (iVar8 == 0) {
- FUN_0004a02c();
+ FUN_0004c270();
iVar34 = nvram_get_int("asus_stop_commit");
if (iVar34 == 0) {
nvram_set("asus_stop_commit","1");
wait_action_idle(10);
}
if ((uVar31 & 1) != 0) {
DAT_4 = 1;
f_write_string("/tmp/upgrade","1",0);
nvram_set_int("wlready",0);
iVar8 = nvram_get("sw_mode");
if (iVar8 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode");
iVar8 = atoi(pcVar6);
}
else {
iVar8 = nvram_get_int();
}
if (iVar8 == 2) {
- FUN_0004a2b8();
+ FUN_0004d47c();
}
- FUN_0004c04c();
- bVar4 = FUN_0003dff4("webs_state_flag","1");
- if ((!bVar4) || (bVar4 = FUN_0003dff4("webs_state_upgrade","0"), !bVar4)) {
- FUN_00049704();
+ FUN_0004f1cc();
+ bVar4 = FUN_0003f6e8("webs_state_flag","1");
+ if ((!bVar4) || (bVar4 = FUN_0003f6e8("webs_state_upgrade","0"), !bVar4)) {
+ FUN_0004b948();
}
stop_dpi_engine_service(1);
- FUN_00061b48();
- FUN_00072a84(-1);
- FUN_00075554();
- uVar10 = FUN_0004ce04();
- FUN_00049640(uVar10);
+ FUN_00064f24();
+ FUN_00076068(-1);
+ FUN_00078d08();
+ uVar10 = FUN_0004ffb0();
+ FUN_0004b884(uVar10);
}
if ((uVar31 & 2) != 0) {
- ppcVar16 = &local_1020;
+ ppcVar16 = ppcVar19;
pcVar6 = "/tmp/linux.trx";
do {
pcVar7 = pcVar6;
ppcVar15 = ppcVar16;
pcVar6 = *(char **)(pcVar7 + 4);
*ppcVar15 = *(char **)pcVar7;
ppcVar15[1] = pcVar6;
ppcVar16 = ppcVar15 + 2;
pcVar6 = pcVar7 + 8;
} while (pcVar7 + 8 != "ux.trx");
uVar10 = 0x31;
uVar2 = *(undefined2 *)(pcVar7 + 0xc);
cVar1 = pcVar7[0xe];
ppcVar15[2] = (char *)0x742e7875;
*(undefined2 *)(ppcVar15 + 3) = uVar2;
*(char *)((int)ppcVar15 + 0xe) = cVar1;
memset((void *)((int)&local_1014 + 3),0,0x31);
- pbVar13 = FUN_0003dfd4();
- FUN_00023ee8(0x5a,extraout_r1_01,uVar10);
- iVar8 = f_exists(&local_1020);
+ pbVar13 = FUN_0003f6c8();
+ FUN_00024c84(0x5a,extraout_r1_01,uVar10);
+ iVar8 = f_exists(ppcVar19);
if ((iVar8 == 0) && (sVar14 = strlen((char *)pbVar13), 5 < sVar14)) {
- puVar5 = FUN_0003dfd4();
- snprintf((char *)&local_1020,0x40,"/tmp/%s_%c.%c.%c.%c_%s.trx",puVar5,
+ puVar5 = FUN_0003f6c8();
+ snprintf((char *)ppcVar19,0x40,"/tmp/%s_%c.%c.%c.%c_%s.trx",puVar5,
(uint)*pbVar13,(uint)pbVar13[1],(uint)pbVar13[2],(uint)pbVar13[3],
pbVar13 + 5);
- cprintf("upgrade file : %s \n",&local_1020);
+ cprintf("upgrade file : %s \n",ppcVar19);
}
- iVar8 = f_exists(&local_1020);
+ iVar8 = f_exists(ppcVar19);
if (iVar8 == 0) {
nvram_set("sys_reboot_reason","rc_upg_fw");
}
else {
nvram_get_int("chk_time");
iVar8 = nvram_contains_word("rc_support","nandflash");
if (iVar8 == 0) {
- local_1220 = (char **)0x16588d;
- local_121c[0] = (char **)&DAT_6;
+ local_1220[0] = (char **)0x16e262;
+ local_1220[1] = (char **)&DAT_6;
local_1214 = &DAT_7;
local_1210 = "linux";
local_120c = 0;
- local_121c[1] = &local_1020;
+ local_1220[2] = ppcVar19;
}
else {
- local_1220 = (char **)0x15beff;
- local_121c[1] = (char **)0x0;
- local_121c[0] = &local_1020;
+ local_1220[0] = (char **)0x164063;
+ local_1220[2] = (char **)0x0;
+ local_1220[1] = ppcVar19;
}
- _eval(&local_1220,0,0);
- unlink((char *)&local_1020);
+ _eval(local_1220,0,0);
+ unlink((char *)ppcVar19);
nvram_set("sys_reboot_reason","rc_upg_noswitch");
}
cprintf("%s: go reboot.\n","handle_notifications");
kill(1,0xf);
}
if (iVar34 == 0) {
nvram_unset("asus_stop_commit");
}
}
else {
iVar8 = strcmp(pcVar6,"mfgmode");
if (iVar8 == 0) {
nvram_set("asus_mfg",&DAT_8);
- FUN_000bd0c0();
- FUN_0004d1c4();
+ FUN_000c3160();
+ FUN_00050394();
}
else {
iVar8 = strcmp(pcVar6,"wltest");
if (iVar8 == 0) {
nvram_set("asus_mfg",&DAT_9);
- FUN_000bd0c0();
- FUN_00049728();
- FUN_00049718();
- FUN_00042950();
- FUN_0004d1c4();
+ FUN_000c3160();
+ FUN_0004b96c();
+ FUN_0004b95c();
+ FUN_000446d8();
+ FUN_00050394();
}
else {
iVar8 = strcmp(pcVar6,"ethtest");
if (iVar8 == 0) {
nvram_set("asus_mfg",&DAT_9);
- FUN_000bd0c0();
- FUN_00049728();
- FUN_00049718();
- FUN_00042950();
- FUN_0004d1c4();
+ FUN_000c3160();
+ FUN_0004b96c();
+ FUN_0004b95c();
+ FUN_000446d8();
+ FUN_00050394();
modprobe_r("nf_nat_sip");
modprobe_r("nf_conntrack_sip");
modprobe_r("nf_nat_h323");
modprobe_r("nf_conntrack_h323");
modprobe_r("nf_nat_rtsp");
modprobe_r("nf_conntrack_rtsp");
modprobe_r("nf_nat_ftp");
modprobe_r("nf_conntrack_ftp");
modprobe_r("ip6table_mangle");
modprobe_r("ip6t_LOG");
modprobe_r("usblp");
modprobe_r("thfsplus");
modprobe_r("tntfs");
modprobe_r(&DAT_10);
modprobe_r(&DAT_11);
modprobe_r(&DAT_12);
modprobe_r("crc16");
modprobe_r(&DAT_13);
modprobe_r(&DAT_14);
modprobe_r("mbcache");
modprobe_r("cdc_mbim");
modprobe_r("qmi_wwan");
modprobe_r("cdc_wdm");
modprobe_r("cdc_ncm");
modprobe_r("rndis_host");
modprobe_r("cdc_ether");
modprobe_r(&DAT_15);
modprobe_r("cdc_acm");
modprobe_r("usbnet");
modprobe_r(&DAT_16);
}
else {
iVar8 = strcmp(pcVar6,"allnet");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
sleep(2);
- FUN_00042868();
- FUN_000427fc();
- FUN_00047d68();
- FUN_000477bc();
- FUN_000c6aa4();
- FUN_0003ef20();
- FUN_00048b8c();
- FUN_00048e98();
- FUN_0002ad80();
- FUN_0004bf8c();
- FUN_00047320();
- FUN_00042784();
- FUN_0004cdf4();
- FUN_0004be94();
- FUN_00046448();
- FUN_000425ec();
- FUN_00042658();
- FUN_00042550();
- FUN_00032f14();
- uVar35 = FUN_00042794();
- FUN_0003a864((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_000445f0();
+ FUN_00044584();
+ FUN_0004a0dc();
+ FUN_0004a090();
+ FUN_000ccb44();
+ FUN_000406f4();
+ FUN_0004adb4();
+ FUN_0004b0c0();
+ FUN_0002bb10();
+ FUN_0004f10c();
+ FUN_00049bf0();
+ FUN_0004450c();
+ FUN_0004ffa0();
+ FUN_0004f014();
+ FUN_00048d18();
+ FUN_00044324();
+ FUN_000443e0();
+ FUN_00044288();
+ FUN_00033cb0();
+ uVar35 = FUN_0004451c();
+ FUN_0003be70((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_0002c548();
- FUN_000298c0();
- FUN_0004cd30();
- pcVar6 = FUN_0003dfd4();
+ FUN_0002d2d8();
+ FUN_0002a650();
+ FUN_0004fedc();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
if (pcVar6 == (char *)0x0) {
- FUN_0004ca64();
+ FUN_0004fbe4();
}
}
if ((uVar31 & 2) != 0) {
- FUN_0002db20();
- FUN_00042c98();
- uVar10 = FUN_000297f0();
- FUN_0003bd2c(uVar10,extraout_r1_02,ppcVar16,pcVar7);
+ FUN_0002e8b4();
+ FUN_00044a20();
+ uVar10 = FUN_0002a580();
+ FUN_0003d41c(uVar10,extraout_r1_02,ppcVar16,pcVar7);
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode");
iVar34 = atoi(pcVar6);
uVar35 = CONCAT44(extraout_r1_07,iVar34);
}
else {
uVar35 = nvram_get_int();
}
uVar32 = (uint)((int)uVar35 == 1);
uVar35 = CONCAT44((int)((ulonglong)uVar35 >> 0x20),uVar32);
if (uVar32 != 0) {
- uVar35 = FUN_00046498();
+ uVar35 = FUN_00048d68();
}
- FUN_000427a4((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_00032f5c();
- uVar10 = FUN_0004d360();
- uVar10 = FUN_00042668(uVar10);
- FUN_000425fc(uVar10);
- uVar35 = FUN_000472d0();
- uVar10 = FUN_0004bea4((undefined *)uVar35,
+ FUN_0004452c((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_00033cf8();
+ uVar10 = FUN_0005055c();
+ uVar10 = FUN_000443f0(uVar10);
+ FUN_00044334(uVar10);
+ uVar35 = FUN_00049ba0();
+ uVar10 = FUN_0004f024((undefined *)uVar35,
(int)((ulonglong)uVar35 >> 0x20),ppcVar16);
- uVar35 = FUN_0004cd98(uVar10,extraout_r1_03);
- uVar35 = FUN_00042728((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- uVar10 = FUN_00047380((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
+ uVar35 = FUN_0004ff44(uVar10,extraout_r1_03);
+ uVar35 = FUN_000444b0((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ uVar10 = FUN_00049c50((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
(undefined *)ppcVar16,pcVar7);
- FUN_0004bef8(uVar10,extraout_r1_04,ppcVar16,pcVar7);
- uVar35 = FUN_0002ad90();
- FUN_00048e1c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0004f078(uVar10,extraout_r1_04,ppcVar16,pcVar7);
+ uVar35 = FUN_0002bb20();
+ FUN_0004b044((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_00031b44(0);
- FUN_00048260();
- FUN_00047808();
- FUN_000477b4();
- uVar10 = FUN_000c6528();
- FUN_00042894(uVar10);
- FUN_0004280c(0);
- FUN_0002af4c();
- FUN_00031918();
- pcVar6 = FUN_0003dfd4();
+ FUN_000328dc(0);
+ FUN_0004a4b8();
+ FUN_0004cc68();
+ FUN_0004a088();
+ uVar10 = FUN_000cc5c8();
+ FUN_0004461c(uVar10);
+ FUN_00044594(0);
+ FUN_0002bcdc();
+ FUN_000326b0();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
uVar10 = extraout_r1_05;
if (pcVar6 == (char *)0x0) {
- pcVar6 = (char *)FUN_0004cac4();
+ pcVar6 = (char *)FUN_0004fc44();
uVar10 = extraout_r1_06;
}
- uVar35 = FUN_0004cd5c(pcVar6,uVar10);
- FUN_000f4a34((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_0003252c();
+ uVar35 = FUN_0004ff08(pcVar6,uVar10);
+ FUN_000fc448((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_000332c4();
}
}
else {
iVar8 = strcmp(pcVar6,"net");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
sleep(2);
- FUN_00042868();
- FUN_000427fc();
- FUN_00047d68();
- FUN_000477bc();
- FUN_000c6aa4();
- FUN_0003ef20();
- FUN_00048b8c();
- FUN_00048e98();
- FUN_0002ad80();
- FUN_0004bf8c();
- FUN_00047320();
- FUN_00042784();
- FUN_0004cdf4();
- FUN_0004be94();
- FUN_00046448();
- FUN_000425ec();
- FUN_00042658();
- FUN_00042550();
- FUN_00032f14();
- FUN_00042794();
- FUN_0004cd30();
- pcVar6 = FUN_0003dfd4();
+ FUN_000445f0();
+ FUN_00044584();
+ FUN_0004a0dc();
+ FUN_0004a090();
+ FUN_000ccb44();
+ FUN_000406f4();
+ FUN_0004adb4();
+ FUN_0004b0c0();
+ FUN_0002bb10();
+ FUN_0004f10c();
+ FUN_00049bf0();
+ FUN_0004450c();
+ FUN_0004ffa0();
+ FUN_0004f014();
+ FUN_00048d18();
+ FUN_00044324();
+ FUN_000443e0();
+ FUN_00044288();
+ FUN_00033cb0();
+ FUN_0004451c();
+ FUN_0004fedc();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
uVar35 = CONCAT44(extraout_r1_08,pcVar6);
if (pcVar6 == (char *)0x0) {
- uVar35 = FUN_0004ca64();
+ uVar35 = FUN_0004fbe4();
}
- FUN_0003a864((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0003be70((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_0002c548();
+ FUN_0002d2d8();
}
if ((uVar31 & 2) != 0) {
- FUN_0002db20();
- uVar35 = FUN_00042c98();
- FUN_0003bd2c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0002e8b4();
+ update_srv_cert_if_lan_ip_changed();
+ uVar35 = FUN_00044a20();
+ FUN_0003d41c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode");
iVar34 = atoi(pcVar6);
uVar35 = CONCAT44(extraout_r1_13,iVar34);
}
else {
uVar35 = nvram_get_int();
}
uVar32 = (uint)((int)uVar35 == 1);
uVar35 = CONCAT44((int)((ulonglong)uVar35 >> 0x20),uVar32);
if (uVar32 != 0) {
- uVar35 = FUN_00046498();
+ uVar35 = FUN_00048d68();
}
- FUN_000427a4((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_00032f5c();
- uVar10 = FUN_0004d360();
- uVar10 = FUN_00042668(uVar10);
- FUN_000425fc(uVar10);
- uVar35 = FUN_000472d0();
- uVar10 = FUN_0004bea4((undefined *)uVar35,
+ FUN_0004452c((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_00033cf8();
+ uVar10 = FUN_0005055c();
+ uVar10 = FUN_000443f0(uVar10);
+ FUN_00044334(uVar10);
+ uVar35 = FUN_00049ba0();
+ uVar10 = FUN_0004f024((undefined *)uVar35,
(int)((ulonglong)uVar35 >> 0x20),ppcVar16);
- uVar35 = FUN_0004cd98(uVar10,extraout_r1_09);
- uVar35 = FUN_00042728((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- uVar10 = FUN_00047380((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
+ uVar35 = FUN_0004ff44(uVar10,extraout_r1_09);
+ uVar35 = FUN_000444b0((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ uVar10 = FUN_00049c50((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
(undefined *)ppcVar16,pcVar7);
- FUN_0004bef8(uVar10,extraout_r1_10,ppcVar16,pcVar7);
- uVar35 = FUN_0002ad90();
- FUN_00048e1c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0004f078(uVar10,extraout_r1_10,ppcVar16,pcVar7);
+ uVar35 = FUN_0002bb20();
+ FUN_0004b044((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_00031b44(0);
- FUN_00048260();
- FUN_00047808();
- FUN_000477b4();
- uVar10 = FUN_000c6528();
- FUN_00042894(uVar10);
- FUN_0004280c(0);
- FUN_0002af4c();
- FUN_00031918();
- pcVar6 = FUN_0003dfd4();
+ FUN_000328dc(0);
+ FUN_0004a4b8();
+ FUN_0004cc68();
+ FUN_0004a088();
+ uVar10 = FUN_000cc5c8();
+ FUN_0004461c(uVar10);
+ FUN_00044594(0);
+ FUN_0002bcdc();
+ FUN_000326b0();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
uVar10 = extraout_r1_11;
if (pcVar6 == (char *)0x0) {
- pcVar6 = (char *)FUN_0004cac4();
+ pcVar6 = (char *)FUN_0004fc44();
uVar10 = extraout_r1_12;
}
- uVar35 = FUN_0004cd5c(pcVar6,uVar10);
- FUN_000f4a34((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_0003252c();
+ uVar35 = FUN_0004ff08(pcVar6,uVar10);
+ FUN_000fc448((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_000332c4();
}
}
else {
iVar8 = strcmp(pcVar6,"net_and_phy");
if (iVar8 == 0) {
LAB_17:
if ((uVar31 & 1) != 0) {
sleep(2);
- FUN_00042868();
- FUN_000427fc();
- FUN_00047d68();
- FUN_000477bc();
- FUN_000c6aa4();
- FUN_0003ef20();
- FUN_00048b8c();
- FUN_00048e98();
- FUN_0002ad80();
- FUN_0004bf8c();
- FUN_00047320();
- FUN_00042784();
- FUN_0004cdf4();
- FUN_0004be94();
- FUN_00046448();
- FUN_000425ec();
- FUN_00042658();
- FUN_00042550();
- FUN_00032f14();
- FUN_00042794();
- FUN_0004cd30();
- pcVar6 = FUN_0003dfd4();
+ FUN_000445f0();
+ FUN_00044584();
+ FUN_0004a0dc();
+ FUN_0004a090();
+ FUN_000ccb44();
+ FUN_000406f4();
+ FUN_0004adb4();
+ FUN_0004b0c0();
+ FUN_0002bb10();
+ FUN_0004f10c();
+ FUN_00049bf0();
+ FUN_0004450c();
+ FUN_0004ffa0();
+ FUN_0004f014();
+ FUN_00048d18();
+ FUN_00044324();
+ FUN_000443e0();
+ FUN_00044288();
+ FUN_00033cb0();
+ FUN_0004451c();
+ FUN_0004fedc();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
if (pcVar6 == (char *)0x0) {
- FUN_0004ca64();
+ FUN_0004fbe4();
}
- uVar35 = FUN_000f4a20();
- FUN_0003a864((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ uVar35 = FUN_000fc434();
+ FUN_0003be70((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_0002c548();
- FUN_00031d5c();
+ FUN_0002d2d8();
+ FUN_00032af4();
}
if ((uVar31 & 2) != 0) {
- FUN_0002db20();
- uVar35 = FUN_00042c98();
- FUN_0003bd2c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0002e8b4();
+ update_srv_cert_if_lan_ip_changed();
+ uVar35 = FUN_00044a20();
+ FUN_0003d41c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode");
iVar34 = atoi(pcVar6);
uVar35 = CONCAT44(extraout_r1_18,iVar34);
}
else {
uVar35 = nvram_get_int();
}
uVar32 = (uint)((int)uVar35 == 1);
uVar35 = CONCAT44((int)((ulonglong)uVar35 >> 0x20),uVar32);
if (uVar32 != 0) {
- uVar35 = FUN_00046498();
+ uVar35 = FUN_00048d68();
}
- FUN_000427a4((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_00032f5c();
- uVar10 = FUN_0004d360();
- uVar10 = FUN_00042668(uVar10);
- FUN_000425fc(uVar10);
- uVar35 = FUN_000472d0();
- uVar10 = FUN_0004bea4((undefined *)uVar35,
+ FUN_0004452c((undefined *)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_00033cf8();
+ uVar10 = FUN_0005055c();
+ uVar10 = FUN_000443f0(uVar10);
+ FUN_00044334(uVar10);
+ uVar35 = FUN_00049ba0();
+ uVar10 = FUN_0004f024((undefined *)uVar35,
(int)((ulonglong)uVar35 >> 0x20),ppcVar16);
- uVar35 = FUN_0004cd98(uVar10,extraout_r1_14);
- uVar35 = FUN_00042728((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- uVar10 = FUN_00047380((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
+ uVar35 = FUN_0004ff44(uVar10,extraout_r1_14);
+ uVar35 = FUN_000444b0((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ uVar10 = FUN_00049c50((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
(undefined *)ppcVar16,pcVar7);
- FUN_0004bef8(uVar10,extraout_r1_15,ppcVar16,pcVar7);
- uVar35 = FUN_0002ad90();
- FUN_00048e1c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
+ FUN_0004f078(uVar10,extraout_r1_15,ppcVar16,pcVar7);
+ uVar35 = FUN_0002bb20();
+ FUN_0004b044((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),ppcVar16,
pcVar7);
- FUN_00031b44(6);
- FUN_00048260();
- FUN_00047808();
- FUN_000477b4();
- uVar10 = FUN_000c6528();
- FUN_00042894(uVar10);
- FUN_0004280c(0);
- FUN_0002af4c();
- FUN_00031918();
- pcVar6 = FUN_0003dfd4();
+ FUN_000328dc(6);
+ FUN_0004a4b8();
+ FUN_0004cc68();
+ FUN_0004a088();
+ uVar10 = FUN_000cc5c8();
+ FUN_0004461c(uVar10);
+ FUN_00044594(0);
+ FUN_0002bcdc();
+ FUN_000326b0();
+ pcVar6 = FUN_0003f6c8();
pcVar6 = strstr(pcVar6,"start_cfgsync");
uVar10 = extraout_r1_16;
if (pcVar6 == (char *)0x0) {
- pcVar6 = (char *)FUN_0004cac4();
+ pcVar6 = (char *)FUN_0004fc44();
uVar10 = extraout_r1_17;
}
- uVar35 = FUN_0004cd5c(pcVar6,uVar10);
- FUN_000f4a34((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
- FUN_0003252c();
+ uVar35 = FUN_0004ff08(pcVar6,uVar10);
+ FUN_000fc448((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_000332c4();
}
}
else {
iVar8 = strcmp(pcVar6,"subnet");
if (iVar8 == 0) {
- ppcVar15 = (char **)FUN_0003dfd4();
- pcVar6 = FUN_0003dfd4();
- bVar4 = FUN_0003dff4("wans_mode","lb");
+ ppcVar15 = (char **)FUN_0003f6c8();
+ pcVar6 = FUN_0003f6c8();
+ bVar4 = FUN_0003f6e8("wans_mode","lb");
if (bVar4) {
iVar34 = 0;
while( true ) {
- bVar4 = FUN_0003e17c();
+ bVar4 = FUN_0003f870();
pcVar7 = pcVar6;
ppcVar16 = ppcVar15;
if (!bVar4) {
- snprintf((char *)&local_1220,0xf,"wan%d_",iVar34);
- FUN_0003e15c((char *)&local_1220,"ipaddr",(char *)&local_1020)
- ;
- ppcVar16 = (char **)FUN_0003dfd4();
- FUN_0003e15c((char *)&local_1220,"netmask",(char *)&local_1020
- );
- pcVar7 = FUN_0003dfd4();
+ snprintf((char *)local_1220,0xf,"wan%d_",iVar34);
+ FUN_0003f850((char *)local_1220,"ipaddr",(char *)ppcVar19);
+ ppcVar16 = (char **)FUN_0003f6c8();
+ FUN_0003f850((char *)local_1220,"netmask",(char *)ppcVar19);
+ pcVar7 = FUN_0003f6c8();
}
iVar8 = inet_deconflict(ppcVar15,pcVar6);
if (iVar8 != 0) {
ppcVar15 = (char **)inet_ntoa(local_1420);
}
if (iVar34 == 1) break;
iVar34 = 1;
}
- pcVar12 = FUN_0003dfd4();
+ pcVar12 = FUN_0003f6c8();
iVar34 = strcmp((char *)ppcVar15,pcVar12);
}
else {
iVar34 = get_primaryif_dualwan_unit();
if (iVar34 < 0) goto LAB_5;
- bVar4 = FUN_0003e17c();
+ bVar4 = FUN_0003f870();
pcVar7 = pcVar6;
ppcVar16 = ppcVar15;
if (!bVar4) {
- snprintf((char *)&local_1220,0xf,"wan%d_",iVar34);
- FUN_0003e15c((char *)&local_1220,"ipaddr",(char *)&local_1020);
- ppcVar16 = (char **)FUN_0003dfd4();
- FUN_0003e15c((char *)&local_1220,"netmask",(char *)&local_1020);
- pcVar7 = FUN_0003dfd4();
+ snprintf((char *)local_1220,0xf,"wan%d_",iVar34);
+ FUN_0003f850((char *)local_1220,"ipaddr",(char *)ppcVar19);
+ ppcVar16 = (char **)FUN_0003f6c8();
+ FUN_0003f850((char *)local_1220,"netmask",(char *)ppcVar19);
+ pcVar7 = FUN_0003f6c8();
}
iVar34 = inet_deconflict(ppcVar15,pcVar6);
}
if (iVar34 != 0) {
pcVar12 = inet_ntoa(local_1420);
nvram_set("lan_ipaddr",pcVar12);
pcVar12 = inet_ntoa(local_1420);
nvram_set("lan_ipaddr_rt",pcVar12);
uVar32 = local_1420.s_addr << 0x18 |
(local_1420.s_addr >> 8 & 0xff) << 0x10 |
(local_1420.s_addr >> 0x10 & 0xff) << 8 |
local_1420.s_addr >> 0x18;
uVar31 = uVar32 + 1;
local_1420.s_addr =
uVar31 * 0x1000000 | (uVar31 >> 8 & 0xff) << 0x10 |
(uVar31 >> 0x10 & 0xff) << 8 | uVar31 >> 0x18;
pcVar12 = inet_ntoa(local_1420);
nvram_set("dhcp_start",pcVar12);
iVar17 = inet_network(pcVar6);
uVar32 = ~iVar17 | uVar32;
uVar31 = 3;
local_1420.s_addr =
(uVar32 & 0xfe) << 0x18 | (uVar32 >> 8 & 0xff) << 0x10 |
(uVar32 >> 0x10 & 0xff) << 8 | uVar32 >> 0x18;
pcVar6 = inet_ntoa(local_1420);
nvram_set("dhcp_end",pcVar6);
nvram_commit();
nvram_set("freeze_duck",&DAT_18);
goto LAB_17;
}
}
else {
iVar8 = strcmp(pcVar6,"multipath");
if (iVar8 == 0) {
iVar34 = wan_primary_ifunit();
- uVar24 = iVar34 + 1;
- uVar25 = uVar24 & 1;
- uVar32 = uVar25;
- if ((int)uVar24 < 0) {
- uVar32 = -uVar25;
+ uVar25 = iVar34 + 1;
+ uVar26 = uVar25 & 1;
+ uVar32 = uVar26;
+ if ((int)uVar25 < 0) {
+ uVar32 = -uVar26;
}
iVar8 = is_wan_connect();
iVar33 = is_wan_connect(uVar32);
- puVar5 = FUN_0003dfd4();
+ puVar5 = FUN_0003f6c8();
snprintf((char *)&local_1420,4,"%s",puVar5);
uVar10 = get_wan_ifname(iVar34);
- snprintf((char *)&local_1220,0x10,"%s",uVar10);
+ snprintf((char *)local_1220,0x10,"%s",uVar10);
uVar10 = get_wan_ifname(uVar32);
snprintf((char *)&local_1020,0x10,"%s",uVar10);
cprintf("multipath(%s): unit_now: (%d, %d, %s), unit_next: (%d, %d, %s).\n"
- ,&local_1420,iVar34,iVar8,&local_1220,uVar32,iVar33,
+ ,&local_1420,iVar34,iVar8,local_1220,uVar32,iVar33,
&local_1020);
iVar18 = strcmp((char *)&local_1420,"lb");
if (iVar18 == 0) {
if (iVar8 != 1 || iVar33 != 1) {
if (iVar33 != 0 || iVar8 != 1) {
if (iVar8 == 0 && iVar33 == 1) {
- FUN_000394a0(&local_1020);
- FUN_00038078(iVar34);
- FUN_0003acc0(iVar34);
+ FUN_0003aac8(&local_1020);
+ FUN_00039be8(iVar34);
+ FUN_0003c2cc(iVar34);
}
else {
- FUN_00038078(0);
- FUN_0003acc0(0);
- FUN_00038078(1);
- FUN_0003acc0(1);
+ FUN_00039be8(0);
+ FUN_0003c2cc(0);
+ FUN_00039be8(1);
+ FUN_0003c2cc(1);
}
}
else {
- FUN_00038078(uVar32);
- FUN_0003acc0(uVar32);
+ FUN_00039be8(uVar32);
+ FUN_0003c2cc(uVar32);
}
}
else {
LAB_19:
- FUN_000394a0(&local_1220);
+ FUN_0003aac8(local_1220);
}
}
else {
iVar18 = strcmp((char *)&local_1420,"fb");
if (iVar18 == 0) {
if (iVar8 != 1 || iVar33 != 1) {
if (iVar33 != 0 || iVar8 != 1) {
if (iVar8 != 0 || iVar33 != 1) {
- if (uVar25 == 0) {
+ if (uVar26 == 0) {
set_wan_primary_ifunit(uVar32);
- FUN_00038078(uVar32);
- FUN_0003acc0(uVar32);
+ FUN_00039be8(uVar32);
+ FUN_0003c2cc(uVar32);
}
else {
- FUN_00038078(iVar34);
- FUN_0003acc0(iVar34);
+ FUN_00039be8(iVar34);
+ FUN_0003c2cc(iVar34);
}
}
else {
set_wan_primary_ifunit(uVar32);
- FUN_000394a0(&local_1020);
+ FUN_0003aac8(&local_1020);
if (iVar34 == 0) {
- FUN_00038078(0);
- FUN_0003acc0(0);
+ FUN_00039be8(0);
+ FUN_0003c2cc(0);
}
}
}
else {
- FUN_000394a0(&local_1220);
- if ((uVar24 & 1) == 0) {
- FUN_00038078(uVar32);
- FUN_0003acc0(uVar32);
+ FUN_0003aac8(local_1220);
+ if ((uVar25 & 1) == 0) {
+ FUN_00039be8(uVar32);
+ FUN_0003c2cc(uVar32);
}
}
}
- else if (uVar25 == 0) {
+ else if (uVar26 == 0) {
set_wan_primary_ifunit(uVar32);
- FUN_000394a0(&local_1020);
- FUN_00038078(iVar34);
+ FUN_0003aac8(&local_1020);
+ FUN_00039be8(iVar34);
}
else {
- FUN_000394a0(&local_1220);
- FUN_00038078(uVar32);
+ FUN_0003aac8(local_1220);
+ FUN_00039be8(uVar32);
}
}
else {
iVar18 = strcmp((char *)&local_1420,"fo");
if (iVar18 == 0) {
if (iVar8 != 1 || iVar33 != 1) {
if (iVar33 == 0 && iVar8 == 1) goto LAB_19;
if (iVar8 != 0 || iVar33 != 1) {
- FUN_00038078(iVar34);
- FUN_0003acc0(iVar34);
+ FUN_00039be8(iVar34);
+ FUN_0003c2cc(iVar34);
}
else {
set_wan_primary_ifunit(uVar32);
- FUN_000394a0(&local_1020);
+ FUN_0003aac8(&local_1020);
}
}
else {
- FUN_000394a0(&local_1220);
- FUN_00038078(uVar32);
+ FUN_0003aac8(local_1220);
+ FUN_00039be8(uVar32);
}
}
}
}
}
else {
iVar8 = strcmp(pcVar6,"wireless");
if (iVar8 == 0) {
uVar35 = nvram_set("restart_wifi","1");
if ((uVar31 & 1) != 0) {
- FUN_0004a2b8();
+ FUN_0004d47c();
kill_pidfile_s("/var/run/wanduck.pid",10);
- uVar35 = FUN_000427fc();
+ uVar35 = FUN_00044584();
}
if (uVar31 == 3) {
- FUN_000326e4((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
+ FUN_0003347c((int)uVar35,(int)((ulonglong)uVar35 >> 0x20),
(undefined *)ppcVar16,pcVar7);
LAB_20:
- FUN_0004280c(0);
- uVar35 = FUN_0004c7e8();
- FUN_0004a1f8((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
+ FUN_00044594(0);
+ uVar35 = FUN_0004f968();
+ FUN_0004d3bc((int)uVar35,(int)((ulonglong)uVar35 >> 0x20));
}
else if ((uVar31 & 2) != 0) goto LAB_20;
nvram_set("restart_wifi","0");
}
else {
iVar8 = strcmp(pcVar6,"clkfreq");
if (iVar8 == 0) {
- puVar5 = FUN_0003dfd4();
- dbg("%s(0x%04x): clkfreq: %s\n","handle_notifications",0x381e,
+ puVar5 = FUN_0003f6c8();
+ dbg("%s(0x%04x): clkfreq: %s\n","handle_notifications",0x39d1,
puVar5);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
pcVar7 = strchr(pcVar6,0x2c);
if (pcVar7 == (char *)0x0) {
iVar8 = atoi(pcVar6);
iVar34 = 0;
}
else {
- local_1220 = &local_1020;
- strncpy((char *)&local_1020,pcVar6,100);
- pcVar6 = strsep((char **)&local_1220,",");
+ local_1220[0] = ppcVar19;
+ strncpy((char *)ppcVar19,pcVar6,100);
+ pcVar6 = strsep((char **)local_1220,",");
iVar8 = atoi(pcVar6);
- iVar34 = atoi((char *)local_1220);
+ iVar34 = atoi((char *)local_1220[0]);
}
if (((((iVar8 != 600) && (iVar8 != 800)) && (iVar8 != 1000))
&& ((iVar8 != 0x4b0 && (iVar8 != 0x578)))) &&
(iVar8 != 0x640)) {
iVar8 = 800;
}
iVar33 = 0;
- piVar26 = &DAT_21;
+ piVar27 = &DAT_21;
do {
- if (*piVar26 == iVar34) goto LAB_22;
+ if (*piVar27 == iVar34) goto LAB_22;
iVar33 = iVar33 + 1;
- piVar26 = piVar26 + 1;
+ piVar27 = piVar27 + 1;
} while (iVar33 != 7);
iVar34 = 0x215;
LAB_22:
dbg("%s(0x%04x): target CPU clock: %d\n",
- "handle_notifications",0x383f,iVar8);
+ "handle_notifications",0x39f2,iVar8);
if (iVar34 != 0) {
dbg("%s(0x%04x): target DDR clock: %d\n",
- "handle_notifications",0x3840,iVar34);
+ "handle_notifications",0x39f3,iVar34);
}
nvram_unset("sdram_ncdl");
nvram_commit();
}
else {
iVar8 = strcmp(pcVar6,"set_wltxpower");
if (iVar8 == 0) {
iVar34 = nvram_contains_word("rc_support","pwrctrl");
if (iVar34 == 0) {
dbg("%s(0x%04x): \n\tDon\'t do this!\n\n",
- "handle_notifications",0x3849);
+ "handle_notifications",0x39fc);
}
else {
- FUN_0010dd80();
+ FUN_00114688();
}
}
else {
iVar8 = strcmp(pcVar6,"wan");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_19 << 0x20;
if ((uVar31 & 1) != 0) {
- uVar35 = FUN_00048b8c();
- lVar36 = FUN_0003a864((int)uVar35,
+ uVar35 = FUN_0004adb4();
+ lVar36 = FUN_0003be70((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
ppcVar16,pcVar7);
}
if ((uVar31 & 2) != 0) {
- FUN_0003bd2c((int)lVar36,
+ FUN_0003d41c((int)lVar36,
(int)((ulonglong)lVar36 >> 0x20),ppcVar16,
pcVar7);
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode");
iVar34 = atoi(pcVar6);
}
else {
iVar34 = nvram_get_int();
}
if (iVar34 == 1) {
- FUN_00046498();
+ FUN_00048d68();
}
- FUN_00048260();
+ FUN_0004a4b8();
}
}
else {
- iVar8 = strcmp(pcVar6,"wan_if");
+ iVar8 = strcmp(pcVar6,"wan_dns");
if (iVar8 == 0) {
- if (local_1600[1] != (char *)0x0) {
- pcVar6 = local_1600[1];
- cprintf("%s: wan_if: %s.\n","handle_notifications");
- iVar34 = atoi(local_1600[1]);
- uVar35 = wan_primary_ifunit_ipv6();
- iVar8 = (int)uVar35;
- if ((uVar31 & 1) != 0) {
- iVar33 = atoi(local_1600[1]);
- uVar35 = FUN_00038078(iVar33);
- if (iVar34 == iVar8) {
- uVar35 = FUN_0002bf80((int)uVar35,
- (int)((ulonglong)uVar35 >>
- 0x20),pcVar6,pcVar7);
- }
+ if (local_15fc != (char **)0x0) {
+ iVar34 = atoi((char *)local_15fc);
+ cprintf("%s: wan_dns: %d.\n","handle_notifications",
+ iVar34);
+ snprintf((char *)&local_1420,0xf,"wan%d_",iVar34);
+ FUN_0003f850((char *)&local_1420,"dnsenable_x",
+ (char *)local_1220);
+ iVar34 = nvram_get_int();
+ if (iVar34 == 0) {
+ get_userdns_r(&local_1420,ppcVar19,0x40);
+ uVar10 = FUN_0003f850((char *)&local_1420,"dns",
+ (char *)local_1220);
}
- if ((uVar31 & 2) != 0) {
- if (iVar34 == iVar8) {
- FUN_0002be8c((int)uVar35,
- (int)((ulonglong)uVar35 >> 0x20),
- pcVar6,pcVar7);
- }
- iVar34 = atoi(local_1600[1]);
- FUN_0003acc0(iVar34);
- FUN_0002bfd0();
+ else {
+ uVar10 = FUN_0003f850((char *)&local_1420,"dns",
+ (char *)local_1220);
+ FUN_0003f850((char *)&local_1420,"dns_r",
+ (char *)ppcVar19);
+ ppcVar19 = (char **)FUN_0003f6c8();
}
+ nvram_set(uVar10,ppcVar19);
+ FUN_00037f70();
}
}
else {
- iVar8 = strcmp(pcVar6,"dblog");
+ iVar8 = strcmp(pcVar6,"wan_if");
if (iVar8 == 0) {
- uVar10 = extraout_r1_20;
- if ((uVar31 & 1) != 0) {
- FUN_000d3ca0(0);
- uVar10 = extraout_r1_21;
- }
- if ((uVar31 & 2) != 0) {
- FUN_000d3c30(1,uVar10,ppcVar16,pcVar7);
+ if (local_15fc != (char **)0x0) {
+ ppcVar19 = local_15fc;
+ cprintf("%s: wan_if: %s.\n","handle_notifications");
+ iVar34 = atoi((char *)local_15fc);
+ uVar35 = wan_primary_ifunit_ipv6();
+ iVar8 = (int)uVar35;
+ if ((uVar31 & 1) != 0) {
+ iVar33 = atoi((char *)local_15fc);
+ uVar35 = FUN_00039be8(iVar33);
+ if (iVar34 == iVar8) {
+ uVar35 = FUN_0002cd10((int)uVar35,
+ (int)((ulonglong)uVar35 >>
+ 0x20),ppcVar19,pcVar7
+ );
+ }
+ }
+ if ((uVar31 & 2) != 0) {
+ if (iVar34 == iVar8) {
+ FUN_0002cc1c((int)uVar35,
+ (int)((ulonglong)uVar35 >> 0x20),
+ ppcVar19,pcVar7);
+ }
+ iVar34 = atoi((char *)local_15fc);
+ FUN_0003c2cc(iVar34);
+ FUN_0002cd60();
+ }
}
}
else {
- iVar8 = strcmp(pcVar6,"ahs");
+ iVar8 = strcmp(pcVar6,"dblog");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_22 << 0x20;
+ uVar10 = extraout_r1_20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_000474a0();
+ FUN_000d9d0c(0);
+ uVar10 = extraout_r1_21;
}
if ((uVar31 & 2) != 0) {
- FUN_000474cc((int)lVar36,
- (int)((ulonglong)lVar36 >> 0x20),
- ppcVar16,pcVar7);
+ FUN_000d9c9c(1,uVar10,ppcVar16,pcVar7);
}
}
else {
- iVar8 = strcmp(pcVar6,"wan_line");
+ iVar8 = strcmp(pcVar6,"ahs");
if (iVar8 == 0) {
- cprintf("%s: restart_wan_line: %s.\n",
- "handle_notifications",local_1600[1]);
- if (local_1600[1] != (char *)0x0) {
- atoi(local_1600[1]);
- uVar10 = get_wan_ifname();
- FUN_000394a0(uVar10);
- FUN_00048b8c();
- FUN_00048260();
+ lVar36 = (ulonglong)extraout_r1_22 << 0x20;
+ if ((uVar31 & 1) != 0) {
+ lVar36 = FUN_00049d74();
+ }
+ if ((uVar31 & 2) != 0) {
+ FUN_00049da0((int)lVar36,
+ (int)((ulonglong)lVar36 >> 0x20),
+ ppcVar16,pcVar7);
}
}
else {
- iVar8 = strcmp(pcVar6,"nas");
+ iVar8 = strcmp(pcVar6,"wan_line");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_23 << 0x20;
- if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00032f14();
- }
- if ((uVar31 & 2) != 0) {
- FUN_000427a4((undefined *)lVar36,
- (int)((ulonglong)lVar36 >> 0x20))
- ;
- FUN_00032f5c();
- uVar10 = FUN_0004d360();
- uVar10 = FUN_00042668(uVar10);
- FUN_000425fc(uVar10);
- uVar35 = FUN_000472d0();
- uVar10 = FUN_0004bea4((undefined *)uVar35,
- (int)((ulonglong)uVar35
- >> 0x20),ppcVar16);
- uVar35 = FUN_0004cd98(uVar10,extraout_r1_24);
- uVar35 = FUN_00042728((int)uVar35,
- (int)((ulonglong)uVar35
- >> 0x20));
- uVar10 = FUN_00047380((int)uVar35,
- (int)((ulonglong)uVar35
- >> 0x20),
- (undefined *)ppcVar16,
- pcVar7);
- FUN_0004bef8(uVar10,extraout_r1_25,ppcVar16,
- pcVar7);
- FUN_0002af4c();
- FUN_00031918();
- FUN_0003252c();
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"aae");
- if ((iVar8 == 0) ||
- (iVar8 = strcmp(pcVar6,"mastiff"), iVar8 == 0
- )) {
+ cprintf("%s: restart_wan_line: %s.\n",
+ "handle_notifications",local_15fc);
+ if (local_15fc != (char **)0x0) {
+ atoi((char *)local_15fc);
+ uVar10 = get_wan_ifname();
+ FUN_0003aac8(uVar10);
+ FUN_0004adb4();
+ FUN_0004a4b8();
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"nas");
+ if (iVar8 == 0) {
+ lVar36 = (ulonglong)extraout_r1_23 << 0x20;
if ((uVar31 & 1) != 0) {
- FUN_001178b8();
+ lVar36 = FUN_00033cb0();
}
if ((uVar31 & 2) != 0) {
- FUN_00117828();
+ FUN_0004452c((undefined *)lVar36,
+ (int)((ulonglong)lVar36 >> 0x20
+ ));
+ FUN_00033cf8();
+ uVar10 = FUN_0005055c();
+ uVar10 = FUN_000443f0(uVar10);
+ FUN_00044334(uVar10);
+ uVar35 = FUN_00049ba0();
+ uVar10 = FUN_0004f024((undefined *)uVar35,
+ (int)((ulonglong)
+ uVar35 >> 0x20),
+ ppcVar16);
+ uVar35 = FUN_0004ff44(uVar10,extraout_r1_24)
+ ;
+ uVar35 = FUN_000444b0((int)uVar35,
+ (int)((ulonglong)
+ uVar35 >> 0x20))
+ ;
+ uVar10 = FUN_00049c50((int)uVar35,
+ (int)((ulonglong)
+ uVar35 >> 0x20),
+ (undefined *)ppcVar16,
+ pcVar7);
+ FUN_0004f078(uVar10,extraout_r1_25,ppcVar16,
+ pcVar7);
+ FUN_0002bcdc();
+ FUN_000326b0();
+ FUN_000332c4();
}
}
else {
- iVar8 = strncmp(pcVar6,"webs_",5);
- if (iVar8 != 0) {
- puVar5 = (undefined *)0x5;
- iVar8 = strncmp(pcVar6,"gobi_",5);
+ iVar8 = strcmp(pcVar6,"aae");
+ if ((iVar8 == 0) ||
+ (iVar8 = strcmp(pcVar6,"mastiff"),
+ iVar8 == 0)) {
+ if ((uVar31 & 1) != 0) {
+ FUN_0011e2e0();
+ }
+ if ((uVar31 & 2) != 0) {
+ FUN_0011e250();
+ }
+ }
+ else {
+ iVar8 = strncmp(pcVar6,"webs_",5);
if (iVar8 != 0) {
- iVar8 = strcmp(pcVar6,"ddns_le");
- if (iVar8 == 0) {
- nvram_set("le_rc_notify","1");
- iVar34 = system(
+ puVar5 = (undefined *)0x5;
+ iVar8 = strncmp(pcVar6,"gobi_",5);
+ if (iVar8 != 0) {
+ iVar8 = strcmp(pcVar6,"ddns_le");
+ if (iVar8 == 0) {
+ nvram_set("le_rc_notify","1");
+ iVar34 = system(
"rm -f /var/cache/inadyn/*.cache");
if ((uVar31 & 1) != 0) {
- FUN_00045174(iVar34,extraout_r1_26,puVar5,pcVar7
+ FUN_00047474(iVar34,extraout_r1_26,puVar5,pcVar7
);
}
if ((uVar31 & 2) != 0) {
- FUN_000441f0(0);
+ FUN_00046194(0);
}
}
else {
iVar8 = strcmp(pcVar6,"ddns");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00045174(0,extraout_r1_27,puVar5,pcVar7)
+ FUN_00047474(0,extraout_r1_27,puVar5,pcVar7)
;
}
if ((uVar31 & 2) != 0) {
- FUN_000441f0((int)local_1600[1]);
+ FUN_00046194((int)local_15fc);
+ update_srv_cert_if_ddns_changed();
}
}
else {
- iVar8 = strcmp(pcVar6,
+ iVar8 = strcmp(pcVar6,"prepare_cert");
+ if (iVar8 == 0) {
+ iVar34 = FUN_0004c3b8();
+ if (0 < iVar34) {
+ nvram_set("httpds_reload_cert",
+ &DAT_8);
+ iVar34 = get_ipv6_service();
+ if ((iVar34 != 0) &&
+ (bVar4 = FUN_0003f6e8("misc_http_x","1"
+ ), bVar4)) {
+ nvram_set("httpds6_reload_cert",
+ &DAT_8);
+ }
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,
"aidisk_asusddns_register");
if (iVar8 == 0) {
- FUN_00045254(0);
+ FUN_00047554(0);
}
else {
iVar8 = strcmp(pcVar6,"adm_asusddns_register");
if (iVar8 == 0) {
- FUN_00045254(1);
+ FUN_00047554(1);
}
else {
iVar8 = strcmp(pcVar6,"asusddns_unregister");
if (iVar8 == 0) {
- FUN_00045b4c();
+ FUN_00048190();
}
else {
iVar8 = strcmp(pcVar6,"clean_ddns");
if (iVar8 == 0) {
- FUN_00047dec(0,extraout_r1_28,puVar5,
+ FUN_0004d21c(0,extraout_r1_28,puVar5,
pcVar7);
}
else {
iVar8 = strcmp(pcVar6,"httpd");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00047d68();
+ FUN_0004a0dc();
}
if ((uVar31 & 2) != 0) {
- FUN_00047808();
+ FUN_0004cc68();
setup_wrs_conf();
}
}
else {
iVar8 = strcmp(pcVar6,"telnetd");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_000477bc();
+ FUN_0004a090();
}
if ((uVar31 & 2) != 0) {
- FUN_000477b4();
+ FUN_0004a088();
}
}
else {
iVar8 = strcmp(pcVar6,"sshd");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_000c6aa4();
+ FUN_000ccb44();
}
if ((uVar31 & 2) != 0) {
- FUN_000c6528();
+ FUN_000cc5c8();
}
}
else {
iVar8 = strcmp(pcVar6,"ipv6");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00041384();
+ FUN_000430bc();
}
if ((uVar31 & 2) != 0) {
- FUN_00041068();
+ FUN_00042da0();
}
}
else {
iVar8 = strcmp(pcVar6,"rdisc6");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00040fa8();
+ FUN_00042ce0();
}
if ((uVar31 & 2) != 0) {
- FUN_00040fb8();
+ FUN_00042cf0();
}
}
else {
iVar8 = strcmp(pcVar6,"dhcp6c");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00075298();
+ FUN_0007895c();
}
if ((uVar31 & 2) != 0) {
- FUN_000752a8();
+ FUN_0007896c();
}
}
else {
iVar8 = strcmp(pcVar6,"wan6");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_000384d4();
- FUN_00041384();
+ FUN_0003a078();
+ FUN_000430bc();
}
if ((uVar31 & 2) != 0) {
- FUN_00041068();
+ FUN_00042da0();
iVar34 = update_6rd_info()
;
if (iVar34 == 0) {
iVar34 =
wan_primary_ifunit_ipv6();
- FUN_00038078(iVar34);
+ FUN_00039be8(iVar34);
iVar34 = wan_primary_ifunit_ipv6();
- FUN_0003acc0(iVar34);
+ FUN_0003c2cc(iVar34);
}
else {
wan_primary_ifunit_ipv6();
- bVar4 = FUN_0003e17c();
+ bVar4 = FUN_0003f870();
if (bVar4) {
- uVar35 = FUN_000384d4();
- FUN_00038448((int)uVar35,
+ uVar35 = FUN_0003a078();
+ FUN_00039fec((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
puVar5,pcVar7);
}
else {
- FUN_00038448(0,extraout_r1_29,puVar5,pcVar7);
+ FUN_00039fec(0,extraout_r1_29,puVar5,pcVar7);
}
}
}
}
else {
iVar8 = strcmp(pcVar6,"dns");
if (iVar8 == 0) {
if ((uVar31 & 2) != 0) {
- FUN_0003ee00();
+ FUN_000405d4();
}
}
else {
iVar8 = strcmp(pcVar6,"dnsmasq");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0003ef20();
+ FUN_000406f4();
}
if ((uVar31 & 2) != 0) {
- FUN_00042c98();
+ FUN_00044a20();
}
}
else {
iVar8 = strcmp(pcVar6,"stubby");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0003ee38();
+ FUN_0004060c();
}
if ((uVar31 & 2) != 0) {
- FUN_0003efe4();
+ FUN_000407b8();
}
}
else {
iVar8 = strcmp(pcVar6,"upnp");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00048b8c();
+ FUN_0004adb4();
}
if ((uVar31 & 2) != 0) {
- FUN_00048260();
+ FUN_0004a4b8();
}
}
else {
iVar8 = strcmp(pcVar6,"qos");
if (iVar8 == 0) {
uVar35 = nvram_set("restart_qo","1");
uVar10 = (undefined4)
((ulonglong)uVar35 >> 0x20);
if ((uVar31 & 1) != 0) {
- FUN_0006fa68((int)uVar35);
+ FUN_00072f3c((int)uVar35);
stop_dpi_engine_service(0);
- FUN_0006d8c4();
+ FUN_00070d98();
uVar10 = extraout_r1_30;
}
if ((uVar31 & 2) != 0) {
- FUN_00099d04(0,uVar10,puVar5,pcVar7)
+ FUN_0009f8d8(0,uVar10,puVar5,pcVar7)
;
- bVar4 = FUN_0003dff4("qos_enable",
+ bVar4 = FUN_0003f6e8("qos_enable",
"1");
if (((bVar4) &&
- (bVar4 = FUN_0003dff4("qos_type"
+ (bVar4 = FUN_0003f6e8("qos_type"
,"2"),
!bVar4)) ||
- (bVar4 = FUN_0003dff4(
+ (bVar4 = FUN_0003f6e8(
"qos_enable","0"), bVar4)) {
- FUN_0006ff84();
+ FUN_00073458();
}
wan_primary_ifunit();
pcVar6 = (char *)get_wan_ifname();
- FUN_0006fab0(pcVar6);
+ FUN_00072f84(pcVar6);
start_dpi_engine_service();
- FUN_0006fbcc();
+ FUN_000730a0();
}
nvram_set("restart_qo","0");
}
else {
iVar8 = strcmp(pcVar6,"wrs");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
stop_dpi_engine_service();
}
if ((uVar31 & 2) != 0) {
start_dpi_engine_service();
}
}
else {
iVar8 = strcmp(pcVar6,"wrs_force");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
stop_dpi_engine_service(3);
}
}
else {
- iVar8 = strcmp(pcVar6,"sig_check");
+ ppcVar19 = (char **)strcmp(pcVar6,
+ "sig_check");
+ if (ppcVar19 == (char **)0x0) {
+ if ((uVar31 & 2) != 0) {
+ local_1220[0] = (char **)0x16e5ba;
+ local_1220[1] = ppcVar19;
+ _eval(local_1220,0,0,0);
+ iVar34 = nvram_get_int("sig_state_flag");
+ if (iVar34 != 0) {
+ local_1020 = "sig_upgrade.sh";
+ local_101c = ppcVar19;
+ _eval(&local_1020,0,0,0);
+ }
+ stop_dpi_engine_service(0);
+ start_dpi_engine_service();
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"dpi_disable");
+ if (iVar8 == 0) {
+ disable_dpi_engine_setting();
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"reset_cc_db");
+ if (iVar8 == 0) {
+ local_1020 = DAT_23;
+ local_101c = DAT_24;
+ local_1018 = DAT_25;
+ local_1014 = DAT_26;
+ local_1010 = DAT_27;
+ _eval(&local_1020,0,0,0);
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"reset_mals_db");
if (iVar8 == 0) {
- if ((uVar31 & 2) != 0) {
- local_1220 = (char **)0x165bcf;
- local_121c[0] = (char **)0x0;
- _eval(&local_1220,0,0,0);
- iVar34 = nvram_get_int("sig_state_flag")
- ;
- if (iVar34 != 0) {
- local_1020 = "sig_upgrade.sh";
- local_101c[0] = (char *)0x0;
- _eval(&local_1020,0,0,0);
- }
- stop_dpi_engine_service(0);
- start_dpi_engine_service();
- }
+ local_1020 = DAT_28;
+ local_101c = DAT_29;
+ local_1018 = DAT_30;
+ local_1014 = DAT_31;
+ local_1010 = DAT_32;
+ _eval(&local_1020,0,0,0);
}
else {
- iVar8 = strcmp(pcVar6,"dpi_disable");
+ iVar8 = strcmp(pcVar6,"reset_vp_db");
if (iVar8 == 0) {
- disable_dpi_engine_setting();
+ local_1020 = DAT_33;
+ local_101c = DAT_34;
+ local_1018 = DAT_35;
+ local_1014 = DAT_36;
+ local_1010 = DAT_37;
+ _eval(&local_1020,0,0,0);
}
else {
- iVar8 = strcmp(pcVar6,"reset_cc_db");
+ iVar8 = strcmp(pcVar6,"traffic_analyzer"
+ );
if (iVar8 == 0) {
- local_1020 = DAT_23;
- local_101c[0] = DAT_24;
- local_101c[1] = DAT_25;
- local_1014 = DAT_26;
- local_1010 = DAT_27;
- _eval(&local_1020,0,0,0);
+ if ((uVar31 & 1) != 0) {
+ FUN_000f2ef8();
+ }
}
else {
- iVar8 = strcmp(pcVar6,"reset_mals_db")
- ;
+ iVar8 = strcmp(pcVar6,"wrs_wbl");
if (iVar8 == 0) {
- local_1020 = DAT_28;
- local_101c[0] = DAT_29;
- local_101c[1] = DAT_30;
- local_1014 = DAT_31;
- local_1010 = DAT_32;
- _eval(&local_1020,0,0,0);
+ start_wrs_wbl_service();
}
else {
- iVar8 = strcmp(pcVar6,"reset_vp_db")
+ iVar8 = strcmp(pcVar6,"mobile_game")
;
if (iVar8 == 0) {
- local_1020 = DAT_33;
- local_101c[0] = DAT_34;
- local_101c[1] = DAT_35;
- local_1014 = DAT_36;
- local_1010 = DAT_37;
- _eval(&local_1020,0,0,0);
+ MobileDevMode_restart();
}
else {
iVar8 = strcmp(pcVar6,
- "traffic_analyzer");
+ "send_confirm_mail");
if (iVar8 == 0) {
- if ((uVar31 & 1) != 0) {
- FUN_000eb508();
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"wrs_wbl");
+ snprintf((char *)&local_1020,0x20,"0x%x",0xf002)
+ ;
+ local_1220[0] = (char **)0x16e636;
+ local_1220[2] = (char **)0x17dc2e;
+ local_1214 = (undefined *)0x0;
+ local_1220[1] = &local_1020;
+ _eval(local_1220,0,0);
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"email_conf");
if (iVar8 == 0) {
- start_wrs_wbl_service();
+ FUN_000fcc74();
}
else {
- iVar8 = strcmp(pcVar6,"mobile_game");
+ iVar8 = strcmp(pcVar6,"email_info");
if (iVar8 == 0) {
- MobileDevMode_restart();
- }
- else {
- puVar19 = (undefined *)
- strcmp(pcVar6,"send_confirm_mail")
- ;
- if (puVar19 == (undefined *)0x0) {
- snprintf((char *)&local_1020,0x20,"0x%x",
- 0xf002);
- local_1220 = (char **)0x165c4b;
- local_121c[1] = (char **)0x174ff9;
- local_121c[0] = &local_1020;
- local_1214 = puVar19;
- _eval(&local_1220,0,0,0);
- }
- else {
- iVar8 = strcmp(pcVar6,"email_conf");
- if (iVar8 == 0) {
- FUN_000f5260();
- }
- else {
- iVar8 = strcmp(pcVar6,"email_info");
- if (iVar8 == 0) {
- FUN_000f5434();
- iVar34 = f_read_string(
+ FUN_000fce48();
+ iVar34 = f_read_string(
"/var/run/nt_actMail.pid",&local_1020,8);
if (0 < iVar34) {
iVar34 = atoi((char *)&local_1020);
kill(iVar34,0xc);
}
}
else {
iVar8 = strcmp(pcVar6,"update_nc_setting_conf");
if (iVar8 == 0) {
- FUN_0004955c();
+ FUN_0004b7a0();
}
else {
iVar8 = strcmp(pcVar6,
"oauth_google_gen_token_email");
if (iVar8 == 0) {
- FUN_000bc540(0,extraout_r1_31,puVar5);
- memcpy(&local_1220,
+ FUN_000c2530(0,extraout_r1_31,puVar5);
+ memcpy(local_1220,
"{\"oauth_google_refresh_token\":\"\",\"oauth_google_user_email\":\"\",\"fb_email_provider\":\"\"}"
,0x57);
memset(&local_1020,0,0x85);
snprintf((char *)&local_1020,0x84,
"{\"rc\":{\"eid\":\"%d\",\"config\":%s}}"
- ,6,&local_1220);
+ ,6,local_1220);
send_cfgmnt_event(&local_1020);
}
else {
iVar8 = strcmp(pcVar6,
"oauth_google_drive_gen_token");
if (iVar8 == 0) {
- FUN_000bc5c4(0,extraout_r1_32,puVar5);
- memcpy(&local_1220,
+ FUN_000c25b4(0,extraout_r1_32,puVar5);
+ memcpy(local_1220,
"{\"oauth_google_drive_refresh_token\":\"\",\"oauth_google_user_email\":\"\",\"fb_email_provider\":\"\"}"
,0x5d);
memset(&local_1020,0,0x85);
snprintf((char *)&local_1020,0x84,
"{\"rc\":{\"eid\":\"%d\",\"config\":%s}}"
- ,6,&local_1220);
+ ,6,local_1220);
send_cfgmnt_event(&local_1020);
}
else {
iVar8 = strcmp(pcVar6,
"oauth_google_drive_check_token_status");
if (iVar8 == 0) {
- FUN_000bc864();
+ FUN_000c28ac();
}
else {
iVar8 = strcmp(pcVar6,
"oauth_google_check_token_status");
if (iVar8 == 0) {
- FUN_000bc648();
+ FUN_000c2638();
}
else {
iVar8 = strcmp(pcVar6,"logger");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004640c();
+ FUN_00048cdc();
}
if ((uVar31 & 2) != 0) {
- FUN_00046310();
+ FUN_00048be0();
}
}
else {
iVar8 = strcmp(pcVar6,"crond");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_33 << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00049b20();
+ lVar36 = FUN_0004bd64();
}
if ((uVar31 & 2) != 0) {
- FUN_00049b30((char *)lVar36,
+ FUN_0004bd74((char *)lVar36,
(int)((ulonglong)lVar36 >>
0x20),puVar5);
}
}
else {
iVar8 = strcmp(pcVar6,"firewall");
if (iVar8 == 0) {
iVar8 = 0;
if (iVar34 == 1) {
iVar33 = wan_primary_ifunit();
}
else {
- iVar33 = atoi(local_1600[1]);
+ iVar33 = atoi((char *)local_15fc);
if (iVar34 != 2) {
- iVar8 = atoi(local_1600[2]);
+ iVar8 = atoi(local_15f8);
}
}
nvram_set("restart_fwl","1");
if ((uVar31 & 2) != 0) {
- uVar35 = FUN_00058ff4();
- FUN_0004c6ac((int)uVar35,
+ uVar35 = FUN_0005c394();
+ FUN_0004f82c((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20),puVar5);
- FUN_0005ef4c(iVar33,iVar8);
+ FUN_000622f8(iVar33,iVar8);
killall("pctime",10);
killall("pctime",0xc);
}
nvram_set("restart_fwl","0");
}
else {
- iVar8 = strcmp(pcVar6,"iptrestore");
- if (iVar8 == 0) {
- cprintf("%s: restart_iptrestore: %s.\n",
- "handle_notifications",
- local_1600[1]);
- if ((local_1600[1] != (char *)0x0) &&
- ((uVar31 & 2) != 0)) {
- local_1020 = "iptables-restore";
- local_101c[0] = local_1600[1];
- local_101c[1] = (char *)0x0;
- iVar34 = _eval(&local_1020,0,0);
- FUN_00058f28("services",0x3dc6,
- local_1600[1],iVar34);
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"pppoe_relay");
- if (iVar8 == 0) {
- uVar32 = wan_primary_ifunit();
- uVar24 = nvram_get_int(
- "pppoerelay_unit");
- bVar4 = FUN_0003dff4("wans_mode","lb");
- if (((bVar4) &&
- (iVar34 = get_nr_wan_unit(), 1 < iVar34)) &&
- (uVar24 < 2)) {
- uVar32 = uVar24;
- }
- if ((uVar31 & 1) != 0) {
- FUN_0003d998();
- }
- if ((uVar31 & 2) != 0) {
- uVar10 = get_wanx_ifname(uVar32);
- FUN_0003d8ac(uVar10);
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"ntpc");
+ pcVar12 = (char *)strcmp(pcVar6,
+ "iptrestore");
+ if (pcVar12 == (char *)0x0) {
+ cprintf("%s: restart_iptrestore: %s.\n",
+ "handle_notifications",local_15fc);
+ if ((local_15fc != (char **)0x0) &&
+ ((uVar31 & 2) != 0)) {
+ local_1020 = "iptables-restore";
+ local_101c = local_15fc;
+ local_1018 = pcVar12;
+ iVar34 = _eval(&local_1020,0,0,0);
+ FUN_0005c2c8("services",0x3f9a,
+ (char *)local_15fc,iVar34);
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"pppoe_relay");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_34 << 0x20;
+ uVar32 = wan_primary_ifunit();
+ uVar25 = nvram_get_int("pppoerelay_unit");
+ bVar4 = FUN_0003f6e8("wans_mode","lb");
+ if (((bVar4) &&
+ (iVar34 = get_nr_wan_unit(), 1 < iVar34))
+ && (uVar25 < 2)) {
+ uVar32 = uVar25;
+ }
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00048d38();
+ FUN_0003f08c();
}
if ((uVar31 & 2) != 0) {
- FUN_00048cbc((int)lVar36,
- (int)((ulonglong)lVar36 >> 0x20
- ));
+ uVar10 = get_wanx_ifname(uVar32);
+ FUN_0003efa0(uVar10);
}
}
else {
- iVar8 = strcmp(pcVar6,
+ iVar8 = strcmp(pcVar6,"ntpc");
+ if (iVar8 == 0) {
+ lVar36 = (ulonglong)extraout_r1_34 << 0x20;
+ if ((uVar31 & 1) != 0) {
+ lVar36 = FUN_0004af60();
+ }
+ if ((uVar31 & 2) != 0) {
+ FUN_0004aee4((int)lVar36,
+ (int)((ulonglong)lVar36 >>
+ 0x20));
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,
"rebuild_cifs_config_and_password");
if (iVar8 == 0) {
fputs(
"rc rebuilding CIFS config and password databases.\n"
,stderr);
}
else {
iVar8 = strcmp(pcVar6,"time");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004c04c();
- FUN_000477bc();
- FUN_000c6aa4();
- FUN_0004640c();
+ FUN_0004f1cc();
+ FUN_0004a090();
+ FUN_000ccb44();
+ FUN_00048cdc();
}
if ((uVar31 & 2) != 0) {
- FUN_000625b0();
+ FUN_000659b4();
nvram_set("reload_svc_radio","1");
- FUN_00048d64();
- FUN_00046310();
- FUN_000477b4();
- FUN_000c6528();
+ FUN_0004af8c();
+ FUN_00048be0();
+ FUN_0004a088();
+ FUN_000cc5c8();
iVar34 = wan_primary_ifunit();
- uVar10 = FUN_0005ef4c(iVar34,0);
- FUN_0004c060(uVar10,extraout_r1_35);
+ uVar10 = FUN_000622f8(iVar34,0);
+ FUN_0004f1e0(uVar10,extraout_r1_35);
}
}
else {
iVar8 = strcmp(pcVar6,"wps_method");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_000a0ed0();
- bVar4 = FUN_0003dff4("wps_ign_btn","1");
+ FUN_000a6a68();
+ bVar4 = FUN_0003f6e8("wps_ign_btn","1");
if (!bVar4) {
kill_pidfile_s("/var/run/watchdog.pid",
0xc);
}
}
if ((uVar31 & 2) != 0) {
uVar32 = nvram_get_int("wps_band_x");
- iVar34 = FUN_00041c20(uVar32);
+ iVar34 = FUN_00043958(uVar32);
if (iVar34 == 0) {
uVar32 = nvram_get_int("wps_band_x");
- iVar34 = FUN_00041e38(uVar32);
+ iVar34 = FUN_00043b70(uVar32);
if (iVar34 == 0) {
- FUN_000a1b98();
- bVar4 = FUN_0003dff4("wps_ign_btn","1"
+ FUN_000a7730();
+ bVar4 = FUN_0003f6e8("wps_ign_btn","1"
);
if (bVar4) {
uVar10 = 0x14;
}
else {
uVar10 = 10;
}
kill_pidfile_s("/var/run/watchdog.pid"
,uVar10);
}
}
nvram_unset("wps_ign_btn");
}
}
else {
iVar8 = strcmp(pcVar6,"wps_method_ob");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_000a12e8();
- bVar4 = FUN_0003dff4("wps_ign_btn","1");
+ FUN_000a6e80();
+ bVar4 = FUN_0003f6e8("wps_ign_btn","1");
if (!bVar4) {
kill_pidfile_s("/var/run/watchdog.pid"
,0xc);
}
}
if ((uVar31 & 2) != 0) {
uVar32 = nvram_get_int("wps_band_x");
- iVar34 = FUN_00041c20(uVar32);
+ iVar34 = FUN_00043958(uVar32);
if (iVar34 == 0) {
uVar32 = nvram_get_int("wps_band_x");
- iVar34 = FUN_00041e38(uVar32);
+ iVar34 = FUN_00043b70(uVar32);
if (iVar34 == 0) {
nvram_set("wps_sta_pin","00000000");
- FUN_000a245c();
- bVar4 = FUN_0003dff4("wps_ign_btn",
+ FUN_000a802c();
+ bVar4 = FUN_0003f6e8("wps_ign_btn",
"1");
if (bVar4) {
uVar10 = 0x14;
}
else {
uVar10 = 10;
}
kill_pidfile_s(
"/var/run/watchdog.pid",uVar10);
}
}
nvram_unset("wps_ign_btn");
}
}
else {
iVar8 = strcmp(pcVar6,"wps_enr");
if (iVar8 == 0) {
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode"
);
iVar34 = atoi(pcVar6);
}
else {
iVar34 = nvram_get_int();
}
if (iVar34 == 1) {
uVar10 = nvram_get_int("wps_band_x");
- pppcVar21 = &local_1220;
+ pppcVar22 = local_1220;
puVar3 = &DAT_38;
do {
puVar29 = puVar3;
- pppcVar30 = pppcVar21;
- ppcVar16 = (char **)puVar29[1];
+ pppcVar30 = pppcVar22;
+ ppcVar19 = (char **)puVar29[1];
*pppcVar30 = (char **)*puVar29;
- pppcVar30[1] = ppcVar16;
- pppcVar21 = pppcVar30 + 2;
+ pppcVar30[1] = ppcVar19;
+ pppcVar22 = pppcVar30 + 2;
puVar3 = puVar29 + 2;
} while (puVar29 + 2 != &DAT_39);
uVar2 = *(undefined2 *)(puVar29 + 3);
pppcVar30[2] = (char **)0x58585858;
*(undefined2 *)(pppcVar30 + 3) = uVar2;
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get(
"sw_mode");
iVar34 = atoi(pcVar6);
}
else {
iVar34 = nvram_get_int();
}
if (iVar34 == 1) {
nvram_set_int("amesh_wps_enr",1);
- snprintf((char *)&local_1220,0xe,"wl%d_",uVar10)
- ;
- uVar22 = FUN_0003e15c((char *)&local_1220,"mfp",
+ snprintf((char *)local_1220,0xe,"wl%d_",uVar10);
+ uVar23 = FUN_0003f850((char *)local_1220,"mfp",
(char *)&local_1020);
- nvram_set(uVar22,"1");
- FUN_00047320();
- FUN_00042550();
- FUN_00032f14();
- FUN_0002f614();
- FUN_0002fa54();
- FUN_00030ae4();
- FUN_00031918();
- FUN_00032f5c();
- FUN_0004d360();
- FUN_0003252c();
- }
- FUN_000a0ed0();
- snprintf((char *)&local_1220,0xe,"wl%d_",uVar10);
- bVar4 = FUN_0003dff4("SG_mode","1");
+ nvram_set(uVar23,"1");
+ FUN_00049bf0();
+ FUN_00044288();
+ FUN_00033cb0();
+ FUN_000303ac();
+ FUN_000307ec();
+ FUN_0003187c();
+ FUN_000326b0();
+ FUN_00033cf8();
+ FUN_0005055c();
+ FUN_000332c4();
+ }
+ FUN_000a6a68();
+ snprintf((char *)local_1220,0xe,"wl%d_",uVar10);
+ bVar4 = FUN_0003f6e8("SG_mode","1");
if (!bVar4) {
- uVar10 = FUN_0003e15c((char *)&local_1220,
+ uVar10 = FUN_0003f850((char *)local_1220,
"wps_mode",
(char *)&local_1020);
- bVar4 = FUN_0003dff4(uVar10,"enabled");
+ bVar4 = FUN_0003f6e8(uVar10,"enabled");
if (!bVar4) {
nvram_set_int("wps_proc_status",99);
goto LAB_5;
}
}
iVar34 = 4;
do {
- FUN_000a1660();
+ FUN_000a71f8();
sleep(1);
iVar8 = nvram_get_int("wps_proc_status");
if (iVar8 != 0) break;
iVar34 = iVar34 + -1;
} while (iVar34 != 0);
kill_pidfile_s("/var/run/watchdog.pid",0x14);
nvram_unset("wps_ign_btn");
}
}
else {
iVar8 = strcmp(pcVar6,"reset_wps");
if (iVar8 == 0) {
- FUN_000425a0(0,extraout_r1_36,puVar5,pcVar7);
+ FUN_000442d8(0,extraout_r1_36,puVar5,pcVar7);
kill_pidfile_s("/var/run/watchdog.pid",0xc);
}
else {
iVar8 = strcmp(pcVar6,"wps");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00042550();
+ FUN_00044288();
}
if ((uVar31 & 2) != 0) {
- FUN_0004d360();
+ FUN_0005055c();
}
kill_pidfile_s("/var/run/watchdog.pid",0xc);
}
else {
iVar8 = strcmp(pcVar6,"autodet");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_37 << 0x20
;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004bb4c();
+ lVar36 = FUN_0004eccc();
}
if ((uVar31 & 2) != 0) {
- FUN_0004bad0((int)lVar36,
+ FUN_0004ec50((int)lVar36,
(int)((ulonglong)lVar36 >>
0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"wlcscan");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004a1bc();
+ FUN_0004d380();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a174();
+ FUN_0004d338();
}
}
else {
iVar8 = strcmp(pcVar6,"wlcconnect");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004a2b8();
+ FUN_0004d47c();
}
puVar5 = (undefined *)
nvram_get_int("wlc_state");
cprintf(
"%s: notify wanduck: wlc_state=%d.\n",
"handle_notifications");
uVar35 = kill_pidfile_s("/var/run/wanduck.pid",10)
;
if ((uVar31 & 2) != 0) {
- FUN_000326e4((int)uVar35,
+ FUN_0003347c((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
puVar5,pcVar7);
uVar32 = sleep(1);
- uVar35 = FUN_0004a400(uVar32,extraout_r1_38);
- uVar35 = FUN_0004a50c((int)uVar35,
+ uVar35 = FUN_0004d5c4(uVar32,extraout_r1_38);
+ uVar35 = FUN_0004d6d0((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20));
- uVar35 = FUN_0004a618((int)uVar35,
+ uVar35 = FUN_0004d7dc((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20));
- uVar35 = FUN_0004a2f4((int)uVar35,
+ uVar35 = FUN_0004d4b8((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20));
- uVar35 = FUN_0004a744((int)uVar35,
+ uVar35 = FUN_0004d908((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20));
- FUN_0004a1f8((int)uVar35,
+ FUN_0004d3bc((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"hapd");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0014df80();
+ FUN_00156000();
}
if ((uVar31 & 2) != 0) {
- FUN_0014f3c8(1);
+ FUN_00157574(1);
}
}
else {
iVar8 = strcmp(pcVar6,"wpasupp_qis");
if (iVar8 == 0) {
iVar34 = nvram_get_int("reload_wait");
if (iVar34 == 0) {
iVar34 = 5;
}
- bVar4 = FUN_0003dff4("x_Setting","0");
+ bVar4 = FUN_0003f6e8("x_Setting","0");
uVar32 = (uint)bVar4;
if (uVar32 != 0) {
- bVar4 = FUN_0003dff4("stop_preauth","1");
+ bVar4 = FUN_0003f6e8("stop_preauth","1");
uVar32 = (uint)!bVar4;
}
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
iVar8 = -1;
}
else {
- iVar8 = atoi(local_1600[1]);
- }
- bVar4 = FUN_0003e29c();
+ iVar8 = atoi((char *)local_15fc);
+ }
+ bVar4 = FUN_0003fa9c();
cprintf(
"%s wpasupp_qis..pre_auth:%d, wl%d, cli:%d(%d/%d), reload_wait:%d\n"
,"handle_notifications",uVar32,iVar8,1,0,bVar4,
iVar34);
if (uVar32 == 0) {
cprintf(
"%s wlc%d stop_preauth due not initial settings\n"
,"handle_notifications",iVar8);
nvram_set("wpas0_reason","completed");
nvram_set("wpas1_reason","completed");
nvram_set("wpas2_reason","completed");
killall("psta_monitor",0xf);
}
else {
nvram_set("wpas0_reason","");
nvram_set("wpas1_reason","");
nvram_set("wpas2_reason","");
}
if ((uVar32 & uVar31) != 0) {
- FUN_0014f130(iVar8);
+ FUN_001572dc(iVar8);
}
if ((uVar32 & uVar31 >> 1) != 0) {
- FUN_0014f228(iVar8,1);
+ FUN_001573d4(iVar8,1);
if (iVar8 < 0) {
for (iVar34 = 0; iVar33 = num_of_wl_if(),
iVar34 < iVar33; iVar34 = iVar34 + 1) {
snprintf((char *)&local_1420,0x10,"wlc%d_",
iVar34);
- FUN_0003e15c((char *)&local_1420,"ssid",
+ FUN_0003f850((char *)&local_1420,"ssid",
(char *)&local_1020);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
if (*pcVar6 != '\0') {
- FUN_000b15b0(iVar34,0,0);
- FUN_0014f228(iVar8,2);
+ FUN_000b733c(iVar34,0,0);
+ FUN_001573d4(iVar8,2);
}
}
}
else {
snprintf((char *)&local_1420,0x10,"wlc%d_",
iVar8);
- FUN_0003e15c((char *)&local_1420,"ssid",
+ FUN_0003f850((char *)&local_1420,"ssid",
(char *)&local_1020);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
if (*pcVar6 == '\0') {
cprintf(
"skip wpasupp (%d) due invalid ssid\n",iVar8);
}
else {
- bVar4 = FUN_0003dff4("x_Setting","1");
+ bVar4 = FUN_0003f6e8("x_Setting","1");
if (bVar4) {
cprintf("backup current wlc%d settings\n",
iVar8);
snprintf((char *)&local_1420,0x10,"wlr%d_",
iVar8);
- snprintf((char *)&local_1220,0x10,"wl%d_",
- iVar8);
- FUN_0003e15c((char *)&local_1220,"akm",
+ snprintf((char *)local_1220,0x10,"wl%d_",iVar8
+ );
+ FUN_0003f850((char *)local_1220,"akm",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
"akm",(char *)&
local_1020);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wpa_psk",
+ FUN_0003f850((char *)local_1220,"wpa_psk",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
"wpa_psk",
(char *)&local_1020);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"ssid",
+ FUN_0003f850((char *)local_1220,"ssid",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"ssid",
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"ssid",
(char *)&local_1020);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"crypto",
+ FUN_0003f850((char *)local_1220,"crypto",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"crypto"
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"crypto"
,(char *)&local_1020);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wep",
+ FUN_0003f850((char *)local_1220,"wep",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"wep",
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"wep",
(char *)&local_1020);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wep_key",
+ FUN_0003f850((char *)local_1220,"wep_key",
(char *)&local_1020);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
"wep_key",
(char *)&local_1020);
nvram_set(uVar10,puVar5);
}
- FUN_000b15b0(iVar8,0,0);
- FUN_0014f228(iVar8,2);
+ FUN_000b733c(iVar8,0,0);
+ FUN_001573d4(iVar8,2);
}
}
}
}
else {
iVar8 = strcmp(pcVar6,"wpasupp");
if (iVar8 == 0) {
- bVar4 = FUN_0003e29c();
- ppcVar16 = (char **)(uint)bVar4;
- ppcVar15 = &local_1020;
+ bVar4 = FUN_0003fa9c();
+ ppcVar19 = (char **)(uint)bVar4;
+ ppcVar16 = &local_1020;
uVar32 = nvram_get_int("reload_wait");
if (uVar32 == 0) {
uVar32 = 5;
}
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
puVar5 = (undefined *)0xffffffff;
}
else {
- puVar5 = (undefined *)atoi(local_1600[1]);
- }
- ppcVar27 = ppcVar16;
- if (ppcVar16 != (char **)0x0) {
- ppcVar27 = (char **)0x1;
+ puVar5 = (undefined *)
+ atoi((char *)local_15fc);
+ }
+ ppcVar15 = ppcVar19;
+ if (ppcVar19 != (char **)0x0) {
+ ppcVar15 = (char **)0x1;
}
cprintf(
"%s wpasupp.. wl%d, cli:%d, reload_wait:%d\n",
- "handle_notifications",puVar5,ppcVar27,uVar32);
+ "handle_notifications",puVar5,ppcVar15,uVar32);
nvram_set("wpas0_reason","");
nvram_set("wpas1_reason","");
nvram_set("wpas2_reason","");
if ((uVar31 & 1) != 0) {
- if (ppcVar16 == (char **)0x0) {
- FUN_0014f084();
+ if (ppcVar19 == (char **)0x0) {
+ FUN_00157230();
}
else {
- FUN_0014f130((int)puVar5);
+ FUN_001572dc((int)puVar5);
}
}
if ((uVar31 & 2) != 0) {
- if (ppcVar16 == (char **)0x0) {
- bVar4 = FUN_0003dff4("preauth","1");
+ if (ppcVar19 == (char **)0x0) {
+ bVar4 = FUN_0003f6e8("preauth","1");
if (bVar4) {
cprintf("Go preauth in ap mode.\n");
local_1020 = DAT_40;
- local_101c[0] = (char *)DAT_41;
- local_101c[1] = (char *)DAT_42;
- _eval(ppcVar15,0,0,0);
+ local_101c = DAT_41;
+ local_1018 = (char *)DAT_42;
+ _eval(ppcVar16,0,0,0);
local_1020 = DAT_43;
- local_101c[0] = DAT_44;
- local_101c[1] = DAT_45;
+ local_101c = DAT_44;
+ local_1018 = DAT_45;
local_1014 = DAT_46;
- _eval(ppcVar15,0,0,0);
+ _eval(ppcVar16,0,0,0);
if ((int)puVar5 < 0) {
for (iVar34 = 0; iVar8 = num_of_wl_if(),
iVar34 < iVar8; iVar34 = iVar34 + 1) {
- ppcVar16 = (char **)"wl%d_mode";
- snprintf((char *)ppcVar15,0x80,
+ ppcVar19 = (char **)"wl%d_mode";
+ snprintf((char *)ppcVar16,0x80,
"wl%d_mode",iVar34);
- nvram_set(ppcVar15,&DAT_47);
+ nvram_set(ppcVar16,&DAT_47);
}
pcVar6 = "wlc%d_";
for (pcVar7 = (char *)0x0;
uVar35 = num_of_wl_if(),
(int)pcVar7 < (int)uVar35;
pcVar7 = pcVar7 + 1) {
pcVar6 = pcVar7;
snprintf((char *)&local_1420,0x10,
"wlc%d_");
- FUN_0003e15c((char *)&local_1420,"ssid",
- (char *)ppcVar15);
- pbVar13 = FUN_0003dfd4();
- ppcVar16 = (char **)(uint)*pbVar13;
- if (ppcVar16 != (char **)0x0) {
- ppcVar16 = (char **)0x1;
- FUN_000b15b0((int)pcVar7,1,1);
+ FUN_0003f850((char *)&local_1420,"ssid",
+ (char *)ppcVar16);
+ pbVar13 = FUN_0003f6c8();
+ ppcVar19 = (char **)(uint)*pbVar13;
+ if (ppcVar19 != (char **)0x0) {
+ ppcVar19 = (char **)0x1;
+ FUN_000b733c((int)pcVar7,1,1);
}
}
}
else {
- snprintf((char *)ppcVar15,0x80,"wl%d_mode"
+ snprintf((char *)ppcVar16,0x80,"wl%d_mode"
,puVar5);
- nvram_set(ppcVar15,&DAT_47);
+ nvram_set(ppcVar16,&DAT_47);
snprintf((char *)&local_1420,0x10,"wlc%d_"
,puVar5);
- ppcVar16 = ppcVar15;
- FUN_0003e15c((char *)&local_1420,"ssid",
- (char *)ppcVar15);
- pbVar13 = FUN_0003dfd4();
+ ppcVar19 = ppcVar16;
+ FUN_0003f850((char *)&local_1420,"ssid",
+ (char *)ppcVar16);
+ pbVar13 = FUN_0003f6c8();
pcVar6 = (char *)(uint)*pbVar13;
if (pcVar6 == (char *)0x0) {
uVar35 = cprintf(
"skip wpasupp (%d) due invalid ssid\n",puVar5);
}
else {
- ppcVar16 = (char **)0x1;
- uVar35 = FUN_000b15b0((int)puVar5,1,1);
- }
- }
- FUN_0007be08((int)uVar35,
+ ppcVar19 = (char **)0x1;
+ uVar35 = FUN_000b733c((int)puVar5,1,1);
+ }
+ }
+ FUN_0007f508((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
- ppcVar16,pcVar6);
+ ppcVar19,pcVar6);
iVar34 = 0;
- local_1220 = DAT_48;
- local_121c[0] = DAT_49;
- local_121c[1] = DAT_50;
- _eval(&local_1220,0,0);
+ local_1220[0] = DAT_48;
+ local_1220[1] = DAT_49;
+ local_1220[2] = DAT_50;
+ _eval(local_1220,0,0);
sleep(uVar32);
- FUN_0014f3c8(2);
+ FUN_00157574(2);
do {
if ((int)puVar5 < 0) {
puVar28 = (undefined *)0x0;
pcVar6 = (char *)apcStack_15a0;
- puVar19 = puVar28;
+ puVar20 = puVar28;
while (iVar8 = num_of_wl_if(),
(int)puVar28 < iVar8) {
snprintf((char *)apcStack_15a0,0x10,
"wpas%d_reason");
- pbVar13 = FUN_0003dfd4();
+ pbVar13 = FUN_0003f6c8();
puVar28 = puVar28 + 1;
pcVar6 = (char *)(uint)*pbVar13;
if ((char **)pcVar6 != (char **)0x0) {
- puVar19 = puVar19 + 1;
- }
- }
- puVar20 = (undefined *)num_of_wl_if();
- if (puVar20 == puVar19) break;
+ puVar20 = puVar20 + 1;
+ }
+ }
+ puVar21 = (undefined *)num_of_wl_if();
+ if (puVar21 == puVar20) break;
}
else {
pcVar6 = "wpas%d_reason";
snprintf((char *)apcStack_15a0,0x10,
"wpas%d_reason",puVar5);
- pbVar13 = FUN_0003dfd4();
+ pbVar13 = FUN_0003f6c8();
puVar28 = (undefined *)(uint)*pbVar13;
if (puVar28 != (undefined *)0x0) break;
}
iVar34 = iVar34 + 1;
} while (iVar34 != 10);
cprintf("\n..%ds elapsed.\n",iVar34);
- puVar19 = FUN_0003dfd4();
- cprintf("chk wpas0 reason=%s\n",puVar19);
- puVar19 = FUN_0003dfd4();
- cprintf("chk wpas1 reason=%s\n",puVar19);
- puVar19 = FUN_0003dfd4();
- cprintf("chk wpas2 reason=%s\n",puVar19);
+ puVar20 = FUN_0003f6c8();
+ cprintf("chk wpas0 reason=%s\n",puVar20);
+ puVar20 = FUN_0003f6c8();
+ cprintf("chk wpas1 reason=%s\n",puVar20);
+ puVar20 = FUN_0003f6c8();
+ cprintf("chk wpas2 reason=%s\n",puVar20);
if ((int)puVar5 < 0) {
for (iVar34 = 0; uVar35 = num_of_wl_if(),
puVar5 = puVar28, iVar34 < (int)uVar35;
iVar34 = iVar34 + 1) {
snprintf((char *)&local_1420,0x10,"wl%d_",
iVar34);
- snprintf((char *)&local_1220,0x10,"wlb%d_",
+ snprintf((char *)local_1220,0x10,"wlb%d_",
iVar34);
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "mode",(char *)ppcVar15)
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "mode",(char *)ppcVar16)
;
nvram_set(uVar10,"ap");
- FUN_0003e15c((char *)&local_1220,"akm",
- (char *)ppcVar15);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "akm",(char *)ppcVar15);
+ FUN_0003f850((char *)local_1220,"akm",
+ (char *)ppcVar16);
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "akm",(char *)ppcVar16);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wpa_psk",
- (char *)ppcVar15);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
+ FUN_0003f850((char *)local_1220,"wpa_psk",
+ (char *)ppcVar16);
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
"wpa_psk",
- (char *)ppcVar15);
+ (char *)ppcVar16);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"ssid",
- (char *)ppcVar15);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "ssid",(char *)ppcVar15)
+ FUN_0003f850((char *)local_1220,"ssid",
+ (char *)ppcVar16);
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "ssid",(char *)ppcVar16)
;
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"crypto",
- (char *)ppcVar15);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
+ FUN_0003f850((char *)local_1220,"crypto",
+ (char *)ppcVar16);
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
"crypto",(char *)
- ppcVar15);
+ ppcVar16);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wep",
- (char *)ppcVar15);
- puVar5 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"wep",
- (char *)ppcVar15);
+ FUN_0003f850((char *)local_1220,"wep",
+ (char *)ppcVar16);
+ puVar5 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"wep",
+ (char *)ppcVar16);
nvram_set(uVar10,puVar5);
- FUN_0003e15c((char *)&local_1220,"wep_key",
- (char *)ppcVar15);
- puVar28 = FUN_0003dfd4();
- pcVar6 = (char *)ppcVar15;
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "wep_key",(char *)ppcVar15);
+ FUN_0003f850((char *)local_1220,"wep_key",
+ (char *)ppcVar16);
+ puVar28 = FUN_0003f6c8();
+ pcVar6 = (char *)ppcVar16;
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "wep_key",(char *)ppcVar16);
nvram_set(uVar10,puVar28);
}
}
else {
snprintf((char *)&local_1420,0x10,"wl%d_",puVar5
);
- snprintf((char *)&local_1220,0x10,"wlb%d_");
- uVar10 = FUN_0003e15c((char *)&local_1420,"mode"
- ,(char *)ppcVar15);
+ snprintf((char *)local_1220,0x10,"wlb%d_");
+ uVar10 = FUN_0003f850((char *)&local_1420,"mode"
+ ,(char *)ppcVar16);
nvram_set(uVar10,"ap");
- FUN_0003e15c((char *)&local_1220,"akm",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"akm",
- (char *)ppcVar15);
- nvram_set(uVar10,puVar19);
- FUN_0003e15c((char *)&local_1220,"wpa_psk",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "wpa_psk",(char *)ppcVar15
+ FUN_0003f850((char *)local_1220,"akm",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"akm",
+ (char *)ppcVar16);
+ nvram_set(uVar10,puVar20);
+ FUN_0003f850((char *)local_1220,"wpa_psk",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "wpa_psk",(char *)ppcVar16
);
- nvram_set(uVar10,puVar19);
- FUN_0003e15c((char *)&local_1220,"ssid",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"ssid"
- ,(char *)ppcVar15);
- nvram_set(uVar10,puVar19);
- FUN_0003e15c((char *)&local_1220,"crypto",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "crypto",(char *)ppcVar15)
+ nvram_set(uVar10,puVar20);
+ FUN_0003f850((char *)local_1220,"ssid",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"ssid"
+ ,(char *)ppcVar16);
+ nvram_set(uVar10,puVar20);
+ FUN_0003f850((char *)local_1220,"crypto",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "crypto",(char *)ppcVar16)
;
- nvram_set(uVar10,puVar19);
- FUN_0003e15c((char *)&local_1220,"wep",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,"wep",
- (char *)ppcVar15);
- nvram_set(uVar10,puVar19);
- FUN_0003e15c((char *)&local_1220,"wep_key",
- (char *)ppcVar15);
- puVar19 = FUN_0003dfd4();
- uVar10 = FUN_0003e15c((char *)&local_1420,
- "wep_key",(char *)ppcVar15
+ nvram_set(uVar10,puVar20);
+ FUN_0003f850((char *)local_1220,"wep",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,"wep",
+ (char *)ppcVar16);
+ nvram_set(uVar10,puVar20);
+ FUN_0003f850((char *)local_1220,"wep_key",
+ (char *)ppcVar16);
+ puVar20 = FUN_0003f6c8();
+ uVar10 = FUN_0003f850((char *)&local_1420,
+ "wep_key",(char *)ppcVar16
);
- uVar35 = nvram_set(uVar10,puVar19);
- pcVar6 = (char *)ppcVar15;
- }
- FUN_0007be08((int)uVar35,
+ uVar35 = nvram_set(uVar10,puVar20);
+ pcVar6 = (char *)ppcVar16;
+ }
+ FUN_0007f508((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
pcVar6,puVar5);
ppcStack_15e0 = DAT_48;
ppcStack_15dc = DAT_49;
ppcStack_15d8 = DAT_50;
- uVar22 = 0;
+ uVar23 = 0;
uVar10 = 0;
_eval(&ppcStack_15e0,0);
sleep(uVar32);
- FUN_0014f084();
- iVar34 = FUN_0014f3c8(1);
- FUN_0004bef8(iVar34,extraout_r1_39,uVar10,uVar22);
+ FUN_00157230();
+ iVar34 = FUN_00157574(1);
+ FUN_0004f078(iVar34,extraout_r1_39,uVar10,uVar23);
}
else {
cprintf("Don\'t preauth in ap mode.\n");
}
}
else {
- FUN_0014f228((int)puVar5,1);
+ FUN_001573d4((int)puVar5,1);
if ((int)puVar5 < 0) {
for (iVar34 = 0; iVar8 = num_of_wl_if(),
iVar34 < iVar8; iVar34 = iVar34 + 1) {
snprintf((char *)&local_1420,0x10,"wlc%d_",
iVar34);
- FUN_0003e15c((char *)&local_1420,"ssid",
- (char *)ppcVar15);
- pcVar6 = FUN_0003dfd4();
+ FUN_0003f850((char *)&local_1420,"ssid",
+ (char *)ppcVar16);
+ pcVar6 = FUN_0003f6c8();
if (*pcVar6 != '\0') {
- FUN_000b15b0(iVar34,0,0);
- FUN_0014f228((int)puVar5,2);
+ FUN_000b733c(iVar34,0,0);
+ FUN_001573d4((int)puVar5,2);
}
}
}
else {
snprintf((char *)&local_1420,0x10,"wlc%d_",
puVar5);
- FUN_0003e15c((char *)&local_1420,"ssid",
- (char *)ppcVar15);
- pcVar6 = FUN_0003dfd4();
+ FUN_0003f850((char *)&local_1420,"ssid",
+ (char *)ppcVar16);
+ pcVar6 = FUN_0003f6c8();
if (*pcVar6 == '\0') {
cprintf(
"skip wpasupp (%d) due invalid ssid\n",puVar5);
}
else {
- FUN_000b15b0((int)puVar5,0,0);
- FUN_0014f228((int)puVar5,2);
+ FUN_000b733c((int)puVar5,0,0);
+ FUN_001573d4((int)puVar5,2);
}
}
}
}
}
else {
iVar8 = strcmp(pcVar6,"wlcmode");
if (iVar8 == 0) {
- if (local_1600[1] != (char *)0x0) {
- iVar34 = atoi(local_1600[1]);
+ if (local_15fc != (char **)0x0) {
+ iVar34 = atoi((char *)local_15fc);
iVar8 = nvram_get_int("wlc_mode");
if (iVar34 != iVar8) {
- iVar34 = atoi(local_1600[1]);
+ iVar34 = atoi((char *)local_15fc);
nvram_set_int("wlc_mode",iVar34);
- bVar4 = FUN_0003dff4("lan_proto","dhcp");
+ bVar4 = FUN_0003f6e8("lan_proto","dhcp");
if ((bVar4) &&
- (iVar34 = atoi(local_1600[1]),
+ (iVar34 = atoi((char *)local_15fc),
iVar34 == 0)) {
uVar10 = nvram_default_get("lan_ipaddr")
;
nvram_set("lan_ipaddr",uVar10);
}
- FUN_00042868();
- FUN_000427fc();
- FUN_00047d68();
- FUN_000477bc();
- FUN_000c6aa4();
- FUN_0004c778();
- FUN_0004cd30();
- FUN_0004ca64();
- FUN_000f4a20();
- FUN_0003ef20();
- FUN_00032474();
- FUN_00031d5c();
- FUN_0003203c();
- FUN_00031da0();
- FUN_00031b44(8);
- FUN_000322d4();
- FUN_00042c98();
- FUN_00047808();
- uVar35 = FUN_000477b4();
- FUN_0004c7a4((int)uVar35,
+ FUN_000445f0();
+ FUN_00044584();
+ FUN_0004a0dc();
+ FUN_0004a090();
+ FUN_000ccb44();
+ FUN_0004f8f8();
+ FUN_0004fedc();
+ FUN_0004fbe4();
+ FUN_000fc434();
+ FUN_000406f4();
+ FUN_0003320c();
+ FUN_00032af4();
+ FUN_00032dd4();
+ FUN_00032b38();
+ FUN_000328dc(8);
+ FUN_0003306c();
+ FUN_00044a20();
+ FUN_0004cc68();
+ uVar35 = FUN_0004a088();
+ FUN_0004f924((int)uVar35,
(int)((ulonglong)uVar35 >>
0x20));
- uVar10 = FUN_000c6528();
- FUN_00042894(uVar10);
- FUN_0004280c(0);
+ uVar10 = FUN_000cc5c8();
+ FUN_0004461c(uVar10);
+ FUN_00044594(0);
}
}
}
else {
iVar8 = strcmp(pcVar6,"restore");
if (iVar8 == 0) {
- if (local_1600[1] != (char *)0x0) {
- FUN_00025c5c(local_1600[1]);
+ if (local_15fc != (char **)0x0) {
+ FUN_0002699c((char *)local_15fc);
}
}
else {
iVar8 = strcmp(pcVar6,"chpass");
if (iVar8 == 0) {
- thunk_FUN_0003e6cc();
+ thunk_FUN_0003fea0();
}
else {
iVar8 = strcmp(pcVar6,"wan_disconnect");
if (iVar8 == 0) {
logmessage_normal("wan",
"disconnected manually");
- uVar35 = FUN_00048b8c();
- FUN_0003a864((int)uVar35,
+ uVar35 = FUN_0004adb4();
+ FUN_0003be70((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20),
puVar5,pcVar7);
}
else {
iVar8 = strcmp(pcVar6,"wan_connect");
if (iVar8 == 0) {
logmessage_normal("wan","connected manually");
iVar34 = rename("/tmp/ppp/log",
"/tmp/ppp/log.~");
- FUN_0003bd2c(iVar34,extraout_r1_40,puVar5,
+ FUN_0003d41c(iVar34,extraout_r1_40,puVar5,
pcVar7);
iVar34 = nvram_get("sw_mode");
if (iVar34 == 0) {
pcVar6 = (char *)nvram_default_get("sw_mode"
);
iVar34 = atoi(pcVar6);
}
else {
- iVar34 = nvram_get_int("sw_mode");
+ iVar34 = nvram_get_int();
}
if (iVar34 == 1) {
- FUN_00046498();
- }
- FUN_00048260();
+ FUN_00048d68();
+ }
+ FUN_0004a4b8();
}
else {
iVar8 = strncmp(pcVar6,"vpnclient",9);
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
atoi(pcVar6 + 9);
stop_ovpn_client();
}
if ((uVar31 & 2) != 0) {
atoi(pcVar6 + 9);
start_ovpn_client();
}
}
else {
uVar10 = 9;
iVar8 = strncmp(pcVar6,"vpnserver",9);
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
atoi(pcVar6 + 9);
stop_ovpn_server();
}
if ((uVar31 & 2) != 0) {
atoi(pcVar6 + 9);
start_ovpn_server();
}
}
else {
iVar8 = strcmp(pcVar6,"vpnd");
- uVar22 = extraout_r1_41;
+ uVar23 = extraout_r1_41;
if ((iVar8 == 0) ||
(iVar8 = strcmp(pcVar6,"pptpd"),
- uVar22 = extraout_r1_42, iVar8 == 0)) {
+ uVar23 = extraout_r1_42, iVar8 == 0)) {
if ((uVar31 & 1) != 0) {
- FUN_000c7af4(iVar8,uVar22,uVar10,
+ FUN_000cdb04(iVar8,uVar23,uVar10,
pcVar7);
}
if ((uVar31 & 2) != 0) {
- FUN_000c6d34();
+ FUN_000ccdd4();
iVar34 = wan_primary_ifunit();
- FUN_0005ef4c(iVar34,0);
+ FUN_000622f8(iVar34,0);
}
}
else {
iVar8 = strcmp(pcVar6,"openvpnd");
if (iVar8 == 0) {
uVar10 = nvram_get_int(
"vpn_server_unit");
if ((uVar31 & 1) != 0) {
stop_ovpn_server();
}
if ((uVar31 & 2) != 0) {
start_ovpn_server(uVar10);
}
}
else {
iVar8 = strcmp(pcVar6,"dnsfilter");
if (iVar8 == 0) {
if ((uVar31 & 2) != 0) {
- FUN_00042c98();
+ FUN_00044a20();
iVar34 = wan_primary_ifunit();
- FUN_0005ef4c(iVar34,0);
+ FUN_000622f8(iVar34,0);
}
}
else {
iVar8 = strcmp(pcVar6,"sendfeedback");
if (iVar8 == 0) {
- FUN_000d3f9c();
+ FUN_000da008();
}
else {
iVar8 = strcmp(pcVar6,"senddblog");
if (iVar8 == 0) {
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
puts(
"Usage: rc rc_service start_senddblog log_file");
}
else {
- FUN_000d23d4(local_1600[1]);
- }
- }
- else {
- pcVar12 = (char *)strcmp(pcVar6,"vpncall");
- if (pcVar12 == (char *)0x0) {
- local_1020 = pcVar12;
- memset(local_101c,0,0x1c);
+ FUN_000d8438((char *)local_15fc);
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"vpncall");
+ if (iVar8 == 0) {
+ local_1020 = (char *)0x0;
+ memset(&local_101c,0,0x1c);
uVar10 = nvram_get_int("vpn_client_unit");
uVar32 = uVar31 & 1;
if (uVar32 != 0) {
- FUN_00117774(1);
- FUN_000e8548();
+ FUN_0011e17c(1);
+ FUN_000eff48();
do {
sprintf((char *)&local_1020,"vpnclient%d",
uVar32);
iVar34 = pidof(&local_1020);
if (-1 < iVar34) {
stop_ovpn_client(uVar32);
}
uVar32 = uVar32 + 1;
} while (uVar32 != 6);
}
if ((uVar31 & 2) != 0) {
- FUN_000b9c10();
- bVar4 = FUN_0003dff4("vpnc_proto","openvpn")
+ FUN_000bfbc8();
+ bVar4 = FUN_0003f6e8("vpnc_proto","openvpn")
;
if (bVar4) {
start_ovpn_client(uVar10);
- FUN_000e8548();
+ FUN_000eff48();
}
else {
iVar34 = 1;
do {
sprintf((char *)&local_1020,
"vpnclient%d",iVar34);
iVar8 = pidof(&local_1020);
if (-1 < iVar8) {
stop_ovpn_client(iVar34);
}
iVar34 = iVar34 + 1;
} while (iVar34 != 6);
- FUN_000e87d8();
+ FUN_000f01d8();
}
}
}
else {
- iVar8 = strcmp(pcVar6,"sh");
- if (iVar8 == 0) {
- cprintf("%s: shell: %s\n",
- "handle_notifications",local_1600[1]
- );
- if (local_1600[1] != (char *)0x0) {
- system(local_1600[1]);
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"app");
- if (iVar8 != 0) {
- iVar8 = strcmp(pcVar6,"lltd");
+ iVar8 = strcmp(pcVar6,"app");
+ if (iVar8 != 0) {
+ iVar8 = strcmp(pcVar6,"lltd");
+ if (iVar8 == 0) {
+ lVar36 = (ulonglong)extraout_r1_43 << 0x20
+ ;
+ if ((uVar31 & 1) != 0) {
+ lVar36 = FUN_0004b0c0();
+ }
+ if ((uVar31 & 2) != 0) {
+ FUN_0004b044((int)lVar36,
+ (int)((ulonglong)lVar36 >>
+ 0x20),uVar10,pcVar7);
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,"lltdc");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_43 <<
- 0x20;
- if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00048e98();
+ if ((uVar31 & 2) != 0) {
+ FUN_0004461c(0);
}
- if ((uVar31 & 2) != 0) {
- FUN_00048e1c((int)lVar36,
- (int)((ulonglong)lVar36
- >> 0x20),uVar10,
- pcVar7);
- }
}
else {
- iVar8 = strcmp(pcVar6,"lltdc");
+ iVar8 = strcmp(pcVar6,"getrealip");
if (iVar8 == 0) {
- if ((uVar31 & 2) != 0) {
- FUN_00042894(0);
- }
- }
- else {
- iVar8 = strcmp(pcVar6,"getrealip");
- if (iVar8 == 0) {
- pppcVar21 = &local_1220;
- puVar3 = &DAT_38;
- do {
- puVar29 = puVar3;
- pppcVar30 = pppcVar21;
- ppcVar16 = (char **)puVar29[1];
- *pppcVar30 = (char **)*puVar29;
- pppcVar30[1] = ppcVar16;
- pppcVar21 = pppcVar30 + 2;
- puVar3 = puVar29 + 2;
- } while (puVar29 + 2 !=
- &DAT_39);
- uVar2 = *(undefined2 *)(puVar29 + 3)
- ;
- pppcVar30[2] = (char **)0x58585858;
- *(undefined2 *)(pppcVar30 + 3) =
- uVar2;
- iVar34 = atoi(local_1600[1]);
- local_1420.s_addr = 0x160778;
- local_141c = 0;
- snprintf((char *)&local_1220,0xe,
- "wan%d_",iVar34);
- if ((uVar31 & 1) != 0) {
- uVar10 = FUN_0003e15c((char *)&
+ pppcVar22 = local_1220;
+ puVar3 = &DAT_38;
+ do {
+ puVar29 = puVar3;
+ pppcVar30 = pppcVar22;
+ ppcVar19 = (char **)puVar29[1];
+ *pppcVar30 = (char **)*puVar29;
+ pppcVar30[1] = ppcVar19;
+ pppcVar22 = pppcVar30 + 2;
+ puVar3 = puVar29 + 2;
+ } while (puVar29 + 2 != &DAT_39)
+ ;
+ uVar2 = *(undefined2 *)(puVar29 + 3);
+ pppcVar30[2] = (char **)0x58585858;
+ *(undefined2 *)(pppcVar30 + 3) = uVar2
+ ;
+ iVar34 = atoi((char *)local_15fc);
+ local_1420.s_addr = 0x168c2e;
+ local_141c = 0;
+ snprintf((char *)local_1220,0xe,
+ "wan%d_",iVar34);
+ if ((uVar31 & 1) != 0) {
+ uVar10 = FUN_0003f850((char *)
local_1220,"realip_state",(char *)&local_1020);
nvram_set(uVar10,"0");
- uVar10 = FUN_0003e15c((char *)&local_1220,
+ uVar10 = FUN_0003f850((char *)local_1220,
"realip_ip",
(char *)&local_1020);
nvram_set(uVar10,"");
}
if ((uVar31 & 2) != 0) {
_eval(&local_1420,">>/dev/null",0,apcStack_15a0)
;
}
}
else {
iVar8 = strcmp(pcVar6,"eco_guard");
if (iVar8 == 0) {
- FUN_0004c7e8();
+ FUN_0004f968();
}
else {
iVar8 = strcmp(pcVar6,"ipsec_set");
if (iVar8 == 0) {
- FUN_000cb6e4(0);
+ FUN_000d16f4(0);
iVar34 = wan_primary_ifunit();
- FUN_0005ef4c(iVar34,0);
- FUN_00042c98();
+ FUN_000622f8(iVar34,0);
+ FUN_00044a20();
}
else {
iVar8 = strcmp(pcVar6,"ipsec_start");
if (iVar8 == 0) {
- FUN_000cb6e4(2);
+ FUN_000d16f4(2);
iVar34 = wan_primary_ifunit();
- FUN_0005ef4c(iVar34,0);
- FUN_00042c98();
+ FUN_000622f8(iVar34,0);
+ FUN_00044a20();
}
else {
iVar8 = strcmp(pcVar6,"ipsec_stop");
if (iVar8 == 0) {
- FUN_000cb6e4(1);
+ FUN_000d16f4(1);
}
else {
iVar8 = strcmp(pcVar6,"ipsec_restart");
if (iVar8 == 0) {
- if ((local_1600[1] != (char *)0x0) &&
- (iVar34 = strcmp(local_1600[1],
- "clearCAfiles"),
+ if ((local_15fc != (char **)0x0) &&
+ (iVar34 = strcmp((char *)local_15fc
+ ,"clearCAfiles"),
iVar34 == 0)) {
cprintf("clear CA files\n");
unlink("/jffs/ca_files/asusCert.pem"
);
unlink("/jffs/ca_files/svrCert.pem")
;
}
- FUN_000cb6e4(0);
+ FUN_000d16f4(0);
iVar34 = wan_primary_ifunit();
- FUN_0005ef4c(iVar34,0);
- FUN_00042c98();
+ FUN_000622f8(iVar34,0);
+ FUN_00044a20();
}
else {
iVar8 = strcmp(pcVar6,"ipsec_set_cli")
;
if (iVar8 == 0) {
- FUN_000cb6e4(0);
+ FUN_000d16f4(0);
}
else {
iVar8 = strcmp(pcVar6,
"ipsec_start_cli");
if (iVar8 == 0) {
- FUN_000cb6e4(2);
+ FUN_000d16f4(2);
}
else {
iVar8 = strcmp(pcVar6,"ipsec_stop_cli");
if (iVar8 == 0) {
- FUN_000cb6e4(1);
+ FUN_000d16f4(1);
}
else {
iVar8 = strcmp(pcVar6,"ipsec_gen_cert");
if (iVar8 == 0) {
- FUN_000c937c(0);
+ FUN_000cf38c(0);
}
else {
iVar8 = strcmp(pcVar6,"ipsec_force_gen_cert"
);
if (iVar8 == 0) {
- FUN_000c937c(1);
+ FUN_000cf38c(1);
}
else {
iVar8 = strcmp(pcVar6,"generate_ca");
if (iVar8 == 0) {
local_1624[0] = '\0';
local_1624[1] = '\0';
local_1624[2] = '\0';
local_1624[3] = '\0';
memset(&local_1420,0,0x200);
- memset(&local_1220,0,0x200);
+ memset(local_1220,0,0x200);
memset(&local_1020,0,0x1000);
memset(&ppcStack_15e0,0,0x40);
memset(apcStack_15a0,0,0x80);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy(local_1624,pcVar6);
uVar32 = atoi(local_1624);
if (uVar32 == 2) {
- pcVar6 = FUN_0003dfd4();
- strcpy((char *)&local_1220,pcVar6);
- iVar34 = atoi((char *)&local_1220);
+ pcVar6 = FUN_0003f6c8();
+ strcpy((char *)local_1220,pcVar6);
+ iVar34 = atoi((char *)local_1220);
if (iVar34 == 1) {
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy((char *)&ppcStack_15e0,pcVar6
);
sprintf((char *)apcStack_15a0,
"/jffs/ca_files/%s",
&ppcStack_15e0);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy((char *)&local_1020,pcVar6);
pFVar11 = fopen((char *)
apcStack_15a0,"w");
if (pFVar11 != (FILE *)0x0) {
fputs((char *)&local_1020,pFVar11);
fclose(pFVar11);
}
- FUN_000c9128((int)&ppcStack_15e0,
+ FUN_000cf138((int)&ppcStack_15e0,
(int)&ppcStack_15e0,0,(char *)0x0);
memset(&ppcStack_15e0,0,0x40);
memset(apcStack_15a0,0,0x80);
memset(&local_1020,0,0x1000);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy((char *)&ppcStack_15e0,pcVar6);
sprintf((char *)apcStack_15a0,"/jffs/ca_files/%s",
&ppcStack_15e0);
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy((char *)&local_1020,pcVar6);
pFVar11 = fopen((char *)apcStack_15a0,"w");
if (pFVar11 != (FILE *)0x0) {
fputs((char *)&local_1020,pFVar11);
fclose(pFVar11);
}
pppcVar30 = (char ***)0x0;
- pppcVar21 = &ppcStack_15e0;
+ pppcVar22 = &ppcStack_15e0;
}
else {
if (iVar34 != 2) goto LAB_51;
- pcVar6 = FUN_0003dfd4();
+ pcVar6 = FUN_0003f6c8();
strcpy((char *)&ppcStack_15e0,pcVar6);
sprintf((char *)apcStack_15a0,
"/jffs/ca_files/%s",&ppcStack_15e0);
- puVar5 = FUN_0003dfd4();
+ puVar5 = FUN_0003f6c8();
memcpy(&local_1020,puVar5,0x1000);
pFVar11 = fopen((char *)apcStack_15a0,"w");
if (pFVar11 != (FILE *)0x0) {
fwrite(&local_1020,1,0x1000,pFVar11);
fclose(pFVar11);
}
- pppcVar21 = (char ***)0x0;
+ pppcVar22 = (char ***)0x0;
pppcVar30 = &ppcStack_15e0;
}
- FUN_000c9128(0,0,(int)pppcVar21,(char *)pppcVar30)
+ FUN_000cf138(0,0,(int)pppcVar22,(char *)pppcVar30)
;
}
else if ((uVar32 & 0xfffffffd) == 1) {
- uVar32 = FUN_000c9010();
- FUN_000c8b88(uVar32);
+ uVar32 = FUN_000cf020();
+ FUN_000ceb98(uVar32);
}
LAB_51:
nvram_set("ca_manage_mode","");
nvram_set("ca_manage_profile","");
nvram_unset("ca_manage_file_name_ca");
nvram_unset("ca_manage_file_name_private_key");
nvram_unset("ca_manage_file_name_p12");
nvram_unset("ca_manage_upload_ca");
nvram_unset("ca_manage_upload_private_key");
nvram_unset("ca_manage_upload_p12");
nvram_commit();
}
else {
iVar8 = strcmp(pcVar6,"quagga");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00049b68();
+ FUN_0004bdac();
}
if ((uVar31 & 2) != 0) {
- FUN_00049bc0();
+ FUN_0004be04();
}
}
else {
iVar8 = strcmp(pcVar6,"letsencrypt");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
stop_letsencrypt();
}
if ((uVar31 & 2) != 0) {
start_letsencrypt();
}
}
else {
iVar8 = strcmp(pcVar6,"auto46det");
if (iVar8 == 0) {
uVar10 = 0;
if ((uVar31 & 1) != 0) {
- uVar10 = FUN_0004ba7c();
+ uVar10 = FUN_0004ebfc();
}
if ((uVar31 & 2) != 0) {
- FUN_0004b9f4(uVar10);
+ FUN_0004eb74(uVar10);
}
}
else {
iVar8 = strcmp(pcVar6,"v6plusd");
if (iVar8 == 0) {
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
iVar34 = wan_primary_ifunit();
}
else {
- iVar34 = atoi(local_1600[1]);
+ iVar34 = atoi((char *)local_15fc);
}
if ((uVar31 & 1) != 0) {
- FUN_000409d0(iVar34);
+ FUN_000425b0(iVar34);
}
if ((uVar31 & 2) != 0) {
- FUN_00040900(iVar34);
+ FUN_000424e0(iVar34);
}
}
else {
iVar8 = strcmp(pcVar6,"ocnvcd");
if (iVar8 == 0) {
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
iVar34 = wan_primary_ifunit();
}
else {
- iVar34 = atoi(local_1600[1]);
+ iVar34 = atoi((char *)local_15fc);
}
if ((uVar31 & 1) != 0) {
- FUN_00040b28(iVar34);
+ FUN_00042708(iVar34);
}
if ((uVar31 & 2) != 0) {
- FUN_00040a58(iVar34);
+ FUN_00042638(iVar34);
}
}
else {
iVar8 = strcmp(pcVar6,"s46reset");
if (iVar8 == 0) {
- if (local_1600[1] == (char *)0x0) {
+ if (local_15fc == (char **)0x0) {
iVar34 = wan_primary_ifunit();
}
else {
- iVar34 = atoi(local_1600[1]);
+ iVar34 = atoi((char *)local_15fc);
}
- FUN_00040bb0(iVar34);
+ FUN_000428e8(iVar34);
}
else {
iVar8 = strcmp(pcVar6,"cfgsync");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004ca64();
+ FUN_0004fbe4();
}
if ((uVar31 & 2) != 0) {
- FUN_0004cac4();
+ FUN_0004fc44();
}
}
else {
iVar8 = strcmp(pcVar6,
"release_note");
if (iVar8 == 0) {
strcpy(__dest,"webs_note.sh");
- local_1600[0] = __dest;
- FUN_0004a030(iVar34,(int)local_1600,uVar10);
+ local_1600 = __dest;
+ FUN_0004c274(iVar34,(int)&local_1600,uVar10);
}
else {
iVar8 = strcmp(pcVar6,"amas_status");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_44 << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004a5cc();
+ lVar36 = FUN_0004d790();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a50c((int)lVar36,
+ FUN_0004d6d0((int)lVar36,
(int)((ulonglong)lVar36 >> 0x20
));
}
}
else {
iVar8 = strcmp(pcVar6,"amas_misc");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_45 << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004a6f8();
+ lVar36 = FUN_0004d8bc();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a618((int)lVar36,
+ FUN_0004d7dc((int)lVar36,
(int)((ulonglong)lVar36 >>
0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"amas_ssd");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_46 << 0x20
;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004a4c0();
+ lVar36 = FUN_0004d684();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a400((int)lVar36,
+ FUN_0004d5c4((int)lVar36,
(int)((ulonglong)lVar36 >>
0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"trigger_opt");
if (iVar8 == 0) {
trigger_opt();
}
else {
iVar8 = strcmp(pcVar6,"amas_bhctrl");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_47 <<
0x20;
if ((uVar31 & 1) != 0) {
- FUN_0004a5cc();
- lVar36 = FUN_0004a804();
+ FUN_0004d790();
+ lVar36 = FUN_0004d9c8();
}
if ((uVar31 & 2) != 0) {
- uVar35 = FUN_0004a50c((int)lVar36,
+ uVar35 = FUN_0004d6d0((int)lVar36,
(int)((
ulonglong)lVar36 >> 0x20));
- FUN_0004a744((int)uVar35,
+ FUN_0004d908((int)uVar35,
(int)((ulonglong)uVar35 >> 0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"amas_wlcconnect");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_48 << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004a3b4();
+ lVar36 = FUN_0004d578();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a2f4((int)lVar36,
+ FUN_0004d4b8((int)lVar36,
(int)((ulonglong)lVar36 >> 0x20
));
}
}
else {
iVar8 = strcmp(pcVar6,"amas_lanctrl");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_49 << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004a90c();
+ lVar36 = FUN_0004dad0();
}
if ((uVar31 & 2) != 0) {
- FUN_0004a850((int)lVar36,
+ FUN_0004da14((int)lVar36,
(int)((ulonglong)lVar36 >>
0x20));
}
}
else {
iVar8 = strcmp(pcVar6,"amas_lldpd");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_0004affc();
+ FUN_0004e17c();
}
if ((uVar31 & 2) != 0) {
- FUN_0004b06c();
+ FUN_0004e1ec();
}
}
else {
iVar8 = strcmp(pcVar6,"obd");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_50 <<
0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00049914();
+ lVar36 = FUN_0004bb58();
}
if ((uVar31 & 2) != 0) {
- FUN_00049960((int)lVar36,
+ FUN_0004bba4((int)lVar36,
(int)((ulonglong)lVar36
>> 0x20));
}
}
else {
- iVar8 = strcmp(pcVar6,"obd_monitor");
+ iVar8 = strcmp(pcVar6,"awsiot");
if (iVar8 == 0) {
+ uVar10 = 0;
if ((uVar31 & 1) != 0) {
- FUN_00049a50();
+ uVar10 = FUN_00044390();
}
if ((uVar31 & 2) != 0) {
- FUN_000499e8();
+ FUN_000443a0(uVar10);
}
}
else {
- iVar8 = strcmp(pcVar6,"roamast");
+ iVar8 = strcmp(pcVar6,"obd_monitor");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_51
- << 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004c778();
+ FUN_0004bc94();
}
if ((uVar31 & 2) != 0) {
- FUN_0004c7a4((int)lVar36,
- (int)((ulonglong)
- lVar36 >> 0x20)
- );
+ FUN_0004bc2c();
}
}
else {
- iVar8 = strcmp(pcVar6,"conn_diag");
+ iVar8 = strcmp(pcVar6,"roamast");
if (iVar8 == 0) {
- lVar36 = (ulonglong)extraout_r1_52
+ lVar36 = (ulonglong)extraout_r1_51
<< 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004cd30();
+ lVar36 = FUN_0004f8f8();
}
if ((uVar31 & 2) != 0) {
- FUN_0004cd5c((int)lVar36,
+ FUN_0004f924((int)lVar36,
(int)((ulonglong)
lVar36 >>
0x20));
}
}
else {
- iVar8 = strcmp(pcVar6,
+ iVar8 = strcmp(pcVar6,"conn_diag")
+ ;
+ if (iVar8 == 0) {
+ lVar36 = (ulonglong)
+ extraout_r1_52 << 0x20;
+ if ((uVar31 & 1) != 0) {
+ lVar36 = FUN_0004fedc();
+ }
+ if ((uVar31 & 2) != 0) {
+ FUN_0004ff08((int)lVar36,
+ (int)((ulonglong)
+ lVar36 >>
+ 0x20));
+ }
+ }
+ else {
+ iVar8 = strcmp(pcVar6,
"apply_amaslib");
if (iVar8 == 0) {
- FUN_000f2c94((undefined4 *)0x0,(undefined4 *)0x0
+ FUN_000fa694((undefined4 *)0x0,(undefined4 *)0x0
,0);
}
else {
iVar33 = strcmp(pcVar6,"update_sta_binding");
if (iVar33 == 0) {
update_sta_binding_list();
}
else {
iVar33 = strcmp(pcVar6,"reset_led");
if (iVar33 != 0) {
iVar33 = strcmp(pcVar6,"bsd");
if (iVar33 == 0) {
lVar36 = (ulonglong)extraout_r1_53 << 0x20
;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_0004be94();
+ lVar36 = FUN_0004f014();
}
if ((uVar31 & 2) != 0) {
- FUN_0004bea4((undefined *)lVar36,
+ FUN_0004f024((undefined *)lVar36,
(int)((ulonglong)lVar36 >>
0x20),iVar8);
}
}
else {
iVar8 = strcmp(pcVar6,"clean_web_history")
;
if (iVar8 == 0) {
remove(
"/jffs/.sys/WebHistory/WebHistory.db");
}
else {
iVar8 = strcmp(pcVar6,"clean_traffic_analyzer");
if (iVar8 == 0) {
remove(
"/jffs/.sys/TrafficAnalyzer/TrafficAnalyzer.db");
}
else {
iVar8 = strcmp(pcVar6,"clean_backup_log");
if (iVar8 != 0) {
iVar8 = strcmp(pcVar6,"cable_media");
if (iVar8 == 0) {
local_1020 = "ethctl";
- local_101c[0] = local_1600[1];
- local_101c[1] = "media-type";
- local_1014 = local_1600[2];
+ local_101c = local_15fc;
+ local_1018 = "media-type";
+ local_1014 = local_15f8;
local_1010 = iVar8;
_eval(&local_1020,0,0);
}
else {
iVar8 = strcmp(pcVar6,"iperf3_server");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00048ea8();
+ FUN_0004b0d0();
nvram_set("iperf3_svr_enable","0");
}
if ((uVar31 & 2) != 0) {
- FUN_00048ed4();
+ FUN_0004b0fc();
nvram_set("iperf3_svr_enable","1");
}
}
else {
iVar8 = strcmp(pcVar6,"iperf3_client");
if (iVar8 == 0) {
if ((uVar31 & 1) != 0) {
- FUN_00048ea8();
+ FUN_0004b0d0();
nvram_set("iperf3_cli_enable","0");
}
if ((uVar31 & 2) != 0) {
- FUN_00048f54();
+ FUN_0004b198();
nvram_set("iperf3_cli_enable","1");
}
}
else {
iVar8 = strcmp(pcVar6,"ctrl_led");
if (iVar8 == 0) {
iVar34 = nvram_get_int("led_val");
iVar8 = nvram_get_int("AllLED");
if (iVar34 == 0) {
nvram_set("AllLED","0");
- FUN_000a5cc4();
+ FUN_000ab984();
}
else {
if (iVar8 == 0) {
nvram_set("AllLED","1");
- FUN_000a68dc();
+ FUN_000ac5e0();
}
if (1 < iVar34) {
nvram_set_int("AllLED_brightness",
iVar34);
- FUN_000a6a30();
+ FUN_000ac734();
}
}
nvram_commit();
}
else {
iVar8 = strcmp(pcVar6,"watchdog");
if (iVar8 == 0) {
lVar36 = (ulonglong)extraout_r1_54
<< 0x20;
if ((uVar31 & 1) != 0) {
- lVar36 = FUN_00049718();
+ lVar36 = FUN_0004b95c();
}
if ((uVar31 & 2) != 0) {
- FUN_00049748((int)lVar36,
+ FUN_0004b98c((int)lVar36,
(int)((ulonglong)
lVar36 >> 0x20)
);
}
}
else {
iVar8 = strcmp(pcVar6,"jffs2");
if (iVar8 == 0) {
if (iVar34 != 1) {
- iVar34 = atoi(local_1600[1]);
+ iVar34 = atoi((char *)local_15fc
+ );
}
dbg("stop: %d\n",iVar34);
if ((uVar31 & 1) != 0) {
- FUN_000c6434(iVar34);
+ FUN_000cc4d4(iVar34);
}
}
else {
- ppcVar16 = (char **)strcmp(pcVar6,
+ iVar34 = strcmp(pcVar6,
"firmware_webs_update");
- if (ppcVar16 == (char **)0x0) {
+ if (iVar34 == 0) {
snprintf((char *)&local_1020,0x400,
"echo \"[FWUPDATE][%s:(%d)]rc triger firmware_webs_update\" >> /tmp/webs_upgrade.log"
- ,"handle_notifications",0x4464);
+ ,"handle_notifications",0x463d);
system((char *)&local_1020);
nvram_set("webs_update_trigger",&DAT_52);
nvram_unset("cfg_check");
- local_1220 = ppcVar16;
- memset(local_121c,0,0x3c);
- snprintf((char *)&local_1220,0x40,
+ local_1220[0] = (char **)0x0;
+ memset(local_1220 + 1,0,0x3c);
+ snprintf((char *)local_1220,0x40,
"{\"httpd\":{\"eid\":\"%d\"}}",1);
- if (((uint)local_1220 & 0xff) != 0) {
- send_cfgmnt_event(&local_1220);
+ if (((uint)local_1220[0] & 0xff) != 0) {
+ send_cfgmnt_event(local_1220);
}
iVar34 = 0;
do {
iVar18 = nvram_get_int("cfg_check");
- uVar10 = 0x446f;
+ uVar10 = 0x4648;
iVar8 = iVar34;
iVar33 = iVar18;
snprintf((char *)&local_1020,0x400,
"echo \"[FWUPDATE][%s:(%d)]webs_cfg_check(retry %d): %d\" >> /tmp/webs_upgrade.log"
- ,"handle_notifications",0x446f,iVar34,iVar18);
+ ,"handle_notifications",0x4648,iVar34,iVar18);
system((char *)&local_1020);
if (iVar18 == 7) {
- snprintf((char *)&local_1220,0x40,
+ snprintf((char *)local_1220,0x40,
"{\"httpd\":{\"eid\":\"%d\"}}",2,uVar10
,iVar8,iVar33);
- if (((uint)local_1220 & 0xff) != 0) {
- send_cfgmnt_event(&local_1220);
+ if (((uint)local_1220[0] & 0xff) != 0) {
+ send_cfgmnt_event(local_1220);
}
break;
}
if (iVar18 - 2U < 2) {
snprintf((char *)&local_1020,0x400,
"echo \"[FWUPDATE][%s:(%d)]can not link frs\" >> /tmp/webs_upgrade.log"
- ,"handle_notifications",0x4477,iVar8,iVar33);
+ ,"handle_notifications",18000,iVar8,iVar33);
system((char *)&local_1020);
break;
}
iVar34 = iVar34 + 1;
sleep(1);
} while (iVar34 != 0x1e);
}
else {
iVar34 = strcmp(pcVar6,"wlc_nt");
if (iVar34 == 0) {
uVar10 = 0;
if ((uVar31 & 1) != 0) {
- FUN_000426c4();
- uVar10 = FUN_00042658();
+ FUN_0004444c();
+ uVar10 = FUN_000443e0();
}
if ((uVar31 & 2) != 0) {
- FUN_00042668(uVar10);
- FUN_000426d4();
+ FUN_000443f0(uVar10);
+ FUN_0004445c();
}
}
else {
fprintf(stderr,
"WARNING: rc notified of unrecognized event `%s\'.\n"
,pcVar6);
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
+ }
goto LAB_5;
}
}
if ((uVar31 & 2) != 0) {
- pcVar7 = FUN_0003dfd4();
- if (*pcVar7 == '\0') {
- sprintf(__dest,"%s.sh",pcVar6);
- }
- else {
- sprintf(__dest,"%s/%s.sh",pcVar7,pcVar6);
- }
- local_1600[0] = __dest;
- FUN_0004a030(iVar34,(int)local_1600,__dest);
+ sprintf(__dest,"%s.sh",pcVar6);
+ local_1600 = __dest;
+ FUN_0004c274(iVar34,(int)&local_1600,__dest);
+ }
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
LAB_5:
if ((local_1628 == (char *)0x0) || (*local_1628 == '\0')) {
nvram_set("rc_service","");
nvram_set("rc_service_pid","");
cprintf("handle_notifications() end\n");
return;
}
_Var9 = getpid();
cprintf("goto again(%d)...\n",_Var9);
} while( true );
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.77 |
i_ratio | 0.13 |
m_ratio | 0.73 |
b_ratio | 0.68 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00076120 | FUN_000798d0 |
fullname |
FUN_00076120 | FUN_000798d0 |
refcount | 1 | 1 |
length |
4780 | 4844 |
called |
Expand for full list:::puts |
Expand for full list:::puts |
calling |
FUN_0001ca70 | FUN_0001d490 |
paramcount | 3 | 3 |
address |
00076120 | 000798d0 |
sig |
undefined4 __stdcall FUN_00076120(char * param_1, char * param_2, undefined4 param_3) | undefined4 __stdcall FUN_000798d0(char * param_1, char * param_2, undefined4 param_3) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00076120 called
+++ FUN_000798d0 called
@@ -17,76 +17,76 @@
-FUN_00049704
-FUN_00061bf0
-FUN_00075648
-FUN_000757e8
-FUN_00075808
-FUN_00075c48
-FUN_00075cb0
-FUN_00075f30
-FUN_00076038
-FUN_000a3768
-FUN_000a38a4
-FUN_000a3a38
-FUN_000a3aec
-FUN_000a4130
-FUN_000a5c9c
-FUN_000a5cc4
-FUN_000a6a34
-FUN_000a70b8
-FUN_000a7250
-FUN_000a73e8
-FUN_000a7484
-FUN_000a7758
-FUN_000a7760
-FUN_000b3354
-FUN_000b3438
-FUN_000b38a4
-FUN_000b3bd4
-FUN_000b3bf8
-FUN_000b3eec
-FUN_000b3f7c
-FUN_000b3f9c
-FUN_000b41f4
-FUN_000b4438
-FUN_000b472c
-FUN_000b4a20
-FUN_000b4cb4
-FUN_000b50a8
-FUN_000b53d8
-FUN_000b57cc
-FUN_000b582c
-FUN_000b5884
-FUN_000b5914
-FUN_000b5934
-FUN_000b5954
-FUN_000b59e4
-FUN_000b5a3c
-FUN_000b5a5c
-FUN_000b5a7c
-FUN_000b5b30
-FUN_000b5c5c
-FUN_000b5cd8
-FUN_000b5cf4
-FUN_000b5d10
-FUN_000b5dd4
-FUN_000b5df4
-FUN_000b5e4c
-FUN_000b5e7c
-FUN_000b5e9c
-FUN_000b5ed8
-FUN_000b5f08
-FUN_000b5f64
-FUN_000b5fc0
-FUN_000b601c
-FUN_000b60a4
-FUN_000b60c4
-FUN_000b60e4
-FUN_000b6104
-FUN_000b632c
-FUN_000b63a4
-FUN_000b63fc
-FUN_000b6474
-FUN_000b6500
-FUN_000b6520
-FUN_000b6578
-FUN_000b6700
-FUN_000b677c
+FUN_0004b948
+FUN_00064fcc
+FUN_00078df8
+FUN_00078f98
+FUN_00078fb8
+FUN_000793f8
+FUN_00079460
+FUN_000796e0
+FUN_000797e8
+FUN_000a9338
+FUN_000a9474
+FUN_000a9608
+FUN_000a96bc
+FUN_000a9d00
+FUN_000ab95c
+FUN_000ab984
+FUN_000ac738
+FUN_000acddc
+FUN_000acf7c
+FUN_000ad11c
+FUN_000ad1b8
+FUN_000ad488
+FUN_000ad490
+FUN_000b9224
+FUN_000b9308
+FUN_000b9790
+FUN_000b9a4c
+FUN_000b9a70
+FUN_000b9cf0
+FUN_000b9d80
+FUN_000b9da0
+FUN_000ba028
+FUN_000ba29c
+FUN_000ba5c0
+FUN_000ba840
+FUN_000bab04
+FUN_000bae78
+FUN_000bb1d8
+FUN_000bb558
+FUN_000bb5b8
+FUN_000bb610
+FUN_000bb6a0
+FUN_000bb6c0
+FUN_000bb6e0
+FUN_000bb770
+FUN_000bb7c8
+FUN_000bb7e8
+FUN_000bb808
+FUN_000bb8bc
+FUN_000bb9e8
+FUN_000bba54
+FUN_000bba70
+FUN_000bba8c
+FUN_000bbb50
+FUN_000bbb70
+FUN_000bbbc8
+FUN_000bbbf8
+FUN_000bbc18
+FUN_000bbc54
+FUN_000bbc84
+FUN_000bbce0
+FUN_000bbd3c
+FUN_000bbd98
+FUN_000bbe20
+FUN_000bbe40
+FUN_000bbe60
+FUN_000bbe80
+FUN_000bc0e0
+FUN_000bc158
+FUN_000bc1b0
+FUN_000bc228
+FUN_000bc2b4
+FUN_000bc2d4
+FUN_000bc32c
+FUN_000bc4b4
+FUN_000bc564
--- FUN_00076120 calling
+++ FUN_000798d0 calling
@@ -1 +1 @@
-FUN_0001ca70
+FUN_0001d490
--- FUN_00076120
+++ FUN_000798d0
@@ -1,749 +1,760 @@
/* WARNING: Type propagation algorithm not settling */
-undefined4 FUN_00076120(char *param_1,char *param_2,undefined4 param_3)
+undefined4 FUN_000798d0(char *param_1,char *param_2,undefined4 param_3)
{
byte bVar1;
bool bVar2;
int iVar3;
undefined4 uVar4;
char *__s;
__int32_t **pp_Var5;
int iVar6;
int *piVar7;
undefined *puVar8;
undefined *puVar9;
uint uVar10;
size_t sVar11;
undefined4 extraout_r1;
undefined4 extraout_r1_00;
undefined4 extraout_r1_01;
undefined4 extraout_r1_02;
byte *pbVar12;
undefined8 uVar13;
undefined auStack_a8 [4];
undefined auStack_a4 [4];
char *local_a0;
int local_9c;
int local_98;
undefined4 uStack_94;
undefined4 uStack_90;
iVar3 = strcmp(param_1,"Set_StartATEMode");
if (iVar3 == 0) {
- bVar2 = FUN_00075808("noconsole","0");
+ bVar2 = FUN_00078fb8("noconsole","0");
if (!bVar2) {
local_a0 = "console";
local_98 = DAT_0;
uStack_94 = DAT_1;
uStack_90 = DAT_2;
local_9c = iVar3;
nvram_set("noconsole","0");
_eval(&local_98,0,0,auStack_a8);
- FUN_00061bf0("console");
+ FUN_00064fcc("console");
_eval(&local_a0,0,0,auStack_a4);
}
- FUN_00075cb0();
- FUN_00049704();
- piVar7 = (int *)0x171bbd;
+ FUN_00079460();
+ FUN_0004b948();
+ piVar7 = (int *)0x17a68f;
goto LAB_3;
}
iVar3 = strcmp(param_1,"Set_AllLedOn");
if (iVar3 == 0) {
- uVar4 = FUN_000a4130();
+ uVar4 = FUN_000a9d00();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_NetLed");
if (iVar3 == 0) {
- uVar4 = FUN_000a5c9c();
+ uVar4 = FUN_000ab95c();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_AllLedOn2");
if (iVar3 == 0) {
LAB_4:
param_2 = "0";
goto LAB_5;
}
iVar3 = strcmp(param_1,"Set_AllLedOff");
if (iVar3 == 0) {
- uVar4 = FUN_000a5cc4();
+ uVar4 = FUN_000ab984();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_AllLedOn_Half");
if (iVar3 == 0) {
__s = "ATE_ERROR";
goto LAB_6;
}
iVar3 = strcmp(param_1,"Set_AllWhiteLedOn");
if (iVar3 == 0) {
LAB_7:
- uVar4 = FUN_00075648(iVar3);
+ uVar4 = FUN_00078df8(iVar3);
return uVar4;
}
iVar3 = strcmp(param_1,"Set_AllBlueLedOn");
if (iVar3 == 0) {
iVar3 = 1;
goto LAB_7;
}
iVar3 = strcmp(param_1,"Set_AllRedLedOn");
if (iVar3 == 0) {
iVar3 = 2;
goto LAB_7;
}
iVar3 = strcmp(param_1,"Set_AllGreenLedOn");
if (iVar3 == 0) {
iVar3 = 3;
goto LAB_7;
}
iVar3 = strcmp(param_1,"Set_AllOrangeLedOn");
if (iVar3 == 0) {
iVar3 = 4;
goto LAB_7;
}
iVar3 = strcmp(param_1,"Set_WanLedMode1");
if (iVar3 == 0) {
- uVar4 = FUN_000a70b8();
+ uVar4 = FUN_000acddc();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_WanLedMode2");
if (iVar3 == 0) {
- uVar4 = FUN_000a7250();
+ uVar4 = FUN_000acf7c();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_AteModeLedOn");
if (iVar3 == 0) {
- uVar4 = FUN_000a6a34();
+ uVar4 = FUN_000ac738();
return uVar4;
}
iVar3 = strcmp(param_1,"Set_MacAddr_2G");
if ((iVar3 == 0) || (iVar3 = strcmp(param_1,"Set_MacAddr"), iVar3 == 0)) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- local_98 = 0;
- memset(&uStack_94,0,0x10);
- pbVar12 = (byte *)(param_2 + -1);
- piVar7 = &local_98;
- while( true ) {
- pbVar12 = pbVar12 + 1;
- bVar1 = *pbVar12;
- if (bVar1 == 0) break;
- pp_Var5 = __ctype_toupper_loc();
- *(char *)piVar7 = (char)(*pp_Var5)[bVar1];
- piVar7 = (int *)((int)piVar7 + 1);
- }
- iVar3 = FUN_000b3438((int)&local_98);
- if (iVar3 != 0) {
- return 0;
- }
- __s = "ATE_ERROR_INCORRECT_PARAMETER";
+ iVar3 = FUN_000bc4b4("");
+ if (iVar3 < 0) {
+ __s = "ATE_ERROR_CLEAR_PASS_FIRST";
+ }
+ else {
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ local_98 = 0;
+ memset(&uStack_94,0,0x10);
+ pbVar12 = (byte *)(param_2 + -1);
+ piVar7 = &local_98;
+ while( true ) {
+ pbVar12 = pbVar12 + 1;
+ bVar1 = *pbVar12;
+ if (bVar1 == 0) break;
+ pp_Var5 = __ctype_toupper_loc();
+ *(char *)piVar7 = (char)(*pp_Var5)[bVar1];
+ piVar7 = (int *)((int)piVar7 + 1);
+ }
+ iVar3 = FUN_000b9308((int)&local_98);
+ if (iVar3 != 0) {
+ return 0;
+ }
+ __s = "ATE_ERROR_INCORRECT_PARAMETER";
+ }
goto LAB_6;
}
iVar3 = strcmp(param_1,"Set_MacAddr_5G");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
local_98 = iVar3;
memset(&uStack_94,0,0x10);
pbVar12 = (byte *)(param_2 + -1);
piVar7 = &local_98;
while( true ) {
pbVar12 = pbVar12 + 1;
bVar1 = *pbVar12;
if (bVar1 == 0) break;
pp_Var5 = __ctype_toupper_loc();
*(char *)piVar7 = (char)(*pp_Var5)[bVar1];
piVar7 = (int *)((int)piVar7 + 1);
}
- iVar3 = FUN_000b38a4((int)&local_98);
+ iVar3 = FUN_000b9790((int)&local_98);
if (iVar3 != 0) {
return 0;
}
__s = "ATE_ERROR_INCORRECT_PARAMETER";
goto LAB_6;
}
iVar3 = strcmp(param_1,"Set_RegulationDomain_2G");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- pbVar12 = (byte *)FUN_000b4a20((byte *)param_2);
+ pbVar12 = (byte *)FUN_000ba840((byte *)param_2);
LAB_8:
if (pbVar12 != (byte *)0x0) {
return 0;
}
}
else {
iVar3 = strcmp(param_1,"Set_RegulationDomain_5G");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b4cb4((byte *)param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bab04((byte *)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_Regrev_2G");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b50a8((byte *)param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bae78((byte *)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_Regrev_5G");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b53d8((byte *)param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bb1d8((byte *)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_Commit");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- FUN_000b3354();
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ FUN_000b9224();
return 0;
}
iVar3 = strcmp(param_1,"Set_SerialNumber");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b5884((byte *)param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bb610((byte *)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_EmsInternalSerialNumber");
if (iVar3 == 0) {
- pbVar12 = (byte *)FUN_000b5954((byte *)param_2);
+ pbVar12 = (byte *)FUN_000bb6e0((byte *)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_ModelName");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b59e4((int)param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bb770((int)param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_PINCode");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b57cc(param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bb558(param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_40M_Channel_2G");
if (iVar3 == 0) {
- pbVar12 = (byte *)FUN_000a3768(param_2);
+ pbVar12 = (byte *)FUN_000a9338(param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_40M_Channel_5G");
if (iVar3 == 0) {
- pbVar12 = (byte *)FUN_000a38a4(param_2);
+ pbVar12 = (byte *)FUN_000a9474(param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_RestoreDefault");
if (iVar3 == 0) {
local_98 = DAT_9;
uStack_94 = DAT_10;
uStack_90 = DAT_11;
iVar6 = iVar3;
uVar13 = _eval(&local_98,0);
- uVar4 = FUN_000a3a38((int)uVar13,(int)((ulonglong)uVar13 >> 0x20),iVar3,iVar6);
+ uVar4 = FUN_000a9608((int)uVar13,(int)((ulonglong)uVar13 >> 0x20),iVar3,iVar6);
return uVar4;
}
iVar6 = strcmp(param_1,"Set_Eject");
if (iVar6 == 0) {
- pbVar12 = FUN_00075c48((byte *)param_2);
+ pbVar12 = FUN_000793f8((byte *)param_2);
goto LAB_8;
}
iVar6 = strcmp(param_1,"Set_WaitTime");
if (iVar6 == 0) {
- bVar2 = FUN_00075f30();
- if (!bVar2) {
- return 0x16;
- }
- pbVar12 = (byte *)FUN_000b582c(param_2);
+ bVar2 = FUN_000796e0();
+ if (!bVar2) {
+ return 0x16;
+ }
+ pbVar12 = (byte *)FUN_000bb5b8(param_2);
goto LAB_8;
}
iVar6 = strcmp(param_1,"Set_WiFi_2G");
if (iVar6 == 0) {
- pbVar12 = (byte *)FUN_000a73e8(param_2,extraout_r1,param_3,iVar3);
+ pbVar12 = (byte *)FUN_000ad11c(param_2,extraout_r1,param_3,iVar3);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_WiFi_5G");
if (iVar3 == 0) {
- pbVar12 = (byte *)FUN_000a7484(param_2);
+ pbVar12 = (byte *)FUN_000ad1b8(param_2);
goto LAB_8;
}
iVar3 = strcmp(param_1,"Set_XSetting");
if (iVar3 == 0) {
if ((param_2 != (char *)0x0) && (iVar3 = strcmp(param_2,"1"), iVar3 == 0)) {
nvram_set("x_Setting","1");
piVar7 = (int *)nvram_get("x_Setting");
goto LAB_3;
}
}
else {
iVar3 = strcmp(param_1,"Set_HwId");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b5f08((int)param_2);
+ iVar3 = FUN_000bbc84((int)param_2);
}
else {
iVar3 = strcmp(param_1,"Set_HwVersion");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b5f64((int)param_2);
+ iVar3 = FUN_000bbce0((int)param_2);
}
else {
iVar3 = strcmp(param_1,"Set_HwBom");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b5fc0((int)param_2);
+ iVar3 = FUN_000bbd3c((int)param_2);
}
else {
iVar3 = strcmp(param_1,"Set_DateCode");
if (iVar3 != 0) {
iVar3 = strcmp(param_1,"Get_FWVersion");
if (iVar3 == 0) {
- puVar8 = FUN_000757e8();
- puVar9 = FUN_000757e8();
+ puVar8 = FUN_00078f98();
+ puVar9 = FUN_00078f98();
snprintf((char *)&local_98,0x10,"%s.%s",puVar8,puVar9);
LAB_12:
piVar7 = &local_98;
goto LAB_3;
}
iVar3 = strcmp(param_1,"Get_BootLoaderVersion");
if (iVar3 == 0) {
- FUN_000b3eec();
+ FUN_000b9cf0();
return 0;
}
iVar3 = strcmp(param_1,"Get_ResetButtonStatus");
if (iVar3 == 0) {
LAB_13:
- piVar7 = (int *)FUN_000757e8();
+ piVar7 = (int *)FUN_00078f98();
LAB_3:
puts((char *)piVar7);
return 0;
}
iVar3 = strcmp(param_1,"Get_WpsButtonStatus");
if ((iVar3 == 0) || (iVar3 = strcmp(param_1,"Get_PairingButtonStatus"), iVar3 == 0)) {
- param_2 = FUN_000757e8();
+ param_2 = FUN_00078f98();
goto LAB_5;
}
iVar3 = strcmp(param_1,"Get_SSID_2G");
if ((((iVar3 == 0) || (iVar3 = strcmp(param_1,"Get_SSID_5G"), iVar3 == 0)) ||
(iVar3 = strcmp(param_1,"Get_SSID_5G_2"), iVar3 == 0)) ||
(iVar3 = strcmp(param_1,"Get_SWMode"), iVar3 == 0)) goto LAB_13;
iVar3 = strcmp(param_1,"Get_MacAddr_2G");
if ((iVar3 == 0) || (iVar3 = strcmp(param_1,"Get_MacAddr"), iVar3 == 0)) {
- FUN_000b3bd4();
+ FUN_000b9a4c();
return 0;
}
iVar3 = strcmp(param_1,"Get_MacAddr_5G");
if (iVar3 == 0) {
- FUN_000b3bf8();
+ FUN_000b9a70();
return 0;
}
iVar3 = strcmp(param_1,"Get_RegulationDomain_2G");
if (iVar3 == 0) {
- FUN_000b3f9c();
+ FUN_000b9da0();
return 0;
}
iVar3 = strcmp(param_1,"Get_RegulationDomain_5G");
if (iVar3 == 0) {
- FUN_000b41f4();
+ FUN_000ba028();
return 0;
}
iVar3 = strcmp(param_1,"Get_Regrev_2G");
if (iVar3 == 0) {
- FUN_000b4438();
+ FUN_000ba29c();
return 0;
}
iVar3 = strcmp(param_1,"Get_Regrev_5G");
if (iVar3 == 0) {
- FUN_000b472c();
+ FUN_000ba5c0();
return 0;
}
iVar3 = strcmp(param_1,"Get_SerialNumber");
if (iVar3 == 0) {
- FUN_000b5914();
+ FUN_000bb6a0();
return 0;
}
iVar3 = strcmp(param_1,"Get_EmsInternalSerialNumber");
if (iVar3 == 0) {
- FUN_000b5934();
+ FUN_000bb6c0();
return 0;
}
iVar3 = strcmp(param_1,"Get_ModelName");
if (iVar3 == 0) {
- FUN_000b5a3c();
+ FUN_000bb7c8();
return 0;
}
iVar3 = strcmp(param_1,"Get_PINCode");
if (iVar3 == 0) {
- FUN_000b3f7c();
+ FUN_000b9d80();
return 0;
}
iVar3 = strcmp(param_1,"Get_WanLanStatus");
if (iVar3 == 0) {
- uVar10 = FUN_000a3aec(1,(int *)0x0);
+ uVar10 = FUN_000a96bc(1,(int *)0x0);
if (uVar10 != 0) {
return 0;
}
uVar4 = ATE_FACTORY_MODE_STR();
- bVar2 = FUN_00075808(uVar4,"1");
+ bVar2 = FUN_00078fb8(uVar4,"1");
if (!bVar2) {
return 0;
}
goto LAB_14;
}
iVar3 = strcmp(param_1,"Get_FwReadyStatus");
if ((iVar3 == 0) || (iVar3 = strcmp(param_1,"Get_Build_Info"), iVar3 == 0))
goto LAB_13;
iVar3 = strcmp(param_1,"Get_ChannelList_2G");
if (iVar3 == 0) {
- iVar3 = FUN_000a7758();
+ iVar3 = FUN_000ad488();
LAB_15:
if (iVar3 != 0) {
return 0;
}
}
else {
iVar3 = strcmp(param_1,"Get_ChannelList_5G");
if (iVar3 == 0) {
- iVar3 = FUN_000a7760();
+ iVar3 = FUN_000ad490();
goto LAB_15;
}
iVar3 = strcmp(param_1,"Get_fail_ret");
if (iVar3 == 0) {
- FUN_000b5cd8();
+ FUN_000bba54();
return 0;
}
iVar3 = strcmp(param_1,"Get_fail_reboot_log");
if (iVar3 == 0) {
- FUN_000b5cf4();
+ FUN_000bba70();
return 0;
}
iVar3 = strcmp(param_1,"Get_fail_dev_log");
if (iVar3 == 0) {
- FUN_000b5d10();
+ FUN_000bba8c();
return 0;
}
iVar3 = strcmp(param_1,"Get_WiFiStatus_2G");
if (iVar3 == 0) {
LAB_16:
iVar3 = get_radio(iVar3);
if (iVar3 == 0) goto LAB_4;
LAB_17:
param_2 = "1";
goto LAB_5;
}
iVar3 = strcmp(param_1,"Get_WiFiStatus_5G");
if (iVar3 == 0) {
iVar3 = 1;
goto LAB_16;
}
iVar3 = strcmp(param_1,"Set_WiFiStatus_2G");
if (iVar3 == 0) {
iVar3 = strcmp(param_2,"on");
if (iVar3 == 0) {
uVar4 = 1;
iVar6 = strcmp(param_2,"off");
if (iVar6 == 0) {
puts("ATE_UNSUPPORT");
}
}
else {
uVar4 = 0;
}
set_radio(uVar4,0);
uVar4 = 0;
LAB_18:
iVar6 = get_radio(uVar4,0);
if (iVar6 == 0) {
if (iVar3 != 0) {
param_2 = "success=off";
goto LAB_5;
}
}
else if (iVar3 == 0) {
param_2 = "success=on";
goto LAB_5;
}
+LAB_19:
param_2 = "ATE_ERROR_INCORRECT_PARAMETER";
goto LAB_5;
}
iVar3 = strcmp(param_1,"Set_WiFiStatus_5G");
if (iVar3 == 0) {
iVar3 = strcmp(param_2,"on");
if ((iVar3 == 0) && (iVar6 = strcmp(param_2,"off"), iVar6 == 0)) {
puts("ATE_UNSUPPORT");
}
set_radio(iVar3 == 0,1,0);
uVar4 = 1;
goto LAB_18;
}
iVar3 = strcmp(param_1,"Get_ATEVersion");
if ((((iVar3 == 0) || (iVar3 = strcmp(param_1,"Get_XSetting"), iVar3 == 0)) ||
(iVar3 = strcmp(param_1,"Get_WaitTime"), iVar3 == 0)) ||
(iVar3 = strcmp(param_1,"Get_ExtendNo"), iVar3 == 0)) goto LAB_13;
iVar3 = strcmp(param_1,"Set_TerritoryCode");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b5a7c((byte *)param_2);
- goto LAB_19;
+ iVar3 = FUN_000bb808((byte *)param_2);
+ goto LAB_20;
}
iVar3 = strcmp(param_1,"Get_TerritoryCode");
if (iVar3 == 0) {
- FUN_000b5a5c();
+ FUN_000bb7e8();
return 0;
}
iVar3 = strcmp(param_1,"Set_PSK");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b5b30(param_2);
-LAB_20:
+ iVar3 = FUN_000bb8bc(param_2);
+LAB_21:
if (-1 < iVar3) goto LAB_5;
- goto LAB_21;
+ goto LAB_22;
}
iVar3 = strcmp(param_1,"Check_PSK");
if (iVar3 == 0) {
- iVar3 = FUN_000b5c5c(param_2);
- goto LAB_19;
+ iVar3 = FUN_000bb9e8(param_2);
+LAB_23:
+ if (-1 < iVar3) {
+ param_2 = "ATE_OK";
+ goto LAB_5;
+ }
+ goto LAB_22;
}
iVar3 = strcmp(param_1,"Set_PASS");
if (iVar3 == 0) {
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b677c(param_2);
- goto LAB_20;
+ iVar3 = FUN_000bc564(param_2);
+ goto LAB_21;
}
iVar3 = strcmp(param_1,"Check_PASS");
if (iVar3 == 0) {
- iVar3 = FUN_000b6700(param_2);
- goto LAB_19;
+ iVar3 = FUN_000bc4b4(param_2);
+ goto LAB_23;
}
iVar3 = strcmp(param_1,"Set_AB");
if (iVar3 != 0) {
iVar3 = strcmp(param_1,"Unset_AB");
if (iVar3 == 0) {
- FUN_000b5e4c();
+ FUN_000bbbc8();
return 0;
}
iVar3 = strcmp(param_1,"Get_AB");
if (iVar3 == 0) {
- FUN_000b5dd4();
+ FUN_000bbb50();
return 0;
}
iVar3 = strcmp(param_1,"Set_ABK");
if (iVar3 == 0) {
if (((param_2 != (char *)0x0) && (sVar11 = strlen(param_2), sVar11 == 0x20)) &&
(iVar3 = is_valid_group_id(param_2), iVar3 != 0)) {
- FUN_000b5e9c((int)param_2);
+ FUN_000bbc18((int)param_2);
return 0;
}
goto LAB_14;
}
iVar3 = strcmp(param_1,"Unset_ABK");
if (iVar3 == 0) {
- FUN_000b5ed8();
+ FUN_000bbc54();
return 0;
}
iVar3 = strcmp(param_1,"Get_ABK");
if (iVar3 == 0) {
- FUN_000b5e7c();
+ FUN_000bbbf8();
return 0;
}
iVar3 = strcmp(param_1,"Get_FwUpgradeState");
if (iVar3 == 0) {
- FUN_00076038();
+ FUN_000797e8();
return 0;
}
iVar3 = strcmp(param_1,"Get_LabelMacAddr");
if (iVar3 == 0) {
piVar7 = (int *)get_label_mac();
goto LAB_3;
}
iVar3 = strcmp(param_1,"Set_IpAddr_Lan");
if (iVar3 == 0) {
if ((param_2 != (char *)0x0) && (*param_2 != '\0')) {
- FUN_000b632c(param_2);
- return 0;
- }
-LAB_22:
+ FUN_000bc0e0(param_2);
+ return 0;
+ }
+LAB_24:
__s = "ATE_ERROR_INCORRECT_PARAMETER";
goto LAB_6;
}
iVar3 = strcmp(param_1,"Get_IpAddr_Lan");
if (iVar3 == 0) {
- FUN_000b63a4();
+ FUN_000bc158();
return 0;
}
iVar3 = strcmp(param_1,"Set_MRFLAG");
if (iVar3 == 0) {
if ((param_2 != (char *)0x0) && (*param_2 != '\0')) {
- FUN_000b63fc(param_2);
- return 0;
- }
- goto LAB_22;
+ FUN_000bc1b0(param_2);
+ return 0;
+ }
+ goto LAB_24;
}
iVar3 = strcmp(param_1,"Get_MRFLAG");
if (iVar3 == 0) {
- FUN_000b6474();
+ FUN_000bc228();
return 0;
}
iVar3 = strcmp(param_1,"Get_Default");
if (iVar3 == 0) {
if (param_2 == (char *)0x0) {
return 0;
}
piVar7 = (int *)nvram_default_get(param_2);
if (piVar7 == (int *)0x0) {
- piVar7 = (int *)0x187578;
+ piVar7 = (int *)0x1909df;
}
goto LAB_3;
}
iVar3 = strcmp(param_1,"Get_txBurst");
if (iVar3 != 0) {
iVar3 = strcmp(param_1,"Get_HwId");
if (iVar3 == 0) {
- FUN_000b60a4();
+ FUN_000bbe20();
return 0;
}
iVar3 = strcmp(param_1,"Get_HwVersion");
if (iVar3 == 0) {
- FUN_000b60c4();
+ FUN_000bbe40();
return 0;
}
iVar3 = strcmp(param_1,"Get_HwBom");
if (iVar3 == 0) {
- FUN_000b60e4();
+ FUN_000bbe60();
return 0;
}
iVar3 = strcmp(param_1,"Get_DateCode");
if (iVar3 == 0) {
- FUN_000b6104();
+ FUN_000bbe80();
return 0;
}
iVar3 = strcmp(param_1,"Get_RDG");
if (iVar3 == 0) {
- piVar7 = (int *)&UNK_23;
+ piVar7 = (int *)&UNK_25;
goto LAB_3;
}
iVar3 = strcmp(param_1,"Set_CoBrand");
if (iVar3 != 0) {
iVar3 = strcmp(param_1,"Unset_CoBrand");
if (iVar3 == 0) {
- FUN_000b6578();
+ FUN_000bc32c();
return 0;
}
iVar3 = strcmp(param_1,"Get_CoBrand");
if (iVar3 == 0) {
- FUN_000b6500();
+ FUN_000bc2b4();
return 0;
}
iVar3 = strcmp(param_1,"Get_ModelDesc");
if (iVar3 != 0) {
__s = "ATE_UNSUPPORT";
goto LAB_6;
}
- puVar8 = FUN_000757e8();
+ puVar8 = FUN_00078f98();
snprintf((char *)&local_98,0x80,"%s",puVar8);
if ((char)local_98 == '\0') {
if ((rt_modeldesc == (int *)0x0) ||
(piVar7 = rt_modeldesc, *(char *)rt_modeldesc == '\0')) {
- piVar7 = (int *)0x16268b;
+ piVar7 = (int *)0x16ac16;
}
goto LAB_3;
}
goto LAB_12;
}
- uVar10 = atoi(param_2);
- if (uVar10 < 0x65) {
- FUN_000b6520(uVar10,extraout_r1_02);
- return 0;
- }
- goto LAB_14;
- }
- bVar2 = FUN_00075808("wl1_frameburst","on");
+ if (((param_2 != (char *)0x0) && (iVar3 = atoi(param_2), iVar3 - 1U < 100)) &&
+ (iVar3 = FUN_000bc2d4(iVar3,extraout_r1_02), -1 < iVar3)) {
+ return 0;
+ }
+ goto LAB_19;
+ }
+ bVar2 = FUN_00078fb8("wl1_frameburst","on");
if (!bVar2) {
- bVar2 = FUN_00075808("wl1_frameburst","off");
+ bVar2 = FUN_00078fb8("wl1_frameburst","off");
if (!bVar2) {
return 0;
}
goto LAB_4;
}
goto LAB_17;
}
if (param_2 == (char *)0x0) {
iVar3 = 1;
uVar4 = extraout_r1_00;
-LAB_24:
- FUN_000b5df4(iVar3,uVar4);
+LAB_26:
+ FUN_000bbb70(iVar3,uVar4);
return 0;
}
iVar3 = atoi(param_2);
uVar4 = extraout_r1_01;
- if (iVar3 - 1U < 3) goto LAB_24;
+ if (iVar3 - 1U < 3) goto LAB_26;
}
LAB_14:
param_2 = "ATE_ERROR";
LAB_5:
puts(param_2);
return 0;
}
- bVar2 = FUN_00075f30();
+ bVar2 = FUN_000796e0();
if (!bVar2) {
return 0x16;
}
- iVar3 = FUN_000b601c(param_2);
+ iVar3 = FUN_000bbd98(param_2);
}
}
}
-LAB_19:
+LAB_20:
if (-1 < iVar3) {
return 0;
}
}
}
-LAB_21:
+LAB_22:
__s = "ATE_ERROR_INCORRECT_PARAMETER";
LAB_6:
puts(__s);
return 0x16;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.94 |
i_ratio | 0.17 |
m_ratio | 1.0 |
b_ratio | 0.98 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_00021ea0 | FUN_00022bc0 |
fullname |
FUN_00021ea0 | FUN_00022bc0 |
refcount | 4 | 4 |
length |
5604 | 5628 |
called |
Expand for full list:::get_wans_dualwan |
Expand for full list:::get_wans_dualwan |
calling |
FUN_00025d04 FUN_0002c548 FUN_000326e4 |
FUN_00026a44 FUN_0002d2d8 FUN_0003347c |
paramcount | 0 | 0 |
address |
00021ea0 | 00022bc0 |
sig |
undefined4 __stdcall FUN_00021ea0(void) | undefined4 __stdcall FUN_00022bc0(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_00021ea0 called
+++ FUN_00022bc0 called
@@ -35,10 +35,10 @@
-FUN_0001f9c0
-FUN_0001fa40
-FUN_0001fa70
-FUN_00021d30
-FUN_00021e10
-FUN_000adfdc
-FUN_000ae804
-FUN_000b28bc
-FUN_0010d154
-FUN_0010ec38
+FUN_00020680
+FUN_00020700
+FUN_00020730
+FUN_00022a4c
+FUN_00022b2c
+FUN_000b4540
+FUN_000b878c
+FUN_00113a5c
+FUN_0011555c
+thunk_FUN_000b3d18
--- FUN_00021ea0 calling
+++ FUN_00022bc0 calling
@@ -1,3 +1,3 @@
-FUN_00025d04
-FUN_0002c548
-FUN_000326e4
+FUN_00026a44
+FUN_0002d2d8
+FUN_0003347c
--- FUN_00021ea0
+++ FUN_00022bc0
@@ -1,605 +1,607 @@
-undefined4 FUN_00021ea0(void)
+undefined4 FUN_00022bc0(void)
{
bool bVar1;
int iVar2;
__pid_t _Var3;
undefined4 uVar4;
int iVar5;
undefined *puVar6;
char *pcVar7;
uint uVar8;
int iVar9;
size_t sVar10;
size_t sVar11;
char *pcVar12;
undefined auStack_170 [16];
char acStack_160 [16];
char acStack_150 [48];
char local_120 [255];
undefined local_21;
iVar2 = nvram_get("sw_mode");
if (iVar2 == 0) {
nvram_default_get("sw_mode");
}
else {
nvram_get_int();
}
iVar2 = get_model();
nvram_get_int("x_Setting");
- FUN_000b28bc();
- FUN_0010ec38();
+ FUN_000b878c();
+ FUN_0011555c();
_Var3 = getpid();
psname(_Var3,local_120,0x10);
uVar4 = uptime();
cprintf("[%d %s:%s +%ld] init_nvram for model(%d)\n",_Var3,local_120,"init_nvram",uVar4,iVar2);
memset(auStack_170,0,0x10);
nvram_set("rc_support","");
if (DAT_0 != 0) {
nvram_set_int("btn_rst_gpio",0xff);
nvram_set_int("btn_wps_gpio",0xff);
nvram_set_int("btn_radio_gpio",0xff);
nvram_set_int("led_pwr_gpio",0xff);
nvram_set_int("led_wps_gpio",0xff);
nvram_set_int("pwr_usb_gpio",0xff);
nvram_set_int("pwr_usb_gpio2",0xff);
nvram_set_int("led_usb_gpio",0xff);
nvram_set_int("led_lan_gpio",0xff);
nvram_set_int("led_lan1_gpio",0xff);
nvram_set_int("led_lan2_gpio",0xff);
nvram_set_int("led_lan3_gpio",0xff);
nvram_set_int("led_lan4_gpio",0xff);
nvram_set_int("led_wan_gpio",0xff);
nvram_set_int("led_wan_normal_gpio",0xff);
nvram_set_int("led_2g_gpio",0xff);
nvram_set_int("led_5g_gpio",0xff);
nvram_set_int("led_all_gpio",0xff);
nvram_set_int("led_logo_gpio",0xff);
nvram_set_int("led_usb3_gpio",0xff);
nvram_set_int("fan_gpio",0xff);
nvram_set_int("have_fan_gpio",0xff);
nvram_unset("btn_wltog_gpio");
nvram_unset("btn_led_gpio");
DAT_0 = 0;
}
nvram_set("ehci_ports","");
nvram_set("ohci_ports","");
nvram_unset("xhci_ports");
nvram_set("vpn_upload_state","");
iVar5 = nvram_is_empty("vpn_server_clientlist");
if (iVar5 == 0) {
- puVar6 = FUN_0001f9c0();
+ puVar6 = FUN_00020680();
nvram_set("vpn_serverx_clientlist",puVar6);
nvram_unset("vpn_server_clientlist");
}
ovpn_defaults();
iVar5 = nvram_get_int("sshd_port");
if ((0 < iVar5) && (iVar5 = nvram_get_int("sshd_port_x"), iVar5 < 1)) {
- puVar6 = FUN_0001f9c0();
+ puVar6 = FUN_00020680();
nvram_set("sshd_port_x",puVar6);
}
nvram_set("fb_state","");
nvram_set("PM_state","");
nvram_unset("usb_buildin");
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if (iVar5 == 2) {
LAB_1:
iVar5 = 0;
}
else {
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if ((iVar5 == 3) && (iVar5 = nvram_get_int("wlc_psta"), iVar5 == 1)) goto LAB_1;
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int("sw_mode");
}
if ((iVar5 == 3) && (iVar5 = nvram_get_int("wlc_psta"), iVar5 == 2)) {
iVar5 = nvram_get_int("wlc_dpsta");
if (iVar5 != 0) {
iVar5 = 1;
}
}
else {
iVar5 = 1;
}
}
nvram_set_int("ure_disable",iVar5);
nvram_set_int("upgrade_fw_status",0);
nvram_unset("wanduck_start_detect");
iVar5 = nvram_get_int("re_mode");
if (iVar5 == 1) {
nvram_unset("led_ctrl_cap");
}
iVar5 = nvram_get_int("re_mode");
if ((iVar5 == 0) && (iVar5 = nvram_get("wgn_wloff_vifs"), iVar5 != 0)) {
nvram_unset("wgn_wloff_vifs");
}
if (iVar2 == 0x8f) {
nvram_set("lan_ifname",&DAT_2);
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if (iVar5 == 1) {
nvram_set("lan_ifnames","eth1 eth2 eth3");
pcVar12 = "eth0";
nvram_set("wan_ifname",&DAT_3);
pcVar7 = "wan_ifnames";
}
else {
nvram_set("lan_ifnames","eth0 eth1 eth2 eth3");
pcVar12 = "";
nvram_set("wan_ifnames","");
pcVar7 = "wan_ifname";
}
nvram_set(pcVar7,pcVar12);
nvram_set("wl_ifnames","eth2 eth3");
nvram_set("wl0_vifnames","wl0.1 wl0.2 wl0.3");
nvram_set("wl1_vifnames","wl1.1 wl1.2 wl1.3");
nvram_set("sta_phy_ifnames","eth2 eth3");
nvram_set("eth_ifnames",&DAT_3);
nvram_set("sta_ifnames","eth2 eth3");
nvram_set("wired_ifnames",&DAT_4);
nvram_unset("sb/0/ed_thresh2g");
nvram_unset("sb/0/eu_edthresh2g");
nvram_unset("sb/1/ed_thresh5g");
nvram_unset("sb/1/eu_edthresh5g");
nvram_set_int("btn_wps_gpio",0x1004);
nvram_set_int("btn_rst_gpio",0x1009);
nvram_set_int("led_pwr_gpio",0x1005);
nvram_set_int("led_wps_gpio",0x1005);
nvram_set_int("led_wan_gpio",0x100b);
nvram_set_int("led_wan_normal_gpio",0x1007);
nvram_set_int("led_lan_gpio",0x100c);
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if (iVar5 == 1) {
set_lan_phy(&DAT_4);
uVar8 = get_wans_dualwan();
if ((uVar8 & 8) == 0) {
add_lan_phy(&DAT_5);
}
uVar8 = get_wans_dualwan();
if ((uVar8 & 0x10) == 0) {
add_lan_phy(&DAT_6);
}
iVar5 = nvram_get("wans_dualwan");
if (iVar5 != 0) {
iVar5 = 0;
set_wan_phy("");
do {
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 3) {
pcVar7 = strcpy(acStack_150,"vlan2");
LAB_7:
add_wan_phy(pcVar7);
}
else {
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 5) {
pcVar7 = "eth2";
goto LAB_7;
}
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 6) {
pcVar7 = "eth3";
goto LAB_7;
}
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 2) {
iVar9 = nvram_get("switch_wantag");
- if ((((iVar9 == 0) || (bVar1 = FUN_0001fa40("switch_wantag",""), bVar1)) ||
- (bVar1 = FUN_0001fa40("switch_wantag","none"), bVar1)) ||
+ if ((((iVar9 == 0) || (bVar1 = FUN_00020700("switch_wantag",""), bVar1)) ||
+ (bVar1 = FUN_00020700("switch_wantag","none"), bVar1)) ||
(iVar9 = nvram_get_int("switch_wan0tagid"), iVar9 == 0)) {
- pcVar7 = FUN_00021d30();
+ pcVar7 = FUN_00022a4c();
}
else {
pcVar7 = "eth0.v0";
}
goto LAB_7;
}
}
if (iVar5 == 1) goto LAB_8;
iVar5 = 1;
} while( true );
}
nvram_set("wan_ifnames",&DAT_9);
}
else {
nvram_unset("wan1_ifname");
}
LAB_8:
iVar5 = nvram_get("ct_max");
if (iVar5 == 0) {
nvram_set("ct_max","30000");
}
add_rc_support("mssid 2.4G 5G update");
add_rc_support("switchctrl");
add_rc_support("manual_stb");
add_rc_support(&DAT_10);
add_rc_support("pwrctrl");
add_rc_support("WIFI_LOGO");
add_rc_support("nandflash");
add_rc_support("movistarTriple");
add_rc_support("wifi2017");
add_rc_support("app");
add_rc_support("ofdma");
pcVar7 = "wpa3";
}
else {
if (iVar2 != 0x9f) {
cprintf(
"############################ unknown model(init.c:8512) #################################\n"
);
goto LAB_11;
}
nvram_set("fast_restart","1");
nvram_set("lan_ifname",&DAT_2);
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if (iVar5 == 1) {
nvram_set("lan_ifnames","eth1 eth2 eth3 eth4 eth5");
pcVar12 = "eth0";
nvram_set("wan_ifname",&DAT_3);
pcVar7 = "wan_ifnames";
}
else {
nvram_set("lan_ifnames","eth0 eth1 eth2 eth3 eth4 eth5");
pcVar12 = "";
nvram_set("wan_ifnames","");
pcVar7 = "wan_ifname";
}
nvram_set(pcVar7,pcVar12);
nvram_set("wl_ifnames","");
nvram_set("sta_phy_ifnames","");
iVar5 = nvram_get_int("re_mode");
if (iVar5 == 1) {
nvram_set("wait_band","0");
nvram_set("wait_wifi","0");
}
nvram_set("eth_ifnames",&DAT_3);
nvram_set("sta_ifnames","");
nvram_set("wired_ifnames","eth1 eth2 eth3 eth4 eth5");
nvram_set_int("led_usb_gpio",0x100c);
nvram_set_int("led_ar3012_dis_gpio",0x100f);
nvram_set_int("led_pwr_gpio",0x1016);
nvram_set_int("led_ethall_gpio",0x1018);
nvram_set_int("led_ar3012_rst_gpio",0x1019);
nvram_set_int("btn_wps_gpio",0x1004);
nvram_set_int("btn_rst_gpio",0x1017);
nvram_set_int("btn_led_gpio",0xff);
nvram_unset("xhci_ports");
nvram_set("ehci_ports",&DAT_12);
nvram_set("ohci_ports","2-1 2-2");
iVar5 = nvram_get("sw_mode");
if (iVar5 == 0) {
pcVar7 = (char *)nvram_default_get("sw_mode");
iVar5 = atoi(pcVar7);
}
else {
iVar5 = nvram_get_int();
}
if (iVar5 == 1) {
uVar8 = get_wans_dualwan();
if ((uVar8 & 4) == 0) {
pcVar7 = "eth1 eth2 eth3";
LAB_13:
set_lan_phy(pcVar7);
}
else {
- bVar1 = FUN_0001fa40("wans_lanport","1");
+ bVar1 = FUN_00020700("wans_lanport","1");
if (bVar1) {
pcVar7 = "eth2 eth3";
goto LAB_13;
}
- bVar1 = FUN_0001fa40("wans_lanport","2");
+ bVar1 = FUN_00020700("wans_lanport","2");
if (bVar1) {
pcVar7 = "eth1 eth3";
goto LAB_13;
}
- bVar1 = FUN_0001fa40("wans_lanport","3");
+ bVar1 = FUN_00020700("wans_lanport","3");
if (bVar1) {
pcVar7 = "eth1 eth2";
goto LAB_13;
}
}
uVar8 = get_wans_dualwan();
if ((uVar8 & 8) == 0) {
add_lan_phy(&DAT_14);
}
uVar8 = get_wans_dualwan();
if ((uVar8 & 0x10) == 0) {
add_lan_phy("eth5");
}
iVar5 = nvram_get("wans_dualwan");
if (iVar5 != 0) {
iVar5 = 0;
set_wan_phy("");
do {
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 3) {
pcVar7 = acStack_150;
- bVar1 = FUN_0001fa40("wans_lanport","1");
+ bVar1 = FUN_00020700("wans_lanport","1");
if (bVar1) {
pcVar12 = "eth1";
}
else {
- bVar1 = FUN_0001fa40("wans_lanport","2");
+ bVar1 = FUN_00020700("wans_lanport","2");
if (bVar1) {
pcVar12 = "eth2";
}
else {
- bVar1 = FUN_0001fa40("wans_lanport","3");
+ bVar1 = FUN_00020700("wans_lanport","3");
if (!bVar1) goto LAB_15;
pcVar12 = "eth3";
}
}
strcpy(pcVar7,pcVar12);
LAB_15:
add_wan_phy(pcVar7);
}
else {
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 5) {
pcVar7 = "eth4";
goto LAB_15;
}
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 6) {
pcVar7 = "eth5";
goto LAB_15;
}
iVar9 = get_dualwan_by_unit(iVar5);
if (iVar9 == 2) {
iVar9 = nvram_get("switch_wantag");
- if (((iVar9 == 0) || (bVar1 = FUN_0001fa40("switch_wantag",""), bVar1)) ||
- ((bVar1 = FUN_0001fa40("switch_wantag","none"), bVar1 ||
+ if (((iVar9 == 0) || (bVar1 = FUN_00020700("switch_wantag",""), bVar1)) ||
+ ((bVar1 = FUN_00020700("switch_wantag","none"), bVar1 ||
(iVar9 = nvram_get_int("switch_wan0tagid"), iVar9 == 0)))) {
- pcVar7 = FUN_00021d30();
+ pcVar7 = FUN_00022a4c();
}
else {
pcVar7 = "eth0.v0";
}
goto LAB_15;
}
iVar9 = get_dualwan_by_unit(iVar5);
pcVar7 = "usb";
if (iVar9 == 4) goto LAB_15;
}
if (iVar5 == 1) goto LAB_16;
iVar5 = 1;
} while( true );
}
nvram_set("wan_ifnames",&DAT_9);
}
else {
nvram_unset("wan1_ifname");
}
LAB_16:
iVar5 = nvram_get("ct_max");
if (iVar5 == 0) {
nvram_set("ct_max","300000");
}
add_rc_support("mssid 2.4G 5G update usbX1");
add_rc_support("switchctrl");
add_rc_support("manual_stb");
add_rc_support("pwrctrl");
add_rc_support("nandflash");
add_rc_support("movistarTriple");
pcVar7 = "app";
}
add_rc_support(pcVar7);
LAB_11:
iVar5 = nvram_get_int("ct_expect_max");
if (iVar5 == 0) {
nvram_set_int("ct_expect_max",0x96);
}
- FUN_000adfdc();
+ thunk_FUN_000b3d18();
unset_selected_channel_info();
iVar5 = nvram_get_int("re_mode");
if (iVar5 == 1) {
amas_stop_acsd_config_init(iVar2);
}
- bVar1 = FUN_0001fa40("wifison_ready","1");
+ bVar1 = FUN_00020700("wifison_ready","1");
if (bVar1) {
cprintf("no wifison feature\n");
}
iVar5 = nvram_get_int("switch_stb_x");
- if ((6 < iVar5) && (bVar1 = FUN_0001fa40("switch_wantag","movistar"), bVar1)) {
+ if ((6 < iVar5) && (bVar1 = FUN_00020700("switch_wantag","movistar"), bVar1)) {
nvram_set("iptv_wan_ifnames","eth0.v1 eth0.v2");
nvram_set("iptv_ifname","eth0.v1");
}
- puVar6 = FUN_0001f9c0();
- pcVar7 = FUN_0001f9c0();
+ puVar6 = FUN_00020680();
+ pcVar7 = FUN_00020680();
sVar10 = strspn(pcVar7," ");
iVar5 = 0;
strncpy(local_120,puVar6 + sVar10,0x100);
local_21 = 0;
sVar11 = strcspn(local_120," ");
local_120[sVar11] = '\0';
pcVar7 = strchr(puVar6 + sVar10,0x20);
while (local_120[0] != '\0') {
- bVar1 = FUN_0001fa40("re_mode","1");
+ bVar1 = FUN_00020700("re_mode","1");
if (bVar1) {
pcVar12 = "wl%d.1_rrm";
}
else {
pcVar12 = "wl%d_rrm";
}
snprintf(acStack_160,0x10,pcVar12,iVar5);
iVar5 = iVar5 + 1;
nvram_set(acStack_160,&DAT_17);
if (pcVar7 == (char *)0x0) {
pcVar7 = "";
}
else {
sVar10 = strspn(pcVar7," ");
pcVar7 = pcVar7 + sVar10;
}
strncpy(local_120,pcVar7,0x100);
local_21 = 0;
sVar10 = strcspn(local_120," ");
local_120[sVar10] = '\0';
pcVar7 = strchr(pcVar7,0x20);
}
add_led_ctrl_capability(4);
add_rc_support("reboot_schedule");
- bVar1 = FUN_0001fa40("reboot_schedule_enable","");
+ bVar1 = FUN_00020700("reboot_schedule_enable","");
if (bVar1) {
nvram_set("reboot_schedule_enable","0");
}
- bVar1 = FUN_0001fa40("reboot_schedule","");
+ bVar1 = FUN_00020700("reboot_schedule","");
if (bVar1) {
nvram_set("reboot_schedule","00000000000");
}
add_rc_support("ipv6");
add_rc_support("ipv6pt");
add_rc_support(&DAT_18);
+ add_rc_support("ocnvc");
+ add_rc_support("dslite");
add_rc_support("PARENTAL2");
- FUN_0010d154(0);
- FUN_000ae804();
- FUN_00021e10();
+ FUN_00113a5c(0);
+ FUN_000b4540();
+ FUN_00022b2c();
add_rc_support("dnsfilter");
add_rc_support("dnspriv");
set_wanscap_support("wan");
add_rc_support("dualwan");
add_wanscap_support("lan");
add_rc_support("pptpd");
add_rc_support(&DAT_19);
add_rc_support("utf8_ssid");
add_rc_support("frs_feedback");
add_rc_support("dblog");
add_rc_support("email");
iVar5 = nvram_get("wl2_nband");
if (iVar5 != 0) {
add_rc_support(&DAT_20);
}
add_rc_support("bwdpi");
- pcVar7 = FUN_0001f9c0();
+ pcVar7 = FUN_00020680();
if (*pcVar7 == '\0') {
iVar5 = nvram_get_int("wrs_mals_enable");
if (((iVar5 == 0) && (iVar5 = nvram_get_int("wrs_cc_enable"), iVar5 == 0)) &&
(iVar5 = nvram_get_int("wrs_vp_enable"), iVar5 == 0)) {
pcVar7 = "0";
}
else {
pcVar7 = "1";
}
nvram_set("wrs_protect_enable",pcVar7);
}
add_rc_support("wrs_wbl");
add_rc_support("ookla");
add_rc_support("HTTPS");
iVar5 = nvram_get_int("https_crt_save");
if (iVar5 == 0) {
nvram_set_int("https_crt_save",1);
}
- puVar6 = FUN_0001f9c0();
+ puVar6 = FUN_00020680();
if (puVar6 != (undefined *)0x0) {
nvram_unset("https_crt_file");
}
add_rc_support("letsencrypt");
add_rc_support(&DAT_21);
add_rc_support("vpnc");
add_rc_support("repeater");
add_rc_support("psta");
add_rc_support(&DAT_22);
add_rc_support("user_low_rssi");
add_rc_support("tcode");
add_rc_support("usericon");
add_rc_support("cfg_wps_btn");
add_rc_support("stainfo");
add_rc_support("realip");
- pcVar7 = FUN_0001f9c0();
+ pcVar7 = FUN_00020680();
if (*pcVar7 != '\0') {
add_rc_support("defpsk");
}
add_rc_support("alexa");
add_rc_support("ipsec_srv");
add_rc_support("mumimo");
add_rc_support("netool");
add_rc_support("cfg_sync");
add_rc_support("no_finiwl");
add_rc_support("fupgrade");
add_rc_support("afwupg");
add_rc_support(&DAT_23);
iVar5 = nvram_get_int("amas_bdl");
if (iVar5 != 0) {
add_rc_support("amas_bdl");
}
add_rc_support("bcmwifi");
- FUN_0010d154(2);
- FUN_0010d154(3);
+ FUN_00113a5c(2);
+ FUN_00113a5c(3);
add_rc_support("bcmhnd");
add_rc_support(&DAT_24);
add_rc_support("conndiag");
- iVar5 = FUN_0001fa70("enable_diag","2");
+ iVar5 = FUN_00020730("enable_diag","2");
if (iVar5 != 0) {
nvram_set("enable_diag",&DAT_25);
}
- iVar5 = FUN_0001fa70("diag_local_data","1");
+ iVar5 = FUN_00020730("diag_local_data","1");
if (iVar5 != 0) {
nvram_set("diag_local_data","1");
}
- iVar5 = FUN_0001fa70("diag_interval","60");
+ iVar5 = FUN_00020730("diag_interval","60");
if (iVar5 != 0) {
nvram_set("diag_interval",&DAT_26);
}
add_rc_support("eula");
add_rc_support("proxysta");
add_rc_support("iperf3");
add_rc_support("account_binding");
add_rc_support("acl96");
add_rc_support("dhdlog");
iVar5 = nvram_get_int("SG_mode");
if (iVar5 == 1) {
add_rc_support("noFwManual");
}
add_rc_support(&DAT_27);
uVar4 = get_cf_id(iVar2,"RT-AX3000N");
nvram_set_int("comfw_type",uVar4);
nvram_set("build_name","RT-AX3000N");
add_rc_support("smart_connect");
- bVar1 = FUN_0001fa40("forget_it","");
+ bVar1 = FUN_00020700("forget_it","");
if (!bVar1) {
add_rc_support("defpass");
}
return 0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.98 |
i_ratio | 0.49 |
m_ratio | 0.34 |
b_ratio | 0.34 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000a6a34 | FUN_000ac738 |
fullname |
FUN_000a6a34 | FUN_000ac738 |
refcount | 1 | 1 |
length |
1624 | 1656 |
called |
::_eval ::get_model ::led_control FUN_000a3f30 FUN_000a4118 |
::_eval ::get_model ::led_control FUN_000a9b00 FUN_000a9ce8 |
calling |
FUN_00076120 | FUN_000798d0 |
paramcount | 0 | 0 |
address |
000a6a34 | 000ac738 |
sig |
undefined4 __stdcall FUN_000a6a34(void) | undefined4 __stdcall FUN_000ac738(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000a6a34 called
+++ FUN_000ac738 called
@@ -4,2 +4,2 @@
-FUN_000a3f30
-FUN_000a4118
+FUN_000a9b00
+FUN_000a9ce8
--- FUN_000a6a34 calling
+++ FUN_000ac738 calling
@@ -1 +1 @@
-FUN_00076120
+FUN_000798d0
--- FUN_000a6a34
+++ FUN_000ac738
@@ -1,411 +1,427 @@
-undefined4 FUN_000a6a34(void)
+undefined4 FUN_000ac738(void)
{
int iVar1;
undefined4 uVar2;
undefined4 uStack_2c;
undefined4 uStack_28;
undefined4 uStack_24;
undefined4 uStack_20;
undefined4 uStack_1c;
undefined4 uStack_18;
undefined4 uStack_14;
led_control(0,1);
iVar1 = get_model();
if (iVar1 == 2) {
led_control(0xb,1);
led_control(5,1);
uStack_2c = DAT_0;
uStack_28 = DAT_1;
uStack_24 = DAT_2;
uStack_20 = DAT_3;
uStack_1c = DAT_4;
uStack_18 = DAT_5;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_6;
uStack_28 = DAT_7;
uStack_24 = DAT_8;
uStack_20 = DAT_9;
uStack_1c = DAT_10;
uStack_18 = DAT_11;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_12;
uStack_28 = DAT_13;
uStack_24 = DAT_14;
uStack_20 = DAT_15;
goto LAB_16;
}
switch(iVar1) {
case 0x24:
goto LAB_17;
case 0x25:
goto LAB_17;
case 0x26:
goto LAB_17;
case 0x27:
goto LAB_17;
case 0x28:
goto LAB_17;
case 0x29:
goto LAB_17;
case 0x2a:
break;
case 0x2b:
led_control(0,1);
goto LAB_18;
case 0x2c:
goto LAB_19;
case 0x2d:
led_control(1);
led_control(0,1);
goto LAB_20;
case 0x2e:
break;
case 0x2f:
LAB_18:
uVar2 = 5;
goto LAB_21;
case 0x30:
goto LAB_19;
case 0x31:
LAB_19:
uStack_2c = DAT_0;
uStack_28 = DAT_1;
uStack_24 = DAT_2;
uStack_20 = DAT_3;
uStack_1c = DAT_4;
uStack_18 = DAT_5;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_6;
uStack_28 = DAT_7;
uStack_24 = DAT_8;
uStack_20 = DAT_9;
uStack_1c = DAT_10;
uStack_18 = DAT_11;
_eval(&uStack_2c,0,0);
LAB_22:
uVar2 = 1;
goto LAB_21;
case 0x32:
goto LAB_23;
case 0x33:
break;
case 0x34:
uStack_2c = DAT_0;
uStack_28 = DAT_1;
uStack_24 = DAT_2;
uStack_20 = DAT_3;
uStack_1c = DAT_4;
uStack_18 = DAT_5;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_6;
uStack_28 = DAT_7;
uStack_24 = DAT_8;
uStack_20 = DAT_9;
uStack_1c = DAT_10;
uStack_18 = DAT_11;
_eval(&uStack_2c,0,0);
goto LAB_24;
case 0x35:
goto LAB_25;
case 0x36:
LAB_25:
led_control(1);
led_control(0xb,1);
led_control(5,1);
goto LAB_20;
case 0x37:
led_control(0,1);
uVar2 = 5;
goto LAB_26;
case 0x38:
LAB_23:
led_control(2,1);
led_control(1);
led_control(0xb,1);
LAB_20:
uStack_2c = DAT_0;
uStack_28 = DAT_1;
uStack_24 = DAT_2;
uStack_20 = DAT_3;
uStack_1c = DAT_4;
uStack_18 = DAT_5;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_6;
uStack_28 = DAT_7;
uStack_24 = DAT_8;
uStack_20 = DAT_9;
uStack_1c = DAT_10;
uStack_18 = DAT_11;
goto LAB_16;
case 0x39:
goto LAB_27;
case 0x3a:
goto LAB_27;
case 0x3b:
goto LAB_27;
case 0x3c:
goto LAB_27;
case 0x3d:
break;
case 0x3e:
led_control(2,1);
led_control(1);
LAB_17:
uStack_2c = DAT_28;
uStack_28 = DAT_29;
uStack_24 = DAT_30;
uStack_20 = DAT_31;
uStack_1c = DAT_32;
uStack_18 = DAT_33;
goto LAB_16;
case 0x3f:
goto LAB_24;
case 0x40:
goto LAB_24;
case 0x41:
LAB_24:
uVar2 = 2;
LAB_21:
led_control(uVar2,1);
break;
case 0x42:
break;
case 0x43:
goto LAB_34;
case 0x44:
LAB_34:
uStack_2c = DAT_0;
uStack_28 = DAT_1;
uStack_24 = DAT_2;
uStack_20 = DAT_3;
uStack_1c = DAT_4;
uStack_18 = DAT_5;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_6;
uStack_28 = DAT_7;
uStack_24 = DAT_8;
uStack_20 = DAT_9;
uStack_1c = DAT_10;
uStack_18 = DAT_11;
_eval(&uStack_2c,0,0);
uVar2 = 2;
LAB_26:
led_control(uVar2,1);
goto LAB_22;
case 0x45:
break;
case 0x46:
break;
case 0x47:
break;
case 0x48:
break;
case 0x49:
break;
case 0x4a:
break;
case 0x4b:
break;
case 0x4c:
break;
case 0x4d:
break;
case 0x4e:
break;
case 0x4f:
break;
case 0x50:
break;
case 0x51:
break;
case 0x52:
break;
case 0x53:
break;
case 0x54:
break;
case 0x55:
break;
case 0x56:
break;
case 0x57:
goto LAB_27;
case 0x58:
break;
case 0x59:
break;
case 0x5a:
break;
case 0x5b:
break;
case 0x5c:
break;
case 0x5d:
break;
case 0x5e:
break;
case 0x5f:
break;
case 0x60:
break;
case 0x61:
goto LAB_27;
case 0x62:
goto LAB_27;
case 99:
goto LAB_27;
case 100:
break;
case 0x65:
break;
case 0x66:
break;
case 0x67:
goto LAB_27;
case 0x68:
goto LAB_27;
case 0x69:
goto LAB_27;
case 0x6a:
break;
case 0x6b:
break;
case 0x6c:
break;
case 0x6d:
break;
case 0x6e:
goto LAB_27;
case 0x6f:
goto LAB_27;
case 0x70:
break;
case 0x71:
break;
case 0x72:
goto LAB_27;
case 0x73:
goto LAB_27;
case 0x74:
break;
case 0x75:
break;
case 0x76:
break;
case 0x77:
goto LAB_27;
case 0x78:
goto LAB_27;
case 0x79:
break;
case 0x7a:
break;
case 0x7b:
break;
case 0x7c:
break;
case 0x7d:
break;
case 0x7e:
break;
case 0x7f:
break;
case 0x80:
goto LAB_27;
case 0x81:
goto LAB_27;
case 0x82:
break;
case 0x83:
break;
case 0x84:
goto LAB_27;
case 0x85:
goto LAB_27;
case 0x86:
break;
case 0x87:
break;
case 0x88:
goto LAB_27;
case 0x89:
goto LAB_27;
case 0x8a:
break;
case 0x8b:
break;
case 0x8c:
break;
case 0x8d:
break;
case 0x8e:
break;
case 0x8f:
goto LAB_27;
case 0x90:
goto LAB_27;
case 0x91:
break;
case 0x92:
break;
case 0x93:
break;
case 0x94:
break;
case 0x95:
goto LAB_27;
case 0x96:
break;
case 0x97:
goto LAB_27;
case 0x98:
break;
case 0x99:
break;
case 0x9a:
goto LAB_27;
case 0x9b:
break;
case 0x9c:
break;
case 0x9d:
goto LAB_27;
case 0x9e:
goto LAB_27;
case 0x9f:
goto LAB_27;
case 0xa0:
goto LAB_27;
case 0xa1:
+ goto LAB_27;
+ case 0xa2:
+ break;
+ case 0xa3:
+ break;
+ case 0xa4:
+ break;
+ case 0xa5:
+ break;
+ case 0xa6:
+ break;
+ case 0xa7:
+ break;
+ case 0xa8:
+ break;
+ case 0xa9:
LAB_27:
led_control(2,1);
led_control(5,1);
led_control(1);
led_control(0xb,1);
- FUN_000a3f30(1);
+ FUN_000a9b00(1);
led_control(6,1);
- FUN_000a4118();
+ FUN_000a9ce8();
uStack_2c = DAT_35;
uStack_28 = DAT_36;
uStack_24 = DAT_37;
uStack_20 = DAT_38;
uStack_1c = DAT_39;
uStack_18 = DAT_40;
uStack_14 = DAT_41;
_eval(&uStack_2c,0,0);
uStack_2c = DAT_42;
uStack_28 = DAT_43;
uStack_24 = DAT_44;
uStack_20 = DAT_45;
uStack_1c = DAT_46;
uStack_18 = DAT_47;
uStack_14 = DAT_48;
LAB_16:
_eval(&uStack_2c,0,0);
}
return 0;
}
Key | old_FW_RT_AX55_300438651598_sbin_rc - new_FW_RT_AX55_300438652332_sbin_rc |
---|---|
diff_type | code,name,fullname,length,sig,address,calling,called |
ratio | 0.14 |
i_ratio | 0.07 |
m_ratio | 0.32 |
b_ratio | 0.4 |
match_types | BSIM |
Key | old_FW_RT_AX55_300438651598_sbin_rc | new_FW_RT_AX55_300438652332_sbin_rc |
---|---|---|
name |
FUN_000d3f9c | FUN_000da008 |
fullname |
FUN_000d3f9c | FUN_000da008 |
refcount | 2 | 2 |
length |
24048 | 26788 |
called |
Expand for full list:::closedir |
Expand for full list:::closedir |
calling |
FUN_0001e168 FUN_0004d76c |
FUN_0001eb88 FUN_0005096c |
paramcount | 0 | 0 |
address |
000d3f9c | 000da008 |
sig |
undefined __stdcall FUN_000d3f9c(void) | undefined __stdcall FUN_000da008(void) |
sym_type | Function | Function |
sym_source | DEFAULT | DEFAULT |
external | False | False |
--- FUN_000d3f9c called
+++ FUN_000da008 called
@@ -67,22 +67,23 @@
-FUN_00062df4
-FUN_000aea18
-FUN_000aef5c
-FUN_000be010
-FUN_000d0a8c
-FUN_000d0aac
-FUN_000d0adc
-FUN_000d0b0c
-FUN_000d0d0c
-FUN_000d1890
-FUN_000d1960
-FUN_000d1a98
-FUN_000d1f4c
-FUN_000d2138
-FUN_000d2c84
-FUN_000d3540
-FUN_000d38fc
-FUN_000d3a2c
-FUN_000d3c30
-FUN_000d3cd8
-FUN_000d3d4c
-FUN_0015bbf4
+FUN_0003445c
+FUN_000661f8
+FUN_000b4754
+FUN_000b4c98
+FUN_000c40b0
+FUN_000d6a9c
+FUN_000d6abc
+FUN_000d6aec
+FUN_000d6b1c
+FUN_000d6d1c
+FUN_000d78f4
+FUN_000d79c4
+FUN_000d7afc
+FUN_000d7fb0
+FUN_000d819c
+FUN_000d8cf0
+FUN_000d95ac
+FUN_000d9968
+FUN_000d9a98
+FUN_000d9c9c
+FUN_000d9d44
+FUN_000d9db8
+FUN_00163d58
--- FUN_000d3f9c calling
+++ FUN_000da008 calling
@@ -1,2 +1,2 @@
-FUN_0001e168
-FUN_0004d76c
+FUN_0001eb88
+FUN_0005096c
--- FUN_000d3f9c
+++ FUN_000da008
@@ -1,2215 +1,2392 @@
-void FUN_000d3f9c(void)
+/* WARNING: Restarted to delay deadcode elimination for space: stack */
+
+void FUN_000da008(void)
{
undefined uVar1;
char cVar2;
int *piVar3;
- undefined4 *puVar4;
- bool bVar5;
- uint uVar6;
- char *pcVar7;
- undefined *puVar8;
- tm *ptVar9;
- int iVar10;
- size_t sVar11;
- int iVar12;
+ bool bVar4;
+ uint uVar5;
+ char *pcVar6;
+ undefined *puVar7;
+ tm *ptVar8;
+ int iVar9;
+ size_t sVar10;
+ int iVar11;
+ FILE *pFVar12;
FILE *pFVar13;
- FILE *pFVar14;
- char *pcVar15;
- size_t sVar16;
- undefined *puVar17;
- undefined *puVar18;
+ size_t sVar14;
+ undefined *puVar15;
+ undefined *puVar16;
DIR *__dirp;
- int iVar19;
- int iVar20;
- dirent *pdVar21;
- uint uVar22;
+ int iVar17;
+ int iVar18;
+ char **__dest;
+ dirent *pdVar19;
+ uint uVar20;
+ stat *psVar21;
int extraout_r1;
int extraout_r1_00;
int extraout_r1_01;
undefined4 extraout_r1_02;
- __off_t _Var23;
+ __off_t _Var22;
undefined4 extraout_r1_03;
undefined4 extraout_r1_04;
+ int *piVar23;
int *piVar24;
- int *piVar25;
+ undefined4 uVar25;
int *piVar26;
undefined4 *puVar27;
undefined4 *puVar28;
- undefined4 *puVar29;
- undefined4 uVar30;
- int iVar31;
+ int iVar29;
+ char *pcVar30;
+ undefined4 uVar31;
undefined4 uVar32;
- undefined4 uVar33;
- undefined4 *__ptr;
+ undefined8 uVar33;
undefined8 uVar34;
- undefined8 uVar35;
- char *pcVar36;
- char *pcVar37;
- char *pcVar38;
- char *pcVar39;
- char *pcVar40;
- char *pcVar41;
- char *pcStack_32eb0;
- int iStack_32eac;
- time_t tStack_32e94;
- char acStack_32e90 [16];
- undefined4 auStack_32e80 [3];
- undefined auStack_32e74 [4];
- undefined4 uStack_32e70;
- undefined4 uStack_32e6c;
- undefined4 uStack_32e68;
- undefined4 uStack_32e64;
- undefined4 uStack_32e60;
- undefined4 uStack_32e5c;
- sysinfo sStack_32e58;
- undefined4 uStack_32e18;
- undefined auStack_32e14 [60];
- stat sStack_32dd8;
- int aiStack_32d80 [3];
- undefined auStack_32d74 [4];
- undefined auStack_32d70 [8];
- undefined auStack_32d68 [8];
- undefined auStack_32d60 [8];
- undefined auStack_32d58 [8];
- undefined auStack_32d50 [8];
- undefined auStack_32d48 [8];
- undefined auStack_32d40 [8];
- undefined auStack_32d38 [8];
- undefined auStack_32d30 [8];
- undefined auStack_32d28 [8];
- char acStack_32d20 [128];
- int aiStack_32ca0 [31];
- char cStack_32c21;
- char acStack_32c20 [256];
- char acStack_32b20 [256];
- char acStack_32a20 [256];
- char acStack_32920 [256];
- char acStack_32820 [2048];
- char acStack_32020 [2048];
- char acStack_31820 [2047];
+ undefined4 *puStack_334b4;
+ char *pcStack_334b0;
+ time_t tStack_33494;
+ char *pcStack_33490;
+ undefined4 uStack_3348c;
+ char *pcStack_33488;
+ undefined4 uStack_33484;
+ char acStack_33480 [4];
+ undefined4 auStack_3347c [2];
+ char acStack_33474 [4];
+ undefined4 uStack_33470;
+ undefined4 uStack_3346c;
+ undefined4 uStack_33468;
+ undefined4 uStack_33464;
+ undefined4 uStack_33460;
+ undefined4 uStack_3345c;
+ sysinfo sStack_33458;
+ undefined4 uStack_33418;
+ undefined auStack_33414 [60];
+ stat sStack_333d8;
+ int iStack_33380;
+ int iStack_3337c;
+ undefined auStack_33378 [8];
+ undefined auStack_33370 [8];
+ undefined auStack_33368 [8];
+ undefined auStack_33360 [8];
+ undefined auStack_33358 [8];
+ undefined auStack_33350 [8];
+ undefined auStack_33348 [8];
+ undefined auStack_33340 [8];
+ undefined auStack_33338 [8];
+ undefined auStack_33330 [8];
+ undefined auStack_33328 [8];
+ char acStack_33320 [128];
+ int aiStack_332a0 [31];
+ undefined uStack_33221;
+ char acStack_33220 [256];
+ char acStack_33120 [256];
+ char acStack_33020 [256];
+ char acStack_32f20 [256];
+ char acStack_32e20 [2048];
+ char acStack_32620 [2816];
+ char acStack_31b20 [2815];
char cStack_31021;
char *pcStack_31020;
undefined4 uStack_3101c;
undefined4 uStack_31018;
undefined4 uStack_31014;
char acStack_30020 [4];
char acStack_3001c [196604];
- pcVar36 = acStack_32c20;
- pcVar37 = acStack_32c20;
- pcVar15 = acStack_32c20;
- pcVar38 = acStack_32c20;
- pcVar39 = acStack_32c20;
- pcVar40 = acStack_32c20;
- pcVar41 = acStack_32c20;
- acStack_32820[0] = '\0';
- acStack_32820[1] = '\0';
- acStack_32820[2] = '\0';
- acStack_32820[3] = '\0';
- memset(acStack_32820 + 4,0,0x7fc);
- acStack_32020[0] = '\0';
- acStack_32020[1] = '\0';
- acStack_32020[2] = '\0';
- acStack_32020[3] = '\0';
- memset(acStack_32020 + 4,0,0x7fc);
- acStack_32e90[0] = '\0';
- acStack_32e90[1] = '\0';
- acStack_32e90[2] = '\0';
- acStack_32e90[3] = '\0';
- acStack_32e90[4] = '\0';
- acStack_32e90[5] = '\0';
- acStack_32e90[6] = '\0';
- acStack_32e90[7] = '\0';
- acStack_32e90[8] = '\0';
- acStack_32e90[9] = '\0';
- acStack_32e90[10] = '\0';
- acStack_32e90[0xb] = '\0';
- acStack_32e90[0xc] = '\0';
- acStack_32e90[0xd] = '\0';
- acStack_32e90[0xe] = '\0';
- acStack_32e90[0xf] = '\0';
- uStack_32e18 = 0;
- memset(auStack_32e14,0,0x3c);
+ acStack_32620[0] = '\0';
+ acStack_32620[1] = '\0';
+ acStack_32620[2] = '\0';
+ acStack_32620[3] = '\0';
+ memset(acStack_32620 + 4,0,0xafc);
+ acStack_31b20[0] = '\0';
+ acStack_31b20[1] = '\0';
+ acStack_31b20[2] = '\0';
+ acStack_31b20[3] = '\0';
+ memset(acStack_31b20 + 4,0,0xafc);
+ pcStack_33490 = (char *)0x0;
+ uStack_3348c = 0;
+ pcStack_33488 = (char *)0x0;
+ uStack_33484 = 0;
+ uStack_33418 = 0;
+ memset(auStack_33414,0,0x3c);
memset(acStack_30020 + 4,0,0x2fffc);
- acStack_32d20[0] = '\0';
- acStack_32d20[1] = '\0';
- acStack_32d20[2] = '\0';
- acStack_32d20[3] = '\0';
- memset(acStack_32d20 + 4,0,0x7c);
- acStack_32c20[0] = '\0';
- acStack_32c20[1] = '\0';
- acStack_32c20[2] = '\0';
- acStack_32c20[3] = '\0';
- memset(acStack_32c20 + 4,0,0xfc);
- acStack_32b20[0] = '\0';
- acStack_32b20[1] = '\0';
- acStack_32b20[2] = '\0';
- acStack_32b20[3] = '\0';
- memset(acStack_32b20 + 4,0,0xfc);
- acStack_32a20[0] = '\0';
- acStack_32a20[1] = '\0';
- acStack_32a20[2] = '\0';
- acStack_32a20[3] = '\0';
- memset(acStack_32a20 + 4,0,0xfc);
- acStack_32920[0] = '\0';
- acStack_32920[1] = '\0';
- acStack_32920[2] = '\0';
- acStack_32920[3] = '\0';
- memset(acStack_32920 + 4,0,0xfc);
+ acStack_33320[0] = '\0';
+ acStack_33320[1] = '\0';
+ acStack_33320[2] = '\0';
+ acStack_33320[3] = '\0';
+ memset(acStack_33320 + 4,0,0x7c);
+ acStack_33220[0] = '\0';
+ acStack_33220[1] = '\0';
+ acStack_33220[2] = '\0';
+ acStack_33220[3] = '\0';
+ memset(acStack_33220 + 4,0,0xfc);
+ acStack_33120[0] = '\0';
+ acStack_33120[1] = '\0';
+ acStack_33120[2] = '\0';
+ acStack_33120[3] = '\0';
+ memset(acStack_33120 + 4,0,0xfc);
+ acStack_33020[0] = '\0';
+ acStack_33020[1] = '\0';
+ acStack_33020[2] = '\0';
+ acStack_33020[3] = '\0';
+ memset(acStack_33020 + 4,0,0xfc);
+ acStack_32f20[0] = '\0';
+ acStack_32f20[1] = '\0';
+ acStack_32f20[2] = '\0';
+ acStack_32f20[3] = '\0';
+ memset(acStack_32f20 + 4,0,0xfc);
cprintf("Start [%s]\n","start_sendfeedback");
logmessage_normal("frs_feedback","start_sendfeedback() start...\n");
- uVar6 = nvram_get_int("dblog_service");
- pcVar7 = FUN_000d0a8c();
- pcVar7 = strchr(pcVar7,0x60);
- if (pcVar7 == (char *)0x0) {
- puVar8 = FUN_000d0a8c();
- strlcpy(&uStack_32e18,puVar8,0x40);
+ uVar5 = nvram_get_int("dblog_service");
+ pcVar6 = FUN_000d6a9c();
+ pcVar6 = strchr(pcVar6,0x60);
+ if (pcVar6 == (char *)0x0) {
+ puVar7 = FUN_000d6a9c();
+ strlcpy(&uStack_33418,puVar7,0x40);
}
nvram_set_int("fb_split_files",1);
nvram_set_int("fb_total_size",0);
- time(&tStack_32e94);
- ptVar9 = localtime(&tStack_32e94);
- if (ptVar9 == (tm *)0x0) {
+ time(&tStack_33494);
+ ptVar8 = localtime(&tStack_33494);
+ if (ptVar8 == (tm *)0x0) {
logmessage_normal("frs_feedback","Failed to get time before sending mail!\n");
return;
}
- DAT_0 = ptVar9->tm_mon;
- DAT_1 = ptVar9->tm_mday;
- bVar5 = FUN_000d0aac("fb_email_dbg","");
- if (bVar5) {
- if ((DAT_0 == DAT_001d3b04) && (DAT_001d3b08 == DAT_001d3b00)) {
+ DAT_0 = ptVar8->tm_mon;
+ DAT_1 = ptVar8->tm_mday;
+ bVar4 = FUN_000d6abc("fb_email_dbg","");
+ if (bVar4) {
+ if ((DAT_0 == DAT_001ddc64) && (DAT_001ddc68 == DAT_001ddc60)) {
if (9 < DAT_2) {
logmessage_normal("frs_feedback","You had sent Feedback more than %d times.\n");
nvram_set("fb_state",&DAT_3);
return;
}
DAT_2 = DAT_2 + 1;
}
else {
- DAT_4 = DAT_001d3afc;
- DAT_5 = DAT_001d3b00;
+ DAT_4 = DAT_001ddc5c;
+ DAT_5 = DAT_001ddc60;
DAT_2 = 1;
}
}
nvram_set_int("fb_feedbackcount",DAT_2);
nvram_set("fb_state","0");
- snprintf(acStack_32820,0x800,"mkdir -p %s","/tmp/asusfbsvcs/duplicate_log");
- system(acStack_32820);
- iVar10 = check_if_dir_exist("/tmp/asusfbsvcs/duplicate_log");
- if (iVar10 == 0) {
+ snprintf(acStack_32620,0xb00,"mkdir -p %s","/tmp/asusfbsvcs/duplicate_log");
+ system(acStack_32620);
+ iVar9 = check_if_dir_exist("/tmp/asusfbsvcs/duplicate_log");
+ if (iVar9 == 0) {
dbg("send_feedback_curl_retry() failed to create folder [%s]\n","/tmp/asusfbsvcs/duplicate_log")
;
return;
}
- FUN_000d1a98();
- bVar5 = FUN_000d0aac("fb_conntrack_debug","1");
- if (bVar5) {
- FUN_00062df4(2);
- }
- pcVar7 = "brcmsysinfo.txt";
- snprintf(acStack_32820,0x800,"brcmsysinfo.sh &> %s/%s","/tmp/asusfbsvcs/duplicate_log",
+ FUN_000d7afc();
+ bVar4 = FUN_000d6abc("fb_conntrack_debug","1");
+ if (bVar4) {
+ FUN_000661f8(2);
+ }
+ pcVar6 = "brcmsysinfo.txt";
+ snprintf(acStack_32620,0xb00,"brcmsysinfo.sh &> %s/%s","/tmp/asusfbsvcs/duplicate_log",
"brcmsysinfo.txt");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","brcmsysinfo.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- pcVar7 = "dmesg.txt";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","dmesg.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- pcVar7 = "nf_conntrack.tgz";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nf_conntrack.tgz");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- FUN_000be010();
- pcVar7 = "mactable.txt";
- snprintf(acStack_32820,0x800,"mv /tmp/%s %s","mactable.txt","/tmp/asusfbsvcs/duplicate_log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","mactable.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- bVar5 = FUN_000d0aac("fb_attach_syslog","1");
- if (!bVar5) {
- FUN_000d0aac("fb_attach_wlanlog","1");
- }
- bVar5 = FUN_000d0aac("fb_attach_syslog","1");
- if (bVar5) {
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","brcmsysinfo.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ pcVar6 = "dmesg.txt";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","dmesg.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ pcVar6 = "nf_conntrack.tgz";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nf_conntrack.tgz");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ FUN_000c40b0();
+ pcVar6 = "mactable.txt";
+ snprintf(acStack_32620,0xb00,"mv /tmp/%s %s","mactable.txt","/tmp/asusfbsvcs/duplicate_log");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","mactable.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ bVar4 = FUN_000d6abc("fb_attach_syslog","1");
+ if (!bVar4) {
+ FUN_000d6abc("fb_attach_wlanlog","1");
+ }
+ bVar4 = FUN_000d6abc("fb_attach_syslog","1");
+ if (bVar4) {
cprintf("---Collect Syslog...\n");
- snprintf(acStack_32d20,0x80,"%s.tgz","/tmp/netfilter_conntrack.log");
- snprintf(acStack_32820,0x800,"tar -zcf %s %s*",acStack_32d20,"/tmp/netfilter_conntrack.log");
- cprintf("cmd=[%s]\n",acStack_32820);
- system(acStack_32820);
- iVar10 = check_if_file_exist(acStack_32d20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32d20);
- }
- iVar10 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/syslog.log");
- if (iVar10 != 0) {
+ snprintf(acStack_33320,0x80,"%s.tgz","/tmp/netfilter_conntrack.log");
+ snprintf(acStack_32620,0xb00,"tar -zcf %s %s*",acStack_33320,"/tmp/netfilter_conntrack.log");
+ cprintf("cmd=[%s]\n",acStack_32620);
+ system(acStack_32620);
+ iVar9 = check_if_file_exist(acStack_33320);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33320);
+ }
+ iVar9 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/syslog.log");
+ if (iVar9 != 0) {
unlink("/tmp/asusfbsvcs/duplicate_log/syslog.log");
}
- iVar10 = check_if_file_exist("/tmp/syslog.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/tmp/syslog.log-1",
+ iVar9 = check_if_file_exist("/tmp/syslog.log-1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/tmp/syslog.log-1",
"/tmp/asusfbsvcs/duplicate_log/syslog.log");
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/tmp/syslog.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/tmp/syslog.log",
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/tmp/syslog.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/tmp/syslog.log",
"/tmp/asusfbsvcs/duplicate_log/syslog.log");
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/syslog.log");
- if (iVar10 != 0) {
- strlcat(acStack_32020,"-a /tmp/asusfbsvcs/duplicate_log/syslog.log ",0x800);
- }
- pcVar7 = "/tmp/free.txt";
- sprintf(acStack_32820,"free > %s;echo >> %s;cat /proc/meminfo >> %s","/tmp/free.txt",
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/syslog.log");
+ if (iVar9 != 0) {
+ strlcat(acStack_31b20,"-a /tmp/asusfbsvcs/duplicate_log/syslog.log ",0xb00);
+ }
+ pcVar6 = "/tmp/free.txt";
+ sprintf(acStack_32620,"free > %s;echo >> %s;cat /proc/meminfo >> %s","/tmp/free.txt",
"/tmp/free.txt","/tmp/free.txt");
- system(acStack_32820);
- iVar10 = check_if_file_exist("/tmp/free.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/free.txt");
- }
- sprintf(acStack_32820,"top -n 1 > %s","/tmp/top.txt");
- system(acStack_32820);
- iVar10 = check_if_file_exist("/tmp/top.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/top.txt");
- }
- iVar10 = check_if_file_exist("/jffs/webs_upgrade.log-1");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/jffs/webs_upgrade.log-1");
- }
- iVar10 = check_if_file_exist("/jffs/webs_upgrade.log");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/jffs/webs_upgrade.log");
- }
- iVar10 = check_if_file_exist("/jffs/HTTPD_FB_DEBUG.log-1");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/jffs/HTTPD_FB_DEBUG.log-1");
- }
- iVar10 = check_if_file_exist("/jffs/HTTPD_FB_DEBUG.log");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/jffs/HTTPD_FB_DEBUG.log");
+ system(acStack_32620);
+ iVar9 = check_if_file_exist("/tmp/free.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/free.txt");
+ }
+ sprintf(acStack_32620,"top -n 1 > %s","/tmp/top.txt");
+ system(acStack_32620);
+ iVar9 = check_if_file_exist("/tmp/top.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/top.txt");
+ }
+ iVar9 = check_if_file_exist("/jffs/webs_upgrade.log-1");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/jffs/webs_upgrade.log-1");
+ }
+ iVar9 = check_if_file_exist("/jffs/webs_upgrade.log");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/jffs/webs_upgrade.log");
+ }
+ iVar9 = check_if_file_exist("/jffs/HTTPD_FB_DEBUG.log-1");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/jffs/HTTPD_FB_DEBUG.log-1");
+ }
+ iVar9 = check_if_file_exist("/jffs/HTTPD_FB_DEBUG.log");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/jffs/HTTPD_FB_DEBUG.log");
}
system("ls /proc >/tmp/proc.tmp");
system("echo \"#!/bin/sh\" > /tmp/preScript.sh ; chmod +x /tmp/preScript.sh");
system("ps > /tmp/psInfo.txt");
system(
"cat /tmp/proc.tmp | sed -n \"/^[0-9]\\+$/p\" | awk \'{printf \"echo [PID:%d] `cat /proc/%d/cmdline` >> /tmp/psInfo.txt\\n\", $0,$0}\' >> /tmp/preScript.sh"
);
system("/tmp/preScript.sh");
system("echo \"\" >> /tmp/psInfo.txt");
system("echo \"==========ps -wT==========\" >> /tmp/psInfo.txt");
system("ps -wT >> /tmp/psInfo.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a /tmp/psInfo.txt ");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a /tmp/psInfo.txt ");
system("netstat -na >> /tmp/netstat.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a /tmp/netstat.txt ");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a /tmp/netstat.txt ");
system("ls -al /var/lock >> /tmp/var_lock.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a /tmp/var_lock.txt ");
- snprintf(acStack_32820,0x800,"echo \"# ls -al /jffs\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"ls -al /jffs > /tmp/%s 2>&1","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"# du -sh /jffs\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"du -sh /jffs >> /tmp/%s 2>&1","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"# du -h /jffs\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"du -h /jffs >> /tmp/%s 2>&1","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"# ls -alR /jffs\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"ls -alR /jffs >> /tmp/%s 2>&1","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"# df /jffs\" >> /tmp/%s","jffs_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"df /jffs >> /tmp/%s 2>&1","jffs_log.txt");
- system(acStack_32820);
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a /tmp/%s ","jffs_log.txt");
- snprintf(acStack_32820,0x800,"ls -al /tmp > /tmp/%s 2>&1","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"du -sh /tmp >> /tmp/%s 2>&1","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"du -sh /tmp/* >> /tmp/%s 2>&1","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"echo \"\" >> /tmp/%s","tmp_log.txt");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"df /tmp >> /tmp/%s 2>&1","tmp_log.txt");
- system(acStack_32820);
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a /tmp/%s ","tmp_log.txt");
- snprintf(acStack_32c20,0x100,"/root/%s",".ash_history");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- pcVar7 = "cmd_history.txt";
- snprintf(acStack_32820,0x800,"cp %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a /tmp/var_lock.txt ");
+ snprintf(acStack_32620,0xb00,"echo \"# ls -al /jffs\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"ls -al /jffs > /tmp/%s 2>&1","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"# du -sh /jffs\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"du -sh /jffs >> /tmp/%s 2>&1","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"# du -h /jffs\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"du -h /jffs >> /tmp/%s 2>&1","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"# ls -alR /jffs\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"ls -alR /jffs >> /tmp/%s 2>&1","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"# df /jffs\" >> /tmp/%s","jffs_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"df /jffs >> /tmp/%s 2>&1","jffs_log.txt");
+ system(acStack_32620);
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a /tmp/%s ","jffs_log.txt");
+ snprintf(acStack_32620,0xb00,"ls -al /tmp > /tmp/%s 2>&1","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"du -sh /tmp >> /tmp/%s 2>&1","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"du -sh /tmp/* >> /tmp/%s 2>&1","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"echo \"\" >> /tmp/%s","tmp_log.txt");
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"df /tmp >> /tmp/%s 2>&1","tmp_log.txt");
+ system(acStack_32620);
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a /tmp/%s ","tmp_log.txt");
+ snprintf(acStack_33220,0x100,"/root/%s",".ash_history");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ pcVar6 = "cmd_history.txt";
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"cmd_history.txt");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cmd_history.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- }
- snprintf(acStack_32820,0x800,"cd /tmp/; tar zcf %s wan*.env","/tmp/wan.env.tgz",pcVar7);
- system(acStack_32820);
- iVar10 = check_if_file_exist("/tmp/wan.env.tgz");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/wan.env.tgz");
- }
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","fc_status.txt");
- snprintf(acStack_32820,0x800,"fc status > %s",acStack_32c20);
- system(acStack_32820);
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- iVar10 = get_ipv6_service();
- if (iVar10 != 0) {
- iVar10 = nvram_get("sw_mode");
- if (iVar10 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar10 = atoi(pcVar7);
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cmd_history.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ }
+ snprintf(acStack_32620,0xb00,"cd /tmp/; tar zcf %s wan*.env","/tmp/wan.env.tgz",pcVar6);
+ system(acStack_32620);
+ iVar9 = check_if_file_exist("/tmp/wan.env.tgz");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/wan.env.tgz");
+ }
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","fc_status.txt");
+ snprintf(acStack_32620,0xb00,"fc status > %s",acStack_33220);
+ system(acStack_32620);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ iVar9 = get_ipv6_service();
+ if (iVar9 != 0) {
+ iVar9 = nvram_get("sw_mode");
+ if (iVar9 == 0) {
+ pcVar6 = (char *)nvram_default_get("sw_mode");
+ iVar9 = atoi(pcVar6);
}
else {
- iVar10 = nvram_get_int();
- }
- if (iVar10 != 1) {
- iVar10 = nvram_get("sw_mode");
- if (iVar10 == 0) {
- pcVar7 = (char *)nvram_default_get("sw_mode");
- iVar10 = atoi(pcVar7);
+ iVar9 = nvram_get_int();
+ }
+ if (iVar9 != 1) {
+ iVar9 = nvram_get("sw_mode");
+ if (iVar9 == 0) {
+ pcVar6 = (char *)nvram_default_get("sw_mode");
+ iVar9 = atoi(pcVar6);
}
else {
- iVar10 = nvram_get_int("sw_mode");
+ iVar9 = nvram_get_int("sw_mode");
}
- if (iVar10 != 4) goto LAB_6;
+ if (iVar9 != 4) goto LAB_6;
}
unlink("/tmp/ipv6.txt");
doSystem("printf \"# nvram show |grep ipv6_\n\" >> %s","/tmp/ipv6.txt");
doSystem("nvram show|grep ipv6_ >> %s","/tmp/ipv6.txt");
doSystem("printf \"\n# ip -6 route\n\" >> %s","/tmp/ipv6.txt");
doSystem("ip -6 route >> %s","/tmp/ipv6.txt");
doSystem("printf \"\n# ip -6 tunnel\n\" >> %s","/tmp/ipv6.txt");
doSystem("ip -6 tunnel >> %s","/tmp/ipv6.txt");
doSystem("printf \"\n# ip -6 neigh show dev br0\n\" >> %s","/tmp/ipv6.txt");
doSystem("ip -6 neigh show dev br0 >> %s","/tmp/ipv6.txt");
doSystem("printf \"\n# ifconfig\n\" >> %s","/tmp/ipv6.txt");
doSystem("ifconfig >> %s","/tmp/ipv6.txt");
doSystem("printf \"\n# ip addr show\n\" >> %s","/tmp/ipv6.txt");
doSystem("ip a s >> %s","/tmp/ipv6.txt");
- iVar10 = check_if_file_exist("/tmp/ipv6.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/ipv6.txt");
+ iVar9 = check_if_file_exist("/tmp/ipv6.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/ipv6.txt");
}
}
LAB_6:
cprintf("---Collect MTD bad_blocks...\n");
- FUN_000d0b0c();
- iVar10 = check_if_file_exist("/tmp/mtd_bad_blocks.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/mtd_bad_blocks.txt");
- }
- FUN_000d0d0c();
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/asusfbsvcs/cpuusage_log.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/asusfbsvcs/ramusage_log.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/asusfbsvcs/cputemp_log.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/asusfbsvcs/psstate_log.txt");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/asusfbsvcs/tmpsize_log.txt");
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/tmp/ahs.log.1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/tmp/ahs.log.1",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/tmp/ahs.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/tmp/ahs.log",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- iVar10 = check_if_file_exist("/tmp/decjsonfile.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/decjsonfile.txt");
- }
- iVar10 = check_if_file_exist("/tmp/decjsonobj.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/decjsonobj.txt");
- }
- iVar10 = 6;
+ FUN_000d6b1c();
+ iVar9 = check_if_file_exist("/tmp/mtd_bad_blocks.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/mtd_bad_blocks.txt");
+ }
+ FUN_000d6d1c();
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/asusfbsvcs/cpuusage_log.txt");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/asusfbsvcs/ramusage_log.txt");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/asusfbsvcs/cputemp_log.txt");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/asusfbsvcs/psstate_log.txt");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/asusfbsvcs/tmpsize_log.txt");
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/tmp/ahs.log.1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/tmp/ahs.log.1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/tmp/ahs.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/tmp/ahs.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/tmp/decjsonfile.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/decjsonfile.txt");
+ }
+ iVar9 = check_if_file_exist("/tmp/decjsonobj.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/decjsonobj.txt");
+ }
+ iVar9 = 6;
kill_pidfile_s("/var/run/ahs.pid",0xc);
- while (bVar5 = iVar10 != 0, iVar10 = iVar10 + -1, bVar5) {
- iVar12 = check_if_file_exist("/tmp/ahs_dump.txt");
- if (iVar12 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/ahs_dump.txt");
+ while (bVar4 = iVar9 != 0, iVar9 = iVar9 + -1, bVar4) {
+ iVar11 = check_if_file_exist("/tmp/ahs_dump.txt");
+ if (iVar11 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/ahs_dump.txt");
break;
}
- cprintf("[ahs_dump.txt] does not exist, retry = %d\n",iVar10);
+ cprintf("[ahs_dump.txt] does not exist, retry = %d\n",iVar9);
sleep(1);
}
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs_jffs.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/ahs/ahs_jffs.log.1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/ahs/ahs_jffs.log.1",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/jffs/ahs/ahs_jffs.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/ahs/ahs_jffs.log",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- pcVar7 = "ahs_hwsw_status.txt";
- snprintf(acStack_32c20,0x100,"/jffs/ahs/%s","ahs_hwsw_status.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp /jffs/ahs/%s %s","ahs_hwsw_status.txt",
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs_jffs.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/ahs/ahs_jffs.log.1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/ahs/ahs_jffs.log.1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/ahs/ahs_jffs.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/ahs/ahs_jffs.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar6 = "ahs_hwsw_status.txt";
+ snprintf(acStack_33220,0x100,"/jffs/ahs/%s");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp /jffs/ahs/%s %s","ahs_hwsw_status.txt",
"/tmp/asusfbsvcs/duplicate_log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs_hwsw_status.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- snprintf(acStack_32c20,0x100,"/jffs/ahs/%s","ahs_hwsw_status.txt",pcVar7);
- unlink(acStack_32c20);
- }
- pcVar7 = "asd.log";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","asd.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/asd.log.1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/asd.log.1",acStack_32c20);
- system(acStack_32820);
- pcVar7 = pcVar36;
- }
- iVar10 = check_if_file_exist("/jffs/asd.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/asd.log",acStack_32c20);
- system(acStack_32820);
- pcVar7 = pcVar37;
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32b20,0x100,"%s.dec",acStack_32c20,pcVar7);
- pFVar13 = fopen(acStack_32c20,"r");
- pFVar14 = fopen(acStack_32b20,"w");
- if (pFVar13 == (FILE *)0x0 || pFVar14 == (FILE *)0x0) {
- if ((pFVar13 != (FILE *)0x0) || (pFVar13 = pFVar14, pFVar14 != (FILE *)0x0)) {
- fclose(pFVar13);
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","ahs_hwsw_status.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ snprintf(acStack_33220,0x100,"/jffs/ahs/%s","ahs_hwsw_status.txt",pcVar6);
+ unlink(acStack_33220);
+ }
+ pcVar6 = "asd.log";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","asd.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/asd.log.1");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/asd.log.1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/asd.log");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/asd.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_33120,0x100,"%s.dec",acStack_33220,pcVar6);
+ pFVar12 = fopen(acStack_33220,"r");
+ pFVar13 = fopen(acStack_33120,"w");
+ if (pFVar12 == (FILE *)0x0 || pFVar13 == (FILE *)0x0) {
+ if ((pFVar12 != (FILE *)0x0) || (pFVar12 = pFVar13, pFVar13 != (FILE *)0x0)) {
+ fclose(pFVar12);
}
- sVar11 = strlen(acStack_32020);
- pcVar7 = acStack_32020 + sVar11;
+ sVar10 = strlen(acStack_31b20);
+ pcVar6 = acStack_33220;
}
else {
memset(&pcStack_31020,0,0x1000);
- while (pcVar15 = fgets((char *)&pcStack_31020,0x1000,pFVar13), pcVar15 != (char *)0x0) {
- sVar11 = strlen((char *)&pcStack_31020);
- (&cStack_31021)[sVar11] = '0';
- memset(acStack_31820,0,0x800);
- iVar10 = pw_dec(&pcStack_31020,acStack_31820,0x800,0);
- if (iVar10 == 0) {
- fprintf(pFVar14,"%s\n",&pcStack_31020);
+ while (pcVar6 = fgets((char *)&pcStack_31020,0x1000,pFVar12), pcVar6 != (char *)0x0) {
+ sVar10 = strlen((char *)&pcStack_31020);
+ (&cStack_31021)[sVar10] = '0';
+ memset(acStack_32e20,0,0x800);
+ iVar9 = pw_dec(&pcStack_31020,acStack_32e20,0x800,0);
+ if (iVar9 == 0) {
+ fprintf(pFVar13,"%s\n",&pcStack_31020);
}
else {
- fputs(acStack_31820,pFVar14);
+ fputs(acStack_32e20,pFVar13);
}
}
+ fclose(pFVar12);
fclose(pFVar13);
- fclose(pFVar14);
- sVar11 = strlen(acStack_32020);
- pcVar7 = acStack_32020 + sVar11;
- pcVar15 = acStack_32b20;
- }
- snprintf(pcVar7,0x800 - sVar11,"-a %s ",pcVar15);
- }
- iVar10 = check_if_dir_empty("/jffs/.asdbk");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"tar -zcf %s/%s %s","/tmp/asusfbsvcs/duplicate_log",
+ sVar10 = strlen(acStack_31b20);
+ pcVar6 = acStack_33120;
+ }
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",pcVar6);
+ }
+ iVar9 = check_if_dir_empty("/jffs/.asdbk");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"tar -zcf %s/%s %s","/tmp/asusfbsvcs/duplicate_log",
"asdbk.tar.gz","/jffs/.asdbk");
- system(acStack_32820);
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s/%s ","/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s/%s ","/tmp/asusfbsvcs/duplicate_log",
"asdbk.tar.gz");
}
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","s46.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/s46.log.1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/s46.log.1",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(&DAT_7);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s",&DAT_7,acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","wglst");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist(&DAT_8);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s",&DAT_8,acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(&DAT_9);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s",&DAT_9,acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- pcVar15 = "sig_upgrade.log";
- snprintf(acStack_32c20,0x100,"/tmp/%s","sig_upgrade.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp /tmp/%s %s","sig_upgrade.log","/tmp/asusfbsvcs/duplicate_log"
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","s46.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/s46.log.1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/s46.log.1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(&DAT_7);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s",&DAT_7,acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","wglst");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist(&DAT_8);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s",&DAT_8,acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(&DAT_9);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s",&DAT_9,acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar6 = "sig_upgrade.log";
+ snprintf(acStack_33220,0x100,"/tmp/%s","sig_upgrade.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp /tmp/%s %s","sig_upgrade.log","/tmp/asusfbsvcs/duplicate_log"
);
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","sig_upgrade.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar15);
- }
- }
- FUN_000d38fc();
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ","/tmp/cfe.gz");
- sprintf(acStack_32820,"pwr show > %s","/tmp/pwr_mgnt.txt");
- system(acStack_32820);
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ","/tmp/pwr_mgnt.txt");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","sig_upgrade.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ }
+ FUN_000d9968();
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ","/tmp/cfe.gz");
+ sprintf(acStack_32620,"pwr show > %s","/tmp/pwr_mgnt.txt");
+ system(acStack_32620);
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ","/tmp/pwr_mgnt.txt");
pcStack_31020 = "cfg_reportstatus";
uStack_3101c = 0;
_eval(&pcStack_31020,0,0);
- iVar10 = check_if_file_exist("/tmp/cfgmnt_log.txt");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/cfgmnt_log.txt");
- }
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cfg_dbg.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/.sys/cfg_mnt/cfg_dbg.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/.sys/cfg_mnt/cfg_dbg.log-1",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/jffs/.sys/cfg_mnt/cfg_dbg.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/.sys/cfg_mnt/cfg_dbg.log",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- pcVar15 = "strongswan.charon.log";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","strongswan.charon.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/var/log/strongswan.charon.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/var/log/strongswan.charon.log-1",acStack_32c20);
- system(acStack_32820);
- pcVar15 = pcVar38;
- }
- iVar10 = check_if_file_exist("/var/log/strongswan.charon.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/var/log/strongswan.charon.log",acStack_32c20);
- system(acStack_32820);
- pcVar15 = pcVar39;
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
+ iVar9 = check_if_file_exist("/tmp/cfgmnt_log.txt");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/cfgmnt_log.txt");
+ }
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cfg_dbg.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/cfg_mnt/cfg_dbg.log-1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/.sys/cfg_mnt/cfg_dbg.log-1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/cfg_mnt/cfg_dbg.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/.sys/cfg_mnt/cfg_dbg.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar6 = "strongswan.charon.log";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","strongswan.charon.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/var/log/strongswan.charon.log-1");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/var/log/strongswan.charon.log-1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/var/log/strongswan.charon.log");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/var/log/strongswan.charon.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
}
killall("dnsmasq",0xc);
sleep(1);
- pcVar7 = "dnsmasq.leases";
- snprintf(acStack_32c20,0x100,"/var/lib/misc/%s","dnsmasq.leases");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp %s %s/%s.txt",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ pcVar30 = "dnsmasq.leases";
+ snprintf(acStack_33220,0x100,"/var/lib/misc/%s","dnsmasq.leases");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s.txt",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"dnsmasq.leases");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s.txt","/tmp/asusfbsvcs/duplicate_log","dnsmasq.leases");
- iVar10 = check_if_file_exist(acStack_32c20);
- pcVar15 = pcVar7;
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- pcVar15 = pcVar7;
- }
- }
- pcVar7 = "arp.txt";
- snprintf(acStack_32820,0x800,"arp -avn >> /tmp/%s","arp.txt",pcVar15);
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"/tmp/%s","arp.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"mv %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s.txt","/tmp/asusfbsvcs/duplicate_log","dnsmasq.leases");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "arp.txt";
+ snprintf(acStack_32620,0xb00,"arp -avn >> /tmp/%s","arp.txt",pcVar6);
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"/tmp/%s","arp.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"mv %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"arp.txt");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","arp.txt");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- }
- pcVar15 = "nmp_vc_json.js";
- snprintf(acStack_32c20,0x100,"%s/%s","/jffs","nmp_vc_json.js");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- pcVar15 = "nmp_vc_json.json";
- snprintf(acStack_32820,0x800,"cp %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","arp.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ snprintf(acStack_32620,0xb00,"cat /proc/net/arp > /tmp/%s","proc_net_arp.txt",pcVar6);
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"/tmp/%s","proc_net_arp.txt");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar30 = "wiredclientlist.json";
+ snprintf(acStack_33220,0x100,"/tmp/%s","wiredclientlist.json");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
+ "wiredclientlist.json");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","wiredclientlist.json");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "allwclientlist.json";
+ snprintf(acStack_33220,0x100,"/tmp/%s","allwclientlist.json",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
+ "allwclientlist.json");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","allwclientlist.json");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "clientlist.json";
+ snprintf(acStack_33220,0x100,"/tmp/%s","clientlist.json",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
+ "clientlist.json");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","clientlist.json");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "nmp_cache.js";
+ snprintf(acStack_33220,0x100,"/tmp/%s","nmp_cache.js",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
+ "nmp_cache.js");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nmp_cache.js");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "nmp_cl_json.js";
+ snprintf(acStack_33220,0x100,"/jffs/%s","nmp_cl_json.js",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
+ "nmp_cl_json.js");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nmp_cl_json.js");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ }
+ }
+ pcVar6 = "nmp_vc_json.js";
+ snprintf(acStack_33220,0x100,"%s/%s","/jffs","nmp_vc_json.js");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ pcVar6 = "nmp_vc_json.json";
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"nmp_vc_json.json");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nmp_vc_json.json");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar15);
- }
- }
- pcVar7 = "lighttpd_debug.log";
- snprintf(acStack_32c20,0x100,"/tmp/%s","lighttpd_debug.log",pcVar15);
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"mv %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","nmp_vc_json.json");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ }
+ pcVar30 = "lighttpd_debug.log";
+ snprintf(acStack_33220,0x100,"/tmp/%s","lighttpd_debug.log",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"mv %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"lighttpd_debug.log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","lighttpd_debug.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- }
- iVar10 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/HTTPD_DEBUG.log");
- if (iVar10 != 0) {
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","lighttpd_debug.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ }
+ }
+ iVar9 = check_if_file_exist("/tmp/asusfbsvcs/duplicate_log/HTTPD_DEBUG.log");
+ if (iVar9 != 0) {
unlink("/tmp/asusfbsvcs/duplicate_log/HTTPD_DEBUG.log");
}
- iVar10 = check_if_file_exist("/jffs/HTTPD_DEBUG.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/HTTPD_DEBUG.log-1",
+ iVar9 = check_if_file_exist("/jffs/HTTPD_DEBUG.log-1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/HTTPD_DEBUG.log-1",
"/tmp/asusfbsvcs/duplicate_log/HTTPD_DEBUG.log");
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/jffs/HTTPD_DEBUG.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/HTTPD_DEBUG.log",
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/HTTPD_DEBUG.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/HTTPD_DEBUG.log",
"/tmp/asusfbsvcs/duplicate_log/HTTPD_DEBUG.log");
- system(acStack_32820);
- }
- pcVar15 = "HTTPD_DEBUG.log";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","HTTPD_DEBUG.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar15);
- }
- }
- bVar5 = FUN_000d0aac("fb_attach_cfgfile","1");
- if (bVar5) {
+ system(acStack_32620);
+ }
+ pcVar6 = "HTTPD_DEBUG.log";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","HTTPD_DEBUG.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ }
+ bVar4 = FUN_000d6abc("fb_attach_cfgfile","1");
+ if (bVar4) {
cprintf("---Collect cfg...\n");
nvram_commit();
pcStack_31020 = DAT_10;
uStack_3101c = DAT_11;
uStack_31018 = DAT_12;
uStack_31014 = DAT_13;
_eval(&pcStack_31020,0,0);
- strcat(acStack_32020,"-a /tmp/settings ");
- }
- bVar5 = FUN_000d0aac("fb_attach_modemlog","1");
- if (bVar5) {
+ strcat(acStack_31b20,"-a /tmp/settings ");
+ }
+ bVar4 = FUN_000d6abc("fb_attach_modemlog","1");
+ if (bVar4) {
cprintf("---Collect modem log...\n");
- sprintf(acStack_32820,"/usr/sbin/3ginfo.sh > %s","/tmp/modemlog.txt");
- system(acStack_32820);
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ","/tmp/modemlog.txt");
- }
- bVar5 = FUN_000d0aac("fb_attach_wlanlog","1");
- if (bVar5) {
+ sprintf(acStack_32620,"/usr/sbin/3ginfo.sh > %s","/tmp/modemlog.txt");
+ system(acStack_32620);
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ","/tmp/modemlog.txt");
+ }
+ bVar4 = FUN_000d6abc("fb_attach_wlanlog","1");
+ if (bVar4) {
cprintf("---Collect wireless log 1...\n");
- bVar5 = FUN_000d0aac("http_enable","1");
- if (bVar5) {
- puVar8 = FUN_000d0a8c();
- snprintf((char *)&pcStack_31020,0x40,"/var/run/httpd-%s.pid",puVar8);
+ bVar4 = FUN_000d6abc("http_enable","1");
+ if (bVar4) {
+ puVar7 = FUN_000d6a9c();
+ snprintf((char *)&pcStack_31020,0x40,"/var/run/httpd-%s.pid",puVar7);
}
else {
strlcpy(&pcStack_31020,"/var/run/httpd.pid",0x40);
}
+ iVar9 = 0xf;
nvram_set("fb_wlanlog_done","0");
kill_pidfile_s(&pcStack_31020,10);
- iVar10 = 0xf;
- while (bVar5 = iVar10 != 0, iVar10 = iVar10 + -1, bVar5) {
- iVar12 = check_if_file_exist("/tmp/wlanlog.txt");
- if (iVar12 == 0) {
- cprintf("wlanlog.txt is not exist, retry = %d\n",iVar10);
+ while (bVar4 = iVar9 != 0, iVar9 = iVar9 + -1, bVar4) {
+ iVar11 = check_if_file_exist("/tmp/wlanlog.txt");
+ if (iVar11 == 0) {
+ cprintf("wlanlog.txt is not exist, retry = %d\n",iVar9);
}
else {
- bVar5 = FUN_000d0aac("fb_wlanlog_done","1");
- if (bVar5) {
+ bVar4 = FUN_000d6abc("fb_wlanlog_done","1");
+ if (bVar4) {
cprintf("fb_wlanlog_done=1\n");
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ","/tmp/wlanlog.txt");
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ","/tmp/wlanlog.txt");
break;
}
cprintf("fb_wlanlog_done=0\n");
}
sleep(1);
}
- snprintf(acStack_32820,0x800,
+ snprintf(acStack_32620,0xb00,
"sed -r -i \'s/([0-9a-zA-Z]{1,2}:)([0-9a-zA-Z]{1,2}:)([0-9a-zA-Z]{1,2}:)([0-9a-zA-Z]{1,2}:)([0-9a-zA-Z]{1,2}:)([0-9a-zA-Z]{1,2})/\\1--:--:--:\\5\\6/\' %s"
,"/tmp/wlanlog.txt");
- system(acStack_32820);
- }
- bVar5 = FUN_000d0aac("fb_attach_wlanlog","1");
- if (bVar5) {
- piVar26 = aiStack_32d80;
+ system(acStack_32620);
+ }
+ bVar4 = FUN_000d6abc("fb_attach_wlanlog","1");
+ if (bVar4) {
+ piVar26 = &iStack_33380;
piVar3 = &DAT_14;
do {
- piVar25 = piVar3;
- piVar24 = piVar26;
- iVar10 = piVar25[1];
- *piVar24 = *piVar25;
- piVar24[1] = iVar10;
- piVar26 = piVar24 + 2;
- piVar3 = piVar25 + 2;
- } while (piVar25 + 2 != &DAT_15);
- uVar1 = *(undefined *)(piVar25 + 3);
- piVar24[2] = 0x58585858;
- *(undefined *)(piVar24 + 3) = uVar1;
+ piVar24 = piVar3;
+ piVar23 = piVar26;
+ iVar9 = piVar24[1];
+ *piVar23 = *piVar24;
+ piVar23[1] = iVar9;
+ piVar26 = piVar23 + 2;
+ piVar3 = piVar24 + 2;
+ } while (piVar24 + 2 != &DAT_15);
+ uVar1 = *(undefined *)(piVar24 + 3);
+ piVar23[2] = 0x58585858;
+ *(undefined *)(piVar23 + 3) = uVar1;
cprintf("---Collect wireless log 2...\n");
- iVar10 = check_if_file_exist("/tmp/crashlog.log");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ","/tmp/crashlog.log");
- }
- iVar10 = check_if_file_exist("/jffs/.sys/amas/wps_enr.log");
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ","/jffs/.sys/amas/wps_enr.log");
- }
- puVar8 = FUN_000d0a8c();
- pcVar15 = FUN_000d0a8c();
- sVar11 = strspn(pcVar15," ");
- strncpy((char *)aiStack_32ca0,puVar8 + sVar11,0x80);
- cStack_32c21 = 0;
- sVar16 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar16) = 0;
- pcVar15 = strchr(puVar8 + sVar11,0x20);
- while (cVar2 = (char)aiStack_32ca0[0], (char)aiStack_32ca0[0] != '\0') {
- snprintf(acStack_31820,0x100,"/jffs/.sys/amas/re_onboarding_%s.log",aiStack_32ca0);
- iVar10 = check_if_file_exist(acStack_31820);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- sprintf(acStack_32020 + sVar11,"-a %s ",acStack_31820);
- }
- if (pcVar15 == (char *)0x0) {
- pcVar15 = "";
+ iVar9 = check_if_file_exist("/tmp/crashlog.log");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ","/tmp/crashlog.log");
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/amas/wps_enr.log");
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ","/jffs/.sys/amas/wps_enr.log");
+ }
+ puVar7 = FUN_000d6a9c();
+ pcVar6 = FUN_000d6a9c();
+ sVar10 = strspn(pcVar6," ");
+ strncpy((char *)aiStack_332a0,puVar7 + sVar10,0x80);
+ uStack_33221 = 0;
+ sVar14 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar14) = 0;
+ pcVar6 = strchr(puVar7 + sVar10,0x20);
+ while ((char)aiStack_332a0[0] != '\0') {
+ snprintf(acStack_32e20,0x100,"/jffs/.sys/amas/re_onboarding_%s.log",aiStack_332a0);
+ iVar9 = check_if_file_exist(acStack_32e20);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ sprintf(acStack_31b20 + sVar10,"-a %s ",acStack_32e20);
+ }
+ if (pcVar6 == (char *)0x0) {
+ pcVar6 = "";
}
else {
- sVar11 = strspn(pcVar15," ");
- pcVar15 = pcVar15 + sVar11;
- }
- strncpy((char *)aiStack_32ca0,pcVar15,0x80);
- cStack_32c21 = 0;
- sVar11 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar11) = 0;
- pcVar15 = strchr(pcVar15,0x20);
- }
- FUN_000aef5c();
- iVar10 = -1;
+ sVar10 = strspn(pcVar6," ");
+ pcVar6 = pcVar6 + sVar10;
+ }
+ strncpy((char *)aiStack_332a0,pcVar6,0x80);
+ uStack_33221 = 0;
+ sVar10 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar10) = 0;
+ pcVar6 = strchr(pcVar6,0x20);
+ }
+ FUN_000b4c98();
sleep(1);
- puVar8 = FUN_000d0a8c();
- pcVar15 = FUN_000d0a8c();
- sVar11 = strspn(pcVar15," ");
- strncpy((char *)aiStack_32ca0,puVar8 + sVar11,0x80);
- cStack_32c21 = cVar2;
- sVar16 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar16) = 0;
- pcVar15 = strchr(puVar8 + sVar11,0x20);
- while (cVar2 = (char)aiStack_32ca0[0], (char)aiStack_32ca0[0] != '\0') {
- iVar10 = iVar10 + 1;
- iVar12 = wl_max_no_vifs(iVar10);
- for (iVar31 = 0; iVar31 < iVar12; iVar31 = iVar31 + 1) {
- iVar20 = iVar31;
- snprintf((char *)aiStack_32d80,0xd,"wl%d.%d",iVar10,iVar31);
- piVar26 = aiStack_32ca0;
- if (iVar31 == 0) {
+ puVar7 = FUN_000d6a9c();
+ pcVar6 = FUN_000d6a9c();
+ sVar10 = strspn(pcVar6," ");
+ strncpy((char *)aiStack_332a0,puVar7 + sVar10,0x80);
+ uStack_33221 = 0;
+ sVar14 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar14) = 0;
+ pcStack_334b0 = strchr(puVar7 + sVar10,0x20);
+ iVar9 = -1;
+ while ((char)aiStack_332a0[0] != '\0') {
+ iVar9 = iVar9 + 1;
+ iVar11 = wl_max_no_vifs(iVar9);
+ for (iVar29 = 0; iVar29 < iVar11; iVar29 = iVar29 + 1) {
+ iVar18 = iVar29;
+ snprintf((char *)&iStack_33380,0xd,"wl%d.%d",iVar9,iVar29);
+ piVar26 = aiStack_332a0;
+ if (iVar29 == 0) {
LAB_16:
- snprintf(acStack_31820,0x100,"/tmp/WlGetDriverCfg_%s.log",piVar26,iVar20);
- iVar20 = 3;
+ iVar17 = 3;
+ snprintf(acStack_32e20,0x100,"/tmp/WlGetDriverCfg_%s.log",piVar26,iVar18);
do {
- iVar19 = check_if_file_exist(acStack_31820);
- if (iVar19 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_31820);
+ iVar18 = check_if_file_exist(acStack_32e20);
+ if (iVar18 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_32e20);
break;
}
- iVar20 = iVar20 + -1;
- cprintf("%s is not exist, retry = %d\n",acStack_31820);
+ iVar17 = iVar17 + -1;
+ cprintf("%s is not exist, retry = %d\n",acStack_32e20,iVar17);
sleep(1);
- } while (iVar20 != 0);
+ } while (iVar17 != 0);
}
else {
- pcVar7 = strcpy((char *)&pcStack_31020,(char *)aiStack_32d80);
- strcat(pcVar7,"_bss_enabled");
- iVar19 = nvram_get_int();
- piVar26 = aiStack_32d80;
- if (iVar19 != 0) goto LAB_16;
+ strcpy((char *)&pcStack_31020,(char *)&iStack_33380);
+ strcat((char *)&pcStack_31020,"_bss_enabled");
+ iVar17 = nvram_get_int(&pcStack_31020);
+ piVar26 = &iStack_33380;
+ if (iVar17 != 0) goto LAB_16;
}
}
- if (pcVar15 == (char *)0x0) {
- pcVar15 = "";
+ if (pcStack_334b0 == (char *)0x0) {
+ pcStack_334b0 = "";
}
else {
- sVar11 = strspn(pcVar15," ");
- pcVar15 = pcVar15 + sVar11;
- }
- strncpy((char *)aiStack_32ca0,pcVar15,0x80);
- cStack_32c21 = '\0';
- sVar11 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar11) = 0;
- pcVar15 = strchr(pcVar15,0x20);
- }
- FUN_000aea18(1,2);
+ sVar10 = strspn(pcStack_334b0," ");
+ pcStack_334b0 = pcStack_334b0 + sVar10;
+ }
+ strncpy((char *)aiStack_332a0,pcStack_334b0,0x80);
+ uStack_33221 = 0;
+ sVar10 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar10) = 0;
+ pcStack_334b0 = strchr(pcStack_334b0,0x20);
+ }
+ FUN_000b4754(1,2);
sleep(8);
- puVar8 = FUN_000d0a8c();
- pcVar15 = FUN_000d0a8c();
- sVar11 = strspn(pcVar15," ");
- strncpy((char *)aiStack_32ca0,puVar8 + sVar11,0x80);
- cStack_32c21 = cVar2;
- sVar16 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar16) = 0;
- pcStack_32eb0 = strchr(puVar8 + sVar11,0x20);
- iVar10 = -1;
- while ((char)aiStack_32ca0[0] != '\0') {
- iVar10 = iVar10 + 1;
- iVar12 = wl_max_no_vifs(iVar10);
- for (iVar31 = 0; iVar31 < iVar12; iVar31 = iVar31 + 1) {
- iVar20 = iVar31;
- snprintf((char *)aiStack_32d80,0xd,"wl%d.%d",iVar10,iVar31);
- piVar26 = aiStack_32ca0;
- if (iVar31 == 0) {
+ puVar7 = FUN_000d6a9c();
+ pcVar6 = FUN_000d6a9c();
+ sVar10 = strspn(pcVar6," ");
+ strncpy((char *)aiStack_332a0,puVar7 + sVar10,0x80);
+ uStack_33221 = 0;
+ sVar14 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar14) = 0;
+ pcStack_334b0 = strchr(puVar7 + sVar10,0x20);
+ iVar9 = -1;
+ while ((char)aiStack_332a0[0] != '\0') {
+ iVar9 = iVar9 + 1;
+ iVar11 = wl_max_no_vifs(iVar9);
+ for (iVar29 = 0; iVar29 < iVar11; iVar29 = iVar29 + 1) {
+ iVar18 = iVar29;
+ snprintf((char *)&iStack_33380,0xd,"wl%d.%d",iVar9,iVar29);
+ piVar26 = aiStack_332a0;
+ if (iVar29 == 0) {
LAB_17:
- iVar19 = 0xf;
- snprintf(acStack_31820,0x100,"/tmp/WlGetDriverStats_%s.log",piVar26,iVar20);
- while (bVar5 = iVar19 != 0, iVar19 = iVar19 + -1, bVar5) {
- iVar20 = check_if_file_exist(acStack_31820);
- if (iVar20 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_31820);
+ iVar17 = 0xf;
+ snprintf(acStack_32e20,0x100,"/tmp/WlGetDriverStats_%s.log",piVar26,iVar18);
+ while (bVar4 = iVar17 != 0, iVar17 = iVar17 + -1, bVar4) {
+ iVar18 = check_if_file_exist(acStack_32e20);
+ if (iVar18 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_32e20);
break;
}
- cprintf("%s is not exist, retry = %d\n",acStack_31820,iVar19);
+ cprintf("%s is not exist, retry = %d\n",acStack_32e20,iVar17);
sleep(1);
}
}
else {
- pcVar15 = strcpy((char *)&pcStack_31020,(char *)aiStack_32d80);
- strcat(pcVar15,"_bss_enabled");
- iVar19 = nvram_get_int();
- piVar26 = aiStack_32d80;
- if (iVar19 != 0) goto LAB_17;
+ strcpy((char *)&pcStack_31020,(char *)&iStack_33380);
+ strcat((char *)&pcStack_31020,"_bss_enabled");
+ iVar17 = nvram_get_int(&pcStack_31020);
+ piVar26 = &iStack_33380;
+ if (iVar17 != 0) goto LAB_17;
}
}
- if (pcStack_32eb0 == (char *)0x0) {
- pcStack_32eb0 = "";
+ if (pcStack_334b0 == (char *)0x0) {
+ pcStack_334b0 = "";
}
else {
- sVar11 = strspn(pcStack_32eb0," ");
- pcStack_32eb0 = pcStack_32eb0 + sVar11;
- }
- strncpy((char *)aiStack_32ca0,pcStack_32eb0,0x80);
- cStack_32c21 = '\0';
- sVar11 = strcspn((char *)aiStack_32ca0," ");
- *(undefined *)((int)aiStack_32ca0 + sVar11) = 0;
- pcStack_32eb0 = strchr(pcStack_32eb0,0x20);
- }
- }
- bVar5 = FUN_000d0aac("fb_attach_wlanlog","1");
- if (bVar5) {
- iVar10 = check_if_dir_exist(&DAT_18);
- if (iVar10 != 0) {
+ sVar10 = strspn(pcStack_334b0," ");
+ pcStack_334b0 = pcStack_334b0 + sVar10;
+ }
+ strncpy((char *)aiStack_332a0,pcStack_334b0,0x80);
+ uStack_33221 = 0;
+ sVar10 = strcspn((char *)aiStack_332a0," ");
+ *(undefined *)((int)aiStack_332a0 + sVar10) = 0;
+ pcStack_334b0 = strchr(pcStack_334b0,0x20);
+ }
+ }
+ bVar4 = FUN_000d6abc("fb_attach_wlanlog","1");
+ if (bVar4) {
+ iVar9 = check_if_dir_exist(&DAT_18);
+ if (iVar9 != 0) {
cprintf("---Collect wireless log 3...\n");
- pcVar15 = "conn_diag_log";
- snprintf(acStack_32820,0x800,"cp -rf /tmp/%s %s/%s",".diag","/tmp/asusfbsvcs/duplicate_log",
+ pcVar6 = "conn_diag_log";
+ snprintf(acStack_32620,0xb00,"cp -rf /tmp/%s %s/%s",".diag","/tmp/asusfbsvcs/duplicate_log",
"conn_diag_log");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"tar -zcf %s/%s.tar.gz %s/%s","/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"tar -zcf %s/%s.tar.gz %s/%s","/tmp/asusfbsvcs/duplicate_log",
"conn_diag_log","/tmp/asusfbsvcs/duplicate_log","conn_diag_log");
- system(acStack_32820);
- snprintf(acStack_32820,0x800,"rm -rf %s/%s","/tmp/asusfbsvcs/duplicate_log","conn_diag_log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s.tar.gz","/tmp/asusfbsvcs/duplicate_log","conn_diag_log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar15);
- }
- }
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_ssd_dbg.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/.sys/amas/amas_ssd_dbg.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/.sys/amas/amas_ssd_dbg.log-1",acStack_32c20)
+ system(acStack_32620);
+ snprintf(acStack_32620,0xb00,"rm -rf %s/%s","/tmp/asusfbsvcs/duplicate_log","conn_diag_log");
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s.tar.gz","/tmp/asusfbsvcs/duplicate_log","conn_diag_log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar6);
+ }
+ }
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_ssd_dbg.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/amas/amas_ssd_dbg.log-1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/.sys/amas/amas_ssd_dbg.log-1",acStack_33220)
;
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist("/jffs/.sys/amas/amas_ssd_dbg.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/.sys/amas/amas_ssd_dbg.log",acStack_32c20);
- system(acStack_32820);
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- pcVar15 = "amas_wlcconnect.log";
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_wlcconnect.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- unlink(acStack_32c20);
- }
- iVar10 = check_if_file_exist("/jffs/amas_wlcconnect.log-1");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp -f %s %s","/jffs/amas_wlcconnect.log-1",acStack_32c20);
- system(acStack_32820);
- pcVar15 = pcVar40;
- }
- iVar10 = check_if_file_exist("/jffs/amas_wlcconnect.log");
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cat %s >> %s","/jffs/amas_wlcconnect.log",acStack_32c20);
- system(acStack_32820);
- pcVar15 = pcVar41;
- }
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20);
- }
- pcVar7 = "amas_backhaul_2G.log";
- snprintf(acStack_32c20,0x100,"/jffs/%s","amas_backhaul_2G.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/amas/amas_ssd_dbg.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/.sys/amas/amas_ssd_dbg.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar6 = "amas_wlcconnect.log";
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_wlcconnect.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/amas_wlcconnect.log-1");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/amas_wlcconnect.log-1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/amas_wlcconnect.log");
+ if (iVar9 != 0) {
+ pcVar6 = acStack_33220;
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/amas_wlcconnect.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ pcVar30 = "amas_backhaul_2G.log";
+ snprintf(acStack_33220,0x100,"/jffs/%s","amas_backhaul_2G.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"amas_backhaul_2G.log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_backhaul_2G.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- pcVar15 = pcVar7;
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- pcVar15 = pcVar7;
- }
- }
- pcVar7 = "cfg_abl.log";
- snprintf(acStack_32c20,0x100,"/tmp/asusdebuglog/%s","cfg_abl.log",pcVar15);
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- snprintf(acStack_32820,0x800,"cp %s %s/%s",acStack_32c20,"/tmp/asusfbsvcs/duplicate_log",
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_backhaul_2G.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ pcVar6 = pcVar30;
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ pcVar6 = pcVar30;
+ }
+ }
+ pcVar30 = "cfg_abl.log";
+ snprintf(acStack_33220,0x100,"/tmp/asusdebuglog/%s","cfg_abl.log",pcVar6);
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp %s %s/%s",acStack_33220,"/tmp/asusfbsvcs/duplicate_log",
"cfg_abl.log");
- system(acStack_32820);
- snprintf(acStack_32c20,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cfg_abl.log");
- iVar10 = check_if_file_exist(acStack_32c20);
- if (iVar10 != 0) {
- sVar11 = strlen(acStack_32020);
- snprintf(acStack_32020 + sVar11,0x800 - sVar11,"-a %s ",acStack_32c20,pcVar7);
- }
- }
- }
- pcVar15 = FUN_000d0a8c();
- if (*pcVar15 != '\0') {
- FUN_000d0a8c();
- iVar10 = d_exists();
- if (iVar10 != 0) {
- puVar8 = FUN_000d0a8c();
- snprintf(acStack_32820,0x800,"cd /tmp; rm -f log_wlstat.tgz; tar zcf log_wlstat.tgz %s",puVar8
+ system(acStack_32620);
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","cfg_abl.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220,pcVar30);
+ }
+ }
+ snprintf(acStack_33220,0x100,"%s/%s","/tmp/asusfbsvcs/duplicate_log","amas_bhctrl.log");
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ unlink(acStack_33220);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/amas/amas_bhctrl.log-1");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cp -f %s %s","/jffs/.sys/amas/amas_bhctrl.log-1",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist("/jffs/.sys/amas/amas_bhctrl.log");
+ if (iVar9 != 0) {
+ snprintf(acStack_32620,0xb00,"cat %s >> %s","/jffs/.sys/amas/amas_bhctrl.log",acStack_33220);
+ system(acStack_32620);
+ }
+ iVar9 = check_if_file_exist(acStack_33220);
+ if (iVar9 != 0) {
+ sVar10 = strlen(acStack_31b20);
+ snprintf(acStack_31b20 + sVar10,0xb00 - sVar10,"-a %s ",acStack_33220);
+ }
+ }
+ pcVar6 = FUN_000d6a9c();
+ if (*pcVar6 != '\0') {
+ FUN_000d6a9c();
+ iVar9 = d_exists();
+ if (iVar9 != 0) {
+ p