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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r15
xor r9d, r9d
movsxd rbp, r8d
mov qword [rsp + 0x18], r14
mov rsi, rdx
mov r15, rcx
mov r11d, r9d
mov r10d, r9d
lea eax, [rbp - 4]
movsxd r14, eax
test eax, eax
js 0x180491414
mov rbx, rcx
lea rdi, [rdx + 6]
sub rbx, rdx
add r14, 4
shr r14, 2
lea r10d, [r14*4]
movsx eax, word [rdi - 6]
movsx ecx, word [rbx + rdi - 6]
lea rdi, [rdi + 8]
sub ecx, eax
mov eax, ecx
movsx ecx, word [rbx + rdi - 0xc]
cdq
mov r8d, eax
movsx eax, word [rdi - 0xc]
sub ecx, eax
xor r8d, edx
sub r8d, edx
mov eax, ecx
movsx ecx, word [rbx + rdi - 0xa]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movsx eax, word [rdi - 0xa]
sub ecx, eax
mov eax, ecx
movsx ecx, word [rbx + rdi - 8]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movsx eax, word [rdi - 8]
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
add r11d, r8d
sub r14, 1
jne 0x1804913b1
mov r14, qword [rsp + 0x18]
mov ecx, ebp
sub ecx, r10d
cmp r10d, ebp
jge 0x1804914f2
cmp ecx, 8
jb 0x1804914f2
cmp dword [0x18066dce0], 2
jl 0x1804914f2
movsxd rdx, r10d
xorps xmm4, xmm4
xorps xmm3, xmm3
and ecx, 0x80000007
jge 0x180491455
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, ebp
sub eax, ecx
mov rcx, r15
movsxd r8, eax
sub rcx, rsi
lea rax, [rsi + 8]
lea rax, [rax + rdx*2]
nop word [rax + rax]
movq xmm0, qword [rcx + rax - 8]
add r10d, 8
movq xmm1, qword [rax - 8]
lea rax, [rax + 0x10]
pmovsxwd xmm2, xmm0
pmovsxwd xmm0, xmm1
psubd xmm2, xmm0
add rdx, 8
movq xmm0, qword [rcx + rax - 0x10]
pabsd xmm1, xmm2
paddd xmm1, xmm4
movdqa xmm4, xmm1
movq xmm1, qword [rax - 0x10]
pmovsxwd xmm2, xmm0
pmovsxwd xmm0, xmm1
psubd xmm2, xmm0
pabsd xmm1, xmm2
paddd xmm1, xmm3
movdqa xmm3, xmm1
cmp rdx, r8
jl 0x180491470
paddd xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
paddd xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
paddd xmm3, xmm0
movd eax, xmm3
add r11d, eax
movsxd r10, r10d
mov ebx, r9d
cmp r10, rbp
jge 0x180491596
mov rax, rbp
sub rax, r10
cmp rax, 2
jl 0x180491563
mov r8, rbp
lea rcx, [rsi + 2]
sub r8, r10
lea rcx, [rcx + r10*2]
sub r8, 2
mov rdi, r15
shr r8, 1
sub rdi, rsi
inc r8
lea r10, [r10 + r8*2]
nop
movsx eax, word [rcx - 2]
movsx edx, word [rdi + rcx - 2]
lea rcx, [rcx + 4]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
movsx edx, word [rdi + rcx - 4]
add r9d, eax
movsx eax, word [rcx - 4]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
add ebx, eax
sub r8, 1
jne 0x180491530
cmp r10, rbp
jge 0x18049157c
movsx eax, word [r15 + r10*2]
movsx ecx, word [rsi + r10*2]
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
lea eax, [rbx + r9]
add eax, r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
mov rbx, qword [rsp + 0x20]
mov eax, r11d
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
Function at 0x1804915c0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
xor r9d, r9d
mov qword [rsp + 0x10], rsi
movsxd rsi, edx
mov r8, rcx
mov r11d, r9d
mov r10d, r9d
lea eax, [rsi - 4]
movsxd rbx, eax
test eax, eax
js 0x18049163a
add rbx, 4
lea rdi, [rcx + 4]
shr rbx, 2
lea r10d, [rbx*4]
nop dword [rax + rax]
movsx eax, word [rdi - 4]
lea rdi, [rdi + 8]
cdq
mov ecx, eax
movsx eax, word [rdi - 0xa]
xor ecx, edx
sub ecx, edx
cdq
xor eax, edx
sub eax, edx
add ecx, eax
movsx eax, word [rdi - 6]
cdq
xor eax, edx
sub eax, edx
add ecx, eax
movsx eax, word [rdi - 8]
cdq
xor eax, edx
sub eax, edx
add r11d, eax
add r11d, ecx
sub rbx, 1
jne 0x180491600
mov ecx, esi
sub ecx, r10d
cmp r10d, esi
jge 0x1804916e3
cmp ecx, 8
jb 0x1804916e3
cmp dword [0x18066dce0], 2
jl 0x1804916e3
movsxd rdx, r10d
xorps xmm4, xmm4
xorps xmm3, xmm3
and ecx, 0x80000007
jge 0x180491676
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, esi
sub eax, ecx
movsxd rcx, eax
nop dword [rax]
movq xmm0, qword [r8 + rdx*2]
add r10d, 8
pmovsxwd xmm1, xmm0
movq xmm0, qword [r8 + rdx*2 + 8]
pabsd xmm2, xmm1
paddd xmm2, xmm4
add rdx, 8
movdqa xmm4, xmm2
pmovsxwd xmm1, xmm0
pabsd xmm2, xmm1
paddd xmm2, xmm3
movdqa xmm3, xmm2
cmp rdx, rcx
jl 0x180491680
paddd xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
paddd xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
paddd xmm3, xmm0
movd eax, xmm3
add r11d, eax
movsxd rcx, r10d
mov ebx, r9d
mov r10, rsi
mov rsi, qword [rsp + 0x10]
cmp rcx, r10
jge 0x180491753
mov rax, r10
sub rax, rcx
cmp rax, 2
jl 0x180491733
lea rdi, [r10 - 1]
nop word [rax + rax]
movsx eax, word [r8 + rcx*2]
cdq
xor eax, edx
sub eax, edx
add r9d, eax
movsx eax, word [r8 + rcx*2 + 2]
cdq
add rcx, 2
xor eax, edx
sub eax, edx
add ebx, eax
cmp rcx, rdi
jl 0x180491710
cmp rcx, r10
jge 0x180491745
movsx eax, word [r8 + rcx*2]
cdq
xor eax, edx
sub eax, edx
add r11d, eax
lea eax, [rbx + r9]
add eax, r11d
mov rbx, qword [rsp + 0x18]
pop rdi
ret
mov rbx, qword [rsp + 0x18]
mov eax, r11d
pop rdi
ret
Function at 0x180491c60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r15
xor r9d, r9d
movsxd rbp, r8d
mov qword [rsp + 0x18], r14
mov rsi, rdx
mov r15, rcx
mov r11d, r9d
mov r10d, r9d
lea eax, [rbp - 4]
movsxd r14, eax
test eax, eax
js 0x180491d14
mov rbx, rcx
lea rdi, [rdx + 6]
sub rbx, rdx
add r14, 4
shr r14, 2
lea r10d, [r14*4]
movzx eax, word [rdi - 6]
movzx ecx, word [rbx + rdi - 6]
lea rdi, [rdi + 8]
sub ecx, eax
mov eax, ecx
movzx ecx, word [rbx + rdi - 0xc]
cdq
mov r8d, eax
movzx eax, word [rdi - 0xc]
sub ecx, eax
xor r8d, edx
sub r8d, edx
mov eax, ecx
movzx ecx, word [rbx + rdi - 0xa]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movzx eax, word [rdi - 0xa]
sub ecx, eax
mov eax, ecx
movzx ecx, word [rbx + rdi - 8]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movzx eax, word [rdi - 8]
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
add r11d, r8d
sub r14, 1
jne 0x180491cb1
mov r14, qword [rsp + 0x18]
mov ecx, ebp
sub ecx, r10d
cmp r10d, ebp
jge 0x180491df2
cmp ecx, 8
jb 0x180491df2
cmp dword [0x18066dce0], 2
jl 0x180491df2
movsxd rdx, r10d
xorps xmm4, xmm4
xorps xmm3, xmm3
and ecx, 0x80000007
jge 0x180491d55
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, ebp
sub eax, ecx
mov rcx, r15
movsxd r8, eax
sub rcx, rsi
lea rax, [rsi + 8]
lea rax, [rax + rdx*2]
nop word [rax + rax]
movq xmm0, qword [rcx + rax - 8]
add r10d, 8
movq xmm1, qword [rax - 8]
lea rax, [rax + 0x10]
pmovzxwd xmm2, xmm0
pmovzxwd xmm0, xmm1
psubd xmm2, xmm0
add rdx, 8
movq xmm0, qword [rcx + rax - 0x10]
pabsd xmm1, xmm2
paddd xmm1, xmm4
movdqa xmm4, xmm1
movq xmm1, qword [rax - 0x10]
pmovzxwd xmm2, xmm0
pmovzxwd xmm0, xmm1
psubd xmm2, xmm0
pabsd xmm1, xmm2
paddd xmm1, xmm3
movdqa xmm3, xmm1
cmp rdx, r8
jl 0x180491d70
paddd xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
paddd xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
paddd xmm3, xmm0
movd eax, xmm3
add r11d, eax
movsxd r10, r10d
mov ebx, r9d
cmp r10, rbp
jge 0x180491e96
mov rax, rbp
sub rax, r10
cmp rax, 2
jl 0x180491e63
mov r8, rbp
lea rcx, [rsi + 2]
sub r8, r10
lea rcx, [rcx + r10*2]
sub r8, 2
mov rdi, r15
shr r8, 1
sub rdi, rsi
inc r8
lea r10, [r10 + r8*2]
nop
movzx eax, word [rcx - 2]
movzx edx, word [rdi + rcx - 2]
lea rcx, [rcx + 4]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
movzx edx, word [rdi + rcx - 4]
add r9d, eax
movzx eax, word [rcx - 4]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
add ebx, eax
sub r8, 1
jne 0x180491e30
cmp r10, rbp
jge 0x180491e7c
movzx eax, word [r15 + r10*2]
movzx ecx, word [rsi + r10*2]
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
lea eax, [rbx + r9]
add eax, r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
mov rbx, qword [rsp + 0x20]
mov eax, r11d
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
Function at 0x1804924a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r15
xor r10d, r10d
movsxd rbp, r8d
mov qword [rsp + 0x18], r14
mov rdi, rdx
mov r15, rcx
mov r11d, r10d
mov r9d, r10d
lea eax, [rbp - 4]
movsxd r14, eax
test eax, eax
js 0x180492554
mov rbx, rcx
lea rsi, [rdx + 3]
sub rbx, rdx
add r14, 4
shr r14, 2
lea r9d, [r14*4]
movsx eax, byte [rsi - 2]
movsx ecx, byte [rbx + rsi - 2]
lea rsi, [rsi + 4]
sub ecx, eax
mov eax, ecx
movsx ecx, byte [rbx + rsi - 5]
cdq
mov r8d, eax
movsx eax, byte [rsi - 5]
sub ecx, eax
xor r8d, edx
sub r8d, edx
mov eax, ecx
movsx ecx, byte [rbx + rsi - 7]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movsx eax, byte [rsi - 7]
sub ecx, eax
mov eax, ecx
movsx ecx, byte [rbx + rsi - 4]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movsx eax, byte [rsi - 4]
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
add r11d, r8d
sub r14, 1
jne 0x1804924f1
mov r14, qword [rsp + 0x18]
mov ecx, ebp
sub ecx, r9d
cmp r9d, ebp
jge 0x180492632
cmp ecx, 8
jb 0x180492632
cmp dword [0x18066dce0], 2
jl 0x180492632
movsxd rdx, r9d
xorps xmm4, xmm4
xorps xmm3, xmm3
and ecx, 0x80000007
jge 0x180492595
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, ebp
sub eax, ecx
lea rcx, [rdx + rdi]
mov rdx, r15
movsxd r8, eax
sub rdx, rdi
nop word [rax + rax]
movd xmm0, dword [rcx + rdx]
add r9d, 8
movd xmm1, dword [rcx]
pmovsxbd xmm2, xmm0
pmovsxbd xmm0, xmm1
psubd xmm2, xmm0
movd xmm0, dword [rdx + rcx + 4]
pabsd xmm1, xmm2
paddd xmm1, xmm4
movdqa xmm4, xmm1
movd xmm1, dword [rcx + 4]
pmovsxbd xmm2, xmm0
pmovsxbd xmm0, xmm1
add rcx, 8
psubd xmm2, xmm0
mov rax, rcx
pabsd xmm1, xmm2
sub rax, rdi
paddd xmm1, xmm3
movdqa xmm3, xmm1
cmp rax, r8
jl 0x1804925b0
paddd xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
paddd xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
paddd xmm3, xmm0
movd eax, xmm3
add r11d, eax
movsxd r9, r9d
mov ebx, r10d
cmp r9, rbp
jge 0x1804926d4
mov rax, rbp
sub rax, r9
cmp rax, 2
jl 0x1804926a1
mov r8, rbp
lea rcx, [r9 + rdi]
sub r8, r9
mov rsi, r15
sub r8, 2
sub rsi, rdi
shr r8, 1
inc r8
lea r9, [r9 + r8*2]
nop dword [rax + rax]
movsx eax, byte [rcx]
movsx edx, byte [rcx + rsi]
lea rcx, [rcx + 2]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
movsx edx, byte [rcx + rsi - 1]
add r10d, eax
movsx eax, byte [rcx - 1]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
add ebx, eax
sub r8, 1
jne 0x180492670
cmp r9, rbp
jge 0x1804926ba
movsx eax, byte [r9 + r15]
movsx ecx, byte [r9 + rdi]
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
lea eax, [rbx + r10]
add eax, r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
mov rbx, qword [rsp + 0x20]
mov eax, r11d
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
Function at 0x1804926f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
xor r8d, r8d
mov qword [rsp + 0x10], rdi
movsxd rdi, edx
mov rsi, rcx
mov r10d, r8d
mov r9d, r8d
lea eax, [rdi - 4]
movsxd r11, eax
test eax, eax
js 0x18049276a
add r11, 4
lea rbx, [rcx + 2]
shr r11, 2
lea r9d, [r11*4]
nop dword [rax + rax]
movsx eax, byte [rbx - 2]
lea rbx, [rbx + 4]
cdq
mov ecx, eax
movsx eax, byte [rbx - 5]
xor ecx, edx
sub ecx, edx
cdq
xor eax, edx
sub eax, edx
add ecx, eax
movsx eax, byte [rbx - 3]
cdq
xor eax, edx
sub eax, edx
add ecx, eax
movsx eax, byte [rbx - 4]
cdq
xor eax, edx
sub eax, edx
add r10d, eax
add r10d, ecx
sub r11, 1
jne 0x180492730
mov ecx, edi
sub ecx, r9d
cmp r9d, edi
jge 0x180492824
cmp ecx, 8
jb 0x180492824
cmp dword [0x18066dce0], 2
jl 0x180492824
movsxd rdx, r9d
xorps xmm4, xmm4
xorps xmm3, xmm3
and ecx, 0x80000007
jge 0x1804927a6
dec ecx
or ecx, 0xfffffff8
inc ecx
mov eax, edi
sub eax, ecx
lea rcx, [rsi + 4]
add rcx, rdx
movsxd r11, eax
mov rdx, 0xfffffffffffffffc
sub rdx, rsi
nop
movd xmm0, dword [rcx - 4]
lea rcx, [rcx + 8]
pmovsxbd xmm1, xmm0
movd xmm0, dword [rcx - 8]
lea rax, [rdx + rcx]
pabsd xmm2, xmm1
add r9d, 8
paddd xmm2, xmm4
movdqa xmm4, xmm2
pmovsxbd xmm1, xmm0
pabsd xmm2, xmm1
paddd xmm2, xmm3
movdqa xmm3, xmm2
cmp rax, r11
jl 0x1804927c0
paddd xmm3, xmm4
movdqa xmm0, xmm3
psrldq xmm0, 8
paddd xmm3, xmm0
movdqa xmm0, xmm3
psrldq xmm0, 4
paddd xmm3, xmm0
movd eax, xmm3
add r10d, eax
movsxd rcx, r9d
mov r11d, r8d
mov r9, rdi
mov rdi, qword [rsp + 0x10]
cmp rcx, r9
jge 0x180492891
mov rax, r9
sub rax, rcx
cmp rax, 2
jl 0x180492872
lea rbx, [r9 - 1]
nop word [rax + rax]
movsx eax, byte [rsi + rcx]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movsx eax, byte [rsi + rcx + 1]
cdq
add rcx, 2
xor eax, edx
sub eax, edx
add r11d, eax
cmp rcx, rbx
jl 0x180492850
cmp rcx, r9
jge 0x180492883
movsx eax, byte [rcx + rsi]
cdq
xor eax, edx
sub eax, edx
add r10d, eax
lea eax, [r11 + r8]
add eax, r10d
mov rbx, qword [rsp + 0x18]
pop rsi
ret
mov rbx, qword [rsp + 0x18]
mov eax, r10d
pop rsi
ret
Function at 0x180492d30
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r15
xor r10d, r10d
movsxd rbp, r8d
mov qword [rsp + 0x18], r14
mov rbx, rdx
mov r15, rcx
mov r11d, r10d
mov r9d, r10d
lea eax, [rbp - 4]
movsxd r14, eax
test eax, eax
js 0x180492de4
mov rdi, rcx
lea rsi, [rdx + 3]
sub rdi, rdx
add r14, 4
shr r14, 2
lea r9d, [r14*4]
movzx eax, byte [rsi - 3]
movzx ecx, byte [rdi + rsi - 3]
lea rsi, [rsi + 4]
sub ecx, eax
mov eax, ecx
movzx ecx, byte [rdi + rsi - 6]
cdq
mov r8d, eax
movzx eax, byte [rsi - 6]
sub ecx, eax
xor r8d, edx
sub r8d, edx
mov eax, ecx
movzx ecx, byte [rdi + rsi - 5]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movzx eax, byte [rsi - 5]
sub ecx, eax
mov eax, ecx
movzx ecx, byte [rdi + rsi - 4]
cdq
xor eax, edx
sub eax, edx
add r8d, eax
movzx eax, byte [rsi - 4]
sub ecx, eax
mov eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
add r11d, r8d
sub r14, 1
jne 0x180492d81
mov r14, qword [rsp + 0x18]
mov ecx, ebp
sub ecx, r9d
cmp r9d, ebp
jge 0x180492e87
cmp ecx, 0x20
jb 0x180492e87
movsxd rdx, r9d
xorps xmm3, xmm3
xorps xmm2, xmm2
and ecx, 0x8000001f
jge 0x180492e18
dec ecx
or ecx, 0xffffffe0
inc ecx
mov eax, ebp
sub eax, ecx
lea rcx, [rdx + rbx]
mov rdx, r15
movsxd r8, eax
sub rdx, rbx
nop dword [rax]
movdqu xmm0, xmmword [rcx]
add r9d, 0x20
movdqu xmm1, xmmword [rcx + rdx]
psadbw xmm1, xmm0
movdqu xmm0, xmmword [rcx + 0x10]
paddd xmm1, xmm3
movdqa xmm3, xmm1
movdqu xmm1, xmmword [rdx + rcx + 0x10]
add rcx, 0x20
mov rax, rcx
psadbw xmm1, xmm0
sub rax, rbx
paddd xmm1, xmm2
movdqa xmm2, xmm1
cmp rax, r8
jl 0x180492e30
paddd xmm2, xmm3
movdqa xmm0, xmm2
psrldq xmm0, 8
paddd xmm2, xmm0
movd eax, xmm2
add r11d, eax
movsxd r9, r9d
mov edi, r10d
cmp r9, rbp
jge 0x180492f24
mov rax, rbp
sub rax, r9
cmp rax, 2
jl 0x180492ef1
mov r8, rbp
lea rcx, [r9 + rbx]
sub r8, r9
mov rsi, r15
sub r8, 2
sub rsi, rbx
shr r8, 1
inc r8
lea r9, [r9 + r8*2]
movzx eax, byte [rcx]
movzx edx, byte [rcx + rsi]
lea rcx, [rcx + 2]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
movzx edx, byte [rcx + rsi - 1]
add r10d, eax
movzx eax, byte [rcx - 1]
sub edx, eax
mov eax, edx
cdq
xor eax, edx
sub eax, edx
add edi, eax
sub r8, 1
jne 0x180492ec0
cmp r9, rbp
jge 0x180492f0a
movzx eax, byte [r9 + r15]
movzx ecx, byte [r9 + rbx]
sub eax, ecx
cdq
xor eax, edx
sub eax, edx
add r11d, eax
lea eax, [rdi + r10]
add eax, r11d
mov rbx, qword [rsp + 0x20]
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
mov rbx, qword [rsp + 0x20]
mov eax, r11d
mov rbp, qword [rsp + 0x28]
mov rsi, qword [rsp + 0x30]
pop r15
pop rdi
ret
Function at 0x18049b7f0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
xor r9d, r9d
movsxd rdi, r8d
mov rbp, rdx
lea r15, [0x180588990]
mov r14, rcx
mov esi, r9d
mov r11d, r9d
lea eax, [rdi - 4]
movsxd r8, eax
test eax, eax
js 0x18049b8b0
mov rbx, rcx
lea r10, [rdx + 3]
sub rbx, rdx
add r8, 4
shr r8, 2
lea esi, [r8*4]
nop dword [rax]
movzx eax, byte [r10 - 3]
movzx ecx, byte [rbx + r10 - 3]
lea r10, [r10 + 4]
xor rcx, rax
movzx eax, byte [r10 - 6]
movzx edx, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 6]
xor rcx, rax
movzx eax, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 5]
add edx, eax
movzx eax, byte [r10 - 5]
xor rcx, rax
movzx eax, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 4]
add edx, eax
movzx eax, byte [r10 - 4]
xor rcx, rax
movzx eax, byte [rcx + r15]
add r11d, eax
add r11d, edx
sub r8, 1
jne 0x18049b850
movsxd r10, esi
mov ebx, r9d
mov rsi, rdi
cmp r10, rdi
jge 0x18049b942
mov rax, rdi
sub rax, r10
cmp rax, 2
jl 0x18049b91f
mov r8, rsi
lea rax, [r10 + rbp]
sub r8, r10
mov rdi, r14
sub r8, 2
sub rdi, rbp
shr r8, 1
inc r8
lea r10, [r10 + r8*2]
nop dword [rax]
movzx ecx, byte [rax]
movzx edx, byte [rax + rdi]
lea rax, [rax + 2]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
movzx edx, byte [rdi + rax - 1]
add r9d, ecx
movzx ecx, byte [rax - 1]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
add ebx, ecx
sub r8, 1
jne 0x18049b8f0
cmp r10, rsi
jge 0x18049b939
movzx ecx, byte [r10 + rbp]
movzx edx, byte [r10 + r14]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
add r11d, ecx
lea eax, [rbx + r9]
add eax, r11d
jmp 0x18049b945
mov eax, r11d
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
Function at 0x18049b970
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
xor r9d, r9d
movsxd rdi, r8d
mov rbp, rdx
lea r15, [0x180588b90]
mov r14, rcx
mov esi, r9d
mov r11d, r9d
lea eax, [rdi - 4]
movsxd r8, eax
test eax, eax
js 0x18049ba30
mov rbx, rcx
lea r10, [rdx + 3]
sub rbx, rdx
add r8, 4
shr r8, 2
lea esi, [r8*4]
nop dword [rax]
movzx eax, byte [r10 - 3]
movzx ecx, byte [rbx + r10 - 3]
lea r10, [r10 + 4]
xor rcx, rax
movzx eax, byte [r10 - 6]
movzx edx, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 6]
xor rcx, rax
movzx eax, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 5]
add edx, eax
movzx eax, byte [r10 - 5]
xor rcx, rax
movzx eax, byte [rcx + r15]
movzx ecx, byte [rbx + r10 - 4]
add edx, eax
movzx eax, byte [r10 - 4]
xor rcx, rax
movzx eax, byte [rcx + r15]
add r11d, eax
add r11d, edx
sub r8, 1
jne 0x18049b9d0
movsxd r10, esi
mov ebx, r9d
mov rsi, rdi
cmp r10, rdi
jge 0x18049bac2
mov rax, rdi
sub rax, r10
cmp rax, 2
jl 0x18049ba9f
mov r8, rsi
lea rax, [r10 + rbp]
sub r8, r10
mov rdi, r14
sub r8, 2
sub rdi, rbp
shr r8, 1
inc r8
lea r10, [r10 + r8*2]
nop dword [rax]
movzx ecx, byte [rax]
movzx edx, byte [rax + rdi]
lea rax, [rax + 2]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
movzx edx, byte [rdi + rax - 1]
add r9d, ecx
movzx ecx, byte [rax - 1]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
add ebx, ecx
sub r8, 1
jne 0x18049ba70
cmp r10, rsi
jge 0x18049bab9
movzx ecx, byte [r10 + rbp]
movzx edx, byte [r10 + r14]
xor rdx, rcx
movzx ecx, byte [rdx + r15]
add r11d, ecx
lea eax, [rbx + r9]
add eax, r11d
jmp 0x18049bac5
mov eax, r11d
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
pop r15
pop r14
ret
Function at 0x1804a88b0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x50
cmp byte [0x18067cb57], 0
mov r14, r9
movaps xmmword [rsp + 0x40], xmm6
mov rbx, r8
jne 0x1804a88e3
cmp byte [0x18067cbb8], 0
jne 0x1804a88e3
xor al, al
jmp 0x1804a88e5
mov al, 1
movsd xmm6, qword [rsp + 0xb0]
mov edi, dword [rsp + 0xa8]
movsxd rbp, dword [rsp + 0xa0]
cvtpd2ps xmm6, xmm6
test edi, edi
je 0x1804a8a9d
mov r11, qword [rsp + 0x90]
mov qword [rsp + 0x70], r12
mov r12d, 0xff
mov qword [rsp + 0x78], r15
mov r15, qword [rsp + 0x98]
movaps xmmword [rsp + 0x30], xmm7
movaps xmmword [rsp + 0x20], xmm8
movaps xmmword [rsp + 0x10], xmm9
movaps xmmword [rsp], xmm10
nop
dec edi
xor ecx, ecx
test al, al
je 0x1804a8a1c
lea edx, [rbp - 8]
movaps xmm5, xmm6
shufps xmm5, xmm5, 0
xorps xmm7, xmm7
test edx, edx
js 0x1804a8a1c
movdqa xmm8, xmmword [0x1805bf180]
mov r8, rbx
movdqa xmm9, xmmword [0x1805bf4c0]
sub r8, r11
movdqa xmm10, xmmword [0x1805bf260]
add edx, 8
shr rdx, 3
mov r9, r11
lea rcx, [rdx*8]
nop dword [rax]
nop dword [rax + rax]
movq xmm4, qword [r8 + r9]
movaps xmm1, xmm5
punpcklbw xmm4, xmm7
lea r9, [r9 + 8]
movdqa xmm0, xmm4
punpcklwd xmm0, xmm7
cvtdq2ps xmm0, xmm0
divps xmm1, xmm0
movdqa xmm0, xmm4
pcmpeqw xmm4, xmm7
punpckhwd xmm0, xmm7
cvtps2dq xmm3, xmm1
movaps xmm1, xmm5
psubd xmm3, xmm8
cvtdq2ps xmm0, xmm0
divps xmm1, xmm0
cvtps2dq xmm2, xmm1
psubd xmm2, xmm8
packssdw xmm3, xmm2
psubw xmm3, xmm9
movdqa xmm1, xmm3
pxor xmm1, xmm7
pand xmm1, xmm4
pxor xmm1, xmm3
movdqa xmm0, xmm1
psubusw xmm0, xmm10
psubusw xmm1, xmm0
packuswb xmm1, xmm1
movq qword [r9 - 8], xmm1
sub rdx, 1
jne 0x1804a89a0
cmp rcx, rbp
jge 0x1804a8a6f
mov r10, rbx
lea r8, [rcx + r11]
sub r10, r11
mov r9, rbp
sub r9, rcx
movzx ecx, byte [r8 + r10]
test cl, cl
je 0x1804a8a61
movzx ecx, cl
movaps xmm1, xmm6
movd xmm0, ecx
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtss2si edx, xmm1
cmp edx, r12d
jbe 0x1804a8a63
xor ecx, ecx
test edx, edx
cmovg ecx, r12d
movzx edx, cl
jmp 0x1804a8a63
xor dl, dl
mov byte [r8], dl
inc r8
sub r9, 1
jne 0x1804a8a31
add rbx, r14
add r11, r15
test edi, edi
jne 0x1804a8940
movaps xmm10, xmmword [rsp]
movaps xmm9, xmmword [rsp + 0x10]
movaps xmm8, xmmword [rsp + 0x20]
movaps xmm7, xmmword [rsp + 0x30]
mov r15, qword [rsp + 0x78]
mov r12, qword [rsp + 0x70]
movaps xmm6, xmmword [rsp + 0x40]
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret