joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401e6590
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0xe8
call fcn.1402b4f90
sub rsp, rax
mov rax, qword [0x1403c37a8]
xor rax, rsp
mov qword [rsp + 0xd0], rax
mov r15, qword [rsp + 0x150]
mov rax, rcx
mov rbx, qword [rsp + 0x158]
mov rdi, r9
mov r12, qword [rsp + 0x178]
mov r13, rdx
mov qword [rsp + 0x40], rcx
xor esi, esi
mov rcx, qword [rsp + 0x168]
mov qword [rsp + 0x48], rcx
mov qword [rsp + 0x38], r8
mov r14d, dword [rcx]
mov rcx, rax
call fcn.1401c34b0
mov r8d, r14d
mov qword [rsp + 0x30], rax
xor edx, edx
mov rcx, r12
call fcn.14021ff40
test eax, eax
je 0x1401e67ff
mov ebp, dword [rsp + 0x160]
inc r14d
test ebp, ebp
je 0x1401e6644
mov rcx, qword [rsp + 0x30]
xor r9d, r9d
mov r8, rbx
mov rdx, r15
call fcn.140151110
test eax, eax
jle 0x1401e6802
mov r8, rbx
mov rdx, r15
mov rcx, rdi
call fcn.1402ba9f0
mov r8, rbx
lea rcx, [rsp + 0x90]
mov rdx, r15
call fcn.1402ba9f0
movsxd rax, ebx
sub rax, 1
js 0x1401e667e
add rax, rdi
add byte [rax], 1
jne 0x1401e667e
dec rax
cmp rax, rdi
jns 0x1401e6671
mov rbp, qword [rsp + 0x38]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x28], rsi
xor r9d, r9d
mov rdx, rbx
mov qword [rsp + 0x20], rbp
mov rcx, r15
call fcn.140177470
test eax, eax
je 0x1401e6802
mov qword [rsp + 0x28], rsi
lea r8, [rsp + 0x90]
xor r9d, r9d
mov qword [rsp + 0x20], rbp
mov rdx, rbx
mov rcx, rdi
call fcn.140177470
test eax, eax
je 0x1401e6802
mov r9d, esi
mov rdx, rsi
test ebx, ebx
jle 0x1401e67b1
cmp ebx, 0x40
jb 0x1401e677c
mov ecx, ebx
and ecx, 0x8000003f
jge 0x1401e66f8
dec ecx
or ecx, 0xffffffc0
inc ecx
mov eax, ebx
sub eax, ecx
movsxd rcx, eax
nop
movdqu xmm0, xmmword [rsp + rdx + 0x50]
add r9d, 0x40
movdqu xmm1, xmmword [rsp + rdx + 0x90]
pxor xmm1, xmm0
movdqu xmmword [rsp + rdx + 0x50], xmm1
movdqu xmm0, xmmword [rsp + rdx + 0x60]
movdqu xmm1, xmmword [rsp + rdx + 0xa0]
pxor xmm1, xmm0
movdqu xmmword [rsp + rdx + 0x60], xmm1
movdqu xmm0, xmmword [rsp + rdx + 0x70]
movdqu xmm1, xmmword [rsp + rdx + 0xb0]
pxor xmm1, xmm0
movdqu xmmword [rsp + rdx + 0x70], xmm1
movdqu xmm0, xmmword [rsp + rdx + 0x80]
movdqu xmm1, xmmword [rsp + rdx + 0xc0]
pxor xmm1, xmm0
movdqu xmmword [rsp + rdx + 0x80], xmm1
add rdx, 0x40
cmp rdx, rcx
jl 0x1401e6700
cmp r9d, ebx
jge 0x1401e67b1
lea rcx, [rsp + 0x50]
add rcx, rdx
lea r8, [rsp + 0x90]
lea rax, [rsp + 0x50]
mov edx, ebx
sub r8, rax
sub edx, r9d
nop dword [rax]
movzx eax, byte [r8 + rcx]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x1401e67a0
or byte [rsp + 0x50], 0x80
lea rcx, [rsp + 0x50]
or byte [rsp + rbx + 0x4f], 1
mov r8, r13
mov edx, ebx
call fcn.1401752c0
test rax, rax
je 0x1401e6802
mov rdx, qword [rsp + 0x40]
mov r8, r12
mov rcx, r13
call fcn.14021ffa0
test eax, eax
jg 0x1401e6830
jne 0x1401e6802
mov r8d, r14d
xor edx, edx
mov rcx, r12
mov ebp, 1
call fcn.14021ff40
test eax, eax
jne 0x1401e6622
inc r14d
mov rax, qword [rsp + 0x48]
mov dword [rax], r14d
mov eax, esi
mov rcx, qword [rsp + 0xd0]
xor rcx, rsp
call fcn.1402b4ff0
add rsp, 0xe8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov esi, 1
jmp 0x1401e6802
Function at 0x1401eb590
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x28
call fcn.1402b4f90
sub rsp, rax
mov rcx, qword [rcx + 0x28]
add rsp, 0x28
jmp fcn.140175ab0
Function at 0x1401edd50
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, 0x28
call fcn.1402b4f90
sub rsp, rax
mov r11, rcx
cmp dword [rsp + 0x50], r9d
jne 0x1401ede48
movzx r10d, byte [r8]
lea eax, [r10 - 0x6a]
cmp al, 1
ja 0x1401ede48
mov qword [rsp + 0x20], rbx
lea rdx, [r8 + 1]
cmp r10b, 0x6b
jne 0x1401ede00
lea ebx, [r9 - 3]
xor eax, eax
test ebx, ebx
jle 0x1401eddaa
movzx ecx, byte [rdx]
inc rdx
cmp cl, 0xba
je 0x1401eddaa
cmp cl, 0xbb
jne 0x1401edded
inc eax
cmp eax, ebx
jl 0x1401edd94
sub ebx, eax
test eax, eax
jne 0x1401ede04
call fcn.1401611c0
lea r8, str.RSA_padding_check_X931
mov edx, 0x56
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1401612e0
mov edx, 0x8a
xor r8d, r8d
lea ecx, [r8 + 4]
call fcn.140161420
mov rbx, qword [rsp + 0x20]
mov eax, 0xffffffff
add rsp, 0x28
ret
call fcn.1401611c0
lea r8, str.RSA_padding_check_X931
mov edx, 0x4e
jmp 0x1401eddc1
lea ebx, [r9 - 2]
movsxd rax, ebx
cmp byte [rax + rdx], 0xcc
je 0x1401ede31
call fcn.1401611c0
lea r8, str.RSA_padding_check_X931
mov edx, 0x5f
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1401612e0
mov edx, 0x8b
jmp 0x1401eddd2
mov r8d, ebx
mov rcx, r11
call fcn.1402ba9f0
mov eax, ebx
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.1401611c0
lea r8, str.RSA_padding_check_X931
mov edx, 0x43
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1401612e0
xor r8d, r8d
mov edx, 0x89
lea ecx, [r8 + 4]
call fcn.140161420
mov eax, 0xffffffff
add rsp, 0x28
ret
Function at 0x1401ee900
Capabilities:
Connect socket
Set socket configuration

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
mov eax, gethostbyname
call fcn.1402b4f90
sub rsp, rax
movsxd rbx, ecx
mov edi, r8d
mov dword [rsp + 0x40], 1
mov rbp, rdx
cmp ebx, 0xffffffff
jne 0x1401ee96b
call fcn.1401611c0
lea r8, str.BIO_connect
lea edx, [rbx + 0x57]
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
xor r8d, r8d
lea ecx, [rbx + 0x21]
mov edx, 0x87
call fcn.140161420
xor eax, eax
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
mov edx, edi
mov qword [rsp + 0x48], rsi
shr edx, 3
mov ecx, ebx
and edx, 1
call fcn.1401942d0
test eax, eax
je 0x1401eea1e
mov rsi, rbx
test dil, 4
je 0x1401eea35
lea r9, [rsp + 0x40]
mov dword [rsp + 0x20], 4
mov edx, 0xffff
mov r8d, 8
mov rcx, rbx
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x1401eea35
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, 0x60
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_setsockopt__
mov ecx, 2
mov edx, eax
call fcn.140161420
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, 0x62
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
xor r8d, r8d
mov edx, 0x89
mov ecx, 0x20
call fcn.140161420
xor eax, eax
mov rsi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
test dil, 0x10
je 0x1401eeac2
mov edx, 6
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0x40]
mov rcx, rsi
lea r8d, [rdx - 5]
call qword [sym.imp.WS2_32.dll_setsockopt]
test eax, eax
je 0x1401eeac2
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, 0x6a
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_setsockopt__
mov ecx, 2
mov edx, eax
call fcn.140161420
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, WSASetLastError
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
xor r8d, r8d
mov edx, 0x8a
jmp 0x1401eea14
mov rcx, rbp
call fcn.1401945b0
mov rcx, rbp
mov ebx, eax
call fcn.1401945a0
mov rdx, rax
mov r8d, ebx
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x1401eeb56
mov ecx, eax
call fcn.1401ee860
test eax, eax
jne 0x1401eea1e
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, 0xb2
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_connect__
mov ecx, 2
mov edx, eax
call fcn.140161420
call fcn.1401611c0
lea r8, str.BIO_connect
mov edx, 0xb4
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1401612e0
xor r8d, r8d
lea edx, [r8 + 0x67]
jmp 0x1401eea14
mov eax, 1
jmp 0x1401eea20
Function at 0x140206750
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push r13
push r14
mov eax, 0x40
call fcn.1402b4f90
sub rsp, rax
mov rsi, qword [rcx + 0x78]
mov rbx, r8
mov r8d, dword [rsi + 0x70]
lea r13, [rsi + 0x70]
mov qword [rsp + 0x38], r13
mov rbp, r9
mov r14, rdx
test r8d, r8d
je 0x1402067d6
test r9, r9
je 0x1402067b2
nop dword [rax]
cmp r8d, 0x40
jae 0x1402067b2
mov eax, r8d
inc r8d
movzx ecx, byte [rax + rsi + 0x30]
xor cl, byte [rbx]
inc rbx
mov byte [r14], cl
inc r14
sub rbp, 1
jne 0x140206790
mov dword [r13], r8d
test rbp, rbp
je 0x140206909
cmp r8d, 0x40
jne 0x1402067d6
mov dword [r13], 0
add dword [rsi + 0x20], 1
jne 0x1402067d6
inc dword [rsi + 0x24]
mov ecx, dword [rsi + 0x20]
lea rax, [rsi + 0x20]
mov qword [rsp + 0x80], r12
mov r12d, ebp
and r12d, 0x3f
mov qword [rsp + 0x88], r15
mov r15d, r12d
sub rbp, r15
mov dword [rsp + 0x30], r12d
cmp rbp, 0x40
jb 0x140206896
mov qword [rsp + 0x78], rdi
lea r13, [rsi + 0x20]
mov r12d, 0x10000000
mov r15d, ecx
nop dword [rax + rax]
mov rdx, rbp
mov qword [rsp + 0x20], r13
shr rdx, 6
mov r9, rsi
cmp rdx, r12
cmova rdx, r12
mov rdi, rdx
lea eax, [rdx + r15]
xor r15d, r15d
mov ecx, eax
cmp rcx, rdx
cmovae r15d, eax
sub rdi, rcx
cmp rcx, rdx
mov rcx, r14
cmovae rdi, rdx
mov rdx, rbx
shl rdi, 6
mov r8, rdi
call fcn.14008a600
sub rbp, rdi
mov dword [r13], r15d
add rbx, rdi
add r14, rdi
test r15d, r15d
jne 0x14020687a
inc dword [rsi + 0x24]
cmp rbp, 0x40
jae 0x140206820
mov r12d, dword [rsp + 0x30]
lea rax, [rsi + 0x20]
mov r13, qword [rsp + 0x38]
mov r15d, r12d
mov rdi, qword [rsp + 0x78]
test r12d, r12d
je 0x1402068f9
lea rcx, [rsi + 0x30]
mov qword [rsp + 0x20], rax
xorps xmm0, xmm0
mov r9, rsi
movups xmmword [rcx], xmm0
mov r8d, 0x40
mov rdx, rcx
movups xmmword [rcx + 0x10], xmm0
movups xmmword [rcx + 0x20], xmm0
movups xmmword [rcx + 0x30], xmm0
call fcn.14008a600
test r12d, r12d
je 0x1402068f5
sub rsi, rbx
sub r14, rbx
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rsi + rbx + 0x30]
xor al, byte [rbx]
mov byte [r14 + rbx], al
lea rbx, [rbx + 1]
sub r15, 1
jne 0x1402068e0
mov dword [r13], r12d
mov r12, qword [rsp + 0x80]
mov r15, qword [rsp + 0x88]
mov eax, 1
add rsp, 0x40
pop r14
pop r13
pop rsi
pop rbp
pop rbx
ret
Function at 0x140208850
Capabilities:
Hash data using sha1

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
mov eax, reloc.WS2_32.dll_WSASetLastError
call fcn.1402b4f90
sub rsp, rax
mov rax, qword [0x1403c37a8]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, r9
mov rbx, rcx
cmp edx, 0x1d
je 0x140208887
mov eax, 0xfffffffe
jmp 0x1402089a7
test rbx, rbx
je 0x1402089a5
cmp r8d, 0x30
jne 0x1402089a5
mov r8d, gethostbyname
mov rdx, rdi
call fcn.140208730
test eax, eax
jle 0x1402089a5
movdqa xmm0, xmmword [str.6666666666666666jjjjjjjjjjjjjjjj_]
lea rdx, [rsp + 0x20]
mov r8d, 0x28
movq qword [rsp + 0x40], xmm0
mov rcx, rbx
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
call fcn.140208730
test eax, eax
je 0x1402089a5
mov rdx, rbx
lea rcx, [rsp + 0x48]
call fcn.140208530
test eax, eax
je 0x1402089a5
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbx + 0x14], xmm0
mov rdx, rdi
mov rcx, rbx
movups xmmword [rbx + 0x24], xmm0
lea r8d, [rax + 0x30]
movups xmmword [rbx + 0x34], xmm0
movups xmmword [rbx + 0x44], xmm0
mov qword [rbx + 0x54], rax
mov dword [rbx + 0x5c], eax
mov dword [rbx], 0x67452301
mov dword [rbx + 4], 0xefcdab89
mov dword [rbx + 8], 0x98badcfe
mov dword [rbx + 0xc], 0x10325476
mov dword [rbx + 0x10], 0xc3d2e1f0
call fcn.140208730
test eax, eax
jle 0x1402089a5
movdqa xmm0, xmmword [str.crypto_rsa_rsa_meth.c]
lea rdx, [rsp + 0x20]
mov r8d, 0x28
movq qword [rsp + 0x40], xmm0
mov rcx, rbx
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm0
call fcn.140208730
test eax, eax
je 0x1402089a5
mov r8d, setsockopt
lea rdx, [rsp + 0x48]
mov rcx, rbx
call fcn.140208730
test eax, eax
je 0x1402089a5
mov edx, setsockopt
lea rcx, [rsp + 0x48]
call fcn.1400222c0
mov eax, 1
jmp 0x1402089a7
xor eax, eax
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1402b4ff0
mov rbx, qword [rsp + 0x88]
add rsp, 0x70
pop rdi
ret
Function at 0x1402287b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
xor r10d, r10d
movsxd rbx, r8d
mov r11, rdx
mov rdi, rcx
test r8d, r8d
jle 0x1402287ef
mov r9, rdx
mov rdx, rcx
sub rdx, r9
movzx eax, byte [r9]
cmp byte [rdx + r9], al
jne 0x1402287ef
inc r9
inc r10d
mov rax, r9
sub rax, r11
cmp rax, rbx
jl 0x1402287d4
lea edx, [r8 - 1]
movsxd rax, edx
test edx, edx
js 0x14022881a
mov r8, rdi
lea rcx, [rax + r11]
sub r8, r11
cmp byte [rcx + r8], 0
jne 0x14022881a
cmp byte [rcx], 0xff
jne 0x14022881a
dec edx
dec rcx
cmp rcx, r11
jns 0x140228804
cmp r10d, edx
jl case.0x140228873.2
jle 0x140228838
lea eax, [r10*8]
mov rbx, qword [rsp + 8]
mov rdi, qword [rsp + 0x10]
ret
movsxd rax, r10d
movzx r8d, byte [rax + r11]
movzx r9d, byte [rax + rdi]
movzx edx, r8b
xor dl, r9b
movzx eax, dl
dec eax
cmp eax, 0x7e
ja case.0x140228873.2
lea r11, [0x140000000]
cdqe
movzx eax, byte [r11 + rax + 0x2288e8]
mov ecx, dword [r11 + rax*4 + 0x2288c8]
add rcx, r11
jmp rcx
mov eax, 7
jmp 0x1402288a4
mov eax, 6
jmp 0x1402288a4
mov eax, 5
jmp 0x1402288a4
mov eax, 4
jmp 0x1402288a4
mov eax, 3
jmp 0x1402288a4
mov eax, 2
jmp 0x1402288a4
mov eax, 1
test dl, r9b
jne case.0x140228873.2
and r8b, dl
lea eax, [rax + r10*8]
cmp r8b, dl
je 0x1402288ba
mov eax, 0xffffffff
mov rbx, qword [rsp + 8]
mov rdi, qword [rsp + 0x10]
ret
Function at 0x140245590
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r14
mov eax, reloc.WS2_32.dll_getservbyport
call fcn.1402b4f90
sub rsp, rax
mov rdi, qword [rsp + 0x88]
mov rsi, rdx
mov qword [rsp + 0x68], rbp
mov r14, r9
mov rbp, qword [rsp + 0x80]
mov rbx, rcx
mov qword [rsp + 0x30], r12
mov r10, rcx
shl rsi, 5
mov r12, rdx
mov qword [rsp + 0x28], r13
mov r13, r8
test rsi, rsi
je 0x140245628
mov r8, rsi
nop dword [rax]
movzx eax, byte [r10]
lea r10, [r10 + 4]
mov dword [rdi], eax
movzx ecx, byte [r10 - 3]
shl ecx, 8
or ecx, eax
mov dword [rdi], ecx
movzx edx, byte [r10 - 2]
shl edx, 0x10
or edx, ecx
mov dword [rdi], edx
movzx eax, byte [r10 - 1]
shl eax, 0x18
or eax, edx
mov dword [rdi], eax
add rdi, 4
sub r8, 1
jne 0x1402455f0
mov qword [rsp + 0x20], r15
mov r15, r12
shl r15, 7
cmp r13, 1
jbe 0x14024565f
dec r13
nop dword [rax]
mov rdx, rdi
mov r8, r12
sub rdx, r15
mov rcx, rdi
call fcn.1402450f0
add rdi, r15
sub r13, 1
jne 0x140245640
mov r13, qword [rsp + 0x70]
mov rdx, r13
mov r8, r12
shl rdx, 7
mov rcx, r14
add rdx, 0xffffffffffffff80
imul rdx, r12
add rdx, qword [rsp + 0x88]
call fcn.1402450f0
xor edi, edi
test r13, r13
je 0x1402457a6
lea rbx, [r15 + r14]
mov r15, r13
mov eax, dword [rbx - 0x40]
xor edx, edx
div r13
mov r8, rdi
mov eax, edx
imul rax, r12
shl rax, 7
add rax, qword [rsp + 0x88]
test rsi, rsi
je 0x140245789
cmp rsi, 0x10
jb 0x140245762
lea rcx, [rsi - 1]
lea rcx, [rax + rcx*4]
lea rdx, [rbp - 4]
lea rdx, [rdx + rsi*4]
cmp rbp, rcx
ja 0x1402456e1
cmp rdx, rax
jae 0x140245762
lea rcx, [r14 - 4]
lea rcx, [rcx + rsi*4]
cmp rbp, rcx
ja 0x1402456f3
cmp rdx, r14
jae 0x140245762
mov rcx, r14
lea rdx, [rbp + 0x10]
sub rcx, rbp
nop dword [rax]
movdqu xmm0, xmmword [rax]
add r8, 0x10
lea rax, [rax + 0x40]
movdqu xmm1, xmmword [rcx + rdx - 0x10]
lea rdx, [rdx + 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x30]
movdqu xmmword [rdx - 0x50], xmm1
movdqu xmm1, xmmword [rdx + rcx - 0x40]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmmword [rdx - 0x40], xmm1
movdqu xmm1, xmmword [rcx + rdx - 0x30]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x10]
movdqu xmmword [rdx - 0x30], xmm1
movdqu xmm1, xmmword [rcx + rdx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rdx - 0x20], xmm1
cmp r8, rsi
jb 0x140245700
jmp 0x140245789
mov r9, r14
mov rdx, rbp
sub r9, rbp
nop dword [rax + rax]
mov ecx, dword [r9 + rdx]
lea rdx, [rdx + 4]
xor ecx, dword [rax]
lea rax, [rax + 4]
inc r8
mov dword [rdx - 4], ecx
cmp r8, rsi
jb 0x140245770
mov r8, r12
mov rdx, rbp
mov rcx, r14
call fcn.1402450f0
sub r15, 1
jne 0x140245693
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x20]
mov r13, qword [rsp + 0x28]
mov r12, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x68]
test rsi, rsi
je 0x1402457e8
nop
mov ecx, dword [r14 + rdi*4]
mov eax, ecx
mov byte [rbx], cl
lea rbx, [rbx + 4]
shr eax, 8
inc rdi
mov byte [rbx - 3], al
mov eax, ecx
shr eax, 0x10
shr ecx, 0x18
mov byte [rbx - 2], al
mov byte [rbx - 1], cl
cmp rdi, rsi
jb 0x1402457c0
add rsp, 0x38
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x1402464d0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r12
push r15
mov eax, 0x50
call fcn.1402b4f90
sub rsp, rax
mov r12, rdx
test rdx, rdx
mov rdx, r8
mov r15, r9
mov rbp, r8
je 0x1402466d4
mov qword [rsp + 0x70], rbx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rsi
mov rsi, qword [rsp + 0xa0]
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x48], r13
mov r13, qword [rsp + 0x98]
mov qword [rsp + 0x40], r14
lea r14, [r9 + 1]
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rbx
shr r14, 1
mov r8, r14
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], r13
call fcn.1402462c0
test eax, eax
je 0x1402465b8
mov r8d, 0x19e
lea rdx, str.providersimplementationskdfs_tls1_prf.c
mov rcx, rbx
call fcn.14015ad70
mov rdi, rax
test rax, rax
je 0x1402465b8
mov r9, qword [rsp + 0x90]
sub rbp, r14
mov qword [rsp + 0x30], rbx
mov r8, r14
mov qword [rsp + 0x28], rax
mov rcx, r12
mov qword [rsp + 0x20], r13
lea rdx, [r15 + rbp]
call fcn.1402462c0
test eax, eax
jne 0x1402465e0
mov r9d, 0x1a3
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.14015aee0
xor eax, eax
mov r13, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
add rsp, 0x50
pop r15
pop r12
pop rbp
ret
xor ecx, ecx
test rbx, rbx
je 0x1402466b2
cmp rbx, 0x40
jb 0x140246691
lea rdx, [rsi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rdi
cmp rsi, rax
ja 0x140246611
cmp rdx, rdi
jae 0x140246691
mov r8, rbx
and r8, 0xffffffffffffffc0
mov rdx, rdi
lea rax, [rsi + 0x10]
sub rdx, rsi
nop dword [rax]
nop word [rax + rax]
movdqu xmm0, xmmword [rax - 0x10]
add rcx, 0x40
movdqu xmm1, xmmword [rdx + rax - 0x10]
movdqu xmm2, xmmword [rdx + rax]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x50], xmm1
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmm1, xmmword [rdx + rax - 0x30]
pxor xmm2, xmm0
movdqu xmmword [rax - 0x40], xmm2
movdqu xmm0, xmmword [rax - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x30], xmm1
movdqu xmm0, xmmword [rax - 0x20]
movdqu xmm1, xmmword [rdx + rax - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rax - 0x20], xmm1
cmp rcx, r8
jb 0x140246630
cmp rcx, rbx
jae 0x1402466b2
mov r8, rdi
lea rax, [rcx + rsi]
sub r8, rsi
mov rdx, rbx
sub rdx, rcx
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x1402466a1
mov r9d, 0x1a8
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rdi
call fcn.14015aee0
mov eax, 1
jmp 0x1402465ba
mov rax, qword [rsp + 0xa8]
mov r8, r15
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call fcn.1402462c0
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x50
pop r15
pop r12
pop rbp
ret
Function at 0x14024f750
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
mov eax, gethostbyname
call fcn.1402b4f90
sub rsp, rax
movsxd rbx, r9d
xor edi, edi
mov qword [rsp + 0x40], rbp
mov r10, rdx
mov dword [rsp + 0x58], reloc.WS2_32.dll_recv
mov rbp, rcx
mov r9d, edi
test ebx, ebx
jle 0x14024f835
cmp ebx, 0x40
jb 0x14024f835
lea rax, [rbx - 1]
lea rcx, [rax + rdx]
add rax, r8
cmp rdx, rax
ja 0x14024f7a8
cmp rcx, r8
jae 0x14024f835
mov qword [rsp + 0x48], rsi
lea rcx, [rdx + 0x10]
mov r11, rbx
mov rdx, r8
and r11, 0xffffffffffffffc0
sub rdx, r10
mov rsi, 0xfffffffffffffff0
sub rsi, r10
nop dword [rax + rax]
movdqu xmm0, xmmword [rcx - 0x10]
add r9d, 0x40
movdqu xmm1, xmmword [rdx + rcx - 0x10]
movdqu xmm2, xmmword [rdx + rcx]
lea rcx, [rcx + 0x40]
pxor xmm1, xmm0
lea rax, [rsi + rcx]
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [rdx + rcx - 0x30]
pxor xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm2
movdqu xmm0, xmmword [rcx - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm1, xmmword [rdx + rcx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
cmp rax, r11
jl 0x14024f7d0
mov rsi, qword [rsp + 0x48]
movsxd rcx, r9d
mov rdx, rbx
cmp rcx, rbx
jge 0x14024f861
sub r8, r10
lea rax, [rcx + r10]
sub rdx, rcx
nop word [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x14024f850
mov rcx, qword [rbp + 0x10]
lea r8, [rsp + 0x58]
mov r9, r10
mov dword [rsp + 0x20], ebx
mov rdx, r10
call fcn.14014b560
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x14024f897
cmp dword [rsp + 0x58], ebx
sete dil
mov eax, edi
mov rbx, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret
mov rbx, qword [rsp + 0x50]
xor eax, eax
add rsp, 0x30
pop rdi
ret

Function at 0x14024fa40
Capabilities:
Encode data using xor

Disassembly:
mov r10, rcx
test rdx, rdx
je 0x14024fac8
test r8, r8
je 0x14024fac8
mov r9, qword [rcx + 0x28]
cmp r8, r9
cmovb r9, r8
test r9, r9
je 0x14024fa82
add rcx, 0x34
mov r11, rdx
sub r11, r10
nop dword [rax + rax]
movzx eax, byte [r11 + rcx - 0x34]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r9, 1
jne 0x14024fa70
mov rax, qword [r10 + 0x28]
cmp r8, rax
jbe 0x14024fac8
sub r8, rax
cmp r8, 0x10
jbe 0x14024fa9c
mov r8d, reloc.WS2_32.dll_recv
jmp 0x14024faa1
test r8, r8
je 0x14024fac8
xor ecx, ecx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r10 + 0x28]
add rax, rcx
movzx eax, byte [rax + rdx]
xor byte [r10 + rcx + 0x54], al
inc rcx
cmp rcx, r8
jb 0x14024fab0
ret
Function at 0x14027c960
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x60
call fcn.1402b4f90
sub rsp, rax
mov rax, qword [0x1403c37a8]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0xd0]
mov rdi, rcx
mov rax, qword [rsp + 0xc0]
mov r13, r9
mov rcx, qword [rsp + 0xc8]
mov esi, r8d
mov r12, qword [rsp + 0xd8]
mov r15, rdx
movzx r9d, byte [r14]
xor ebp, ebp
movzx edx, byte [r14 + 3]
movzx r8d, byte [r14 + 4]
mov ebx, dword [r12]
mov qword [rsp + 0x28], rax
movzx eax, byte [r14 + 1]
shl eax, 8
or r9d, eax
mov qword [rsp + 0x30], rcx
movzx eax, byte [r14 + 2]
movzx ecx, byte [r14 + 7]
shl eax, 0x10
or r9d, eax
shl edx, 0x18
movzx eax, byte [r14 + 5]
or r9d, edx
shl eax, 8
or r8d, eax
shl ecx, 8
movzx eax, byte [r14 + 6]
or ecx, eax
mov qword [rsp + 0x38], r14
shl ecx, 0x10
mov eax, r9d
shr eax, 8
or r8d, ecx
mov byte [rsp + 0x49], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x4a], al
mov eax, r8d
shr eax, 8
mov byte [rsp + 0x4d], al
mov eax, r8d
shr eax, 0x10
mov byte [rsp + 0x4e], al
mov eax, r8d
shr eax, 0x18
mov qword [rsp + 0x40], r12
mov dword [rsp + 0x20], r9d
mov dword [rsp + 0x24], r8d
mov byte [rsp + 0x48], r9b
mov byte [rsp + 0x4c], r8b
mov byte [rsp + 0x4f], al
bswap edx
mov byte [rsp + 0x4b], dl
test esi, esi
je 0x14027cb56
mov r12, qword [rsp + 0x28]
sub r15, rdi
mov r14, qword [rsp + 0x30]
nop dword [rax]
dec esi
test ebx, ebx
jne 0x14027caeb
mov r9, r14
lea rcx, [rsp + 0x20]
mov r8, r12
mov rdx, r13
call fcn.14027a410
mov r9d, dword [rsp + 0x20]
mov eax, r9d
mov r8d, dword [rsp + 0x24]
shr eax, 8
mov byte [rsp + 0x49], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x4a], al
mov eax, r9d
shr eax, 0x18
mov byte [rsp + 0x4b], al
mov eax, r8d
shr eax, 8
mov byte [rsp + 0x4d], al
mov eax, r8d
shr eax, 0x10
mov byte [rsp + 0x4e], al
mov eax, r8d
shr eax, 0x18
mov byte [rsp + 0x4f], al
inc ebp
mov byte [rsp + 0x48], r9b
mov byte [rsp + 0x4c], r8b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x48]
xor cl, byte [rdi]
mov byte [r15 + rdi], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x14027ca80
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
test ebp, ebp
je 0x14027cb56
mov eax, r9d
mov byte [r14], r9b
shr eax, 8
mov byte [r14 + 1], al
mov eax, r9d
shr eax, 0x10
mov byte [r14 + 2], al
mov eax, r8d
shr eax, 8
mov byte [r14 + 5], al
mov eax, r8d
shr eax, 0x10
shr r9d, 0x18
mov byte [r14 + 4], r8b
shr r8d, 0x18
mov byte [r14 + 7], r8b
mov byte [r14 + 3], r9b
mov byte [r14 + 6], al
mov dword [r12], ebx
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1402b4ff0
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret