joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1800330b0
Capabilities:
Hash data with crc32

Disassembly:
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10d, 0xffffffff
mov eax, r10d
test r9b, r9b
je 0x180033100
lea r11, [0x180071520]
nop dword [rax]
cmp r9b, 0x23
jne 0x1800330e3
cmp byte [r8], r9b
jne 0x1800330e3
cmp byte [r8 + 1], r9b
cmove eax, r10d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [r11 + rdx*4]
test r9b, r9b
jne 0x1800330d0
mov r11, qword [0x1800801d0]
not eax
movsxd rcx, dword [r11 + 0x1a68]
mov r9, qword [r11 + 0x1a70]
mov r10, rcx
mov rdx, rcx
mov r8, r9
test ecx, ecx
je 0x180033168
nop dword [rax]
nop dword [rax + rax]
mov r8, rdx
shr r8, 1
mov rcx, r8
add rcx, rcx
cmp dword [r9 + rcx*8], eax
jae 0x180033159
lea r9, [r9 + rcx*8]
mov rcx, 0xffffffffffffffff
sub rcx, r8
add r9, 0x10
add rdx, rcx
jmp 0x18003315c
mov rdx, r8
test rdx, rdx
jne 0x180033130
mov r8, qword [r11 + 0x1a70]
shl r10, 4
add r10, r8
cmp r9, r10
je 0x18003317e
cmp dword [r9], eax
jne 0x18003317e
mov rax, qword [r9 + 8]
ret
xor eax, eax
ret

Function at 0x180033c40
Capabilities:
Hash data with crc32

Disassembly:
mov rax, qword [rcx + 0xc8]
mov r9, r8
movsxd r8, dword [rcx + 0xc0]
mov r10, rdx
xor ecx, ecx
mov rdx, r9
sub rdx, r10
test r9, r9
mov r8d, dword [rax + r8*4 - 4]
cmove rdx, rcx
mov rcx, r10
jmp fcn.180034450

Function at 0x180034450
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov r11d, r8d
mov r10, rdx
not r11d
mov r9, rcx
mov eax, r11d
test rdx, rdx
je 0x1800344ad
lea rbx, [0x180071520]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x180034494
cmp r10, 2
jb 0x180034494
cmp byte [r9], r8b
jne 0x180034494
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
xor rdx, r8
shr eax, 8
xor eax, dword [rbx + rdx*4]
test r10, r10
jne 0x180034470
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x1800344ef
lea rbx, [0x180071520]
cmp r8b, 0x23
jne 0x1800344d3
cmp byte [r9], r8b
jne 0x1800344d3
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
movzx ecx, r8b
movzx r8d, byte [r9]
xor rdx, rcx
shr eax, 8
inc r9
xor eax, dword [rbx + rdx*4]
test r8b, r8b
jne 0x1800344c0
mov rbx, qword [rsp + 8]
not eax
ret
Function at 0x1800352a0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x50
xor eax, eax
lea r8, [rbp + 0x11]
mov dword [rbp - 0x24], eax
lea r11, [0x180071520]
mov qword [rbp - 8], rax
mov r10d, 0xffffffff
lea rax, [rbp + 0x10]
mov rbx, rcx
mov qword [rbp - 0x30], rax
mov edx, r10d
mov eax, dword [0x180071aec]
mov r9b, 0x57
mov dword [rbp + 0x10], eax
movzx eax, word [0x180071af0]
xor byte [rbp + 0x11], 0x32
xor byte [rbp + 0x12], 0x33
xor byte [rbp + 0x13], 0x34
mov word [rbp + 0x14], ax
movzx eax, byte [0x180071af2]
xor byte [rbp + 0x14], 0x35
xor byte [rbp + 0x15], 0x36
xor al, 0x37
mov byte [rbp + 0x10], 0x57
mov byte [rbp + 0x16], al
cmp r9b, 0x23
jne 0x180035328
cmp byte [r8], r9b
jne 0x180035328
cmp byte [r8 + 1], r9b
cmove edx, r10d
movzx ecx, dl
movzx eax, r9b
movzx r9d, byte [r8]
xor rcx, rax
shr edx, 8
inc r8
xor edx, dword [r11 + rcx*4]
test r9b, r9b
jne 0x180035315
mov ecx, dword [rbx + 0x2fac]
lea rax, [0x180040b40]
mov edi, dword [rbx + 0x2fa8]
not edx
mov qword [rbp - 0x20], rax
lea rax, [0x180040980]
mov qword [rbp - 0x18], rax
lea rax, [0x180040bf0]
mov qword [rbp - 0x10], rax
mov dword [rbp - 0x28], edx
cmp edi, ecx
jne 0x180035434
inc edi
test ecx, ecx
je 0x180035390
mov eax, ecx
cdq
sub eax, edx
sar eax, 1
add eax, ecx
jmp 0x180035395
mov eax, 8
cmp eax, edi
cmovg edi, eax
cmp edi, ecx
jle 0x180035434
mov rax, qword [0x1800801d0]
mov qword [rsp + 0x68], rsi
test rax, rax
je 0x1800353b9
inc dword [rax + 0x3bc]
mov rdx, qword [0x1800801e0]
movsxd rax, edi
lea rcx, [rax + rax*2]
shl rcx, 4
call qword [0x18007d2b0]
mov rdx, qword [rbx + 0x2fb0]
mov rsi, rax
test rdx, rdx
je 0x180035422
movsxd rcx, dword [rbx + 0x2fa8]
lea r8, [rcx + rcx*2]
mov rcx, rax
shl r8, 4
call fcn.180066d20
mov rcx, qword [rbx + 0x2fb0]
test rcx, rcx
je 0x180035415
mov rax, qword [0x1800801d0]
test rax, rax
je 0x180035415
dec dword [rax + 0x3bc]
mov rdx, qword [0x1800801e0]
call qword [0x18007d2b8]
mov qword [rbx + 0x2fb0], rsi
mov rsi, qword [rsp + 0x68]
mov dword [rbx + 0x2fac], edi
movsxd rax, dword [rbx + 0x2fa8]
movups xmm0, xmmword [rbp - 0x30]
mov rdi, qword [rsp + 0x78]
movups xmm1, xmmword [rbp - 0x20]
lea rcx, [rax + rax*2]
mov rax, qword [rbx + 0x2fb0]
add rcx, rcx
movups xmmword [rax + rcx*8], xmm0
movups xmm0, xmmword [rbp - 0x10]
movups xmmword [rax + rcx*8 + 0x10], xmm1
movups xmmword [rax + rcx*8 + 0x20], xmm0
inc dword [rbx + 0x2fa8]
mov byte [rbx], 1
mov rbx, qword [rsp + 0x70]
add rsp, 0x50
pop rbp
ret
Function at 0x180035d50
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x40
mov rbp, qword [0x1800801d0]
mov rbx, r8
mov r12, rdx
mov r8, qword [rbp + 0x1a80]
test rbx, rbx
jne 0x180035d9a
mov rbx, rdx
cmp rdx, 0xffffffffffffffff
jae 0x180035d9a
movzx eax, byte [rbx]
test al, al
je 0x180035d9a
cmp al, 0x23
jne 0x180035d91
cmp byte [rbx + 1], al
je 0x180035d9a
inc rbx
cmp rbx, 0xffffffffffffffff
jb 0x180035d81
mov qword [rsp + 0x90], r15
test rcx, rcx
je 0x180035dc6
movss xmm1, dword [rbp + 0x2fe8]
addss xmm1, dword [0x1800713bc]
movss xmm0, dword [rcx + 4]
comiss xmm0, xmm1
jbe 0x180035dc6
mov r15b, 1
jmp 0x180035dce
xor r15b, r15b
test rcx, rcx
je 0x180035de3
mov eax, dword [rcx + 4]
mov dword [rbp + 0x2fe8], eax
test r15b, r15b
je 0x180035de3
mov byte [rbp + 0x2fec], 1
mov eax, dword [rbp + 0x2ff0]
mov rdi, r12
mov r14d, dword [r8 + 0x180]
cmp eax, r14d
jle 0x180035e09
mov dword [rbp + 0x2ff0], r14d
mov eax, r14d
mov r14d, dword [r8 + 0x180]
sub r14d, eax
movabs r13, 0x47ae147ae147ae15
nop word [rax + rax]
mov r8, rbx
mov edx, 0xa
sub r8, rdi
mov rcx, rdi
call fcn.180066cb0
test rax, rax
mov rsi, rbx
cmovne rsi, rax
cmp rsi, rbx
jne 0x180035e4b
cmp rdi, rsi
je 0x180035fc9
mov r10d, esi
sub r10d, edi
test r15b, r15b
jne 0x180035f3b
cmp rdi, r12
jne 0x180035f3b
cmp byte [rbp + 0x2fec], r15b
je 0x180035ed2
cmp byte [0x180071bff], r15b
mov rax, qword [0x180071bf8]
mov qword [rsp + 0x88], rax
je 0x180035ec5
xor r8d, r8d
nop word [rax + rax]
mov rax, r13
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x88], al
inc r8
cmp r8, 8
jb 0x180035e90
lea rcx, [rsp + 0x88]
jmp 0x180035f98
mov eax, dword [0x180071c00]
xor r9d, r9d
mov dword [rsp + 0x80], eax
movzx eax, word [0x180071c04]
mov word [rsp + 0x84], ax
mov rax, r13
mul r9
mov rax, r9
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r9b
sub al, cl
add al, 0x31
xor byte [rsp + r9 + 0x80], al
inc r9
cmp r9, 6
jb 0x180035ef1
mov r8, rdi
lea rcx, [rsp + 0x80]
mov edx, r10d
call fcn.180036030
jmp 0x180035fb4
cmp byte [0x180071bf1], 0
movsd xmm0, qword [0x180071be8]
movzx eax, word [0x180071bf0]
movsd qword [rsp + 0x30], xmm0
mov word [rsp + 0x38], ax
je 0x180035f93
xor r8d, r8d
mov rax, r13
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x30], al
inc r8
cmp r8, 0xa
jb 0x180035f61
lea rcx, [rsp + 0x30]
mov r9d, r10d
mov qword [rsp + 0x20], rdi
lea r8, [0x180071a79]
lea edx, [r14*4]
call fcn.180036030
mov byte [rbp + 0x2fec], 0
cmp rsi, rbx
je 0x18003600a
lea rdi, [rsi + 1]
jmp 0x180035e20
test r15b, r15b
je 0x18003600a
movzx eax, word [0x180071c08]
lea rcx, [rsp + 0x80]
mov word [rsp + 0x80], ax
movzx eax, byte [0x180071c0a]
xor byte [rsp + 0x81], 0x32
xor al, 0x33
mov byte [rsp + 0x82], al
mov byte [rsp + 0x80], 0xd
call fcn.180036030
mov r15, qword [rsp + 0x90]
add rsp, 0x40
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x18003adc0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x10], rbx
mov dword [rsp + 8], ecx
push rdi
sub rsp, 0x20
mov rax, qword [0x1800801d0]
mov r8d, ecx
mov rbx, qword [rax + 0x1a80]
add rbx, 0xc0
movzx eax, r8b
lea r8, [0x180071520]
movsxd rdx, dword [rbx]
mov r9, qword [rbx + 8]
mov edi, dword [r9 + rdx*4 - 4]
not edi
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [rsp + 0x31]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [rsp + 0x32]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [rsp + 0x33]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
shr edi, 8
xor rcx, rax
xor edi, dword [r8 + rcx*4]
mov r8d, dword [rbx + 4]
not edi
cmp edx, r8d
jne 0x18003ae80
lea ecx, [rdx + 1]
test r8d, r8d
je 0x18003ae66
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18003ae6b
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.1800416a0
mov edx, dword [rbx]
mov r9, qword [rbx + 8]
movsxd rax, edx
mov dword [r9 + rax*4], edi
inc dword [rbx]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x18003af40
Capabilities:
Hash data with crc32

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
mov qword [r11 + 8], rcx
push rdi
sub rsp, 0x20
mov rax, qword [0x1800801d0]
mov r8, rcx
mov rbx, qword [rax + 0x1a80]
add rbx, 0xc0
movzx eax, r8b
lea r8, [0x180071520]
movsxd rdx, dword [rbx]
mov r9, qword [rbx + 8]
mov edi, dword [r9 + rdx*4 - 4]
not edi
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 9]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xa]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xb]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xc]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xd]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xe]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, byte [r11 + 0xf]
xor edi, dword [r8 + rcx*4]
movzx ecx, dil
shr edi, 8
xor rcx, rax
xor edi, dword [r8 + rcx*4]
mov r8d, dword [rbx + 4]
not edi
cmp edx, r8d
jne 0x18003b04e
lea ecx, [rdx + 1]
test r8d, r8d
je 0x18003b034
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x18003b039
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
mov rcx, rbx
call fcn.1800416a0
mov edx, dword [rbx]
mov r9, qword [rbx + 8]
movsxd rax, edx
mov dword [r9 + rax*4], edi
inc dword [rbx]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x18003ef60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
sub rsp, 0x40
mov rbx, qword [0x1800801d0]
xor esi, esi
mov dword [rbx + 0x3000], esi
cmp byte [rbx + 0x2ffc], sil
je 0x18003f192
mov rax, qword [0x1800801d0]
mov qword [rsp + 0x50], rbp
mov ebp, dword [rbx + 0x1abc]
mov qword [rsp + 0x58], rdi
mov dword [rax + 0x1f18], 7
mov rdi, qword [0x1800801d0]
mov ecx, dword [rdi + 0x74]
test ecx, ecx
js 0x18003efce
mov dl, 1
call fcn.180035620
test al, al
je 0x18003efce
mov byte [rbx + 0x2ffc], sil
mov rdi, qword [0x1800801d0]
movss xmm1, dword [rdi + 0x444]
xorps xmm0, xmm0
ucomiss xmm1, xmm0
jp 0x18003eff8
jne 0x18003eff8
test ebp, ebp
je 0x18003eff8
mov dword [rbx + 0x3000], ebp
mov byte [rbx + 0x2ffc], sil
mov rdi, qword [0x1800801d0]
or dword [rdi + 0x1b20], 0x40
xor edx, edx
xor ecx, ecx
mov dword [rdi + 0x1b80], 0x3f19999a
call fcn.180030050
cmp byte [0x180071aa9], sil
movabs rbx, 0x47ae147ae147ae15
movups xmm0, xmmword [str.y_EQGSSq_]
movzx eax, word [0x180071aa8]
mov rdi, qword [rsp + 0x58]
movups xmmword [rsp + 0x20], xmm0
mov word [rsp + 0x30], ax
je 0x18003f082
mov r8, rsi
nop word [rax + rax]
mov rax, rbx
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x20], al
inc r8
cmp r8, 0x12
jb 0x18003f050
mov edx, ebp
lea rcx, [rsp + 0x20]
call fcn.1800640f0
cmp byte [0x180071acb], sil
movups xmm0, xmmword [str.a_VGF]
mov eax, dword [0x180071ac8]
movsd xmm1, qword [0x180071ac0]
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], eax
movsd qword [rsp + 0x30], xmm1
je 0x18003f0f2
mov r8, rsi
nop
mov rax, rbx
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x20], al
inc r8
cmp r8, 0x1c
jb 0x18003f0c0
lea rcx, [rsp + 0x20]
call fcn.1800640f0
cmp byte [0x180071aeb], sil
movups xmm0, xmmword [str.rZW]
mov eax, dword [0x180071ae8]
movsd xmm1, qword [0x180071ae0]
movups xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x38], eax
movsd qword [rsp + 0x30], xmm1
je 0x18003f162
mov r8, rsi
nop dword [rax]
mov rax, rbx
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x20], al
inc r8
cmp r8, 0x1c
jb 0x18003f130
mov rcx, qword [0x1800801d0]
lea rdx, [rsp + 0x20]
mov eax, 0x10
test ebp, ebp
cmove rsi, rax
add rcx, 0x161c
add rcx, rsi
call fcn.180064120
call fcn.180031e50
mov rbp, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rsi
ret
Function at 0x1800439d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
test r9d, 0xff000000
je 0x180043b61
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
movss xmm3, dword [rsp + 0x70]
xorps xmm0, xmm0
comiss xmm3, xmm0
mov edi, r9d
mov rsi, r8
mov rbp, rdx
mov rbx, rcx
jbe 0x180043a40
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call fcn.180047340
mov r8d, dword [rbx + 0x80]
mov r9d, edi
mov rdx, qword [rbx + 0x88]
mov rcx, rbx
call fcn.180041f80
mov dword [rbx + 0x80], 0
jmp 0x180043b4d
mov edx, 6
movaps xmmword [rsp + 0x30], xmm6
lea r8d, [rdx - 2]
call fcn.180047860
movzx edx, word [rbx + 0x4c]
mov rax, qword [rbx + 0x38]
movss xmm1, dword [rsi]
movss xmm2, dword [rbp + 4]
movss xmm3, dword [rbp]
lea ecx, [rdx + 1]
movss xmm6, dword [rax + 4]
movss xmm5, dword [rax]
movss xmm4, dword [rsi + 4]
mov rax, qword [rbx + 0x58]
mov word [rax], dx
mov rax, qword [rbx + 0x58]
mov word [rax + 2], cx
lea ecx, [rdx + 2]
mov rax, qword [rbx + 0x58]
mov word [rax + 4], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 6], dx
add dx, 3
mov rax, qword [rbx + 0x58]
mov word [rax + 8], cx
mov rax, qword [rbx + 0x58]
mov word [rax + 0xa], dx
movsd xmm0, qword [rbp]
mov rax, qword [rbx + 0x50]
movsd qword [rax], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 8], xmm5
movss dword [rax + 0xc], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x10], edi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x14], xmm1
movss dword [rax + 0x18], xmm2
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x1c], xmm5
movss dword [rax + 0x20], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x24], edi
movsd xmm0, qword [rsi]
mov rax, qword [rbx + 0x50]
movsd qword [rax + 0x28], xmm0
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x30], xmm5
movss dword [rax + 0x34], xmm6
mov rax, qword [rbx + 0x50]
mov dword [rax + 0x38], edi
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x3c], xmm3
movss dword [rax + 0x40], xmm4
mov rax, qword [rbx + 0x50]
movss dword [rax + 0x44], xmm5
movss dword [rax + 0x48], xmm6
mov rax, qword [rbx + 0x50]
movaps xmm6, xmmword [rsp + 0x30]
mov dword [rax + 0x4c], edi
add qword [rbx + 0x50], 0x50
add dword [rbx + 0x4c], 4
add qword [rbx + 0x58], 0xc
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
Function at 0x1800581f0
Capabilities:
Encode data using xor

Disassembly:
or r8d, 2
jmp fcn.180058200
Function at 0x18005d2e0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rbp
push rdi
push r13
push r14
sub rsp, 0x50
mov rax, qword [0x1800801d0]
mov r14, rdx
mov edx, dword [rdx]
mov r13, r9
mov ebp, dword [rsp + 0xa0]
mov r9, r8
mov qword [rsp + 0x28], 0
mov rdi, rcx
mov rbx, rax
test edx, edx
js 0x18005d332
cmp edx, ebp
jge 0x18005d332
lea r8, [rsp + 0x28]
mov rcx, r13
call r9
mov rax, qword [0x1800801d0]
mov ecx, dword [rsp + 0xa8]
cmp ecx, 0xffffffff
je 0x18005d3ba
test byte [rbx + 0x1b20], 0x10
jne 0x18005d3ba
movss xmm3, dword [0x180071d08]
test ecx, ecx
jle 0x18005d385
movss xmm1, dword [rax + 0x15b4]
movss xmm2, dword [rax + 0x1570]
movaps xmm3, xmm1
addss xmm3, dword [rax + 0x1928]
movd xmm0, ecx
addss xmm2, xmm2
cvtdq2ps xmm0, xmm0
mulss xmm3, xmm0
subss xmm3, xmm1
addss xmm3, xmm2
xor r9d, r9d
movss dword [rsp + 0x8c], xmm3
xor r8d, r8d
mov dword [rsp + 0x88], 0x7f7fffff
lea rdx, [rsp + 0x88]
mov qword [rsp + 0x20], 0
lea rcx, [rsp + 0x20]
call fcn.18003e530
mov rdx, qword [rsp + 0x28]
xor r8d, r8d
mov rcx, rdi
call fcn.180056410
test al, al
jne 0x18005d3da
add rsp, 0x50
pop r14
pop r13
pop rdi
pop rbp
pop rbx
ret
mov qword [rsp + 0x40], r15
xor ebx, ebx
xor r15b, r15b
test ebp, ebp
jle 0x18005d503
mov qword [rsp + 0x80], rsi
xor edi, edi
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x20], rbx
mov rcx, rdi
call fcn.18003af40
mov esi, dword [r14]
lea r8, [rsp + 0x88]
cmp ebx, esi
mov edx, ebx
mov rcx, r13
sete r12b
call qword [rsp + 0x90]
test al, al
jne 0x18005d4b8
mov eax, dword [0x180076998]
xor r8d, r8d
movsd xmm0, qword [0x180076990]
movabs rbp, 0x47ae147ae147ae15
mov dword [rsp + 0x38], eax
movzx eax, word [0x18007699c]
mov word [rsp + 0x3c], ax
movzx eax, byte [0x18007699e]
mov byte [rsp + 0x3e], al
movsd qword [rsp + 0x30], xmm0
nop dword [rax]
mov rax, rbp
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x32
xor byte [rsp + r8 + 0x30], al
inc r8
cmp r8, 0xf
jb 0x18005d470
mov ebp, dword [rsp + 0xa0]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x88], rcx
jmp 0x18005d4c0
mov rcx, qword [rsp + 0x88]
lea r9, [rsp + 0x20]
xor r8d, r8d
movzx edx, r12b
call fcn.180062d70
test al, al
je 0x18005d4db
mov r15b, 1
mov dword [r14], ebx
cmp ebx, esi
jne 0x18005d4e4
call fcn.18003e2e0
call fcn.18003a860
inc ebx
inc rdi
cmp ebx, ebp
jl 0x18005d400
mov r12, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x80]
call fcn.180032980
movzx eax, r15b
mov r15, qword [rsp + 0x40]
add rsp, 0x50
pop r14
pop r13
pop rdi
pop rbp
pop rbx
ret
Function at 0x1800619c0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
sub rsp, 0x48
movzx edx, byte [rcx]
mov r11, rcx
cmp dl, 0x25
jne 0x1800619f1
cmp byte [rcx + 1], 0x2e
jne 0x1800619f1
cmp byte [rcx + 2], 0x30
jne 0x1800619f1
cmp byte [rcx + 3], 0x66
jne 0x1800619f1
cmp byte [rcx + 4], 0
jne 0x1800619f1
lea rax, [rsp + 0x50]
add rsp, 0x48
ret
mov r8, r11
test dl, dl
je 0x180061a1f
nop dword [rax + rax]
lea rax, [r8 + 1]
cmp dl, 0x25
jne 0x180061a0f
cmp byte [rax], dl
jne 0x180061a1f
cmp dl, dl
cmovne rax, r8
movzx edx, byte [rax + 1]
lea r8, [rax + 1]
test dl, dl
jne 0x180061a00
cmp byte [r8], 0x25
mov r9, r8
jne 0x180061b4e
mov al, 0x25
nop
lea ecx, [rax - 0x41]
movsx r10d, al
cmp cl, 0x19
ja 0x180061a4f
lea ecx, [r10 - 0x41]
mov edx, 1
shl edx, cl
test edx, 0x900
je 0x180061a75
sub al, 0x61
cmp al, 0x19
ja 0x180061a67
lea ecx, [r10 - 0x61]
mov eax, 1
shl eax, cl
test eax, 0x2480a80
je 0x180061a75
movzx eax, byte [r9 + 1]
inc r9
test al, al
jne 0x180061a30
jmp 0x180061a78
inc r9
cmp r9, r8
jbe 0x180061b4e
cmp byte [r9 - 1], 0x66
jne 0x180061b4e
cmp r8, r11
jne 0x180061a9b
cmp byte [r9], 0
je 0x1800619e7
cmp byte [0x1800769c9], 0
movsd xmm0, qword [0x1800769c0]
movzx eax, word [0x1800769c8]
mov qword [rsp + 0x58], rbx
mov rbx, qword [0x1800801d0]
movsd qword [rsp + 0x30], xmm0
mov word [rsp + 0x38], ax
je 0x180061b17
mov qword [rsp + 0x40], rdi
xor r10d, r10d
movabs rdi, 0x47ae147ae147ae15
nop dword [rax]
mov rax, rdi
mul r10
mov rax, r10
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r10b
sub al, cl
add al, 0x32
xor byte [rsp + r10 + 0x30], al
inc r10
cmp r10, 0xa
jb 0x180061ae0
mov rdi, qword [rsp + 0x40]
sub r8d, r11d
mov qword [rsp + 0x28], r9
mov r9d, r8d
mov qword [rsp + 0x20], r11
lea r8, [rsp + 0x30]
mov edx, 0xc01
lea rcx, [rbx + 0x31f8]
call fcn.180034360
lea rax, [rbx + 0x31f8]
mov rbx, qword [rsp + 0x58]
add rsp, 0x48
ret
mov rax, r11
add rsp, 0x48
ret
Function at 0x180066ab0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push r14
sub rsp, 0x68
lea rax, [0x18007d568]
movabs r14, 0x2b992ddfa232
mov qword [rcx], rax
mov rsi, rcx
lea rax, [0x18007d570]
mov qword [rcx + 8], rax
mov qword [0x18007d568], r14
mov rax, qword [rcx + 8]
movabs rcx, 0xffffd466d2205dcd
mov qword [rax], rcx
mov rax, qword [rsi]
mov rdx, qword [rax]
cmp rdx, r14
je 0x180066b11
mov rax, qword [rsi + 8]
not rdx
mov qword [rax], rdx
mov al, 1
add rsp, 0x68
pop r14
pop rsi
ret
mov qword [rsp + 0x60], rbx
lea rcx, [rsp + 0x90]
mov qword [rsp + 0x58], rbp
xor ebp, ebp
mov qword [rsp + 0x90], rbp
mov qword [rsp + 0x50], rdi
call fcn.18006bdf0
mov rbx, qword [rsp + 0x90]
call fcn.180069170
mov eax, eax
xor rbx, rax
call fcn.1800691a0
mov edi, eax
xor rdi, rbx
call fcn.18006be50
call fcn.18006be50
mov rbx, rax
mov qword [rsp + 0x88], rbp
mov rax, qword [0x180080218]
xor rbx, rdi
mov rdi, qword [0x18007d5b8]
movabs rdx, 0x7ffffffdfffe
lea rcx, [rax - 0x10000]
cmp rcx, rdx
jbe 0x180066c13
mov ecx, dword [0x180076ef0]
mov r8d, ebp
mov dword [rsp + 0x80], ecx
movabs r9, 0x47ae147ae147ae15
movzx ecx, word [0x180076ef4]
mov word [rsp + 0x84], cx
nop dword [rax]
mov rax, r9
mul r8
mov rax, r8
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 5
movsx eax, al
imul ecx, eax, 0x32
movzx eax, r8b
sub al, cl
add al, 0x31
xor byte [rsp + r8 + 0x80], al
inc r8
cmp r8, 6
jb 0x180066bc0
lea rdx, [rsp + 0x80]
movabs rcx, 0x11837e716e5fd5ec
call fcn.18002a300
mov qword [0x180080218], rax
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x88]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rbp
xor r9d, r9d
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x38], rdi
xor edx, edx
mov qword [rsp + 0x40], rbp
call fcn.18002ab40
mov rdi, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
test al, al
jne 0x180066c59
call fcn.1800690d0
movsxd rax, dword [rsp + 0x8c]
mov ecx, dword [rsp + 0x88]
shl rcx, 0x20
xor rcx, rax
movabs rax, 0xffffffffffff
xor rcx, rbx
mov rbx, qword [rsp + 0x60]
and rcx, rax
movabs rax, 0x2b992ddfa233
cmp rcx, r14
cmove rcx, rax
mov rax, qword [rsi]
mov qword [rax], rcx
not rcx
mov rax, qword [rsi + 8]
mov qword [rax], rcx
mov al, 1
add rsp, 0x68
pop r14
pop rsi
ret