Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.51
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
local /
go /
src /
internal /
bytealg /
[ HOME SHELL ]
Name
Size
Permission
Action
bytealg.go
664
B
-rw-r--r--
compare_386.s
2.65
KB
-rw-r--r--
compare_amd64.s
4.13
KB
-rw-r--r--
compare_arm.s
1.75
KB
-rw-r--r--
compare_arm64.s
2.15
KB
-rw-r--r--
compare_generic.go
994
B
-rw-r--r--
compare_mips64x.s
1.66
KB
-rw-r--r--
compare_mipsx.s
1.39
KB
-rw-r--r--
compare_native.go
590
B
-rw-r--r--
compare_ppc64x.s
6.56
KB
-rw-r--r--
compare_s390x.s
1.19
KB
-rw-r--r--
compare_wasm.s
1.44
KB
-rw-r--r--
count_amd64.s
3.96
KB
-rw-r--r--
count_arm.s
917
B
-rw-r--r--
count_arm64.s
2.02
KB
-rw-r--r--
count_generic.go
460
B
-rw-r--r--
count_native.go
616
B
-rw-r--r--
count_ppc64x.s
2.71
KB
-rw-r--r--
count_s390x.s
5.38
KB
-rw-r--r--
equal_386.s
2.16
KB
-rw-r--r--
equal_amd64.s
2.52
KB
-rw-r--r--
equal_arm.s
1.81
KB
-rw-r--r--
equal_arm64.s
2.64
KB
-rw-r--r--
equal_generic.go
628
B
-rw-r--r--
equal_mips64x.s
1.02
KB
-rw-r--r--
equal_mipsx.s
1.07
KB
-rw-r--r--
equal_native.go
789
B
-rw-r--r--
equal_ppc64x.s
2.33
KB
-rw-r--r--
equal_riscv64.s
963
B
-rw-r--r--
equal_s390x.s
1.77
KB
-rw-r--r--
equal_wasm.s
1.1
KB
-rw-r--r--
index_amd64.go
617
B
-rw-r--r--
index_amd64.s
5
KB
-rw-r--r--
index_arm64.go
706
B
-rw-r--r--
index_arm64.s
3.91
KB
-rw-r--r--
index_generic.go
872
B
-rw-r--r--
index_native.go
559
B
-rw-r--r--
index_s390x.go
1011
B
-rw-r--r--
index_s390x.s
5.5
KB
-rw-r--r--
indexbyte_386.s
647
B
-rw-r--r--
indexbyte_amd64.s
3.07
KB
-rw-r--r--
indexbyte_arm.s
951
B
-rw-r--r--
indexbyte_arm64.s
3.33
KB
-rw-r--r--
indexbyte_generic.go
516
B
-rw-r--r--
indexbyte_mips64x.s
981
B
-rw-r--r--
indexbyte_mipsx.s
1008
B
-rw-r--r--
indexbyte_native.go
378
B
-rw-r--r--
indexbyte_ppc64x.s
7.78
KB
-rw-r--r--
indexbyte_riscv64.s
934
B
-rw-r--r--
indexbyte_s390x.s
2.49
KB
-rw-r--r--
indexbyte_wasm.s
2.54
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : index_arm64.s
// Copyright 2018 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. #include "go_asm.h" #include "textflag.h" TEXT ·Index(SB),NOSPLIT,$0-56 MOVD a_base+0(FP), R0 MOVD a_len+8(FP), R1 MOVD b_base+24(FP), R2 MOVD b_len+32(FP), R3 MOVD $ret+48(FP), R9 B indexbody<>(SB) TEXT ·IndexString(SB),NOSPLIT,$0-40 MOVD a_base+0(FP), R0 MOVD a_len+8(FP), R1 MOVD b_base+16(FP), R2 MOVD b_len+24(FP), R3 MOVD $ret+32(FP), R9 B indexbody<>(SB) // input: // R0: haystack // R1: length of haystack // R2: needle // R3: length of needle (2 <= len <= 32) // R9: address to put result TEXT indexbody<>(SB),NOSPLIT,$0-56 // main idea is to load 'sep' into separate register(s) // to avoid repeatedly re-load it again and again // for sebsequent substring comparisons SUB R3, R1, R4 // R4 contains the start of last substring for comparison ADD R0, R4, R4 ADD $1, R0, R8 CMP $8, R3 BHI greater_8 TBZ $3, R3, len_2_7 len_8: // R5 contains 8-byte of sep MOVD (R2), R5 loop_8: // R6 contains substring for comparison CMP R4, R0 BHI not_found MOVD.P 1(R0), R6 CMP R5, R6 BNE loop_8 B found len_2_7: TBZ $2, R3, len_2_3 TBZ $1, R3, len_4_5 TBZ $0, R3, len_6 len_7: // R5 and R6 contain 7-byte of sep MOVWU (R2), R5 // 1-byte overlap with R5 MOVWU 3(R2), R6 loop_7: CMP R4, R0 BHI not_found MOVWU.P 1(R0), R3 CMP R5, R3 BNE loop_7 MOVWU 2(R0), R3 CMP R6, R3 BNE loop_7 B found len_6: // R5 and R6 contain 6-byte of sep MOVWU (R2), R5 MOVHU 4(R2), R6 loop_6: CMP R4, R0 BHI not_found MOVWU.P 1(R0), R3 CMP R5, R3 BNE loop_6 MOVHU 3(R0), R3 CMP R6, R3 BNE loop_6 B found len_4_5: TBZ $0, R3, len_4 len_5: // R5 and R7 contain 5-byte of sep MOVWU (R2), R5 MOVBU 4(R2), R7 loop_5: CMP R4, R0 BHI not_found MOVWU.P 1(R0), R3 CMP R5, R3 BNE loop_5 MOVBU 3(R0), R3 CMP R7, R3 BNE loop_5 B found len_4: // R5 contains 4-byte of sep MOVWU (R2), R5 loop_4: CMP R4, R0 BHI not_found MOVWU.P 1(R0), R6 CMP R5, R6 BNE loop_4 B found len_2_3: TBZ $0, R3, len_2 len_3: // R6 and R7 contain 3-byte of sep MOVHU (R2), R6 MOVBU 2(R2), R7 loop_3: CMP R4, R0 BHI not_found MOVHU.P 1(R0), R3 CMP R6, R3 BNE loop_3 MOVBU 1(R0), R3 CMP R7, R3 BNE loop_3 B found len_2: // R5 contains 2-byte of sep MOVHU (R2), R5 loop_2: CMP R4, R0 BHI not_found MOVHU.P 1(R0), R6 CMP R5, R6 BNE loop_2 found: SUB R8, R0, R0 MOVD R0, (R9) RET not_found: MOVD $-1, R0 MOVD R0, (R9) RET greater_8: SUB $9, R3, R11 // len(sep) - 9, offset of R0 for last 8 bytes CMP $16, R3 BHI greater_16 len_9_16: MOVD.P 8(R2), R5 // R5 contains the first 8-byte of sep SUB $16, R3, R7 // len(sep) - 16, offset of R2 for last 8 bytes MOVD (R2)(R7), R6 // R6 contains the last 8-byte of sep loop_9_16: // search the first 8 bytes first CMP R4, R0 BHI not_found MOVD.P 1(R0), R7 CMP R5, R7 BNE loop_9_16 MOVD (R0)(R11), R7 CMP R6, R7 // compare the last 8 bytes BNE loop_9_16 B found greater_16: CMP $24, R3 BHI len_25_32 len_17_24: LDP.P 16(R2), (R5, R6) // R5 and R6 contain the first 16-byte of sep SUB $24, R3, R10 // len(sep) - 24 MOVD (R2)(R10), R7 // R7 contains the last 8-byte of sep loop_17_24: // search the first 16 bytes first CMP R4, R0 BHI not_found MOVD.P 1(R0), R10 CMP R5, R10 BNE loop_17_24 MOVD 7(R0), R10 CMP R6, R10 BNE loop_17_24 MOVD (R0)(R11), R10 CMP R7, R10 // compare the last 8 bytes BNE loop_17_24 B found len_25_32: LDP.P 16(R2), (R5, R6) MOVD.P 8(R2), R7 // R5, R6 and R7 contain the first 24-byte of sep SUB $32, R3, R12 // len(sep) - 32 MOVD (R2)(R12), R10 // R10 contains the last 8-byte of sep loop_25_32: // search the first 24 bytes first CMP R4, R0 BHI not_found MOVD.P 1(R0), R12 CMP R5, R12 BNE loop_25_32 MOVD 7(R0), R12 CMP R6, R12 BNE loop_25_32 MOVD 15(R0), R12 CMP R7, R12 BNE loop_25_32 MOVD (R0)(R11), R12 CMP R10, R12 // compare the last 8 bytes BNE loop_25_32 B found
Close