joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401abd20
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
mov r10, rdx
xor r11b, r11b
xor edx, edx
mov rdi, r9
mov rbx, rcx
test rcx, rcx
je 0x1401abe21
test r10, r10
je 0x1401abe21
movzx eax, byte [rcx]
test r8d, r8d
jne 0x1401abd69
cmp al, 0x7f
jbe 0x1401abe1a
mov edx, 1
mov eax, edx
add rax, r10
jmp 0x1401abe29
mov r11b, 0xff
cmp al, 0x80
jbe 0x1401abd7f
mov edx, 1
mov eax, edx
add rax, r10
jmp 0x1401abe29
jne 0x1401abe1a
mov eax, 1
lea rcx, [r10 - 1]
cmp r10, rax
jbe 0x1401abe0f
cmp rcx, 8
jb 0x1401abe01
and ecx, 7
mov rdx, r10
sub rdx, rcx
xorps xmm3, xmm3
xorps xmm2, xmm2
nop dword [rax]
movd xmm1, dword [rax + rbx]
xorps xmm0, xmm0
punpcklbw xmm1, xmm0
punpcklwd xmm1, xmm0
orps xmm3, xmm1
movd xmm1, dword [rbx + rax + 4]
punpcklbw xmm1, xmm0
add rax, 8
punpcklwd xmm1, xmm0
orps xmm2, xmm1
cmp rax, rdx
jb 0x1401abdb0
orps xmm2, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
orps xmm2, xmm0
movdqa xmm0, xmm2
psrldq xmm0, 4
orps xmm2, xmm0
movd edx, xmm2
cmp rax, r10
jae 0x1401abe0f
movzx ecx, byte [rax + rbx]
inc rax
or edx, ecx
cmp rax, r10
jb 0x1401abe01
neg edx
sbb r11b, r11b
mov edx, r11d
and edx, 1
mov eax, edx
add rax, r10
jmp 0x1401abe29
mov eax, 1
mov r10, rdx
test rdi, rdi
je 0x1401abe85
mov rcx, qword [r9]
test rcx, rcx
je 0x1401abe85
mov edx, edx
mov r8d, r11d
add rdx, rcx
mov byte [rcx], r11b
and r8d, 1
test r10, r10
je 0x1401abe82
lea r9, [r10 + rbx]
mov rbx, r10
sub rbx, r10
add rbx, rdx
nop word [rax + rax]
movzx edx, byte [r9 - 1]
lea r9, [r9 - 1]
dec r10
movzx ecx, r11b
xor edx, ecx
add r8d, edx
mov byte [rbx + r10], r8b
shr r8d, 8
test r10, r10
jne 0x1401abe60
add qword [rdi], rax
mov rbx, qword [rsp + 0x10]
mov rdi, qword [rsp + 0x18]
ret

Function at 0x1401ac090
Capabilities:
Encode data using xor

Disassembly:
mov eax, 0x28
call fcn.14029c230
sub rsp, rax
mov r8d, dword [rcx + 4]
mov r9, rdx
movsxd rdx, dword [rcx]
and r8d, 0x100
mov rcx, qword [rcx + 8]
add rsp, 0x28
jmp fcn.1401abd20
Function at 0x1401c1350
Capabilities:
Encrypt data using curve25519

Disassembly:
push rbx
push rsi
push rdi
mov eax, 0x1a0
call fcn.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov rbx, r8
mov rsi, rdx
mov r8, r9
lea rdx, str.SHA512
call fcn.140154570
mov rdi, rax
test rax, rax
je 0x1401c13d3
xor r9d, r9d
mov qword [rsp + 0x28], 0
lea r8, [rsp + 0x150]
mov qword [rsp + 0x20], rax
mov rcx, rbx
lea edx, [r9 + 0x20]
call fcn.140153730
mov rcx, rdi
mov ebx, eax
call fcn.1401545c0
test ebx, ebx
jne 0x1401c13da
lea edx, [rbx + 0x40]
lea rcx, [rsp + 0x150]
call fcn.140001240
xor eax, eax
jmp 0x1401c148e
movzx eax, byte [rsp + 0x16f]
lea rdx, [rsp + 0x150]
and byte [rsp + 0x150], 0xf8
lea rcx, [rsp + 0xb0]
and al, 0x3f
or al, 0x40
mov byte [rsp + 0x16f], al
call fcn.1401c0670
lea rdx, [rsp + 0x100]
lea rcx, [rsp + 0x30]
call fcn.1401bd000
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0xb0]
lea rcx, [rsp + 0x80]
call fcn.1401bd280
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0xd8]
lea rcx, [rsp + 0x58]
call fcn.1401bd280
lea rdx, [rsp + 0x58]
mov rcx, rsi
call fcn.1401be920
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x80]
call fcn.1401be920
movzx eax, byte [rsp + 0x30]
lea rcx, [rsp + 0x150]
shl al, 7
mov edx, 0x40
xor byte [rsi + 0x1f], al
call fcn.140001240
mov eax, 1
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.14029bea0
add rsp, 0x1a0
pop rdi
pop rsi
pop rbx
ret
Function at 0x1401c14b0
Capabilities:
Encrypt data using curve25519

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1a8
call fcn.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
xor rax, rsp
mov qword [rsp + 0x190], rax
mov r12, qword [rsp + 0x210]
mov r15, r8
mov r8, qword [rsp + 0x220]
mov r14, rdx
mov rsi, rcx
lea rdx, str.SHA512
mov rcx, qword [rsp + 0x218]
mov r13, r9
call fcn.140154570
mov rdi, rax
call fcn.1401544b0
xor ebp, ebp
mov rbx, rax
test rdi, rdi
je 0x1401c16bb
test rax, rax
je 0x1401c16bb
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.140153d20
test eax, eax
je 0x1401c16bb
lea r8d, [rbp + 0x20]
mov rdx, r12
mov rcx, rbx
call fcn.140153d60
test eax, eax
je 0x1401c16bb
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0xd0]
call fcn.140153b90
test eax, eax
je 0x1401c16bb
movzx eax, byte [rsp + 0xef]
xor r8d, r8d
and byte [rsp + 0xd0], 0xf8
and al, 0x3f
or al, 0x40
mov rdx, rdi
mov rcx, rbx
mov byte [rsp + 0xef], al
call fcn.140153d20
test eax, eax
je 0x1401c16bb
lea r8d, [rbp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0xf0]
call fcn.140153d60
test eax, eax
je 0x1401c16bb
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.140153d60
test eax, eax
je 0x1401c16bb
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0x110]
call fcn.140153b90
test eax, eax
je 0x1401c16bb
lea rcx, [rsp + 0x110]
call fcn.1401c3c20
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x30]
call fcn.1401c0670
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1401c05e0
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.140153d20
test eax, eax
je 0x1401c16bb
lea r8d, [rbp + 0x20]
mov rdx, rsi
mov rcx, rbx
call fcn.140153d60
test eax, eax
je 0x1401c16bb
lea r8d, [rbp + 0x20]
mov rdx, r13
mov rcx, rbx
call fcn.140153d60
test eax, eax
je 0x1401c16bb
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.140153d60
test eax, eax
je 0x1401c16bb
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0x150]
call fcn.140153b90
test eax, eax
je 0x1401c16bb
lea rcx, [rsp + 0x150]
call fcn.1401c3c20
lea rcx, [rsi + 0x20]
lea r9, [rsp + 0x110]
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x150]
call fcn.1401c1ba0
mov ebp, 1
mov edx, 0x40
lea rcx, [rsp + 0x110]
call fcn.140001240
mov edx, 0x40
lea rcx, [rsp + 0xd0]
call fcn.140001240
mov rcx, rdi
call fcn.1401545c0
mov rcx, rbx
call fcn.140154400
mov eax, ebp
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.14029bea0
add rsp, 0x1a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1401c1a30
Capabilities:
Encrypt data using curve25519

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x70]
mov eax, 0x170
call fcn.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
xor rax, rsp
mov qword [rbp + 0x60], rax
movups xmm0, xmmword [rdx]
mov rbx, rcx
lea rcx, [rsp + 0x50]
movups xmm1, xmmword [rdx + 0x10]
movd eax, xmm0
movups xmmword [rbp + 0x40], xmm0
and al, 0xf8
mov byte [rbp + 0x40], al
mov rax, qword [rdx + 0x18]
lea rdx, [rbp + 0x40]
shr rax, 0x38
and al, 0x3f
or al, 0x40
movups xmmword [rbp + 0x50], xmm1
mov byte [rbp + 0x5f], al
call fcn.1401c0670
mov ecx, dword [rsp + 0x78]
mov edx, dword [rbp - 0x60]
mov r8d, dword [rbp - 0x3c]
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rsp + 0x7c]
mov dword [rbp + 0x18], edx
mov edx, dword [rbp - 0x5c]
mov dword [rbp - 0x10], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x80]
mov dword [rbp + 0x1c], edx
mov edx, dword [rbp - 0x58]
mov dword [rbp - 0xc], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x7c]
mov dword [rbp + 0x20], edx
mov edx, dword [rbp - 0x54]
mov dword [rbp - 8], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x78]
mov dword [rbp + 0x24], edx
mov edx, dword [rbp - 0x50]
mov dword [rbp - 4], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x74]
mov dword [rbp + 0x28], edx
mov edx, dword [rbp - 0x4c]
mov dword [rbp], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x70]
mov dword [rbp + 0x2c], edx
mov edx, dword [rbp - 0x48]
mov dword [rbp + 4], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x6c]
mov dword [rbp + 0x30], edx
mov edx, dword [rbp - 0x44]
mov dword [rbp + 8], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov ecx, dword [rbp - 0x68]
mov dword [rbp + 0x34], edx
mov edx, dword [rbp - 0x40]
mov dword [rbp + 0xc], eax
lea eax, [rcx + rdx]
sub edx, ecx
mov dword [rbp + 0x38], edx
lea rcx, [rsp + 0x20]
mov edx, dword [rbp - 0x64]
mov dword [rbp + 0x10], eax
lea eax, [rdx + r8]
sub r8d, edx
lea rdx, [rbp + 0x18]
mov dword [rbp + 0x3c], r8d
mov dword [rbp + 0x14], eax
call fcn.1401bd000
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x10]
call fcn.1401bd280
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.1401be920
lea rcx, [rbp + 0x40]
mov edx, 0x20
call fcn.140001240
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.14029bea0
mov rbx, qword [rsp + 0x190]
add rsp, 0x170
pop rbp
ret
Function at 0x1401c65a0
Capabilities:
Encode data using xor

Disassembly:
mov r9, rcx
movd xmm4, r8d
mov r10d, r8d
pshufd xmm4, xmm4, 0
lea rcx, [rdx + 0x3c]
lea rax, [r9 + 0x3c]
cmp rdx, rax
ja 0x1401c65f1
cmp rcx, r9
jb 0x1401c65f1
sub r9, rdx
mov r8d, reloc.WS2_32.dll_recv
nop dword [rax + rax]
mov ecx, dword [rdx + r9]
lea rdx, [rdx + 4]
mov eax, ecx
xor eax, dword [rdx - 4]
and eax, r10d
xor ecx, eax
mov dword [rdx + r9 - 4], ecx
xor dword [rdx - 4], eax
sub r8, 1
jne 0x1401c65d0
ret
sub r9, rdx
mov eax, 4
nop dword [rax]
movdqu xmm1, xmmword [r9 + rdx]
movdqu xmm2, xmmword [rdx]
lea rdx, [rdx + 0x10]
movdqa xmm3, xmm1
xorps xmm3, xmm2
andps xmm3, xmm4
movdqa xmm0, xmm3
xorps xmm3, xmm2
xorps xmm0, xmm1
movdqu xmmword [r9 + rdx - 0x10], xmm0
movdqu xmmword [rdx - 0x10], xmm3
sub rax, 1
jne 0x1401c6600
ret
Function at 0x1401cb8f0
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, 0x28
call fcn.14029c230
sub rsp, rax
mov r11, rcx
cmp dword [rsp + 0x50], r9d
jne 0x1401cb9e8
movzx r10d, byte [r8]
lea eax, [r10 - 0x6a]
cmp al, 1
ja 0x1401cb9e8
mov qword [rsp + 0x20], rbx
lea rdx, [r8 + 1]
cmp r10b, 0x6b
jne 0x1401cb9a0
lea ebx, [r9 - 3]
xor eax, eax
test ebx, ebx
jle 0x1401cb94a
movzx ecx, byte [rdx]
inc rdx
cmp cl, 0xba
je 0x1401cb94a
cmp cl, 0xbb
jne 0x1401cb98d
inc eax
cmp eax, ebx
jl 0x1401cb934
sub ebx, eax
test eax, eax
jne 0x1401cb9a4
call fcn.14013a8f0
lea r8, str.RSA_padding_check_X931
mov edx, 0x56
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.14013aa10
mov edx, 0x8a
xor r8d, r8d
lea ecx, [r8 + 4]
call fcn.14013ab10
mov rbx, qword [rsp + 0x20]
mov eax, 0xffffffff
add rsp, 0x28
ret
call fcn.14013a8f0
lea r8, str.RSA_padding_check_X931
mov edx, 0x4e
jmp 0x1401cb961
lea ebx, [r9 - 2]
movsxd rax, ebx
cmp byte [rax + rdx], 0xcc
je 0x1401cb9d1
call fcn.14013a8f0
lea r8, str.RSA_padding_check_X931
mov edx, 0x5f
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.14013aa10
mov edx, 0x8b
jmp 0x1401cb972
mov r8d, ebx
mov rcx, r11
call fcn.1402cb170
mov eax, ebx
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.14013a8f0
lea r8, str.RSA_padding_check_X931
mov edx, 0x43
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.14013aa10
xor r8d, r8d
mov edx, 0x89
lea ecx, [r8 + 4]
call fcn.14013ab10
mov eax, 0xffffffff
add rsp, 0x28
ret
Function at 0x1401eafa0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
mov eax, reloc.WS2_32.dll_WSASetLastError
call fcn.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, r8
lea rbp, [r8 + r8]
shl rax, 7
xor edi, edi
mov rsi, r8
mov rbx, rdx
mov r14, rcx
movups xmm0, xmmword [rax + rdx - 0x40]
movups xmm1, xmmword [rax + rdx - 0x30]
movups xmmword [rsp + 0x20], xmm0
movups xmmword [rsp + 0x30], xmm1
movups xmm0, xmmword [rax + rdx - 0x20]
movups xmm1, xmmword [rax + rdx - 0x10]
movups xmmword [rsp + 0x40], xmm0
movups xmmword [rsp + 0x50], xmm1
test rbp, rbp
je 0x1401eb0e0
nop word [rax + rax]
xor eax, eax
lea rcx, [rbx + 0x3c]
lea rdx, [rsp + 0x20]
cmp rdx, rcx
ja 0x1401eb045
lea rcx, [rsp + 0x5c]
cmp rcx, rbx
jb 0x1401eb045
nop word [rax + rax]
mov ecx, dword [rbx]
add rbx, 4
xor dword [rsp + rax*4 + 0x20], ecx
inc rax
cmp rax, 0x10
jb 0x1401eb030
jmp 0x1401eb088
movdqu xmm0, xmmword [rbx]
xorps xmm0, xmmword [rsp + 0x20]
movdqu xmmword [rsp + 0x20], xmm0
movdqu xmm0, xmmword [rbx + 0x10]
xorps xmm0, xmmword [rsp + 0x30]
movdqu xmmword [rsp + 0x30], xmm0
movdqu xmm0, xmmword [rbx + 0x20]
xorps xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rsp + 0x40], xmm0
movdqu xmm0, xmmword [rbx + 0x30]
add rbx, 0x40
xorps xmm0, xmmword [rsp + 0x50]
movdqu xmmword [rsp + 0x50], xmm0
lea rcx, [rsp + 0x20]
call fcn.1401eab10
movups xmm0, xmmword [rsp + 0x20]
mov rcx, rdi
movups xmm1, xmmword [rsp + 0x30]
and ecx, 1
imul rcx, rsi
mov rax, rdi
inc rdi
shr rax, 1
add rcx, rax
shl rcx, 6
movups xmmword [rcx + r14], xmm0
movups xmm0, xmmword [rsp + 0x40]
movups xmmword [rcx + r14 + 0x10], xmm1
movups xmm1, xmmword [rsp + 0x50]
movups xmmword [rcx + r14 + 0x20], xmm0
movups xmmword [rcx + r14 + 0x30], xmm1
cmp rdi, rbp
jb 0x1401eb010
mov edx, 0x40
lea rcx, [rsp + 0x20]
call fcn.140001240
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.14029bea0
add rsp, 0x70
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1401f4fe0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
mov eax, gethostbyaddr
call fcn.14029c230
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 0x1401f5104
cmp ebx, 8
jb 0x1401f5104
lea rax, [rbx - 1]
lea rcx, [rax + rdx]
add rax, r8
cmp rdx, rax
ja 0x1401f5039
cmp rcx, r8
jae 0x1401f5104
sub r8, rdx
cmp ebx, 0x40
jb 0x1401f50cd
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 [r8 + rcx - 0x10]
movdqu xmm2, xmmword [r8 + rcx]
lea rcx, [rcx + 0x40]
xorps xmm1, xmm0
lea rax, [r9 + rcx]
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [r8 + rcx - 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 [r8 + rcx - 0x20]
xorps xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
cmp rax, rsi
jl 0x1401f5060
mov rsi, qword [rsp + 0x48]
mov eax, ebx
and al, 0x3f
cmp al, 8
jb 0x1401f5104
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 0x1401f50e0
movsxd rcx, r10d
mov r8, rbx
cmp rcx, rbx
jge 0x1401f5131
sub r11, rdx
lea rax, [rcx + rdx]
sub r8, rcx
nop dword [rax]
movzx ecx, byte [rax + r11]
xor byte [rax], cl
lea rax, [rax + 1]
sub r8, 1
jne 0x1401f5120
mov rcx, qword [rbp + 0x10]
lea r8, [rsp + 0x58]
mov r9, rdx
mov dword [rsp + 0x20], ebx
call fcn.14012b790
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x1401f5164
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 0x1401f5310
Capabilities:
Encode data using xor

Disassembly:
mov r10, rcx
test rdx, rdx
je 0x1401f5398
test r8, r8
je 0x1401f5398
mov r9, qword [rcx + 0x28]
cmp r8, r9
cmovb r9, r8
test r9, r9
je 0x1401f5352
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 0x1401f5340
mov rax, qword [r10 + 0x28]
cmp r8, rax
jbe 0x1401f5398
sub r8, rax
cmp r8, 0x10
jbe 0x1401f536c
mov r8d, reloc.WS2_32.dll_recv
jmp 0x1401f5371
test r8, r8
je 0x1401f5398
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 0x1401f5380
ret
Function at 0x140226e50
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.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
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 0x14022700d
mov r13, qword [rbp - 0x28]
sub r12, rdi
movzx edx, r9b
movzx r8d, r10b
nop dword [rax + rax]
dec esi
test ebx, ebx
jne 0x140226fa7
lea r8d, [rbx + 1]
mov rdx, r13
lea rcx, [rbp - 0x30]
call fcn.1402231d0
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 [r12 + rdi], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x140226f40
mov r13, qword [rbp - 0x20]
test r14d, r14d
je 0x14022700d
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.14029bea0
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 0x140227cf0
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.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
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 0x140227edd
mov r12, qword [rsp + 0x28]
sub r15, rdi
mov r14, qword [rsp + 0x30]
dec esi
test ebx, ebx
jne 0x140227e72
mov r9, r14
lea rcx, [rsp + 0x20]
mov r8, r12
mov rdx, r13
call fcn.140225780
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 [r15 + rdi], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x140227e07
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
test ebp, ebp
je 0x140227edd
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.14029bea0
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 0x140229ba0
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.14029c230
sub rsp, rax
mov rax, qword [0x140393e00]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r13, qword [rsp + 0xb8]
xor r14d, r14d
mov r15, 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 0x140229c03
mov dword [r13], 0xffffffff
jmp 0x140229d88
movzx r10d, byte [r15]
movzx eax, byte [r15 + 1]
mov r9d, r10d
movzx r8d, byte [r15 + 4]
movzx ecx, byte [r15 + 6]
mov edx, r8d
mov qword [rsp + 0x90], rdi
shl r9d, 8
or r9d, eax
shl edx, 8
movzx eax, byte [r15 + 2]
mov r11d, r9d
shl eax, 8
shl r11d, 0x10
or r11d, eax
shl ecx, 8
movzx eax, byte [r15 + 3]
or r11d, eax
mov byte [rsp + 0x38], r10b
movzx eax, byte [r15 + 5]
or edx, eax
mov dword [rsp + 0x20], r11d
movzx eax, byte [r15 + 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 0x140229d7c
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
dec ebp
test ebx, ebx
jne 0x140229d18
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.140229160
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 r14d
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 0x140229cb1
mov r13, qword [rsp + 0x30]
test r14d, r14d
je 0x140229d7c
mov eax, r11d
mov byte [r15 + 3], dl
shr eax, 0x18
mov byte [r15], al
mov eax, r11d
shr eax, 0x10
mov byte [r15 + 1], al
mov eax, edi
shr eax, 0x18
mov byte [r15 + 4], al
mov eax, edi
shr eax, 0x10
shr r11d, 8
shr edi, 8
mov byte [r15 + 6], dil
mov byte [r15 + 2], r11b
mov byte [r15 + 5], al
mov byte [r15 + 7], r8b
mov dword [r13], ebx
mov rdi, qword [rsp + 0x90]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.14029bea0
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret