joyce8/EMBER2024-capa huggingface dataset:
Function at 0x45cd20
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x403183
push rbp
mov rbp, rsp
sub rsp, 0x18
mov rdx, qword [rax]
mov rcx, qword [rax + 8]
mov rax, rdx
call fcn.00408be0
add rsp, 0x18
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045af40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp 0x403160
cmp byte [0x005ef48b], 0
je 0x45cd35
mov rcx, qword [rax + 8]
mov rax, qword [rax]
jmp 0x459f80
jmp 0x403160

Function at 0x45cd40
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
nop
mov eax, dword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x005ef740]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d124b
mul rcx
xor rax, rdx
nop
nop
ret
cmp byte [0x005ef48b], 0
je 0x45cd75
movq xmm0, rbx
pinsrd xmm0, dword [rax], 2
aesenc xmm0, xmmword [0x005efa00]
aesenc xmm0, xmmword [0x005efa10]
aesenc xmm0, xmmword [0x005efa20]
movq rax, xmm0
ret
jmp 0x408e00

Function at 0x45cd80
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
nop
mov rax, qword [rax]
movabs rcx, 0xe7037ed1a0b428db
xor rcx, rax
xor rax, rbx
xor rax, qword [0x005ef740]
movabs rdx, 0xa0761d6478bd642f
xor rdx, rax
mov rax, rcx
mul rdx
xor rax, rdx
mov rcx, rax
movabs rax, 0x1d8e4e27c47d1247
mul rcx
xor rax, rdx
nop
nop
ret
cmp byte [0x005ef48b], 0
je 0x45cdb6
movq xmm0, rbx
pinsrq xmm0, qword [rax], 1
aesenc xmm0, xmmword [0x005efa00]
aesenc xmm0, xmmword [0x005efa10]
aesenc xmm0, xmmword [0x005efa20]
movq rax, xmm0
ret
jmp 0x408e60

Function at 0x45ea80
Capabilities:
Allocate thread local storage

Disassembly:
push rbp
mov rbp, rsp
mov rax, rsp
and rsp, 0xfffffffffffffff0
sub rsp, 0x30
mov qword [rsp + 0x20], rax
mov rax, qword [sym.imp.kernel32.dll_TlsAlloc]
call rax
mov rsp, qword [rsp + 0x20]
mov rcx, rax
cmp rcx, 0x40
jb 0x45eab4
mov rcx, 0x28
jmp 0x45eabf
shl rcx, 3
add rcx, 0x1480
mov qword [0x005ef6a8], rcx
pop rbp
ret

Function at 0x465720
Capabilities:
Encode data using xor

Disassembly:
mov rbx, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rcx, qword [rsp + 0x18]
mov rdx, qword [rsp + 0x20]
test rdx, 0xf
jne 0x46578b
mov rax, 0
movdqu xmm0, xmmword [rsi + rax]
movdqu xmm1, xmmword [rcx + rax]
pxor xmm0, xmm1
movdqu xmmword [rbx + rax], xmm0
add rax, 0x10
cmp rdx, rax
jne 0x465744
ret
sub rdx, 1
mov dil, byte [rsi + rdx]
mov al, byte [rcx + rdx]
xor dil, al
mov byte [rbx + rdx], dil
test rdx, 7
jne 0x465761
cmp rdx, 0
je 0x4657ad
test rdx, 0xf
je 0x46573d
test rdx, 7
jne 0x465761
sub rdx, 8
mov rdi, qword [rsi + rdx]
mov rax, qword [rcx + rdx]
xor rdi, rax
mov qword [rbx + rdx], rdi
cmp rdx, 0x10
jge 0x46573d
ret
Function at 0x473cc0
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
mov rcx, qword [rsp + 8]
mov rax, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
movups xmm1, xmmword [rax]
movups xmm0, xmmword [rbx]
add rax, 0x10
pxor xmm0, xmm1
sub rcx, 0xc
je 0x473cff
jb 0x473d14
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
add rax, 0x20
movups xmm1, xmmword [rax]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x10]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x20]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x30]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x40]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x50]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x60]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x70]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x80]
aesenc xmm0, xmm1
movups xmm1, xmmword [rax + 0x90]
aesenclast xmm0, xmm1
movups xmmword [rdx], xmm0
ret
Function at 0x473d80
Capabilities:
Encrypt data using aes via x86 extensions

Disassembly:
push rbp
mov rbp, rsp
mov rcx, qword [rsp + 0x10]
mov rax, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x28]
movups xmm0, xmmword [rax]
movups xmmword [rbx], xmm0
add rbx, 0x10
pxor xmm4, xmm4
cmp ecx, 0xc
je 0x473e54
jb 0x473eb3
movups xmm2, xmmword [rax + 0x10]
movups xmmword [rbx], xmm2
add rbx, 0x10
aeskeygenassist xmm1, xmm2, 1
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 1
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 2
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 2
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 4
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 4
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 8
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 8
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 0x10
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 0x10
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 0x20
call fcn.00473c60
aeskeygenassist xmm1, xmm0, 0x20
call fcn.00473c80
aeskeygenassist xmm1, xmm2, 0x40
call fcn.00473c60
jmp 0x473f21
movq xmm2, qword [rax + 0x10]
aeskeygenassist xmm1, xmm2, 1
call fcn.00473bc0
aeskeygenassist xmm1, xmm2, 2
call fcn.00473c20
aeskeygenassist xmm1, xmm2, 4
call fcn.00473bc0
aeskeygenassist xmm1, xmm2, 8
call fcn.00473c20
aeskeygenassist xmm1, xmm2, 0x10
call fcn.00473bc0
aeskeygenassist xmm1, xmm2, 0x20
call fcn.00473c20
aeskeygenassist xmm1, xmm2, 0x40
call fcn.00473bc0
aeskeygenassist xmm1, xmm2, 0x80
call fcn.00473c20
jmp 0x473f21
aeskeygenassist xmm1, xmm0, 1
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 2
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 4
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 8
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x10
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x20
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x40
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x80
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x1b
call fcn.00473b80
aeskeygenassist xmm1, xmm0, 0x36
call fcn.00473b80
sub rbx, 0x10
movups xmm1, xmmword [rbx]
movups xmmword [rdx], xmm1
dec rcx
movups xmm1, xmmword [rbx - 0x10]
aesimc xmm0, xmm1
movups xmmword [rdx + 0x10], xmm0
sub rbx, 0x10
add rdx, 0x10
dec rcx
jne 0x473f2e
movups xmm0, xmmword [rbx - 0x10]
movups xmmword [rdx + 0x10], xmm0
pop rbp
ret
Function at 0x474060
Capabilities:
Encode data using xor
Encrypt data using aes via x86 extensions

Disassembly:
mov rdi, qword [rsp + 8]
mov rsi, qword [rsp + 0x10]
mov rdx, qword [rsp + 0x18]
shr rdx, 2
dec rdx
movdqu xmm15, xmmword [0x00526290]
movdqu xmm14, xmmword [0x005262a0]
movdqu xmm0, xmmword [rsi]
movdqu xmm11, xmmword [rsi + 0x10]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x20]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x30]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x40]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x50]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x60]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x70]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x80]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0x90]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xa0]
cmp rdx, 0xc
jb 0x47414b
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xb0]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xc0]
je 0x47414b
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xd0]
aesenc xmm0, xmm11
movdqu xmm11, xmmword [rsi + 0xe0]
aesenclast xmm0, xmm11
pshufb xmm0, xmm15
pshufd xmm11, xmm0, 0xff
movdqu xmm12, xmm0
psrad xmm11, 0x1f
pand xmm11, xmm14
psrld xmm12, 0x1f
pslldq xmm12, 4
pslld xmm0, 1
pxor xmm0, xmm11
pxor xmm0, xmm12
movdqu xmmword [rdi + 0xe0], xmm0
pshufd xmm1, xmm0, 0x4e
pxor xmm1, xmm0
movdqu xmmword [rdi + 0xf0], xmm1
movdqu xmm2, xmm0
movdqu xmm3, xmm1
mov rax, 7
movdqu xmm11, xmm2
movdqu xmm12, xmm2
movdqu xmm13, xmm3
pclmulqdq xmm11, xmm0, 0
pclmulqdq xmm12, xmm0, 0x11
pclmulqdq xmm13, xmm1, 0
pxor xmm13, xmm11
pxor xmm13, xmm12
movdqu xmm4, xmm13
pslldq xmm4, 8
psrldq xmm13, 8
pxor xmm11, xmm4
pxor xmm12, xmm13
movdqu xmm2, xmm14
pclmulqdq xmm2, xmm11, 1
pshufd xmm11, xmm11, 0x4e
pxor xmm11, xmm2
movdqu xmm2, xmm14
pclmulqdq xmm2, xmm11, 1
pshufd xmm11, xmm11, 0x4e
pxor xmm2, xmm11
pxor xmm2, xmm12
movdqu xmmword [rdi + 0xc0], xmm2
pshufd xmm3, xmm2, 0x4e
pxor xmm3, xmm2
movdqu xmmword [rdi + 0xd0], xmm3
dec rax
lea rdi, [rdi - 0x20]
jne 0x4741b0
ret
Function at 0x475e60
Capabilities:
Access peb ldr_data

Disassembly:
cmp rsp, qword [r14 + 0x10]
jbe 0x475f2a
push rbp
mov rbp, rsp
sub rsp, 0x48
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rax
mov qword [rsp], rax
mov qword [rsp + 8], rbx
mov byte [rsp + 0x10], 0
call fcn.00403100
xorps xmm15, xmm15
mov r14, qword [0x005ef6a8]
mov r14, qword gs:[r14]
mov r14, qword [r14]
cmp qword [rsp + 0x18], 0xffffffffffffffff
jne 0x475f0f
mov rcx, qword [rsp + 0x60]
lea rdx, [rcx + 1]
mov qword [rsp + 0x40], rdx
lea rax, [0x0048fe00]
xor ebx, ebx
mov rcx, rdx
call fcn.004452a0
mov rbx, qword [rsp + 0x60]
mov rcx, rax
xor edi, edi
mov rsi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x58]
nop dword [rax]
call fcn.004761c0
inc rbx
cmp rcx, rbx
jae 0x475efe
mov edi, 1
lea rsi, [0x0048fe00]
call fcn.00445380
mov word [rax + rbx*2 - 2], 0
xor edi, edi
xor esi, esi
add rsp, 0x48
pop rbp
ret
xor eax, eax
xor ebx, ebx
mov rcx, rbx
lea rdi, [0x00526858]
lea rsi, [0x00526170]
add rsp, 0x48
pop rbp
ret
mov qword [rsp + 8], rax
mov qword [rsp + 0x10], rbx
call fcn.0045af40
mov rax, qword [rsp + 8]
mov rbx, qword [rsp + 0x10]
jmp fcn.00475e60
Function at 0x1419b70b0
Capabilities:
Decompress data using aplib

Disassembly:
call fcn.1419b7237
push r10
mov r10, rsp
push r10
mov rsi, qword [r10 + 0x10]
mov rdi, qword [r10 + 0x20]
cld
mov dl, 0x80
mov al, byte [rsi]
inc rsi
mov byte [rdi], al
inc rdi
mov ebx, 2
add dl, dl
jne 0x1419b70e1
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x1419b70c7
add dl, dl
jne 0x1419b70ee
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x1419b714e
xor eax, eax
add dl, dl
jne 0x1419b70fd
mov dl, byte [rsi]
inc rsi
adc dl, dl
jae 0x1419b7205
add dl, dl
jne 0x1419b710e
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1419b711b
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1419b7128
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1419b7135
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
je 0x1419b7142
push rdi
mov eax, eax
sub rdi, rax
mov al, byte [rdi]
pop rdi
mov byte [rdi], al
inc rdi
mov ebx, 2
jmp 0x1419b70d6
mov eax, 1
add dl, dl
jne 0x1419b715e
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc eax, eax
add dl, dl
jne 0x1419b716b
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x1419b7153
sub eax, ebx
mov ebx, 1
jne 0x1419b71a4
mov ecx, 1
add dl, dl
jne 0x1419b7186
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc ecx, ecx
add dl, dl
jne 0x1419b7193
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x1419b717b
push rsi
mov rsi, rdi
sub rsi, rbp
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x1419b70d6
dec eax
shl eax, 8
mov al, byte [rsi]
inc rsi
mov ebp, eax
mov ecx, 1
add dl, dl
jne 0x1419b71c0
mov dl, byte [rsi]
inc rsi
adc dl, dl
adc ecx, ecx
add dl, dl
jne 0x1419b71cd
mov dl, byte [rsi]
inc rsi
adc dl, dl
jb 0x1419b71b5
cmp eax, 0x7d00
jae 0x1419b71f3
cmp eax, 0x500
jb 0x1419b71ee
inc ecx
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x1419b70d6
cmp eax, 0x7f
ja 0x1419b71f6
add ecx, 2
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
jmp 0x1419b70d6
mov al, byte [rsi]
inc rsi
xor ecx, ecx
shr al, 1
je 0x1419b722a
adc ecx, 2
mov ebp, eax
push rsi
mov rsi, rdi
sub rsi, rax
rep movsb byte [rdi], byte [rsi]
pop rsi
mov ebx, 1
jmp 0x1419b70d6
pop r10
sub rdi, qword [r10 + 0x20]
mov eax, edi
pop r10
ret 0x20

Function at 0x140001c08
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140001c52
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140001c52
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140001c52
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140001c52
cmp dword [rcx + 0x84], 0xe
jbe 0x140001c52
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140001c54
xor al, al
add rsp, 0x28
ret
Function at 0x180005780
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
xor r8d, r8d
movaps xmmword [rsp + 0x50], xmm7
cmp dword [0x18001f020], 2
mov r10, rdx
mov r9, rcx
jl 0x1800059c9
movdqa xmm7, xmmword [0x18001bfe0]
lea rax, [rdx + 0x3e]
add rcx, 0x3e
cmp r9, rax
ja 0x1800057bd
cmp rcx, rdx
jae 0x1800059c9
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x40], xmm8
movaps xmmword [rsp + 0x30], xmm9
movaps xmmword [rsp + 0x20], xmm10
movaps xmmword [rsp + 0x10], xmm11
movaps xmmword [rsp], xmm12
movdqa xmm4, xmmword [0x18001c200]
lea rcx, [r9 + 8]
movdqa xmm9, xmmword [0x18001c010]
mov eax, 5
movdqa xmm6, xmmword [0x18001c1e0]
sub r10, r9
movdqa xmm11, xmmword [0x18001c000]
movdqa xmm12, xmmword [0x18001c020]
movd xmm8, eax
mov eax, 0x1f
movd xmm5, eax
mov eax, 4
movd xmm10, eax
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [r10 + rcx - 0x18]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [rcx - 0x18], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [r10 + rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rcx - 0x10], xmm3
cmp r8d, 0x20
jl 0x180005830
movaps xmm12, xmmword [rsp]
movaps xmm11, xmmword [rsp + 0x10]
movaps xmm10, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret
sub r10, r9
nop dword [rax]
mov ecx, r8d
lea r9, [r9 + 2]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
inc r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3a
sub ecx, eax
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
add cx, 0x33
xor cx, word [r9 + r10 - 2]
mov word [r9 - 2], cx
cmp r8d, 0x20
jl 0x1800059d0
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret
Function at 0x180005a30
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
xor r8d, r8d
movaps xmmword [rsp + 0x50], xmm7
cmp dword [0x18001f020], 2
mov r10, rdx
jl 0x180005c77
movdqa xmm7, xmmword [0x18001bfe0]
lea rax, [r10 + 0x46]
lea rdx, [rcx + 0x46]
cmp rcx, rax
ja 0x180005a6a
cmp rdx, r10
jae 0x180005c77
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x40], xmm8
movaps xmmword [rsp + 0x30], xmm9
movaps xmmword [rsp + 0x20], xmm10
movaps xmmword [rsp + 0x10], xmm11
movaps xmmword [rsp], xmm12
movdqa xmm4, xmmword [0x18001c200]
lea r9, [rcx + 8]
movdqa xmm9, xmmword [0x18001c010]
mov eax, 5
movdqa xmm6, xmmword [0x18001c1e0]
mov rdx, r10
movdqa xmm11, xmmword [0x18001c000]
sub rdx, rcx
movdqa xmm12, xmmword [0x18001c020]
movd xmm8, eax
mov eax, 0x1f
movd xmm5, eax
mov eax, 4
movd xmm10, eax
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea r9, [r9 + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx + r9 - 0x18]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [r9 - 0x18], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx + r9 - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [r9 - 0x10], xmm3
cmp r8d, 0x20
jl 0x180005ae0
movaps xmm12, xmmword [rsp]
movaps xmm11, xmmword [rsp + 0x10]
movaps xmm10, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x60]
cmp r8d, 0x24
jge 0x180005cd0
movsxd rax, r8d
sub r10, rcx
lea r9, [rcx + rax*2]
mov ecx, r8d
lea r9, [r9 + 2]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
inc r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3a
sub ecx, eax
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
add cx, 0x33
xor cx, word [r9 + r10 - 2]
mov word [r9 - 2], cx
cmp r8d, 0x24
jl 0x180005c81
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret
Function at 0x180005ce0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
xor r8d, r8d
movaps xmmword [rsp + 0x50], xmm7
cmp dword [0x18001f020], 2
mov r10, rdx
jl 0x180005f27
movdqa xmm7, xmmword [0x18001bfe0]
lea rax, [r10 + 0x42]
lea rdx, [rcx + 0x42]
cmp rcx, rax
ja 0x180005d1a
cmp rdx, r10
jae 0x180005f27
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x40], xmm8
movaps xmmword [rsp + 0x30], xmm9
movaps xmmword [rsp + 0x20], xmm10
movaps xmmword [rsp + 0x10], xmm11
movaps xmmword [rsp], xmm12
movdqa xmm4, xmmword [0x18001c200]
lea r9, [rcx + 8]
movdqa xmm9, xmmword [0x18001c010]
mov eax, 5
movdqa xmm6, xmmword [0x18001c1e0]
mov rdx, r10
movdqa xmm11, xmmword [0x18001c000]
sub rdx, rcx
movdqa xmm12, xmmword [0x18001c020]
movd xmm8, eax
mov eax, 0x1f
movd xmm5, eax
mov eax, 4
movd xmm10, eax
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea r9, [r9 + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx + r9 - 0x18]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [r9 - 0x18], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [rdx + r9 - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [r9 - 0x10], xmm3
cmp r8d, 0x20
jl 0x180005d90
movaps xmm12, xmmword [rsp]
movaps xmm11, xmmword [rsp + 0x10]
movaps xmm10, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x60]
cmp r8d, 0x22
jge 0x180005f80
movsxd rax, r8d
sub r10, rcx
lea r9, [rcx + rax*2]
mov ecx, r8d
lea r9, [r9 + 2]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
inc r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3a
sub ecx, eax
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
add cx, 0x33
xor cx, word [r9 + r10 - 2]
mov word [r9 - 2], cx
cmp r8d, 0x22
jl 0x180005f31
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret
Function at 0x180005f90
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
xor r8d, r8d
movaps xmmword [rsp + 0x50], xmm7
cmp dword [0x18001f020], 2
mov r10, rdx
mov r9, rcx
jl 0x1800061d9
movdqa xmm7, xmmword [0x18001bfe0]
lea rax, [rdx + 0x4e]
add rcx, 0x4e
cmp r9, rax
ja 0x180005fcd
cmp rcx, rdx
jae 0x1800061d9
movaps xmmword [rsp + 0x60], xmm6
movaps xmmword [rsp + 0x40], xmm8
movaps xmmword [rsp + 0x30], xmm9
movaps xmmword [rsp + 0x20], xmm10
movaps xmmword [rsp + 0x10], xmm11
movaps xmmword [rsp], xmm12
movdqa xmm4, xmmword [0x18001c200]
lea rcx, [r9 + 8]
movdqa xmm9, xmmword [0x18001c010]
mov eax, 5
movdqa xmm6, xmmword [0x18001c1e0]
sub r10, r9
movdqa xmm11, xmmword [0x18001c000]
movdqa xmm12, xmmword [0x18001c020]
movd xmm8, eax
mov eax, 0x1f
movd xmm5, eax
mov eax, 4
movd xmm10, eax
nop
movd xmm2, r8d
lea eax, [r8 + 4]
pshufd xmm2, xmm2, 0
lea rcx, [rcx + 0x10]
paddd xmm2, xmm7
add r8d, 8
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm6
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [r10 + rcx - 0x18]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movd xmm2, eax
pshufd xmm2, xmm2, 0
pxor xmm3, xmm0
movq qword [rcx - 0x18], xmm3
paddd xmm2, xmm7
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
punpckldq xmm1, xmm2
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, xmm8
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm9
psubd xmm2, xmm0
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm6
punpckldq xmm1, xmm2
pmuldq xmm1, xmm6
shufps xmm1, xmm0, 0xdd
psrad xmm1, xmm10
movdqa xmm0, xmm1
psrld xmm0, xmm5
paddd xmm0, xmm1
pmulld xmm0, xmm11
psubd xmm2, xmm0
pshuflw xmm0, xmm2, 0xd8
movq xmm2, xmm12
pshufhw xmm1, xmm0, 0xd8
movq xmm0, qword [r10 + rcx - 0x10]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
pxor xmm3, xmm0
movq qword [rcx - 0x10], xmm3
cmp r8d, 0x28
jl 0x180006040
movaps xmm12, xmmword [rsp]
movaps xmm11, xmmword [rsp + 0x10]
movaps xmm10, xmmword [rsp + 0x20]
movaps xmm9, xmmword [rsp + 0x30]
movaps xmm8, xmmword [rsp + 0x40]
movaps xmm6, xmmword [rsp + 0x60]
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret
sub r10, r9
nop dword [rax]
mov ecx, r8d
lea r9, [r9 + 2]
mov eax, 0x8d3dcb09
imul r8d
add edx, r8d
inc r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x3a
sub ecx, eax
mov eax, 0x4d4873ed
imul ecx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
imul eax, edx, 0x35
sub ecx, eax
add cx, 0x33
xor cx, word [r9 + r10 - 2]
mov word [r9 - 2], cx
cmp r8d, 0x28
jl 0x1800061e0
movaps xmm7, xmmword [rsp + 0x50]
add rsp, 0x78
ret