joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140209b10
Capabilities:
Encrypt data using curve25519

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
lea rbp, [rsp - 0x70]
mov eax, 0x170
call fcn.1403b2fd0
sub rsp, rax
mov rax, qword [0x1404efec0]
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.140208570
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.140204f10
lea r8, [rsp + 0x20]
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x10]
call fcn.140205190
lea rdx, [rbp - 0x10]
mov rcx, rbx
call fcn.140206830
lea rcx, [rbp + 0x40]
mov edx, reloc.WLDAP32.dll_Ordinal_32
call fcn.140001240
mov rcx, qword [rbp + 0x60]
xor rcx, rsp
call fcn.1403b2500
mov rbx, qword [rsp + 0x190]
add rsp, 0x170
pop rbp
ret
Function at 0x1402138c0
Capabilities:
Check for software breakpoints

Disassembly:
mov eax, Ordinal_41
call fcn.1403b2fd0
sub rsp, rax
mov r11, rcx
cmp dword [rsp + 0x50], r9d
jne 0x1402139b8
movzx r10d, byte [r8]
lea eax, [r10 - 0x6a]
cmp al, 1
ja 0x1402139b8
mov qword [rsp + 0x20], rbx
lea rdx, [r8 + 1]
cmp r10b, 0x6b
jne 0x140213970
lea ebx, [r9 - 3]
xor eax, eax
test ebx, ebx
jle 0x14021391a
movzx ecx, byte [rdx]
inc rdx
cmp cl, 0xba
je 0x14021391a
cmp cl, 0xbb
jne 0x14021395d
inc eax
cmp eax, ebx
jl 0x140213904
sub ebx, eax
test eax, eax
jne 0x140213974
call fcn.140180910
lea r8, str.RSA_padding_check_X931
mov edx, 0x56
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.140180a30
mov edx, 0x8a
xor r8d, r8d
lea ecx, [r8 + 4]
call fcn.140180b70
mov rbx, qword [rsp + 0x20]
mov eax, 0xffffffff
add rsp, 0x28
ret
call fcn.140180910
lea r8, str.RSA_padding_check_X931
mov edx, Ordinal_79
jmp 0x140213931
lea ebx, [r9 - 2]
movsxd rax, ebx
cmp byte [rax + rdx], 0xcc
je 0x1402139a1
call fcn.140180910
lea r8, str.RSA_padding_check_X931
mov edx, 0x5f
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.140180a30
mov edx, Ordinal_143
jmp 0x140213942
mov r8d, ebx
mov rcx, r11
call sub.VCRUNTIME140.dll_memcpy
mov eax, ebx
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
call fcn.140180910
lea r8, str.RSA_padding_check_X931
mov edx, 0x43
lea rcx, str.crypto_rsa_rsa_x931.c
call fcn.140180a30
xor r8d, r8d
mov edx, 0x89
lea ecx, [r8 + 4]
call fcn.140180b70
mov eax, 0xffffffff
add rsp, 0x28
ret
Function at 0x1402322b0
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.1403b2fd0
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 0x140232348
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 0x140232310
mov qword [rsp + 0x20], r15
mov r15, r12
shl r15, 7
cmp r13, 1
jbe 0x14023237f
dec r13
nop dword [rax]
mov rdx, rdi
mov r8, r12
sub rdx, r15
mov rcx, rdi
call fcn.140231e10
add rdi, r15
sub r13, 1
jne 0x140232360
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.140231e10
xor edi, edi
test r13, r13
je 0x1402324c6
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 0x1402324a9
cmp rsi, 0x10
jb 0x140232482
lea rcx, [rsi - 1]
lea rcx, [rax + rcx*4]
lea rdx, [rbp - 4]
lea rdx, [rdx + rsi*4]
cmp rbp, rcx
ja 0x140232401
cmp rdx, rax
jae 0x140232482
lea rcx, [r14 - 4]
lea rcx, [rcx + rsi*4]
cmp rbp, rcx
ja 0x140232413
cmp rdx, r14
jae 0x140232482
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 0x140232420
jmp 0x1402324a9
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 0x140232490
mov r8, r12
mov rdx, rbp
mov rcx, r14
call fcn.140231e10
sub r15, 1
jne 0x1402323b3
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 0x140232508
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 0x1402324e0
add rsp, 0x38
pop r14
pop rdi
pop rsi
pop rbx
ret
Function at 0x140233270
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rdi
push r12
push r15
mov eax, 0x48
call fcn.1403b2fd0
sub rsp, rax
mov rdi, qword [rsp + 0xa0]
mov r12, rdx
test rdx, rdx
mov r15, r9
mov rdx, r8
mov rbp, r8
je 0x1402334b3
mov qword [rsp + 0x70], rbx
mov rbx, qword [rsp + 0xa8]
mov qword [rsp + 0x78], rsi
mov qword [rsp + 0x80], 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], rdi
mov qword [rsp + 0x20], r13
call fcn.140233060
test eax, eax
je 0x140233354
mov r8d, 0x1b8
lea rdx, str.providersimplementationskdfs_tls1_prf.c
mov rcx, rbx
call fcn.140179f90
mov rsi, rax
test rax, rax
je 0x140233354
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.140233060
test eax, eax
jne 0x140233378
mov r9d, 0x1bd
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rsi
call fcn.14017a100
xor eax, eax
mov r13, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x40]
add rsp, 0x48
pop r15
pop r12
pop rdi
pop rbp
ret
xor ecx, ecx
test rbx, rbx
je 0x140233491
cmp rbx, 8
jb 0x140233466
lea rdx, [rdi - 1]
lea rax, [rbx - 1]
add rdx, rbx
add rax, rsi
cmp rdi, rax
ja 0x1402333a9
cmp rdx, rsi
jae 0x140233466
mov rdx, rsi
cmp rbx, 0x40
jb 0x140233434
mov r8, rbx
mov r9, rbx
and r8d, 0x3f
sub r9, r8
lea rax, [rdi + 0x10]
sub rdx, rdi
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, r9
jb 0x1402333d0
cmp r8, 8
jb 0x140233461
jmp 0x140233437
sub rdx, rdi
mov r8, rbx
lea rax, [rcx + rdi]
and r8, 0xfffffffffffffff8
movq xmm0, qword [rax]
add rcx, 8
movq xmm1, qword [rdx + rax]
lea rax, [rax + 8]
pxor xmm1, xmm0
movq qword [rax - 8], xmm1
cmp rcx, r8
jb 0x140233442
cmp rcx, rbx
jae 0x140233491
mov r8, rsi
lea rax, [rcx + rdi]
sub r8, rdi
mov rdx, rbx
sub rdx, rcx
nop word [rax + rax]
movzx ecx, byte [rax + r8]
xor byte [rax], cl
lea rax, [rax + 1]
sub rdx, 1
jne 0x140233480
mov r9d, 0x1c2
lea r8, str.providersimplementationskdfs_tls1_prf.c
mov rdx, rbx
mov rcx, rsi
call fcn.14017a100
mov eax, 1
jmp 0x140233356
mov rax, qword [rsp + 0xa8]
mov r8, r15
mov r9, qword [rsp + 0x90]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
call fcn.140233060
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
add rsp, 0x48
pop r15
pop r12
pop rdi
pop rbp
ret
Function at 0x14023c010
Capabilities:
Encode data using xor

Disassembly:
test rcx, rcx
je 0x14023c276
mov qword [rsp + 0x20], rbx
push rsi
mov eax, 0x840
call fcn.1403b2fd0
sub rsp, rax
mov rax, qword [0x1404efec0]
xor rax, rsp
mov qword [rsp + 0x830], rax
mov r11d, dword [rcx + 0x7c]
mov rbx, rcx
mov qword [rsp + 0x860], rdi
mov eax, r11d
mov rdi, qword [rcx + 0x68]
mov rsi, rdx
shl rax, 0xa
mov edx, 8
lea rcx, [rdi - 0x400]
add rcx, rax
lea rax, [rsp + 0x30]
nop
lea rax, [rax + 0x80]
movups xmm0, xmmword [rcx]
lea rcx, [rcx + 0x80]
movups xmmword [rax - 0x80], xmm0
movups xmm1, xmmword [rcx - 0x70]
movups xmmword [rax - 0x70], xmm1
movups xmm0, xmmword [rcx - 0x60]
movups xmmword [rax - 0x60], xmm0
movups xmm1, xmmword [rcx - 0x50]
movups xmmword [rax - 0x50], xmm1
movups xmm0, xmmword [rcx - 0x40]
movups xmmword [rax - 0x40], xmm0
movups xmm1, xmmword [rcx - 0x30]
movups xmmword [rax - 0x30], xmm1
movups xmm0, xmmword [rcx - 0x20]
movups xmmword [rax - 0x20], xmm0
movups xmm1, xmmword [rcx - 0x10]
movups xmmword [rax - 0x10], xmm1
sub rdx, 1
jne 0x14023c070
mov r10d, dword [rbx + 0x54]
mov r9d, 1
cmp r10d, r9d
jbe 0x14023c1bb
nop word [rax + rax]
lea eax, [r9 + 1]
mov r9d, eax
lea r8, [rsp + 0x30]
imul eax, r11d
lea edx, [rax - 1]
xor eax, eax
shl rdx, 0xa
add rdx, rdi
lea rcx, [rdx + 0x3f8]
cmp r8, rcx
ja 0x14023c136
lea rcx, [rsp + 0x428]
cmp rcx, rdx
jb 0x14023c136
nop word [rax + rax]
mov rcx, qword [rdx + rax*8]
xor qword [rsp + rax*8 + 0x30], rcx
inc rax
cmp rax, 0x80
jl 0x14023c120
jmp 0x14023c1b2
lea rcx, [rsp + 0x30]
sub rcx, rdx
lea r8, [rsp + 0x40]
sub r8, rdx
lea rax, [rdx + 0x20]
mov edx, reloc.WS2_32.dll_recv
nop
movdqu xmm0, xmmword [rcx + rax - 0x20]
movdqu xmm1, xmmword [rax - 0x20]
lea rax, [rax + 0x40]
pxor xmm1, xmm0
movdqu xmmword [rcx + rax - 0x60], xmm1
movdqu xmm0, xmmword [r8 + rax - 0x60]
movdqu xmm1, xmmword [rax - 0x50]
pxor xmm1, xmm0
movdqu xmm0, xmmword [rax - 0x40]
movdqu xmmword [r8 + rax - 0x60], xmm1
movdqu xmm1, xmmword [rax + rcx - 0x40]
pxor xmm1, xmm0
movdqu xmmword [rax + rcx - 0x40], xmm1
movdqu xmm0, xmmword [rax + r8 - 0x40]
movdqu xmm1, xmmword [rax - 0x30]
pxor xmm1, xmm0
movdqu xmmword [rax + r8 - 0x40], xmm1
sub rdx, 1
jne 0x14023c150
cmp r9d, r10d
jb 0x14023c0e0
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0x430]
call fcn.14023ca70
mov r9d, dword [rbx + 8]
lea rax, [rsp + 0x430]
mov rdx, qword [rbx + 0x90]
mov r8, rsi
mov rcx, qword [rbx + 0x88]
mov qword [rsp + 0x28], 0x400
mov qword [rsp + 0x20], rax
call fcn.14023a600
mov edx, 0x400
lea rcx, [rsp + 0x30]
call fcn.140001240
mov edx, 0x400
lea rcx, [rsp + 0x430]
call fcn.140001240
mov edx, dword [rbx + 0x74]
lea r8, str.providersimplementationskdfs_argon2.c
mov rcx, qword [rbx + 0x68]
mov rdi, qword [rsp + 0x860]
shl rdx, 0xa
cmp dword [rbx + 0x64], 0
je 0x14023c24b
mov r9d, 0x310
call fcn.1401a43f0
jmp 0x14023c256
mov r9d, 0x313
call fcn.14017a100
mov rcx, qword [rsp + 0x830]
xor rcx, rsp
call fcn.1403b2500
mov rbx, qword [rsp + 0x868]
add rsp, 0x840
pop rsi
ret
Function at 0x14023fca0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
mov eax, Ordinal_50
call fcn.1403b2fd0
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 0x14023fdc5
cmp ebx, 8
jb 0x14023fdc5
lea rax, [rbx - 1]
lea rcx, [rax + rdx]
add rax, r8
cmp rdx, rax
ja 0x14023fcf9
cmp rcx, r8
jae 0x14023fdc5
sub r8, rdx
cmp ebx, 0x40
jb 0x14023fd91
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]
pxor xmm1, xmm0
lea rax, [r9 + rcx]
movdqu xmmword [rcx - 0x50], xmm1
movdqu xmm0, xmmword [rcx - 0x40]
movdqu xmm1, xmmword [r8 + 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 [r8 + rcx - 0x20]
pxor xmm1, xmm0
movdqu xmmword [rcx - 0x20], xmm1
cmp rax, rsi
jl 0x14023fd20
mov rsi, qword [rsp + 0x48]
mov eax, ebx
and al, 0x3f
cmp al, 8
jb 0x14023fdc5
mov ecx, ebx
movsxd rax, r10d
and ecx, 0xfffffff8
movsxd r9, ecx
lea rcx, [rax + rdx]
movq xmm0, qword [rcx]
add r10d, 8
movq xmm1, qword [r8 + rcx]
pxor xmm1, xmm0
movq qword [rcx], xmm1
add rcx, 8
mov rax, rcx
sub rax, rdx
cmp rax, r9
jl 0x14023fda0
movsxd rcx, r10d
mov r8, rbx
cmp rcx, rbx
jge 0x14023fdf1
sub r11, rdx
lea rax, [rcx + rdx]
sub r8, rcx
nop word [rax + rax]
movzx ecx, byte [rax + r11]
xor byte [rax], cl
lea rax, [rax + 1]
sub r8, 1
jne 0x14023fde0
mov rcx, qword [rbp + 0x10]
lea r8, [rsp + 0x58]
mov r9, rdx
mov dword [rsp + 0x20], ebx
call fcn.14016ea80
mov rbp, qword [rsp + 0x40]
test eax, eax
je 0x14023fe24
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 0x14023ffd0
Capabilities:
Encode data using xor

Disassembly:
mov r10, rcx
test rdx, rdx
je 0x140240058
test r8, r8
je 0x140240058
mov r9, qword [rcx + 0x28]
cmp r8, r9
cmovb r9, r8
test r9, r9
je 0x140240012
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 0x140240000
mov rax, qword [r10 + 0x28]
cmp r8, rax
jbe 0x140240058
sub r8, rax
cmp r8, 0x10
jbe 0x14024002c
mov r8d, reloc.WS2_32.dll_recv
jmp 0x140240031
test r8, r8
je 0x140240058
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 0x140240040
ret
Function at 0x1402717c0
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.1403b2fd0
sub rsp, rax
mov rax, qword [0x1404efec0]
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 0x1402719b6
mov r12, qword [rsp + 0x28]
sub r15, rdi
mov r14, qword [rsp + 0x30]
nop dword [rax]
dec esi
test ebx, ebx
jne 0x14027194b
mov r9, r14
lea rcx, [rsp + 0x20]
mov r8, r12
mov rdx, r13
call fcn.14026f250
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 0x1402718e0
mov r14, qword [rsp + 0x38]
mov r12, qword [rsp + 0x40]
test ebp, ebp
je 0x1402719b6
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.1403b2500
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 0x140273660
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, 0x40
call fcn.1403b2fd0
sub rsp, rax
mov rax, qword [0x1404efec0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov r12, qword [rsp + 0xa8]
xor ebp, ebp
mov r14, qword [rsp + 0xa0]
mov r13, r9
mov esi, r8d
mov r15, rdx
mov rdi, rcx
mov ebx, dword [r12]
test ebx, ebx
jns 0x1402736bf
mov dword [r12], 0xffffffff
jmp 0x14027383f
movzx r8d, byte [r14]
movzx r9d, byte [r14 + 1]
movzx eax, byte [r14 + 2]
movzx ecx, byte [r14 + 6]
movzx edx, byte [r14 + 4]
movzx r10d, byte [r14 + 5]
shl eax, 8
shl r9d, 0x10
shl r8d, 0x18
or r9d, r8d
shl edx, 0x18
or r9d, eax
shl r10d, 0x10
movzx eax, byte [r14 + 3]
or r10d, edx
or r9d, eax
shl ecx, 8
movzx eax, byte [r14 + 7]
or ecx, eax
mov dword [rsp + 0x20], r9d
or r10d, ecx
mov byte [rsp + 0x2b], r9b
mov eax, r9d
mov dword [rsp + 0x24], r10d
shr eax, 0x10
mov byte [rsp + 0x29], al
mov eax, r9d
shr eax, 8
mov byte [rsp + 0x2a], al
mov eax, r10d
shr eax, 0x10
mov byte [rsp + 0x2d], al
mov eax, r10d
shr eax, 8
mov byte [rsp + 0x2e], al
mov byte [rsp + 0x2f], r10b
bswap r8d
mov byte [rsp + 0x28], r8b
bswap edx
mov byte [rsp + 0x2c], dl
test esi, esi
je 0x14027383b
sub r15, rdi
movzx r8d, r10b
movzx edx, r9b
nop dword [rax]
dec esi
test ebx, ebx
jne 0x1402737da
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.140272c20
mov r9d, dword [rsp + 0x20]
mov eax, r9d
mov r10d, dword [rsp + 0x24]
mov edx, r9d
shr eax, 0x18
mov r8d, r10d
mov byte [rsp + 0x28], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x29], al
mov eax, r9d
shr eax, 8
mov byte [rsp + 0x2a], al
mov eax, r10d
shr eax, 0x18
mov byte [rsp + 0x2c], al
mov eax, r10d
shr eax, 0x10
mov byte [rsp + 0x2d], al
mov eax, r10d
shr eax, 8
mov byte [rsp + 0x2e], al
inc ebp
mov byte [rsp + 0x2b], dl
mov byte [rsp + 0x2f], r8b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x28]
xor cl, byte [rdi]
mov byte [r15 + rdi], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x140273770
test ebp, ebp
je 0x14027383b
mov eax, r9d
mov byte [r14 + 3], dl
shr eax, 0x18
mov byte [r14], al
mov eax, r9d
shr eax, 0x10
mov byte [r14 + 1], al
mov eax, r10d
shr eax, 0x18
mov byte [r14 + 4], al
mov eax, r10d
shr eax, 0x10
shr r9d, 8
shr r10d, 8
mov byte [r14 + 6], r10b
mov byte [r14 + 2], r9b
mov byte [r14 + 5], al
mov byte [r14 + 7], r8b
mov dword [r12], ebx
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1403b2500
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140275da0
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, 0x40
call fcn.1403b2fd0
sub rsp, rax
mov rax, qword [0x1404efec0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov r14, qword [rsp + 0xa0]
mov esi, r8d
mov r12, qword [rsp + 0xa8]
mov r13, r9
mov rdi, rcx
mov r15, rdx
xor ebp, ebp
movzx r10d, byte [r14]
movzx r8d, byte [r14 + 1]
movzx eax, byte [r14 + 2]
movzx ecx, byte [r14 + 6]
movzx edx, byte [r14 + 4]
movzx r9d, byte [r14 + 5]
mov ebx, dword [r12]
shl eax, 8
shl r8d, 0x10
shl r10d, 0x18
or r8d, r10d
shl edx, 0x18
or r8d, eax
shl r9d, 0x10
movzx eax, byte [r14 + 3]
or r9d, edx
or r8d, eax
shl ecx, 8
movzx eax, byte [r14 + 7]
or ecx, eax
mov dword [rsp + 0x20], r8d
or r9d, ecx
mov byte [rsp + 0x2b], r8b
mov eax, r8d
mov dword [rsp + 0x24], r9d
shr eax, 0x10
mov byte [rsp + 0x29], al
mov eax, r8d
shr eax, 8
mov byte [rsp + 0x2a], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x2d], al
mov eax, r9d
shr eax, 8
mov byte [rsp + 0x2e], al
mov byte [rsp + 0x2f], r9b
bswap r10d
mov byte [rsp + 0x28], r10b
bswap edx
mov byte [rsp + 0x2c], dl
test esi, esi
je 0x140275f63
sub r15, rdi
movzx r10d, r9b
movzx edx, r8b
dec esi
test ebx, ebx
jne 0x140275f02
mov rdx, r13
lea rcx, [rsp + 0x20]
call fcn.1402756e0
mov r8d, dword [rsp + 0x20]
mov eax, r8d
mov r9d, dword [rsp + 0x24]
mov edx, r8d
shr eax, 0x18
mov r10d, r9d
mov byte [rsp + 0x28], al
mov eax, r8d
shr eax, 0x10
mov byte [rsp + 0x29], al
mov eax, r8d
shr eax, 8
mov byte [rsp + 0x2a], al
mov eax, r9d
shr eax, 0x18
mov byte [rsp + 0x2c], al
mov eax, r9d
shr eax, 0x10
mov byte [rsp + 0x2d], al
mov eax, r9d
shr eax, 8
mov byte [rsp + 0x2e], al
inc ebp
mov byte [rsp + 0x2b], dl
mov byte [rsp + 0x2f], r10b
movsxd rax, ebx
movzx ecx, byte [rsp + rax + 0x28]
xor cl, byte [rdi]
mov byte [r15 + rdi], cl
inc rdi
inc ebx
and ebx, 7
test esi, esi
jne 0x140275e98
test ebp, ebp
je 0x140275f63
mov eax, r8d
mov byte [r14 + 3], dl
shr eax, 0x18
mov byte [r14], al
mov eax, r8d
shr eax, 0x10
mov byte [r14 + 1], al
mov eax, r9d
shr eax, 0x18
mov byte [r14 + 4], al
mov eax, r9d
shr eax, 0x10
shr r8d, 8
shr r9d, 8
mov byte [r14 + 6], r9b
mov byte [r14 + 2], r8b
mov byte [r14 + 5], al
mov byte [r14 + 7], r10b
mov dword [r12], ebx
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1403b2500
mov rbx, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret