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

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
push r14
push r15
sub rsp, 0x20
cmp qword [rcx + 0x38], 0
mov r15, qword [rcx + 0x168]
mov rbx, r8
mov r8, qword [rcx + 0x160]
mov r14, rdx
mov rsi, rcx
je 0x1401507c0
mov eax, 0xfffffffe
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rsi
ret
mov rcx, qword [rcx + 0x30]
movabs rax, 0x2000000000000000
add rcx, rbx
cmp rcx, rax
ja 0x14015088e
cmp rcx, rbx
jb 0x14015088e
mov qword [rsp + 0x48], rdi
mov edi, dword [rsi + 0x174]
mov qword [rsi + 0x30], rcx
test edi, edi
je 0x140150823
test rbx, rbx
je 0x140150814
movzx eax, byte [r14]
mov ecx, edi
inc r14
xor byte [rcx + rsi + 0x40], al
dec rbx
inc edi
and edi, 0xf
jne 0x1401507f6
jmp 0x140150818
test edi, edi
jne 0x140150872
lea rdx, [rsi + 0x60]
lea rcx, [rsi + 0x40]
call r8
mov qword [rsp + 0x40], rbp
mov rbp, rbx
and rbp, 0xfffffffffffffff0
je 0x140150848
lea rdx, [rsi + 0x60]
lea rcx, [rsi + 0x40]
mov r9, rbp
mov r8, r14
call r15
add r14, rbp
sub rbx, rbp
mov rbp, qword [rsp + 0x40]
test rbx, rbx
je 0x140150872
mov edi, ebx
lea rcx, [rsi + 0x40]
sub r14, rsi
nop dword [rax + rax]
movzx eax, byte [r14 + rcx - 0x40]
lea rcx, [rcx + 1]
xor byte [rcx - 1], al
dec rbx
jne 0x140150860
mov dword [rsi + 0x174], edi
mov rdi, qword [rsp + 0x48]
xor eax, eax
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rsi
ret
or eax, 0xffffffff
mov rbx, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rsi
ret
Function at 0x140150e30
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rdi
push r14
push r15
sub rsp, 0x50
mov rax, qword [rcx + 0x180]
mov rdi, qword [rcx + 0x160]
mov rbx, rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x168]
mov rcx, qword [rcx + 0x38]
mov qword [rsp + 0x38], rax
add rcx, r9
movabs rax, 0xfffffffe0
mov r14, r9
mov r15, r8
mov rbp, rdx
cmp rcx, rax
ja 0x14015107d
cmp rcx, r9
jb 0x14015107d
cmp dword [rbx + 0x174], 0
mov qword [rsp + 0x88], rsi
mov qword [rbx + 0x38], rcx
mov qword [rsp + 0x48], r12
je 0x140150eb8
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
call rdi
mov dword [rbx + 0x174], 0
mov esi, dword [rbx + 0x170]
mov r12d, dword [rbx + 0xc]
bswap r12d
mov dword [rsp + 0x80], esi
test esi, esi
je 0x140150f12
test r14, r14
je 0x140150f00
mov ecx, esi
inc r15
inc rbp
movzx eax, byte [rcx + rbx + 0x10]
dec r14
xor al, byte [rbp - 1]
mov byte [r15 - 1], al
xor byte [rcx + rbx + 0x40], al
inc esi
and esi, 0xf
mov dword [rsp + 0x80], esi
jne 0x140150ed0
jmp 0x140150f08
test esi, esi
jne 0x14015105c
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
call rdi
mov r10, qword [rsp + 0xa0]
mov qword [rsp + 0x40], r13
cmp r14, 0xc00
jb 0x140150fc5
movabs rax, 0xaaaaaaaaaaaaaaab
mul r14
mov rdi, rdx
shr rdi, 0xb
imul rax, rdi, 0xfffffffffffff400
add r14, rax
mov qword [rsp + 0x98], r14
mov r14, qword [rsp + 0x30]
nop word [rax + rax]
mov r9, r14
mov r8d, 0xc0
mov rdx, r15
mov rcx, rbp
mov qword [rsp + 0x20], rbx
call r10
add r12d, 0xc0
lea rdx, [rbx + 0x60]
mov eax, r12d
lea rcx, [rbx + 0x40]
mov r9d, 0xc00
bswap eax
mov r8, r15
mov dword [rbx + 0xc], eax
call qword [rsp + 0x38]
mov r10, qword [rsp + 0xa0]
add r15, 0xc00
add rbp, 0xc00
dec rdi
jne 0x140150f60
mov esi, dword [rsp + 0x80]
mov r14, qword [rsp + 0x98]
mov r13, r14
and r13, 0xfffffffffffffff0
je 0x140151011
mov r9, qword [rsp + 0x30]
mov rdi, r13
mov rdx, r15
shr rdi, 4
mov rcx, rbp
mov qword [rsp + 0x20], rbx
mov r8, rdi
call r10
add r12d, edi
lea rdx, [rbx + 0x60]
mov eax, r12d
lea rcx, [rbx + 0x40]
mov r9, r13
bswap eax
mov r8, r15
add rbp, r13
mov dword [rbx + 0xc], eax
sub r14, r13
call qword [rsp + 0x38]
add r15, r13
mov r13, qword [rsp + 0x40]
test r14, r14
je 0x14015105c
mov r8, qword [rsp + 0x30]
lea rdx, [rbx + 0x10]
mov rcx, rbx
call qword [rbx + 0x178]
inc r12d
bswap r12d
mov dword [rbx + 0xc], r12d
nop word [rax + rax]
mov ecx, esi
inc esi
movzx edx, byte [rcx + rbp]
movzx eax, byte [rcx + rbx + 0x10]
xor edx, eax
mov byte [rcx + r15], dl
xor byte [rcx + rbx + 0x40], dl
dec r14
jne 0x140151040
mov r12, qword [rsp + 0x48]
mov dword [rbx + 0x170], esi
mov rsi, qword [rsp + 0x88]
xor eax, eax
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rbp
pop rbx
ret
or eax, 0xffffffff
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rbp
pop rbx
ret
Function at 0x140151090
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rdi
push r14
push r15
sub rsp, 0x50
mov rax, qword [rcx + 0x180]
mov rdi, qword [rcx + 0x160]
mov rbx, rcx
mov qword [rsp + 0x30], rax
mov rax, qword [rcx + 0x168]
mov rcx, qword [rcx + 0x38]
mov qword [rsp + 0x38], rax
add rcx, r9
movabs rax, 0xfffffffe0
mov r14, r9
mov rbp, r8
mov r15, rdx
cmp rcx, rax
ja 0x1401512bd
cmp rcx, r9
jb 0x1401512bd
cmp dword [rbx + 0x174], 0
mov qword [rsp + 0x88], rsi
mov qword [rbx + 0x38], rcx
mov qword [rsp + 0x48], r12
je 0x140151118
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
call rdi
mov dword [rbx + 0x174], 0
mov esi, dword [rbx + 0x170]
mov r12d, dword [rbx + 0xc]
bswap r12d
mov dword [rsp + 0x80], esi
test esi, esi
je 0x140151174
test r14, r14
je 0x140151162
movzx edx, byte [r15]
mov ecx, esi
inc rbp
movzx eax, byte [rcx + rbx + 0x10]
inc r15
dec r14
xor al, dl
mov byte [rbp - 1], al
xor byte [rcx + rbx + 0x40], dl
inc esi
and esi, 0xf
mov dword [rsp + 0x80], esi
jne 0x140151130
jmp 0x14015116a
test esi, esi
jne 0x14015129c
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
call rdi
mov qword [rsp + 0x40], r13
mov r13, qword [rsp + 0xa0]
cmp r14, 0xc00
jb 0x140151207
movabs rax, 0xaaaaaaaaaaaaaaab
mul r14
mov rdi, rdx
shr rdi, 0xb
imul rax, rdi, 0xfffffffffffff400
add r14, rax
nop dword [rax + rax]
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
mov r9d, 0xc00
mov r8, r15
call qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
mov r8d, 0xc0
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rbx
call r13
add r12d, 0xc0
add rbp, 0xc00
mov eax, r12d
add r15, 0xc00
bswap eax
mov dword [rbx + 0xc], eax
dec rdi
jne 0x1401511b0
mov esi, dword [rsp + 0x80]
mov r13, r14
and r13, 0xfffffffffffffff0
je 0x140151257
lea rdx, [rbx + 0x60]
lea rcx, [rbx + 0x40]
mov rdi, r13
mov r9, r13
mov r8, r15
shr rdi, 4
call qword [rsp + 0x38]
mov r9, qword [rsp + 0x30]
mov r8, rdi
mov rdx, rbp
mov rcx, r15
mov qword [rsp + 0x20], rbx
call qword [rsp + 0xa0]
add r12d, edi
add rbp, r13
mov eax, r12d
add r15, r13
sub r14, r13
bswap eax
mov dword [rbx + 0xc], eax
mov r13, qword [rsp + 0x40]
test r14, r14
je 0x14015129c
mov r8, qword [rsp + 0x30]
lea rdx, [rbx + 0x10]
mov rcx, rbx
call qword [rbx + 0x178]
inc r12d
bswap r12d
mov dword [rbx + 0xc], r12d
nop dword [rax]
mov edx, esi
inc esi
movzx ecx, byte [rdx + r15]
movzx eax, byte [rdx + rbx + 0x10]
xor byte [rdx + rbx + 0x40], cl
xor al, cl
mov byte [rdx + rbp], al
dec r14
jne 0x140151280
mov r12, qword [rsp + 0x48]
mov dword [rbx + 0x170], esi
mov rsi, qword [rsp + 0x88]
xor eax, eax
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rbp
pop rbx
ret
or eax, 0xffffffff
add rsp, 0x50
pop r15
pop r14
pop rdi
pop rbp
pop rbx
ret
Function at 0x140151440
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], r9
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
cmp dword [rsp + 0x90], 0
mov r15, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov ebx, dword [r15]
mov r10, r9
mov rdi, r8
mov rsi, rdx
mov r14, rcx
je 0x1401515af
test ebx, ebx
je 0x1401514b7
nop word [rax + rax]
test rdi, rdi
je 0x1401514b7
movzx eax, byte [r14]
mov ecx, ebx
inc rsi
movzx edx, byte [rcx + rbp]
inc r14
dec rdi
xor edx, eax
inc ebx
mov byte [rcx + rbp], dl
mov byte [rsi - 1], dl
and ebx, 0xf
jne 0x140151490
mov r9, qword [rsp + 0x98]
cmp rdi, 0x10
jb 0x140151573
mov r15, rsi
mov r13, rdi
mov r12, r14
shr r13, 4
sub r15, rbp
sub r12, rbp
imul rax, r13, 0xfffffffffffffff0
add rdi, rax
mov rax, r13
shl rax, 4
add rsi, rax
add r14, rax
mov qword [rsp + 0x68], rsi
mov rsi, qword [rsp + 0x78]
nop word [rax + rax]
mov r8, rsi
mov rdx, rbp
mov rcx, rbp
call r9
cmp ebx, 0x10
jae 0x14015154a
mov edx, reloc.WS2_32.dll_ntohs
mov ecx, ebx
sub edx, ebx
add rcx, rbp
shr edx, 3
inc edx
nop dword [rax]
nop word [rax + rax]
mov rax, qword [r12 + rcx]
lea rcx, [rcx + 8]
xor qword [rcx - 8], rax
mov rax, qword [rcx - 8]
mov qword [r15 + rcx - 8], rax
dec rdx
jne 0x140151530
mov r9, qword [rsp + 0x98]
add r15, 0x10
add r12, 0x10
xor ebx, ebx
dec r13
jne 0x140151500
mov rsi, qword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov r15, qword [rsp + 0x88]
test rdi, rdi
je 0x1401516ba
mov r8, r10
mov rdx, rbp
mov rcx, rbp
call r9
nop dword [rax + rax]
mov edx, ebx
inc ebx
movzx ecx, byte [rdx + r14]
movzx eax, byte [rdx + rbp]
xor ecx, eax
mov byte [rdx + rbp], cl
mov byte [rdx + rsi], cl
dec rdi
jne 0x140151590
jmp 0x1401516ba
test ebx, ebx
je 0x1401515da
test rdi, rdi
je 0x1401515da
movzx edx, byte [r14]
mov ecx, ebx
inc rsi
movzx eax, byte [rcx + rbp]
inc r14
dec rdi
xor al, dl
inc ebx
mov byte [rsi - 1], al
mov byte [rcx + rbp], dl
and ebx, 0xf
jne 0x1401515b3
mov r13, qword [rsp + 0x98]
cmp rdi, 0x10
jb 0x140151684
mov r12, rdi
mov r15, rsi
shr r12, 4
sub r15, rbp
imul rax, r12, 0xfffffffffffffff0
add rdi, rax
mov qword [rsp + 0x70], rdi
mov rdi, qword [rsp + 0x78]
nop word [rax + rax]
mov r8, rdi
mov rdx, rbp
mov rcx, rbp
call r13
cmp ebx, 0x10
jae 0x14015165f
mov r9d, reloc.WS2_32.dll_ntohs
mov r8d, ebx
mov r10, r14
sub r9d, ebx
add r8, rbp
sub r10, rsi
shr r9d, 3
inc r9d
nop dword [rax]
lea rcx, [r15 + r8]
lea r8, [r8 + 8]
mov rdx, qword [rcx + r10]
mov rax, rdx
xor rax, qword [r8 - 8]
mov qword [rcx], rax
mov qword [r8 - 8], rdx
dec r9
jne 0x140151640
add rsi, 0x10
add r15, 0x10
add r14, 0x10
xor ebx, ebx
dec r12
jne 0x140151610
mov rdi, qword [rsp + 0x70]
mov r10, qword [rsp + 0x78]
mov r15, qword [rsp + 0x88]
test rdi, rdi
je 0x1401516ba
mov r8, r10
mov rdx, rbp
mov rcx, rbp
call r13
nop word [rax + rax]
mov ecx, ebx
inc ebx
movzx edx, byte [rcx + r14]
movzx eax, byte [rcx + rbp]
xor al, dl
mov byte [rcx + rsi], al
mov byte [rcx + rbp], dl
dec rdi
jne 0x1401516a0
mov dword [r15], ebx
mov rbx, qword [rsp + 0x60]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140151e90
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r15
sub rsp, 0x40
mov r15, qword [rsp + 0xb0]
mov rbp, rdx
mov rdx, qword [rsp + 0xa8]
mov ebx, dword [r15]
mov r10, r9
mov rdi, r8
mov r12, rcx
test ebx, ebx
je 0x140151ee9
test rdi, rdi
je 0x140151ee9
mov eax, ebx
inc rbp
inc r12
movzx ecx, byte [rax + rdx]
dec rdi
xor cl, byte [r12 - 1]
inc ebx
mov byte [rbp - 1], cl
and ebx, 0xf
jne 0x140151ec6
mov r9, qword [rsp + 0xb8]
mov r13, qword [rsp + 0xa0]
mov esi, reloc.WS2_32.dll_recv
mov qword [rsp + 0x38], r14
cmp rdi, rsi
jb 0x140151fe4
mov rcx, rdi
mov r14, rbp
mov r15, r12
shr rcx, 4
sub r14, rdx
sub r15, rdx
imul rax, rcx, 0xfffffffffffffff0
add rdi, rax
mov rax, rcx
shl rax, 4
mov qword [rsp + 0x90], rdi
mov rdi, qword [rsp + 0x98]
add rbp, rax
add r12, rax
mov qword [rsp + 0x80], r12
mov qword [rsp + 0x88], rbp
mov rbp, qword [rsp + 0xa8]
mov r12, rcx
nop
mov r8, rdi
mov rdx, rbp
mov rcx, r13
call r9
mov edx, esi
nop
dec edx
inc byte [rdx + r13]
jne 0x140151f7c
test edx, edx
jne 0x140151f70
cmp ebx, esi
jae 0x140151fa7
mov edx, reloc.WS2_32.dll_ntohs
mov eax, ebx
sub edx, ebx
add rax, rbp
shr edx, 3
inc edx
mov rcx, qword [r15 + rax]
lea rax, [rax + 8]
xor rcx, qword [rax - 8]
mov qword [r14 + rax - 8], rcx
dec rdx
jne 0x140151f91
mov r9, qword [rsp + 0xb8]
add r14, rsi
add r15, rsi
xor ebx, ebx
dec r12
jne 0x140151f60
mov rdi, qword [rsp + 0x90]
mov rbp, qword [rsp + 0x88]
mov r12, qword [rsp + 0x80]
mov r10, qword [rsp + 0x98]
mov r15, qword [rsp + 0xb0]
test rdi, rdi
je 0x140152025
mov r14, qword [rsp + 0xa8]
mov r8, r10
mov rcx, r13
mov rdx, r14
call r9
nop dword [rax]
dec esi
inc byte [rsi + r13]
jne 0x140152010
test esi, esi
jne 0x140152000
nop dword [rax]
mov ecx, ebx
inc ebx
movzx eax, byte [rcx + r12]
xor al, byte [rcx + r14]
mov byte [rcx + rbp], al
dec rdi
jne 0x140152010
mov dword [r15], ebx
mov r14, qword [rsp + 0x38]
add rsp, 0x40
pop r15
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140152040
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov rbx, r8
mov r8, qword [rsp + 0xa0]
mov r14, rdx
mov edi, dword [r8]
mov rbp, rcx
mov dword [rsp + 0x80], edi
test edi, edi
je 0x1401520a9
mov rdx, qword [rsp + 0x98]
nop dword [rax + rax]
test rbx, rbx
je 0x1401520a2
mov eax, edi
inc r14
inc rbp
movzx ecx, byte [rax + rdx]
dec rbx
xor cl, byte [rbp - 1]
inc edi
mov byte [r14 - 1], cl
and edi, 0xf
jne 0x140152080
mov dword [rsp + 0x80], edi
mov r13, qword [rsp + 0x90]
mov r10, qword [rsp + 0xa8]
mov qword [rsp + 0x70], rsi
mov r12d, dword [r13 + 0xc]
mov r15d, reloc.WS2_32.dll_inet_ntoa
bswap r12d
cmp rbx, 0x10
jb 0x140152169
mov rdi, qword [rsp + 0x88]
mov eax, 0x10000000
mov rsi, rbx
shr rsi, 4
cmp rsi, rax
cmova rsi, rax
add r12d, esi
mov eax, r12d
cmp rax, rsi
jae 0x140152101
sub rsi, rax
xor r12d, r12d
mov r9, rdi
mov r8, rsi
mov rdx, r14
mov rcx, rbp
mov qword [rsp + 0x20], r13
call r10
mov eax, r12d
bswap eax
mov dword [r13 + 0xc], eax
test r12d, r12d
jne 0x140152132
mov edx, r15d
dec edx
inc byte [rdx + r13]
jne 0x140152132
test edx, edx
jne 0x140152126
mov r10, qword [rsp + 0xa8]
shl rsi, 4
mov eax, 0x10000000
sub rbx, rsi
add r14, rsi
add rbp, rsi
cmp rbx, 0x10
jae 0x1401520e2
mov edi, dword [rsp + 0x80]
mov r8, qword [rsp + 0xa0]
mov r9, qword [rsp + 0x88]
test rbx, rbx
je 0x1401521d0
mov rsi, qword [rsp + 0x98]
xor eax, eax
mov qword [rsp + 0x20], r13
mov qword [rsi], rax
lea r8d, [rax + 1]
mov rdx, rsi
mov rcx, rsi
mov qword [rsi + 8], rax
call r10
inc r12d
bswap r12d
mov dword [r13 + 0xc], r12d
jne 0x1401521b0
nop dword [rax]
dec r15d
inc byte [r15 + r13]
jne 0x1401521b0
test r15d, r15d
jne 0x1401521a0
nop
mov ecx, edi
inc edi
movzx eax, byte [rcx + rbp]
xor al, byte [rcx + rsi]
mov byte [rcx + r14], al
dec rbx
jne 0x1401521b0
mov rax, qword [rsp + 0xa0]
mov dword [rax], edi
jmp 0x1401521d3
mov dword [r8], edi
mov rsi, qword [rsp + 0x70]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rbp
pop rbx
ret
Function at 0x1401521f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r12
push r15
sub rsp, 0x28
mov rsi, qword [rsp + 0x88]
mov rbp, qword [rsp + 0x80]
mov r10, r9
mov ebx, dword [rsi]
mov rdi, r8
mov r15, rdx
mov r12, rcx
test ebx, ebx
je 0x140152247
test rdi, rdi
je 0x140152247
mov eax, ebx
inc r15
inc r12
movzx ecx, byte [rax + rbp]
dec rdi
xor cl, byte [r12 - 1]
inc ebx
mov byte [r15 - 1], cl
and ebx, 0xf
jne 0x140152223
mov r9, qword [rsp + 0x90]
cmp rdi, 0x10
jb 0x140152309
mov qword [rsp + 0x60], r13
mov rsi, r15
mov r13, rdi
shr r13, 4
mov qword [rsp + 0x20], r14
mov r14, r12
sub rsi, rbp
sub r14, rbp
imul rax, r13, 0xfffffffffffffff0
add rdi, rax
mov rax, r13
shl rax, 4
add r15, rax
add r12, rax
mov qword [rsp + 0x68], r15
mov r15, qword [rsp + 0x78]
mov r8, r15
mov rdx, rbp
mov rcx, rbp
call r9
cmp ebx, 0x10
jae 0x1401522d6
mov edx, reloc.WS2_32.dll_ntohs
mov eax, ebx
sub edx, ebx
add rax, rbp
shr edx, 3
inc edx
nop word [rax + rax]
mov rcx, qword [r14 + rax]
lea rax, [rax + 8]
xor rcx, qword [rax - 8]
mov qword [rsi + rax - 8], rcx
dec rdx
jne 0x1401522c0
mov r9, qword [rsp + 0x90]
add rsi, 0x10
add r14, 0x10
xor ebx, ebx
dec r13
jne 0x140152294
mov r15, qword [rsp + 0x68]
mov r10, qword [rsp + 0x78]
mov rsi, qword [rsp + 0x88]
mov r14, qword [rsp + 0x20]
mov r13, qword [rsp + 0x60]
test rdi, rdi
je 0x140152335
mov r8, r10
mov rdx, rbp
mov rcx, rbp
call r9
nop word [rax + rax]
mov ecx, ebx
inc ebx
movzx eax, byte [rcx + r12]
xor al, byte [rcx + rbp]
mov byte [rcx + r15], al
dec rdi
jne 0x140152320
mov dword [rsi], ebx
add rsp, 0x28
pop r15
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140152350
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x20
mov rbp, qword [rsp + 0x70]
mov r13, qword [rsp + 0x78]
mov r12, r9
mov rdi, r8
mov rbx, rdx
mov rsi, rcx
mov r10, rbp
cmp r8, 0x10
jb 0x1401523d8
mov rbp, r8
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
nop dword [rax]
mov r8, rbx
sub r10, rsi
mov rcx, rsi
sub r8, rsi
mov edx, 2
mov rax, qword [r10 + rcx]
lea rcx, [rcx + 8]
xor rax, qword [rcx - 8]
mov qword [r8 + rcx - 8], rax
dec rdx
jne 0x1401523a1
mov r8, r12
mov rdx, rbx
mov rcx, rbx
call r13
mov r10, rbx
add rbx, 0x10
add rsi, 0x10
dec rbp
jne 0x140152390
mov rbp, qword [rsp + 0x70]
test rdi, rdi
je 0x1401524f2
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r15
nop dword [rax + rax]
mov r8, r10
mov r9, rbx
mov r11d, 1
mov r14d, 2
mov r15d, 3
xor eax, eax
sub r8, rsi
sub r9, rsi
sub r11, rsi
sub r14, rsi
sub r15, rsi
nop dword [rax]
cmp rax, rdi
jae 0x140152494
lea rdx, [rax + rsi]
movzx ecx, byte [r8 + rdx]
xor cl, byte [rdx]
mov byte [r9 + rdx], cl
lea rcx, [r11 + rdx]
cmp rcx, rdi
jae 0x140152491
movzx ecx, byte [rsi + rax + 1]
xor cl, byte [rax + r10 + 1]
mov byte [rbx + rax + 1], cl
lea rcx, [r14 + rdx]
cmp rcx, rdi
jae 0x14015248b
movzx ecx, byte [rsi + rax + 2]
xor cl, byte [rax + r10 + 2]
mov byte [rbx + rax + 2], cl
lea rcx, [r15 + rdx]
cmp rcx, rdi
jae 0x140152485
movzx ecx, byte [rsi + rax + 3]
add rax, 4
xor cl, byte [rax + r10 - 1]
mov byte [rbx + rax - 1], cl
cmp rax, 0x10
jb 0x140152420
jmp 0x1401524c1
add rax, 3
jmp 0x140152494
add rax, 2
jmp 0x140152494
inc rax
cmp rax, 0x10
jae 0x1401524c1
mov edx, reloc.WS2_32.dll_recv
sub r10, rbx
lea rcx, [rax + rbx]
sub rdx, rax
nop dword [rax]
movzx eax, byte [r10 + rcx]
lea rcx, [rcx + 1]
mov byte [rcx - 1], al
dec rdx
jne 0x1401524b0
mov r8, r12
mov rdx, rbx
mov rcx, rbx
call r13
mov r10, rbx
cmp rdi, 0x10
jbe 0x1401524e8
add rsi, 0x10
add rbx, 0x10
sub rdi, 0x10
jne 0x1401523f0
mov r14, qword [rsp + 0x50]
mov r15, qword [rsp + 0x58]
movups xmm0, xmmword [r10]
mov rbx, qword [rsp + 0x60]
movups xmmword [rbp], xmm0
add rsp, 0x20
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140152510
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x50
mov rax, qword [0x1402581e0]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov r14, qword [rsp + 0xb0]
mov r13, r9
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
cmp rcx, rdx
je 0x140152597
mov r15, r14
cmp r8, 0x10
jb 0x14015258d
mov rbp, r8
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
nop
mov r8, r13
mov rdx, rsi
mov rcx, rbx
call fcn.140158eb0
mov rax, qword [r15]
add rsi, 0x10
xor qword [rsi - 0x10], rax
mov rax, qword [r15 + 8]
mov r15, rbx
xor qword [rsi - 8], rax
add rbx, 0x10
dec rbp
jne 0x140152560
movups xmm0, xmmword [r15]
movups xmmword [r14], xmm0
jmp 0x1401525f4
cmp r8, 0x10
jb 0x1401525f4
mov rbp, r8
shr rbp, 4
imul rax, rbp, 0xfffffffffffffff0
add rdi, rax
nop dword [rax + rax]
lea rdx, [rsp + 0x30]
mov r8, r13
mov rcx, rbx
call fcn.140158eb0
mov rcx, qword [rbx]
mov rax, qword [r14]
xor rax, qword [rsp + 0x30]
add rsi, 0x10
add rbx, 0x10
mov qword [rsi - 0x10], rax
mov rax, qword [r14 + 8]
mov qword [r14], rcx
mov rcx, qword [rbx - 8]
xor rax, qword [rsp + 0x38]
mov qword [rsi - 8], rax
mov qword [r14 + 8], rcx
dec rbp
jne 0x1401525b0
test rdi, rdi
je 0x140152768
lea rcx, [rsp + 0x30]
mov qword [rsp + 0xa0], r12
mov rax, r14
sub rax, rcx
lea rcx, [rsp + 0x30]
mov r12d, 2
mov qword [rsp + 0x28], rax
mov eax, 1
mov ebp, 3
sub rax, rcx
lea r15, [rsp + 0x31]
mov qword [rsp + 0x20], rax
lea rax, [rsp + 0x30]
sub r12, rax
lea rax, [rsp + 0x30]
sub rbp, rax
inc rsi
neg r15
nop dword [rax]
lea rdx, [rsp + 0x30]
mov r8, r13
mov rcx, rbx
call fcn.140158eb0
mov r10, qword [rsp + 0x28]
xor eax, eax
lea r9, [r15 + rsi]
nop dword [rax + rax]
cmp rax, rdi
jae 0x14015271f
lea r8, [rsp + 0x30]
add r8, rax
lea rcx, [r15 + r8]
movzx edx, byte [rcx + rbx + 1]
movzx ecx, byte [r8]
xor cl, byte [r10 + r8]
mov byte [r9 + r8], cl
mov rcx, qword [rsp + 0x20]
mov byte [r10 + r8], dl
add rcx, r8
cmp rcx, rdi
jae 0x14015271c
movzx ecx, byte [rsp + rax + 0x31]
movzx edx, byte [rbx + rax + 1]
xor cl, byte [r14 + rax + 1]
mov byte [rsi + rax], cl
lea rcx, [r12 + r8]
mov byte [r14 + rax + 1], dl
cmp rcx, rdi
jae 0x140152716
movzx ecx, byte [rsp + rax + 0x32]
movzx edx, byte [rbx + rax + 2]
xor cl, byte [r14 + rax + 2]
mov byte [rsi + rax + 1], cl
lea rcx, [r8 + rbp]
mov byte [r14 + rax + 2], dl
cmp rcx, rdi
jae 0x140152710
movzx edx, byte [rbx + rax + 3]
movzx ecx, byte [rsp + rax + 0x33]
add rax, 4
xor cl, byte [r14 + rax - 1]
mov byte [rsi + rax - 2], cl
mov byte [r14 + rax - 1], dl
cmp rax, 0x10
jb 0x140152670
jmp 0x14015271f
add rax, 3
jmp 0x14015271f
add rax, 2
jmp 0x14015271f
inc rax
cmp rdi, 0x10
jbe 0x140152739
add rbx, 0x10
add rsi, 0x10
sub rdi, 0x10
jne 0x140152650
jmp 0x140152760
cmp rax, 0x10
jae 0x140152760
mov edx, reloc.WS2_32.dll_recv
sub rbx, r14
lea rcx, [r14 + rax]
sub rdx, rax
nop
movzx eax, byte [rbx + rcx]
lea rcx, [rcx + 1]
mov byte [rcx - 1], al
dec rdx
jne 0x140152750
mov r12, qword [rsp + 0xa0]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1401bddc0
add rsp, 0x50
pop r15
pop r14
pop r13
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140152790
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
sub rsp, 0x50
mov rax, qword [0x1402581e0]
xor rax, rsp
mov qword [rbp - 8], rax
mov rax, qword [rbp + 0x60]
mov r13, qword [rbp + 0x68]
mov rsi, rcx
movzx r10d, byte [rax]
mov ebx, dword [r13]
lea rdi, [rax + 1]
movzx ecx, byte [rdi + 6]
mov qword [rbp - 0x18], rax
movzx eax, byte [rdi]
shl eax, 8
mov r12, rdx
movzx edx, byte [rdi + 3]
or r10d, eax
movzx eax, byte [rdi + 1]
shl ecx, 8
shl eax, 0x10
mov r14d, r8d
lea r8, [rdi + 5]
or r10d, eax
movzx eax, byte [rdi + 2]
xor r15d, r15d
shl eax, 0x18
mov qword [rbp - 0x28], r9
mov qword [rbp - 0x20], r13
or r10d, eax
movzx eax, byte [rdi + 4]
shl eax, 8
mov dword [rbp - 0x30], r10d
mov byte [rbp - 0x10], r10b
or edx, eax
movzx eax, byte [r8]
or ecx, eax
mov eax, r10d
shr eax, 8
shl ecx, 0x10
mov byte [rbp - 0xf], al
or edx, ecx
mov eax, r10d
shr eax, 0x10
mov dword [rbp - 0x2c], edx
mov byte [rbp - 0xc], dl
mov byte [rbp - 0xe], al
mov eax, r10d
shr eax, 0x18
mov byte [rbp - 0xd], al
mov eax, edx
shr eax, 8
mov byte [rbp - 0xb], al
mov eax, edx
shr eax, 0x10
mov byte [rbp - 0xa], al
mov eax, edx
shr eax, 0x18
mov byte [rbp - 9], al
test r14d, r14d
je 0x140152942
mov r13, qword [rbp - 0x28]
sub r12, rsi
movzx r8d, dl
movzx r9d, r10b
nop word [rax + rax]
dec r14d
test ebx, ebx
jne 0x1401528e2
lea rcx, [rbp - 0x30]
mov rdx, r13
call fcn.140153010
mov r10d, dword [rbp - 0x30]
mov edx, dword [rbp - 0x2c]
movzx r9d, byte [rbp - 0x30]
movzx r8d, byte [rbp - 0x2c]
mov eax, r10d
shr eax, 8
mov byte [rbp - 0x10], r9b
mov byte [rbp - 0xc], r8b
mov byte [rbp - 0xf], al
mov eax, r10d
shr eax, 0x10
mov byte [rbp - 0xe], al
mov eax, r10d
shr eax, 0x18
mov byte [rbp - 0xd], al
mov eax, edx
shr eax, 8
mov byte [rbp - 0xb], al
mov eax, edx
shr eax, 0x10
mov byte [rbp - 0xa], al
mov eax, edx
shr eax, 0x18
inc r15d
mov byte [rbp - 9], al
movsxd rax, ebx
inc rsi
movzx ecx, byte [rbp + rax - 0x10]
xor cl, byte [rsi - 1]
inc ebx
mov byte [r12 + rsi - 1], cl
and ebx, 7
test r14d, r14d
jne 0x140152880
mov r13, qword [rbp - 0x20]
test r15d, r15d
je 0x140152942
mov rax, qword [rbp - 0x18]
mov byte [rax], r9b
mov eax, r10d
shr eax, 8
mov byte [rdi], al
mov eax, r10d
shr r10d, 0x18
shr eax, 0x10
mov byte [rdi + 1], al
mov byte [rdi + 2], r10b
mov byte [rdi + 3], r8b
mov eax, edx
shr eax, 8
mov byte [rdi + 4], al
mov eax, edx
shr eax, 0x10
shr edx, 0x18
mov byte [rdi + 5], al
mov byte [rdi + 6], dl
mov dword [r13], ebx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1401bddc0
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret