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

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
mov eax, gethostbyaddr
call fcn.140295cc0
sub rsp, rax
xor edi, edi
mov qword [rsp + 0x40], rbp
movsxd rbx, r9d
mov r11, r8
mov dword [rsp + 0x58], reloc.WS2_32.dll_recv
mov rbp, rcx
mov r10d, edi
test r9d, r9d
jle 0x1401edf44
cmp ebx, 8
jb 0x1401edf44
lea rax, [rbx - 1]
lea rcx, [rax + rdx]
add rax, r8
cmp rdx, rax
ja 0x1401ede79
cmp rcx, r8
jae 0x1401edf44
sub r8, rdx
cmp ebx, 0x40
jb 0x1401edf0e
mov eax, ebx
mov qword [rsp + 0x48], rsi
and eax, 0xffffffc0
mov r9, 0xfffffffffffffff0
movsxd rsi, eax
sub r9, rdx
lea rcx, [rdx + 0x10]
movdqu xmm0, xmmword [rcx - 0x10]
add r10d, 0x40
movdqu xmm1, xmmword [rcx + r8 - 0x10]
lea rcx, [rcx + 0x40]
lea rax, [r9 + rcx]
xorps xmm1, xmm0
movdqu xmm0, xmmword [rcx + r8 - 0x40]
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm2, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [rcx + r8 - 0x30]
xorps xmm2, xmm0
movdqu xmmword [rcx - 0x40], xmm2
movdqu xmm0, xmmword [rcx - 0x30]
xorps xmm1, xmm0
movdqu xmmword [rcx - 0x30], xmm1
movdqu xmm0, xmmword [rcx - 0x20]
movdqu xmm1, xmmword [rcx + r8 - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
cmp rax, rsi
jl 0x1401edea0
mov rsi, qword [rsp + 0x48]
mov eax, ebx
and al, 0x3f
cmp al, 8
jb 0x1401edf44
mov ecx, ebx
and ecx, 0xfffffff8
movsxd rax, r10d
movsxd r9, ecx
lea rcx, [rax + rdx]
nop dword [rax]
movq xmm0, qword [rcx]
add r10d, 8
movq xmm1, qword [r8 + rcx]
xorps xmm1, xmm0
movq qword [rcx], xmm1
add rcx, 8
mov rax, rcx
sub rax, rdx
cmp rax, r9
jl 0x1401edf20
movsxd rcx, r10d
mov r8, rbx
cmp rcx, rbx
jge 0x1401edf71
sub r11, rdx
lea rax, [rcx + rdx]
sub r8, rcx
nop dword [rax]
movzx ecx, byte [r11 + rax]
xor byte [rax], cl
lea rax, [rax + 1]
sub r8, 1
jne 0x1401edf60
mov rcx, qword [rbp + 0x10]
lea r8, [rsp + 0x58]
mov r9, rdx
mov dword [rsp + 0x20], ebx
call fcn.14010b470
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x1401edfa4
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 0x1401ee130
Capabilities:
Encode data using xor

Disassembly:
mov r11, rdx
mov r10, rcx
test rdx, rdx
je 0x1401ee1ab
test r8, r8
je 0x1401ee1ab
mov r9, qword [rcx + 0x28]
cmp r8, r9
cmovb r9, r8
test r9, r9
je 0x1401ee171
add rcx, 0x34
sub rdx, r10
nop word [rax + rax]
movzx eax, byte [rdx + rcx - 0x34]
xor byte [rcx], al
lea rcx, [rcx + 1]
sub r9, 1
jne 0x1401ee160
mov rax, qword [r10 + 0x28]
cmp r8, rax
jbe 0x1401ee1ab
sub r8, rax
cmp r8, 0x10
jbe 0x1401ee18b
mov r8d, reloc.WS2_32.dll_recv
jmp 0x1401ee190
test r8, r8
je 0x1401ee1ab
xor ecx, ecx
mov rax, qword [r10 + 0x28]
add rax, rcx
movzx eax, byte [rax + r11]
xor byte [r10 + rcx + 0x54], al
inc rcx
cmp rcx, r8
jb 0x1401ee192
ret
Function at 0x1402177c0
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 rbp, rsp
mov eax, 0x50
call fcn.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r14, qword [rbp + 0x60]
mov rdi, rcx
mov r13, qword [rbp + 0x68]
mov esi, r8d
mov qword [rbp - 0x28], r9
mov r12, rdx
xor r15d, r15d
mov qword [rbp - 0x20], r13
movzx r8d, byte [r14 + 3]
movzx edx, byte [r14 + 7]
movzx eax, byte [r14 + 1]
mov ecx, edx
movzx r10d, byte [r14]
movzx r9d, byte [r14 + 4]
mov ebx, dword [r13]
shl eax, 8
or r10d, eax
shl ecx, 8
movzx eax, byte [r14 + 2]
shl eax, 0x10
or r10d, eax
mov byte [rbp - 0x15], r8b
mov eax, r8d
mov byte [rbp - 0x11], dl
shl eax, 0x18
or r10d, eax
movzx eax, byte [r14 + 5]
shl eax, 8
or r9d, eax
mov dword [rbp - 0x30], r10d
movzx eax, byte [r14 + 6]
or ecx, eax
mov byte [rbp - 0x18], r10b
mov eax, ecx
mov byte [rbp - 0x12], cl
shl eax, 0x10
or r9d, eax
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x17], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x16], al
mov eax, r9d
shr eax, 8
mov dword [rbp - 0x2c], r9d
mov byte [rbp - 0x14], r9b
mov byte [rbp - 0x13], al
test esi, esi
je 0x14021797f
mov r13, qword [rbp - 0x28]
sub r12, rdi
movzx edx, r9b
movzx r8d, r10b
nop dword [rax + rax]
dec esi
test ebx, ebx
jne 0x140217919
mov r8d, 1
lea rcx, [rbp - 0x30]
mov rdx, r13
call fcn.140213b30
mov r10d, dword [rbp - 0x30]
mov eax, r10d
mov r9d, dword [rbp - 0x2c]
movzx r8d, byte [rbp - 0x30]
movzx edx, byte [rbp - 0x2c]
shr eax, 8
mov byte [rbp - 0x17], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x16], al
mov eax, r10d
shr eax, 0x18
mov byte [rbp - 0x15], al
mov eax, r9d
shr eax, 8
mov byte [rbp - 0x13], al
mov eax, r9d
shr eax, 0x10
mov byte [rbp - 0x12], al
mov eax, r9d
shr eax, 0x18
mov byte [rbp - 0x11], al
inc r15d
mov byte [rbp - 0x18], r8b
mov byte [rbp - 0x14], dl
movsxd rax, ebx
movzx ecx, byte [rbp + rax - 0x18]
xor cl, byte [rdi]
mov byte [rdi + r12], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x1402178b0
mov r13, qword [rbp - 0x20]
test r15d, r15d
je 0x14021797f
mov eax, r10d
mov byte [r14], r8b
shr eax, 8
mov byte [r14 + 1], al
mov eax, r10d
shr eax, 0x10
mov byte [r14 + 2], al
mov eax, r9d
shr eax, 8
mov byte [r14 + 5], al
mov eax, r9d
shr eax, 0x10
shr r10d, 0x18
shr r9d, 0x18
mov byte [r14 + 7], r9b
mov byte [r14 + 3], r10b
mov byte [r14 + 4], dl
mov byte [r14 + 6], al
mov dword [r13], ebx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140295820
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140218640
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.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov r14, qword [rsp + 0xd0]
mov r13, r9
mov rax, qword [rsp + 0xc0]
mov rdi, rcx
mov rcx, qword [rsp + 0xc8]
mov esi, r8d
mov r12, qword [rsp + 0xd8]
mov r15, rdx
movzx r8d, byte [r14 + 3]
xor ebp, ebp
movzx edx, byte [r14 + 7]
movzx r9d, byte [r14]
movzx r10d, 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]
mov ecx, edx
shl eax, 0x10
or r9d, eax
shl ecx, 8
mov eax, r8d
mov qword [rsp + 0x38], r14
shl eax, 0x18
or r9d, eax
mov qword [rsp + 0x40], r12
movzx eax, byte [r14 + 5]
shl eax, 8
or r10d, eax
mov dword [rsp + 0x20], r9d
movzx eax, byte [r14 + 6]
or ecx, eax
mov byte [rsp + 0x48], r9b
mov eax, ecx
mov byte [rsp + 0x4b], r8b
shl eax, 0x10
or r10d, eax
mov byte [rsp + 0x4e], cl
mov eax, r9d
mov dword [rsp + 0x24], r10d
shr eax, 8
mov byte [rsp + 0x49], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x4a], al
mov eax, r10d
shr eax, 8
mov byte [rsp + 0x4c], r10b
mov byte [rsp + 0x4d], al
mov byte [rsp + 0x4f], dl
test esi, esi
je 0x14021882d
mov r12, qword [rsp + 0x28]
sub r15, rdi
mov r14, qword [rsp + 0x30]
dec esi
test ebx, ebx
jne 0x1402187c2
mov r9, r14
lea rcx, [rsp + 0x20]
mov r8, r12
mov rdx, r13
call fcn.1402160e0
mov r9d, dword [rsp + 0x20]
mov eax, r9d
mov r10d, 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, r10d
shr eax, 8
mov byte [rsp + 0x4d], al
mov eax, r10d
shr eax, 0x10
mov byte [rsp + 0x4e], al
mov eax, r10d
shr eax, 0x18
mov byte [rsp + 0x4f], al
inc ebp
mov byte [rsp + 0x48], r9b
mov byte [rsp + 0x4c], r10b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x48]
xor cl, byte [rdi]
mov byte [rdi + r15], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x140218757
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
test ebp, ebp
je 0x14021882d
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, r10d
shr eax, 8
mov byte [r14 + 5], al
mov eax, r10d
shr eax, 0x10
shr r9d, 0x18
mov byte [r14 + 4], r10b
shr r10d, 0x18
mov byte [r14 + 7], r10b
mov byte [r14 + 3], r9b
mov byte [r14 + 6], al
mov dword [r12], ebx
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140295820
mov rbx, qword [rsp + 0xa0]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14021a500
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
push rbp
push rsi
push r12
push r13
push r14
push r15
mov eax, 0x50
call fcn.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r13, qword [rsp + 0xb8]
xor r15d, r15d
mov r14, qword [rsp + 0xb0]
mov ebp, r8d
mov qword [rsp + 0x28], r9
mov r12, rdx
mov rsi, rcx
mov qword [rsp + 0x30], r13
mov ebx, dword [r13]
test ebx, ebx
jns 0x14021a563
mov dword [r13], 0xffffffff
jmp 0x14021a6e8
movzx r10d, byte [r14]
movzx eax, byte [r14 + 1]
mov r9d, r10d
movzx r8d, byte [r14 + 4]
movzx ecx, byte [r14 + 6]
mov edx, r8d
mov qword [rsp + 0x90], rdi
shl r9d, 8
or r9d, eax
shl edx, 8
movzx eax, byte [r14 + 2]
mov r11d, r9d
shl eax, 8
shl r11d, 0x10
or r11d, eax
shl ecx, 8
movzx eax, byte [r14 + 3]
or r11d, eax
mov byte [rsp + 0x38], r10b
movzx eax, byte [r14 + 5]
or edx, eax
mov dword [rsp + 0x20], r11d
movzx eax, byte [r14 + 7]
mov edi, edx
or ecx, eax
shl edi, 0x10
or edi, ecx
mov byte [rsp + 0x39], r9b
mov eax, r11d
mov dword [rsp + 0x24], edi
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3b], r11b
mov byte [rsp + 0x3c], r8b
mov byte [rsp + 0x3d], dl
mov byte [rsp + 0x3e], al
mov byte [rsp + 0x3f], dil
test ebp, ebp
je 0x14021a6dc
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
dec ebp
test ebx, ebx
jne 0x14021a678
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.140219ac0
mov r11d, dword [rsp + 0x20]
mov eax, r11d
mov edi, dword [rsp + 0x24]
mov edx, r11d
shr eax, 0x18
mov r8d, edi
mov byte [rsp + 0x38], al
mov eax, r11d
shr eax, 0x10
mov byte [rsp + 0x39], al
mov eax, r11d
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 0x18
mov byte [rsp + 0x3c], al
mov eax, edi
shr eax, 0x10
mov byte [rsp + 0x3d], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3e], al
inc r15d
mov byte [rsp + 0x3b], dl
mov byte [rsp + 0x3f], r8b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x38]
xor cl, byte [rsi]
mov byte [r12 + rsi], cl
inc rsi
inc ebx
and ebx, 7
test ebp, ebp
jne 0x14021a611
mov r13, qword [rsp + 0x30]
test r15d, r15d
je 0x14021a6dc
mov eax, r11d
mov byte [r14 + 3], dl
shr eax, 0x18
mov byte [r14], al
mov eax, r11d
shr eax, 0x10
mov byte [r14 + 1], al
mov eax, edi
shr eax, 0x18
mov byte [r14 + 4], al
mov eax, edi
shr eax, 0x10
shr r11d, 8
shr edi, 8
mov byte [r14 + 6], dil
mov byte [r14 + 2], r11b
mov byte [r14 + 5], al
mov byte [r14 + 7], r8b
mov dword [r13], ebx
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140295820
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret
Function at 0x14021a710
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
mov r11d, 0x80
mov byte [rcx], 0
cmp edx, r11d
mov eax, r11d
mov r10, rcx
mov rdi, r8
cmovle eax, edx
mov ecx, 0x400
test r9d, r9d
cdqe
mov ebx, ecx
cmovg ebx, r9d
cmp ebx, ecx
cmovg ebx, ecx
test rax, rax
jle 0x14021a770
mov rdx, r10
sub rdi, r10
mov r8, rax
nop word [rax + rax]
movzx ecx, byte [rdx + rdi]
mov byte [rdx], cl
lea rdx, [rdx + 1]
sub r8, 1
jne 0x14021a760
movzx edx, byte [rax + r10 - 1]
lea rdi, [0x14034a3d0]
cmp rax, r11
jge 0x14021a7ad
mov r8, r10
nop word [rax + rax]
movzx ecx, byte [r8]
lea r8, [r8 + 1]
add ecx, edx
movzx edx, cl
movzx edx, byte [rdx + rdi]
mov byte [r10 + rax], dl
inc rax
cmp rax, r11
jl 0x14021a790
lea r9d, [rbx + 7]
mov eax, 0xff
sar r9d, 3
neg ebx
sub r11d, r9d
and ebx, 7
movzx ecx, bl
movsxd r8, r11d
sar eax, cl
lea rdx, [r8 + r10]
mov ecx, eax
movzx eax, byte [rdx]
and rcx, rax
movzx eax, byte [rcx + rdi]
mov byte [rdx], al
test r11d, r11d
je 0x14021a809
movsxd r9, r9d
nop dword [rax]
nop dword [rax + rax]
movzx ecx, byte [rdx + r9 - 1]
lea rdx, [rdx - 1]
xor rcx, rax
movzx eax, byte [rcx + rdi]
mov byte [rdx], al
sub r8, 1
jne 0x14021a7f0
lea rdx, [r10 + 0xfc]
mov r8d, 4
add r10, 0x7d
nop word [rax + rax]
movzx eax, byte [r10 + 1]
lea rdx, [rdx - 0x40]
movzx ecx, byte [r10 + 2]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x40], ecx
movzx eax, byte [r10 - 1]
movzx ecx, byte [r10]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x3c], ecx
movzx eax, byte [r10 - 3]
movzx ecx, byte [r10 - 2]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x38], ecx
movzx eax, byte [r10 - 5]
movzx ecx, byte [r10 - 4]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x34], ecx
movzx eax, byte [r10 - 7]
movzx ecx, byte [r10 - 6]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x30], ecx
movzx eax, byte [r10 - 9]
movzx ecx, byte [r10 - 8]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x2c], ecx
movzx eax, byte [r10 - 0xb]
movzx ecx, byte [r10 - 0xa]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x28], ecx
movzx eax, byte [r10 - 0xd]
movzx ecx, byte [r10 - 0xc]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x24], ecx
movzx eax, byte [r10 - 0xf]
movzx ecx, byte [r10 - 0xe]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x20], ecx
movzx eax, byte [r10 - 0x11]
movzx ecx, byte [r10 - 0x10]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x1c], ecx
movzx eax, byte [r10 - 0x13]
movzx ecx, byte [r10 - 0x12]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x18], ecx
movzx eax, byte [r10 - 0x15]
movzx ecx, byte [r10 - 0x14]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x14], ecx
movzx eax, byte [r10 - 0x17]
movzx ecx, byte [r10 - 0x16]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0x10], ecx
movzx eax, byte [r10 - 0x19]
movzx ecx, byte [r10 - 0x18]
shl ecx, 8
or ecx, eax
mov dword [rdx + 0xc], ecx
movzx eax, byte [r10 - 0x1b]
movzx ecx, byte [r10 - 0x1a]
shl ecx, 8
or ecx, eax
mov dword [rdx + 8], ecx
movzx ecx, byte [r10 - 0x1c]
movzx eax, byte [r10 - 0x1d]
shl ecx, 8
or ecx, eax
mov dword [rdx + 4], ecx
lea r10, [r10 - 0x20]
sub r8, 1
jne 0x14021a820
mov rbx, qword [rsp + 8]
mov rdi, qword [rsp + 0x10]
ret
Function at 0x14021b470
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 rbp, rsp
mov eax, 0x50
call fcn.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r15, qword [rbp + 0x60]
mov rdi, rcx
mov r13, qword [rbp + 0x68]
mov esi, r8d
mov qword [rbp - 0x28], r9
mov r12, rdx
xor r14d, r14d
mov qword [rbp - 0x20], r13
movzx r8d, byte [r15 + 3]
movzx edx, byte [r15 + 7]
movzx eax, byte [r15 + 1]
mov ecx, edx
movzx r10d, byte [r15]
movzx r9d, byte [r15 + 4]
mov ebx, dword [r13]
shl eax, 8
or r10d, eax
shl ecx, 8
movzx eax, byte [r15 + 2]
shl eax, 0x10
or r10d, eax
mov byte [rbp - 0x15], r8b
mov eax, r8d
mov byte [rbp - 0x11], dl
shl eax, 0x18
or r10d, eax
movzx eax, byte [r15 + 5]
shl eax, 8
or r9d, eax
mov dword [rbp - 0x30], r10d
movzx eax, byte [r15 + 6]
or ecx, eax
mov byte [rbp - 0x18], r10b
mov eax, ecx
mov byte [rbp - 0x12], cl
shl eax, 0x10
or r9d, eax
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x17], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x16], al
mov eax, r9d
shr eax, 8
mov dword [rbp - 0x2c], r9d
mov byte [rbp - 0x14], r9b
mov byte [rbp - 0x13], al
test esi, esi
je 0x14021b625
mov r13, qword [rbp - 0x28]
sub r12, rdi
movzx edx, r9b
movzx r8d, r10b
nop dword [rax + rax]
dec esi
test ebx, ebx
jne 0x14021b5c3
mov rdx, r13
lea rcx, [rbp - 0x30]
call fcn.14021b0f0
mov r10d, dword [rbp - 0x30]
mov eax, r10d
mov r9d, dword [rbp - 0x2c]
movzx r8d, byte [rbp - 0x30]
movzx edx, byte [rbp - 0x2c]
shr eax, 8
mov byte [rbp - 0x17], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0x16], al
mov eax, r10d
shr eax, 0x18
mov byte [rbp - 0x15], al
mov eax, r9d
shr eax, 8
mov byte [rbp - 0x13], al
mov eax, r9d
shr eax, 0x10
mov byte [rbp - 0x12], al
mov eax, r9d
shr eax, 0x18
mov byte [rbp - 0x11], al
inc r14d
mov byte [rbp - 0x18], r8b
mov byte [rbp - 0x14], dl
movsxd rax, ebx
movzx ecx, byte [rbp + rax - 0x18]
xor cl, byte [rdi]
mov byte [rdi + r12], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x14021b560
mov r13, qword [rbp - 0x20]
test r14d, r14d
je 0x14021b625
mov eax, r10d
mov byte [r15], r8b
shr eax, 8
mov byte [r15 + 1], al
mov eax, r10d
shr eax, 0x10
mov byte [r15 + 2], al
mov eax, r9d
shr eax, 8
mov byte [r15 + 5], al
mov eax, r9d
shr eax, 0x10
shr r10d, 0x18
shr r9d, 0x18
mov byte [r15 + 7], r9b
mov byte [r15 + 3], r10b
mov byte [r15 + 4], dl
mov byte [r15 + 6], al
mov dword [r13], ebx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140295820
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14021cb20
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, 0x50
call fcn.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r14, qword [rsp + 0xb0]
mov r12, rdx
mov r13, qword [rsp + 0xb8]
mov rsi, rcx
mov qword [rsp + 0x28], r9
mov ebp, r8d
xor r15d, r15d
mov qword [rsp + 0x30], r13
movzx r10d, byte [r14]
movzx eax, byte [r14 + 1]
mov r9d, r10d
movzx r8d, byte [r14 + 4]
movzx ecx, byte [r14 + 6]
mov edx, r8d
mov ebx, dword [r13]
shl r9d, 8
or r9d, eax
shl edx, 8
movzx eax, byte [r14 + 2]
mov r11d, r9d
shl eax, 8
shl r11d, 0x10
or r11d, eax
shl ecx, 8
movzx eax, byte [r14 + 3]
or r11d, eax
mov byte [rsp + 0x38], r10b
movzx eax, byte [r14 + 5]
or edx, eax
mov dword [rsp + 0x20], r11d
movzx eax, byte [r14 + 7]
mov edi, edx
or ecx, eax
shl edi, 0x10
or edi, ecx
mov byte [rsp + 0x39], r9b
mov eax, r11d
mov dword [rsp + 0x24], edi
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3b], r11b
mov byte [rsp + 0x3c], r8b
mov byte [rsp + 0x3d], dl
mov byte [rsp + 0x3e], al
mov byte [rsp + 0x3f], dil
test ebp, ebp
je 0x14021cceb
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
nop dword [rax]
dec ebp
test ebx, ebx
jne 0x14021cc87
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.14021c460
mov r11d, dword [rsp + 0x20]
mov eax, r11d
mov edi, dword [rsp + 0x24]
mov edx, r11d
shr eax, 0x18
mov r8d, edi
mov byte [rsp + 0x38], al
mov eax, r11d
shr eax, 0x10
mov byte [rsp + 0x39], al
mov eax, r11d
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 0x18
mov byte [rsp + 0x3c], al
mov eax, edi
shr eax, 0x10
mov byte [rsp + 0x3d], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3e], al
inc r15d
mov byte [rsp + 0x3b], dl
mov byte [rsp + 0x3f], r8b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x38]
xor cl, byte [rsi]
mov byte [rsi + r12], cl
inc rsi
inc ebx
and ebx, 7
test ebp, ebp
jne 0x14021cc20
mov r13, qword [rsp + 0x30]
test r15d, r15d
je 0x14021cceb
mov eax, r11d
mov byte [r14 + 3], dl
shr eax, 0x18
mov byte [r14], al
mov eax, r11d
shr eax, 0x10
mov byte [r14 + 1], al
mov eax, edi
shr eax, 0x18
mov byte [r14 + 4], al
mov eax, edi
shr eax, 0x10
shr r11d, 8
shr edi, 8
mov byte [r14 + 6], dil
mov byte [r14 + 2], r11b
mov byte [r14 + 5], al
mov byte [r14 + 7], r8b
mov dword [r13], ebx
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140295820
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14021f690
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, 0x50
call fcn.140295cc0
sub rsp, rax
mov rax, qword [0x1403c13c0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r14, qword [rsp + 0xb0]
mov r12, rdx
mov r13, qword [rsp + 0xb8]
mov rsi, rcx
mov qword [rsp + 0x28], r9
mov ebp, r8d
xor r15d, r15d
mov qword [rsp + 0x30], r13
movzx r10d, byte [r14]
movzx eax, byte [r14 + 1]
mov r9d, r10d
movzx r8d, byte [r14 + 4]
movzx ecx, byte [r14 + 6]
mov edx, r8d
mov ebx, dword [r13]
shl r9d, 8
or r9d, eax
shl edx, 8
movzx eax, byte [r14 + 2]
mov r11d, r9d
shl eax, 8
shl r11d, 0x10
or r11d, eax
shl ecx, 8
movzx eax, byte [r14 + 3]
or r11d, eax
mov byte [rsp + 0x38], r10b
movzx eax, byte [r14 + 5]
or edx, eax
mov dword [rsp + 0x20], r11d
movzx eax, byte [r14 + 7]
mov edi, edx
or ecx, eax
shl edi, 0x10
or edi, ecx
mov byte [rsp + 0x39], r9b
mov eax, r11d
mov dword [rsp + 0x24], edi
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3b], r11b
mov byte [rsp + 0x3c], r8b
mov byte [rsp + 0x3d], dl
mov byte [rsp + 0x3e], al
mov byte [rsp + 0x3f], dil
test ebp, ebp
je 0x14021f85b
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
nop dword [rax]
dec ebp
test ebx, ebx
jne 0x14021f7f7
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.14021efa0
mov r11d, dword [rsp + 0x20]
mov eax, r11d
mov edi, dword [rsp + 0x24]
mov edx, r11d
shr eax, 0x18
mov r8d, edi
mov byte [rsp + 0x38], al
mov eax, r11d
shr eax, 0x10
mov byte [rsp + 0x39], al
mov eax, r11d
shr eax, 8
mov byte [rsp + 0x3a], al
mov eax, edi
shr eax, 0x18
mov byte [rsp + 0x3c], al
mov eax, edi
shr eax, 0x10
mov byte [rsp + 0x3d], al
mov eax, edi
shr eax, 8
mov byte [rsp + 0x3e], al
inc r15d
mov byte [rsp + 0x3b], dl
mov byte [rsp + 0x3f], r8b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x38]
xor cl, byte [rsi]
mov byte [rsi + r12], cl
inc rsi
inc ebx
and ebx, 7
test ebp, ebp
jne 0x14021f790
mov r13, qword [rsp + 0x30]
test r15d, r15d
je 0x14021f85b
mov eax, r11d
mov byte [r14 + 3], dl
shr eax, 0x18
mov byte [r14], al
mov eax, r11d
shr eax, 0x10
mov byte [r14 + 1], al
mov eax, edi
shr eax, 0x18
mov byte [r14 + 4], al
mov eax, edi
shr eax, 0x10
shr r11d, 8
shr edi, 8
mov byte [r14 + 6], dil
mov byte [r14 + 2], r11b
mov byte [r14 + 5], al
mov byte [r14 + 7], r8b
mov dword [r13], ebx
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140295820
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140223b30
Capabilities:
Encode data using xor

Disassembly:
mov eax, reloc.WS2_32.dll_getservbyport
call fcn.140295cc0
sub rsp, rax
cmp dword [rsp + 0x68], 0
je 0x140223b59
lea rax, [0x140222100]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp fcn.14011e6f0
lea rax, [0x1402212b0]
mov qword [rsp + 0x68], rax
add rsp, 0x38
jmp fcn.14011e430
Function at 0x140226810
Capabilities:
Hash data using sha1

Disassembly:
push rbx
mov eax, 0x20
call fcn.140295cc0
sub rsp, rax
mov rbx, rcx
call fcn.140219020
test eax, eax
jne 0x140226831
add rsp, 0x20
pop rbx
ret
lea rcx, [rbx + 0x5c]
add rsp, 0x20
pop rbx
jmp fcn.1401804c0