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

Disassembly:
mov rax, rsp
sub rsp, 0xa8
movdqa xmm0, xmmword [rcx]
movdqa xmm3, xmmword [0x1801e8e20]
movdqa xmm1, xmmword [0x1801e8e10]
movaps xmmword [rax - 0x18], xmm6
movdqa xmm6, xmmword [0x180299c80]
movaps xmmword [rax - 0x28], xmm7
movdqa xmm4, xmm6
movdqa xmm7, xmmword [0x180299cb0]
movdqa xmm5, xmm6
pand xmm0, xmm7
movaps xmmword [rax - 0x38], xmm8
pshufb xmm3, xmm0
movdqu xmm0, xmmword [rdx]
add rdx, 0x10
movaps xmmword [rax - 0x48], xmm9
movdqa xmm2, xmm7
movdqa xmm9, xmmword [0x180299d20]
pxor xmm3, xmm0
movaps xmmword [rax - 0x58], xmm10
movdqa xmm0, xmm7
movaps xmmword [rax - 0x68], xmm11
movaps xmmword [rax - 0x78], xmm12
movaps xmmword [rsp + 0x20], xmm13
movaps xmmword [rsp + 0x10], xmm14
movaps xmmword [rsp], xmm15
pandn xmm0, xmmword [rcx]
movdqa xmm10, xmmword [0x180299cd0]
movdqa xmm11, xmmword [0x1801e8fc0]
movdqa xmm12, xmmword [0x1801e8f00]
movdqa xmm13, xmmword [0x1801e8e50]
movdqa xmm14, xmmword [0x1801e8f40]
movdqa xmm15, xmmword [0x1801e9000]
psrld xmm0, 4
pshufb xmm1, xmm0
movdqa xmm0, xmm6
pxor xmm3, xmm1
movdqa xmm1, xmm10
movdqa xmmword [rcx], xmm3
pandn xmm2, xmm3
psrld xmm2, 4
pand xmm3, xmm7
movdqu xmm8, xmmword [rdx]
pshufb xmm0, xmm2
pshufb xmm1, xmm3
pxor xmm3, xmm2
movdqa xmmword [rcx], xmm3
pxor xmm0, xmm1
pshufb xmm4, xmm0
movdqa xmm0, xmm6
pxor xmm4, xmm3
pshufb xmm0, xmm3
pxor xmm0, xmm1
pshufb xmm5, xmm0
pxor xmm5, xmm2
cmp r8, 1
je 0x18004556b
lea rax, [r8 - 1]
nop dword [rax + rax]
movdqa xmm1, xmmword [0x1801e8e70]
movdqa xmm3, xmm11
lea rdx, [rdx + 0x10]
movdqa xmm0, xmm12
movdqa xmm2, xmm7
pshufb xmm0, xmm5
pshufb xmm3, xmm4
pshufb xmm1, xmm5
pxor xmm3, xmm8
pxor xmm3, xmm0
movdqa xmm0, xmm15
pshufb xmm0, xmm4
pshufb xmm3, xmm9
pxor xmm1, xmm0
movdqa xmm0, xmmword [0x1801e8ee0]
pxor xmm3, xmm1
movdqa xmm1, xmmword [0x1801e8ff0]
pshufb xmm0, xmm4
pshufb xmm3, xmm9
pshufb xmm1, xmm5
pxor xmm3, xmm0
movdqa xmm0, xmm13
pxor xmm3, xmm1
movdqa xmm1, xmm14
pshufb xmm0, xmm4
movdqa xmm4, xmm6
pshufb xmm1, xmm5
movdqa xmm5, xmm6
pshufb xmm3, xmm9
pxor xmm3, xmm0
movdqa xmm0, xmm9
palignr xmm0, xmm9, 0xc
pxor xmm3, xmm1
movdqa xmmword [rcx], xmm3
movdqa xmm9, xmm0
pandn xmm2, xmm3
pand xmm3, xmm7
psrld xmm2, 4
movdqa xmm0, xmm6
movdqa xmm1, xmm10
movdqu xmm8, xmmword [rdx]
pshufb xmm0, xmm2
pshufb xmm1, xmm3
pxor xmm3, xmm2
movdqa xmmword [rcx], xmm3
pxor xmm0, xmm1
pshufb xmm4, xmm0
movdqa xmm0, xmm6
pxor xmm4, xmm3
pshufb xmm0, xmm3
pxor xmm0, xmm1
pshufb xmm5, xmm0
pxor xmm5, xmm2
sub rax, 1
jne 0x180045460
movdqa xmm0, xmmword [0x1801e8f90]
lea r11, [rsp + 0xa8]
movdqa xmm1, xmmword [0x1801e8fa0]
lea eax, [r8 - 1]
movaps xmm6, xmmword [r11 - 0x18]
lea rcx, [0x180299d30]
movaps xmm7, xmmword [r11 - 0x28]
not eax
movaps xmm9, xmmword [r11 - 0x48]
and eax, 3
movaps xmm10, xmmword [r11 - 0x58]
add rax, rax
movaps xmm11, xmmword [r11 - 0x68]
movaps xmm12, xmmword [r11 - 0x78]
movaps xmm13, xmmword [rsp + 0x20]
movaps xmm14, xmmword [rsp + 0x10]
movaps xmm15, xmmword [rsp]
pshufb xmm0, xmm4
pshufb xmm1, xmm5
pxor xmm0, xmm8
movaps xmm8, xmmword [r11 - 0x38]
pxor xmm0, xmm1
pshufb xmm0, xmmword [rcx + rax*8]
mov rsp, r11
ret
Function at 0x180046a50
Capabilities:
Decrypt data using aes via x86 extensions
Encode data using xor

Disassembly:
mov r11, rsp
sub rsp, 0xc8
mov rax, qword [rcx + 0x28]
cmp qword [rcx + 0x20], rax
je 0x180046cda
mov rax, qword [rcx + 0x20]
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x28], xmm7
movaps xmmword [r11 - 0x38], xmm8
movaps xmmword [r11 - 0x48], xmm9
movaps xmmword [r11 - 0x58], xmm10
movaps xmmword [r11 - 0x68], xmm11
movaps xmmword [r11 - 0x78], xmm12
movaps xmmword [rsp + 0x40], xmm13
movaps xmmword [rsp + 0x30], xmm14
movdqu xmm14, xmmword [rax + 0xa0]
movdqu xmm4, xmmword [rax]
movdqu xmm5, xmmword [rax + 0x10]
movdqu xmm6, xmmword [rax + 0x20]
movdqu xmm7, xmmword [rax + 0x30]
movdqu xmm8, xmmword [rax + 0x40]
movdqu xmm9, xmmword [rax + 0x50]
movdqu xmm10, xmmword [rax + 0x60]
movdqu xmm11, xmmword [rax + 0x70]
movdqu xmm12, xmmword [rax + 0x80]
movdqu xmm13, xmmword [rax + 0x90]
cmp r9, 4
jb 0x180046c30
mov r10, r9
mov rcx, r8
shr r10, 2
sub rcx, rdx
imul rax, r10, 0xfffffffffffffffc
add r9, rax
nop
movdqu xmm0, xmmword [rdx]
movdqu xmm3, xmmword [rdx + 0x10]
movdqu xmm2, xmmword [rdx + 0x20]
movdqu xmm1, xmmword [rdx + 0x30]
pxor xmm0, xmm4
pxor xmm3, xmm4
pxor xmm2, xmm4
pxor xmm1, xmm4
aesdec xmm0, xmm5
aesdec xmm3, xmm5
aesdec xmm2, xmm5
aesdec xmm1, xmm5
aesdec xmm0, xmm6
aesdec xmm3, xmm6
aesdec xmm2, xmm6
aesdec xmm1, xmm6
aesdec xmm0, xmm7
aesdec xmm3, xmm7
aesdec xmm2, xmm7
aesdec xmm1, xmm7
aesdec xmm0, xmm8
aesdec xmm3, xmm8
aesdec xmm2, xmm8
aesdec xmm1, xmm8
aesdec xmm0, xmm9
aesdec xmm3, xmm9
aesdec xmm2, xmm9
aesdec xmm1, xmm9
aesdec xmm0, xmm10
aesdec xmm3, xmm10
aesdec xmm2, xmm10
aesdec xmm1, xmm10
aesdec xmm0, xmm11
aesdec xmm3, xmm11
aesdec xmm2, xmm11
aesdec xmm1, xmm11
aesdec xmm0, xmm12
aesdec xmm3, xmm12
aesdec xmm2, xmm12
aesdec xmm1, xmm12
aesdec xmm0, xmm13
aesdec xmm3, xmm13
aesdeclast xmm0, xmm14
movdqu xmmword [r8], xmm0
add r8, 0x40
aesdec xmm2, xmm13
aesdeclast xmm3, xmm14
movdqu xmmword [rcx + rdx + 0x10], xmm3
aesdec xmm1, xmm13
aesdeclast xmm2, xmm14
movdqu xmmword [rcx + rdx + 0x20], xmm2
aesdeclast xmm1, xmm14
movdqu xmmword [rcx + rdx + 0x30], xmm1
add rdx, 0x40
sub r10, 1
jne 0x180046b00
test r9, r9
je 0x180046c92
sub r8, rdx
nop dword [rax + rax]
movdqu xmm0, xmmword [rdx]
lea rdx, [rdx + 0x10]
pxor xmm0, xmm4
aesdec xmm0, xmm5
aesdec xmm0, xmm6
aesdec xmm0, xmm7
aesdec xmm0, xmm8
aesdec xmm0, xmm9
aesdec xmm0, xmm10
aesdec xmm0, xmm11
aesdec xmm0, xmm12
aesdec xmm0, xmm13
aesdeclast xmm0, xmm14
movdqu xmmword [r8 + rdx - 0x10], xmm0
sub r9, 1
jne 0x180046c40
movaps xmm13, xmmword [rsp + 0x40]
movaps xmm12, xmmword [rsp + 0x50]
movaps xmm11, xmmword [rsp + 0x60]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm14, xmmword [rsp + 0x30]
add rsp, 0xc8
ret
lea r9, str.gold
mov dword [rsp + 0x20], 0xbf
lea r8, str.aesni_decrypt_n
lea rdx, str.Key_was_set
lea rcx, str.m_DK.empty____false
call fcn.180043540
int3
Function at 0x1800473d0
Capabilities:
Encode data using xor
Encrypt data using aes via x86 extensions

Disassembly:
mov r11, rsp
sub rsp, 0xc8
mov rax, qword [rcx + 0x10]
cmp qword [rcx + 8], rax
je 0x18004765a
mov rax, qword [rcx + 8]
movaps xmmword [r11 - 0x18], xmm6
movaps xmmword [r11 - 0x28], xmm7
movaps xmmword [r11 - 0x38], xmm8
movaps xmmword [r11 - 0x48], xmm9
movaps xmmword [r11 - 0x58], xmm10
movaps xmmword [r11 - 0x68], xmm11
movaps xmmword [r11 - 0x78], xmm12
movaps xmmword [rsp + 0x40], xmm13
movaps xmmword [rsp + 0x30], xmm14
movdqu xmm14, xmmword [rax + 0xa0]
movdqu xmm4, xmmword [rax]
movdqu xmm5, xmmword [rax + 0x10]
movdqu xmm6, xmmword [rax + 0x20]
movdqu xmm7, xmmword [rax + 0x30]
movdqu xmm8, xmmword [rax + 0x40]
movdqu xmm9, xmmword [rax + 0x50]
movdqu xmm10, xmmword [rax + 0x60]
movdqu xmm11, xmmword [rax + 0x70]
movdqu xmm12, xmmword [rax + 0x80]
movdqu xmm13, xmmword [rax + 0x90]
cmp r9, 4
jb 0x1800475b0
mov r10, r9
mov rcx, r8
shr r10, 2
sub rcx, rdx
imul rax, r10, 0xfffffffffffffffc
add r9, rax
nop
movdqu xmm0, xmmword [rdx]
movdqu xmm3, xmmword [rdx + 0x10]
movdqu xmm2, xmmword [rdx + 0x20]
movdqu xmm1, xmmword [rdx + 0x30]
pxor xmm0, xmm4
pxor xmm3, xmm4
pxor xmm2, xmm4
pxor xmm1, xmm4
aesenc xmm0, xmm5
aesenc xmm3, xmm5
aesenc xmm2, xmm5
aesenc xmm1, xmm5
aesenc xmm0, xmm6
aesenc xmm3, xmm6
aesenc xmm2, xmm6
aesenc xmm1, xmm6
aesenc xmm0, xmm7
aesenc xmm3, xmm7
aesenc xmm2, xmm7
aesenc xmm1, xmm7
aesenc xmm0, xmm8
aesenc xmm3, xmm8
aesenc xmm2, xmm8
aesenc xmm1, xmm8
aesenc xmm0, xmm9
aesenc xmm3, xmm9
aesenc xmm2, xmm9
aesenc xmm1, xmm9
aesenc xmm0, xmm10
aesenc xmm3, xmm10
aesenc xmm2, xmm10
aesenc xmm1, xmm10
aesenc xmm0, xmm11
aesenc xmm3, xmm11
aesenc xmm2, xmm11
aesenc xmm1, xmm11
aesenc xmm0, xmm12
aesenc xmm3, xmm12
aesenc xmm2, xmm12
aesenc xmm1, xmm12
aesenc xmm0, xmm13
aesenc xmm3, xmm13
aesenclast xmm0, xmm14
movdqu xmmword [r8], xmm0
add r8, 0x40
aesenc xmm2, xmm13
aesenclast xmm3, xmm14
movdqu xmmword [rcx + rdx + 0x10], xmm3
aesenc xmm1, xmm13
aesenclast xmm2, xmm14
movdqu xmmword [rcx + rdx + 0x20], xmm2
aesenclast xmm1, xmm14
movdqu xmmword [rcx + rdx + 0x30], xmm1
add rdx, 0x40
sub r10, 1
jne 0x180047480
test r9, r9
je 0x180047612
sub r8, rdx
nop dword [rax + rax]
movdqu xmm0, xmmword [rdx]
lea rdx, [rdx + 0x10]
pxor xmm0, xmm4
aesenc xmm0, xmm5
aesenc xmm0, xmm6
aesenc xmm0, xmm7
aesenc xmm0, xmm8
aesenc xmm0, xmm9
aesenc xmm0, xmm10
aesenc xmm0, xmm11
aesenc xmm0, xmm12
aesenc xmm0, xmm13
aesenclast xmm0, xmm14
movdqu xmmword [r8 + rdx - 0x10], xmm0
sub r9, 1
jne 0x1800475c0
movaps xmm13, xmmword [rsp + 0x40]
movaps xmm12, xmmword [rsp + 0x50]
movaps xmm11, xmmword [rsp + 0x60]
movaps xmm10, xmmword [rsp + 0x70]
movaps xmm9, xmmword [rsp + 0x80]
movaps xmm8, xmmword [rsp + 0x90]
movaps xmm7, xmmword [rsp + 0xa0]
movaps xmm6, xmmword [rsp + 0xb0]
movaps xmm14, xmmword [rsp + 0x30]
add rsp, 0xc8
ret
lea r9, str.gold
mov dword [rsp + 0x20], 0x70
lea r8, str.aesni_encrypt_n
lea rdx, str.Key_was_set
lea rcx, str.m_EK.empty____false
call fcn.180043540
int3
Function at 0x180052630
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov rbx, r9
mov r12, rdx
mov r13, rcx
mov r15, qword [r8 + 0x10]
mov r10, qword [r8 + 0x18]
cmp r10, 0x10
jb 0x180052673
mov r9, qword [r8]
jmp 0x180052676
mov r9, r8
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r15, r15
je 0x1800526a5
movabs r11, 0x100000001b3
movzx eax, byte [r9 + rcx]
xor rdx, rax
imul rdx, r11
inc rcx
cmp rcx, r15
jb 0x180052691
mov r9, qword [r13 + 0x30]
and r9, rdx
shl r9, 4
mov qword [rsp + 0x20], r9
mov rax, qword [r13 + 0x18]
mov rsi, qword [r9 + rax]
cmp rsi, qword [r13 + 8]
jne 0x1800526c9
mov rdi, qword [r13 + 8]
jmp 0x1800526d1
mov rdi, qword [r9 + rax + 8]
mov rdi, qword [rdi]
cmp rdi, rsi
je 0x180052785
nop word [rax + rax]
mov rdi, qword [rdi + 8]
lea rdx, [rdi + 0x10]
lea r14, [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x1800526f6
mov rdx, qword [rdx]
cmp r10, 0x10
jb 0x180052701
mov rcx, qword [r8]
jmp 0x180052704
mov rcx, r8
mov r14, qword [r14]
mov r8, r14
cmp r15, r14
cmovb r8, r15
test r8, r8
je 0x18005271f
call fcn.1801a4460
test eax, eax
jne 0x18005276b
cmp r15, r14
jb 0x18005276b
ja 0x18005276b
mov rcx, qword [rbx + 8]
mov rax, qword [rbx]
mov qword [rcx], rax
mov rcx, qword [rbx]
mov rax, qword [rbx + 8]
mov qword [rcx + 8], rax
dec qword [r13 + 0x10]
lea rcx, [rbx + 0x30]
call fcn.18001abc0
lea rcx, [rbx + 0x10]
call fcn.18001abc0
mov rcx, rbx
call fcn.1801860f8
mov qword [r12], rdi
mov byte [r12 + 8], 0
mov rax, r12
jmp 0x180052822
cmp rdi, rsi
mov r8, qword [rsp + 0x80]
mov r10, qword [r8 + 0x18]
jne 0x1800526e0
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x80], rbx
mov rax, qword [rbx]
cmp rdi, rax
je 0x1800527c2
mov rcx, qword [rbx + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rdi
mov rcx, qword [rdi + 8]
mov qword [rcx], rbx
mov rdx, qword [rdi + 8]
mov rcx, qword [rax + 8]
mov qword [rdi + 8], rcx
mov rcx, qword [rbx + 8]
mov qword [rax + 8], rcx
mov qword [rbx + 8], rdx
mov rdx, qword [r13 + 0x18]
add rdx, r9
mov rax, qword [rdx]
cmp rax, qword [r13 + 8]
jne 0x1800527e0
mov qword [rdx], rbx
mov rax, qword [r13 + 0x18]
mov qword [r9 + rax + 8], rbx
jmp 0x18005280c
cmp rax, rdi
jne 0x1800527ea
mov qword [rdx], rbx
jmp 0x18005280c
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rdx + 8], rcx
cmp rcx, rbx
je 0x18005280c
mov rdx, qword [r13 + 0x18]
mov rax, qword [rdx + r9 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r9 + 8], rcx
mov rcx, r13
call fcn.180053020
nop
mov qword [r12], rbx
mov byte [r12 + 8], 1
mov rax, r12
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x180052840
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 0x18], r8
mov qword [rsp + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov qword [rsp + 0x28], 0xfffffffffffffffe
mov rdi, r9
mov r14, rdx
mov r13, rcx
mov r12, qword [r8 + 0x10]
mov r10, qword [r8 + 0x18]
cmp r10, 0x10
jb 0x180052883
mov r9, qword [r8]
jmp 0x180052886
mov r9, r8
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
test r12, r12
je 0x1800528b5
movabs r11, 0x100000001b3
movzx eax, byte [r9 + rcx]
xor rdx, rax
imul rdx, r11
inc rcx
cmp rcx, r12
jb 0x1800528a1
mov r9, qword [r13 + 0x30]
and r9, rdx
shl r9, 4
mov qword [rsp + 0x20], r9
mov rax, qword [r13 + 0x18]
mov rsi, qword [rax + r9]
cmp rsi, qword [r13 + 8]
jne 0x1800528d9
mov rbx, qword [r13 + 8]
jmp 0x1800528e1
mov rbx, qword [rax + r9 + 8]
mov rbx, qword [rbx]
cmp rbx, rsi
je 0x180052967
nop word [rax + rax]
mov rbx, qword [rbx + 8]
lea rdx, [rbx + 0x10]
lea r15, [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x180052906
mov rdx, qword [rdx]
cmp r10, 0x10
jb 0x180052911
mov rcx, qword [r8]
jmp 0x180052914
mov rcx, r8
mov r15, qword [r15]
mov r8, r15
cmp r12, r15
cmovb r8, r12
test r8, r8
je 0x18005292f
call fcn.1801a4460
test eax, eax
jne 0x180052951
cmp r12, r15
jb 0x180052951
ja 0x180052951
mov rdx, rdi
mov rcx, r13
call fcn.1800531f0
mov qword [r14], rbx
mov byte [r14 + 8], 0
mov rax, r14
jmp 0x180052a02
cmp rbx, rsi
mov r8, qword [rsp + 0x80]
mov r10, qword [r8 + 0x18]
jne 0x1800528f0
mov r9, qword [rsp + 0x20]
mov qword [rsp + 0x80], rdi
mov rax, qword [rdi]
cmp rbx, rax
je 0x1800529a4
mov rcx, qword [rdi + 8]
mov qword [rcx], rax
mov rcx, qword [rax + 8]
mov qword [rcx], rbx
mov rcx, qword [rbx + 8]
mov qword [rcx], rdi
mov rdx, qword [rbx + 8]
mov rcx, qword [rax + 8]
mov qword [rbx + 8], rcx
mov rcx, qword [rdi + 8]
mov qword [rax + 8], rcx
mov qword [rdi + 8], rdx
mov rdx, qword [r13 + 0x18]
add rdx, r9
mov rax, qword [rdx]
cmp rax, qword [r13 + 8]
jne 0x1800529c2
mov qword [rdx], rdi
mov rax, qword [r13 + 0x18]
mov qword [rax + r9 + 8], rdi
jmp 0x1800529ee
cmp rax, rbx
jne 0x1800529cc
mov qword [rdx], rdi
jmp 0x1800529ee
mov rax, qword [rdx + 8]
mov rcx, qword [rax]
mov qword [rdx + 8], rcx
cmp rcx, rdi
je 0x1800529ee
mov rdx, qword [r13 + 0x18]
mov rax, qword [rdx + r9 + 8]
mov rcx, qword [rax + 8]
mov qword [rdx + r9 + 8], rcx
mov rcx, r13
call fcn.1800530e0
nop
mov qword [r14], rdi
mov byte [r14 + 8], 1
mov rax, r14
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
Function at 0x180053990
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
sub rsp, 0x20
cmp qword [r8 + 0x28], 0x10
lea r9, [r8 + 0x10]
mov r11, qword [r9 + 0x10]
mov rbx, rdx
mov r10, rcx
jb 0x1800539b2
mov r9, qword [r9]
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
test r11, r11
je 0x1800539f9
mov qword [rsp + 0x30], rdi
movabs rdi, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
xor rdx, rax
imul rdx, rdi
cmp rcx, r11
jb 0x1800539e0
mov rdi, qword [rsp + 0x30]
mov r9, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and r9, rdx
shl r9, 4
add rcx, r9
cmp qword [rcx + 8], r8
jne 0x180053a36
cmp qword [rcx], r8
jne 0x180053a2c
mov rax, qword [r10 + 8]
mov qword [rcx], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
mov qword [rcx + r9 + 8], rax
jmp 0x180053a41
mov rax, qword [r8 + 8]
mov qword [rcx + 8], rax
jmp 0x180053a41
cmp qword [rcx], r8
jne 0x180053a46
mov rax, qword [r8]
mov qword [rcx], rax
mov r8, qword [rsp + 0x40]
lea rcx, [r10 + 8]
mov rdx, rbx
call fcn.180053b30
mov rax, rbx
add rsp, 0x20
pop rbx
ret

Function at 0x180053a60
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
sub rsp, 0x20
cmp qword [r8 + 0x28], 0x10
lea r9, [r8 + 0x10]
mov r11, qword [r9 + 0x10]
mov rbx, rdx
mov r10, rcx
jb 0x180053a82
mov r9, qword [r9]
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
test r11, r11
je 0x180053ac9
mov qword [rsp + 0x30], rdi
movabs rdi, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
inc rcx
xor rdx, rax
imul rdx, rdi
cmp rcx, r11
jb 0x180053ab0
mov rdi, qword [rsp + 0x30]
mov r9, qword [r10 + 0x30]
mov rcx, qword [r10 + 0x18]
and r9, rdx
shl r9, 4
add rcx, r9
cmp qword [rcx + 8], r8
jne 0x180053b06
cmp qword [rcx], r8
jne 0x180053afc
mov rax, qword [r10 + 8]
mov qword [rcx], rax
mov rcx, qword [r10 + 0x18]
mov rax, qword [r10 + 8]
mov qword [rcx + r9 + 8], rax
jmp 0x180053b11
mov rax, qword [r8 + 8]
mov qword [rcx + 8], rax
jmp 0x180053b11
cmp qword [rcx], r8
jne 0x180053b16
mov rax, qword [r8]
mov qword [rcx], rax
mov r8, qword [rsp + 0x40]
lea rcx, [r10 + 8]
mov rdx, rbx
call fcn.180053ba0
mov rax, rbx
add rsp, 0x20
pop rbx
ret
Function at 0x180054140
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
mov r15, qword [r8 + 0x18]
mov r14, r8
mov rdi, qword [r8 + 0x10]
mov r12, rdx
mov rbp, rcx
cmp r15, 0x10
jb 0x180054171
mov r8, qword [r8]
xor ecx, ecx
movabs rdx, 0xcbf29ce484222325
test rdi, rdi
je 0x1800541a4
movabs r9, 0x100000001b3
nop dword [rax]
movzx eax, byte [r8 + rcx]
inc rcx
xor rdx, rax
imul rdx, r9
cmp rcx, rdi
jb 0x180054190
mov rcx, qword [rbp + 0x18]
mov rax, qword [rbp + 0x30]
mov rbp, qword [rbp + 8]
and rax, rdx
mov rbx, rax
mov qword [rsp + 0x58], rsi
add rax, rax
add rbx, rbx
mov r13, qword [rcx + rax*8]
inc rax
mov rbx, qword [rcx + rbx*8]
lea rax, [rcx + rax*8]
mov qword [rsp + 0x50], rax
cmp r13, rbp
jne 0x1800541df
mov rax, rbp
jmp 0x1800541e5
mov rax, qword [rax]
mov rax, qword [rax]
cmp rbx, rax
je 0x180054283
lea rcx, [rbx + 0x10]
cmp r15, 0x10
jb 0x1800541fd
mov rdx, qword [r14]
jmp 0x180054200
mov rdx, r14
cmp qword [rcx + 0x18], 0x10
lea rsi, [rcx + 0x10]
jb 0x18005420e
mov rcx, qword [rcx]
mov rsi, qword [rsi]
mov r8, rdi
cmp rsi, rdi
cmovb r8, rsi
test r8, r8
je 0x180054229
call fcn.1801a4460
test eax, eax
jne 0x180054230
cmp rsi, rdi
jb 0x180054230
jbe 0x18005423a
mov rbx, qword [rbx]
mov rax, qword [rsp + 0x50]
jmp 0x1800541d5
cmp qword [rbx + 0x28], 0x10
lea rdx, [rbx + 0x10]
lea rsi, [rdx + 0x10]
jb 0x18005424c
mov rdx, qword [rdx]
cmp r15, 0x10
jb 0x180054255
mov r14, qword [r14]
mov rsi, qword [rsi]
cmp rdi, rsi
mov r8, rsi
cmovb r8, rdi
test r8, r8
je 0x180054273
mov rcx, r14
call fcn.1801a4460
test eax, eax
jne 0x18005427a
cmp rdi, rsi
jb 0x18005427a
jbe 0x18005427d
mov rbx, rbp
mov qword [r12], rbx
jmp 0x180054287
mov qword [r12], rbp
mov rsi, qword [rsp + 0x58]
mov rax, r12
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x18005dba0
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
sub rsp, 0x20
lea rsi, [r9*8]
mov rdi, r8
mov rbp, r9
mov rbx, rdx
mov r14, rcx
mov r8, rsi
mov r10, rdi
cmp rsi, 0x10
jb 0x18005dc11
mov r9, rsi
mov r11, rdi
shr r9, 4
sub r11, rdx
imul rax, r9, 0xfffffffffffffff0
add r8, rax
nop
mov rcx, qword [r11 + rdx + 8]
xor rcx, qword [rdx + 8]
mov rax, qword [r10]
add r10, 0x10
xor qword [rdx], rax
mov qword [rdx + 8], rcx
add rdx, 0x10
sub r9, 1
jne 0x18005dbf0
test r8, r8
je 0x18005dc31
sub r10, rdx
nop dword [rax]
movzx eax, byte [r10 + rdx]
xor byte [rdx], al
lea rdx, [rdx + 1]
sub r8, 1
jne 0x18005dc20
mov rax, qword [r14]
mov r9, rbp
mov r8, rbx
mov rdx, rbx
mov rcx, r14
call qword [rax + 0x48]
cmp rsi, 0x10
jb 0x18005dc81
mov rdx, rsi
mov r8, rdi
shr rdx, 4
sub r8, rbx
imul rax, rdx, 0xfffffffffffffff0
add rsi, rax
nop dword [rax]
mov rcx, qword [r8 + rbx + 8]
xor rcx, qword [rbx + 8]
mov rax, qword [rdi]
add rdi, 0x10
xor qword [rbx], rax
mov qword [rbx + 8], rcx
add rbx, 0x10
sub rdx, 1
jne 0x18005dc60
test rsi, rsi
je 0x18005dca0
sub rdi, rbx
nop dword [rax]
movzx eax, byte [rdi + rbx]
xor byte [rbx], al
lea rbx, [rbx + 1]
sub rsi, 1
jne 0x18005dc90
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret

Function at 0x18005dcc0
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
sub rsp, 0x20
mov rdi, r8
mov rsi, r9
shl rsi, 5
mov rbp, r9
mov rbx, rdx
mov r14, rcx
mov r8, rsi
mov r10, rdi
cmp rsi, 0x10
jb 0x18005dd31
mov r9, rsi
mov r11, rdi
shr r9, 4
sub r11, rdx
imul rax, r9, 0xfffffffffffffff0
add r8, rax
nop dword [rax]
mov rcx, qword [r11 + rdx + 8]
xor rcx, qword [rdx + 8]
mov rax, qword [r10]
add r10, 0x10
xor qword [rdx], rax
mov qword [rdx + 8], rcx
add rdx, 0x10
sub r9, 1
jne 0x18005dd10
test r8, r8
je 0x18005dd51
sub r10, rdx
nop dword [rax]
movzx eax, byte [r10 + rdx]
xor byte [rdx], al
lea rdx, [rdx + 1]
sub r8, 1
jne 0x18005dd40
mov rax, qword [r14]
mov r9, rbp
mov r8, rbx
mov rdx, rbx
mov rcx, r14
call qword [rax + 0x48]
cmp rsi, 0x10
jb 0x18005dda1
mov rdx, rsi
mov r8, rdi
shr rdx, 4
sub r8, rbx
imul rax, rdx, 0xfffffffffffffff0
add rsi, rax
nop dword [rax]
mov rcx, qword [r8 + rbx + 8]
xor rcx, qword [rbx + 8]
mov rax, qword [rdi]
add rdi, 0x10
xor qword [rbx], rax
mov qword [rbx + 8], rcx
add rbx, 0x10
sub rdx, 1
jne 0x18005dd80
test rsi, rsi
je 0x18005ddc0
sub rdi, rbx
nop dword [rax]
movzx eax, byte [rdi + rbx]
xor byte [rbx], al
lea rbx, [rbx + 1]
sub rsi, 1
jne 0x18005ddb0
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret