joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140181680
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
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.1400f4360
mov rdi, rax
call fcn.1400f3550
xor ebp, ebp
mov rbx, rax
test rdi, rdi
je 0x14018188b
test rax, rax
je 0x14018188b
xor r8d, r8d
mov rdx, rdi
mov rcx, rax
call fcn.1400f3b00
test eax, eax
je 0x14018188b
lea r8d, [rbp + 0x20]
mov rdx, r12
mov rcx, rbx
call fcn.1400f3b20
test eax, eax
je 0x14018188b
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0xd0]
call fcn.1400f3c60
test eax, eax
je 0x14018188b
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.1400f3b00
test eax, eax
je 0x14018188b
lea r8d, [rbp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0xf0]
call fcn.1400f3b20
test eax, eax
je 0x14018188b
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.1400f3b20
test eax, eax
je 0x14018188b
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0x110]
call fcn.1400f3c60
test eax, eax
je 0x14018188b
lea rcx, [rsp + 0x110]
call fcn.140187010
lea rdx, [rsp + 0x110]
lea rcx, [rsp + 0x30]
call fcn.140185580
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.140183a60
xor r8d, r8d
mov rdx, rdi
mov rcx, rbx
call fcn.1400f3b00
test eax, eax
je 0x14018188b
lea r8d, [rbp + 0x20]
mov rdx, rsi
mov rcx, rbx
call fcn.1400f3b20
test eax, eax
je 0x14018188b
lea r8d, [rbp + 0x20]
mov rdx, r13
mov rcx, rbx
call fcn.1400f3b20
test eax, eax
je 0x14018188b
mov r8, r15
mov rdx, r14
mov rcx, rbx
call fcn.1400f3b20
test eax, eax
je 0x14018188b
lea r8, [rsp + 0x20]
mov rcx, rbx
lea rdx, [rsp + 0x150]
call fcn.1400f3c60
test eax, eax
je 0x14018188b
lea rcx, [rsp + 0x150]
call fcn.140187010
lea rcx, [rsi + 0x20]
lea r9, [rsp + 0x110]
lea r8, [rsp + 0xd0]
lea rdx, [rsp + 0x150]
call fcn.140187e60
mov ebp, 1
mov edx, 0x40
lea rcx, [rsp + 0x110]
call fcn.1400f7540
mov edx, 0x40
lea rcx, [rsp + 0xd0]
call fcn.1400f7540
mov rcx, rdi
call fcn.1400f43c0
mov rcx, rbx
call fcn.1400f35a0
mov eax, ebp
mov rcx, qword [rsp + 0x190]
xor rcx, rsp
call fcn.1401121d0
add rsp, 0x1a8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x14018aa80
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 0x14018aad1
cmp rcx, r9
jb 0x14018aad1
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 0x14018aab0
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 0x14018aae0
ret
Function at 0x14018fe60
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, 0x28
call fcn.140112170
sub rsp, rax
mov r11, rcx
cmp dword [rsp + 0x50], r9d
jne 0x14018ff58
movzx r10d, byte [r8]
lea eax, [r10 - 0x6a]
cmp al, 1
ja 0x14018ff58
mov qword [rsp + 0x20], rbx
lea rdx, [r8 + 1]
cmp r10b, 0x6b
jne 0x14018ff10
lea ebx, [r9 - 3]
xor eax, eax
test ebx, ebx
jle 0x14018feba
movzx ecx, byte [rdx]
inc rdx
cmp cl, 0xba
je 0x14018feba
cmp cl, 0xbb
jne 0x14018fefd
inc eax
cmp eax, ebx
jl 0x14018fea4
sub ebx, eax
test eax, eax
jne 0x14018ff14
call fcn.1400fbdb0
lea r8, str.RSA_padding_check_X931
mov edx, 0x56
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1400fbed0
mov edx, 0x8a
xor r8d, r8d
lea ecx, [r8 + 4]
call fcn.1400fbfd0
mov rbx, qword [rsp + 0x20]
mov eax, 0xffffffff
add rsp, 0x28
ret
call fcn.1400fbdb0
lea r8, str.RSA_padding_check_X931
mov edx, 0x4e
jmp 0x14018fed1
lea ebx, [r9 - 2]
movsxd rax, ebx
cmp byte [rax + rdx], 0xcc
je 0x14018ff41
call fcn.1400fbdb0
lea r8, str.RSA_padding_check_X931
mov edx, 0x5f
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1400fbed0
mov edx, 0x8b
jmp 0x14018fee2
mov r8d, ebx
mov rcx, r11
call fcn.140253b20
mov eax, ebx
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.1400fbdb0
lea r8, str.RSA_padding_check_X931
mov edx, 0x43
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.1400fbed0
xor r8d, r8d
mov edx, 0x89
lea ecx, [r8 + 4]
call fcn.1400fbfd0
mov eax, 0xffffffff
add rsp, 0x28
ret
Function at 0x1401963f0
Capabilities:
Connect socket
Set socket configuration

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
mov eax, gethostbyname
call fcn.140112170
sub rsp, rax
movsxd rbx, ecx
mov edi, r8d
mov dword [rsp + 0x40], 1
mov rbp, rdx
cmp ebx, 0xffffffff
jne 0x14019645b
call fcn.1400fbdb0
lea r8, str.BIO_connect
lea edx, [rbx + 0x55]
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
xor r8d, r8d
lea ecx, [rbx + 0x21]
mov edx, 0x87
call fcn.1400fbfd0
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.140143080
test eax, eax
je 0x14019650e
mov rsi, rbx
test dil, 4
je 0x140196525
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 0x140196525
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, 0x5e
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_setsockopt__
mov ecx, 2
mov edx, eax
call fcn.1400fbfd0
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, 0x60
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
xor r8d, r8d
mov edx, 0x89
mov ecx, 0x20
call fcn.1400fbfd0
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 0x1401965b2
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 0x1401965b2
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, 0x68
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_setsockopt__
mov ecx, 2
mov edx, eax
call fcn.1400fbfd0
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, 0x6a
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
xor r8d, r8d
mov edx, 0x8a
jmp 0x140196504
mov rcx, rbp
call fcn.140144520
mov rcx, rbp
mov ebx, eax
call fcn.140144510
mov rdx, rax
mov r8d, ebx
mov rcx, rsi
call qword [sym.imp.WS2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x140196646
mov ecx, eax
call fcn.1401962c0
test eax, eax
jne 0x14019650e
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, WSACleanup
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
lea r8, str.calling_connect__
mov ecx, 2
mov edx, eax
call fcn.1400fbfd0
call fcn.1400fbdb0
lea r8, str.BIO_connect
mov edx, reloc.WS2_32.dll_WSACleanup
lea rcx, str.crypto_bio_bio_sock2.c
call fcn.1400fbed0
xor r8d, r8d
lea edx, [r8 + 0x67]
jmp 0x140196504
mov eax, 1
jmp 0x140196510
Function at 0x14019a990
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
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 0x14019ab4d
mov r13, qword [rbp - 0x28]
sub r12, rdi
movzx edx, r9b
movzx r8d, r10b
nop dword [rax + rax]
dec esi
test ebx, ebx
jne 0x14019aae7
lea r8d, [rbx + 1]
mov rdx, r13
lea rcx, [rbp - 0x30]
call fcn.140196b80
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 0x14019aa80
mov r13, qword [rbp - 0x20]
test r14d, r14d
je 0x14019ab4d
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.1401121d0
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 0x14019b790
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
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 0x14019b97d
mov r12, qword [rsp + 0x28]
sub r15, rdi
mov r14, qword [rsp + 0x30]
dec esi
test ebx, ebx
jne 0x14019b912
mov r9, r14
lea rcx, [rsp + 0x20]
mov r8, r12
mov rdx, r13
call fcn.140199130
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 0x14019b8a7
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
test ebp, ebp
je 0x14019b97d
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.1401121d0
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 0x14019e0b0
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
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 0x14019e113
mov dword [r13], 0xffffffff
jmp 0x14019e298
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 0x14019e28c
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
dec ebp
test ebx, ebx
jne 0x14019e228
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.14019d670
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 0x14019e1c1
mov r13, qword [rsp + 0x30]
test r14d, r14d
je 0x14019e28c
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.1401121d0
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
pop rbx
ret
Function at 0x14019f140
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
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 0x14019f2f5
mov r13, qword [rbp - 0x28]
sub r12, rdi
movzx edx, r9b
movzx r8d, r10b
nop dword [rax + rax]
dec esi
test ebx, ebx
jne 0x14019f293
mov rdx, r13
lea rcx, [rbp - 0x30]
call fcn.14019e6f0
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 0x14019f230
mov r13, qword [rbp - 0x20]
test r14d, r14d
je 0x14019f2f5
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.1401121d0
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 0x1401a07f0
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0xb0]
mov r12, rdx
mov r13, qword [rsp + 0xb8]
mov rsi, rcx
mov qword [rsp + 0x28], r9
mov ebp, r8d
xor r14d, r14d
mov qword [rsp + 0x30], r13
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 ebx, dword [r13]
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 0x1401a09bb
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
nop dword [rax]
dec ebp
test ebx, ebx
jne 0x1401a0957
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.14019f740
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 0x1401a08f0
mov r13, qword [rsp + 0x30]
test r14d, r14d
je 0x1401a09bb
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 rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1401121d0
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 0x1401a32a0
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.140112170
sub rsp, rax
mov rax, qword [0x140338648]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r15, qword [rsp + 0xb0]
mov r12, rdx
mov r13, qword [rsp + 0xb8]
mov rsi, rcx
mov qword [rsp + 0x28], r9
mov ebp, r8d
xor r14d, r14d
mov qword [rsp + 0x30], r13
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 ebx, dword [r13]
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 0x1401a346b
mov r13, qword [rsp + 0x28]
sub r12, rsi
movzx r8d, dil
movzx edx, r11b
nop dword [rax]
dec ebp
test ebx, ebx
jne 0x1401a3407
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.1401a2180
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 0x1401a33a0
mov r13, qword [rsp + 0x30]
test r14d, r14d
je 0x1401a346b
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 rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1401121d0
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret