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

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov rsi, rdx
cmp dword [rcx], 2
jne 0x14011ebc6
movdqu xmm0, xmmword [rcx + 8]
pshufd xmm1, xmm0, 0x44
pxor xmm1, xmmword [str.uespemosarenegylmodnarodsetybdetC:Userswarden.cargo_registry_srcindex.crates.io_6f17d22bba15001fgeneric_array_0.14.6_srchex.rs]
movdqa xmmword [rsp + 0x30], xmm1
pshufd xmm1, xmm0, 0xee
pxor xmm1, xmmword [0x140405890]
movdqa xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x50], xmm0
pxor xmm0, xmm0
movdqa xmmword [rsp + 0x60], xmm0
mov qword [rsp + 0x70], 0
mov rdi, qword [rsi]
xor eax, eax
test rdi, rdi
setne al
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x28]
mov r8d, 8
call fcn.1400e40b0
test rdi, rdi
je 0x14011ec55
mov rdx, qword [rsi + 8]
mov r8, qword [rsi + 0x10]
lea rcx, [rsp + 0x30]
jmp 0x14011ec6e
mov rdx, qword [rsi]
xor ecx, ecx
test rdx, rdx
setne cl
movabs rax, 0xcbf29ce484222325
xor rax, rcx
movabs rcx, 0x1efac7090aef4a21
imul rax, rcx
test rdx, rdx
je 0x14011ed66
mov r9, qword [rsi + 0x10]
test r9, r9
je 0x14011ede8
mov rcx, qword [rsi + 8]
movabs rdx, 0x100000001b3
mov r10, r9
and r10, 7
je 0x14011ed73
mov r11, rax
mov r8, rcx
nop word cs:[rax + rax]
movzx eax, byte [r8]
inc r8
xor rax, r11
imul rax, rdx
mov r11, rax
dec r10
jne 0x14011ec30
cmp r9, 8
jae 0x14011ed7c
jmp 0x14011ede8
movzx eax, byte [rsi + 8]
mov qword [rsp + 0x28], rax
lea rcx, [rsp + 0x30]
lea rdx, [rsp + 0x28]
mov r8d, 8
call fcn.1400e40b0
mov rax, qword [rsp + 0x40]
mov r9, qword [rsp + 0x60]
shl r9, 0x38
or r9, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x48]
xor rcx, r9
mov r8, qword [rsp + 0x30]
add r8, rax
mov rdx, qword [rsp + 0x38]
add rdx, rcx
rol rax, 0xd
xor rax, r8
rol rcx, 0x10
rol r8, 0x20
xor rcx, rdx
add rdx, rax
rol rax, 0x11
add r8, rcx
xor rax, rdx
rol rcx, 0x15
xor rcx, r8
rol rdx, 0x20
xor r8, r9
xor rdx, 0xff
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
rol rcx, 0x10
xor rcx, rdx
rol r8, 0x20
add rdx, rax
add r8, rcx
rol rax, 0x11
xor rax, rdx
rol rcx, 0x15
rol rdx, 0x20
xor rcx, r8
add r8, rax
rol rax, 0xd
add rdx, rcx
xor rax, r8
shl rcx, 0x10
xor rcx, rdx
add rdx, rax
shr rax, 0x2f
shr rcx, 0x2b
xor rcx, rax
mov rax, rdx
shr rax, 0x20
xor rax, rdx
xor rax, rcx
jmp 0x14011ede8
movzx edx, byte [rsi + 8]
xor rax, rdx
imul rax, rcx
jmp 0x14011ede8
mov r8, rcx
cmp r9, 8
jb 0x14011ede8
add rcx, r9
nop
movzx r9d, byte [r8]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 1]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 2]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 3]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 4]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 5]
xor rax, r9
imul rax, rdx
movzx r9d, byte [r8 + 6]
xor r9, rax
imul r9, rdx
movzx eax, byte [r8 + 7]
add r8, 8
xor rax, r9
imul rax, rdx
cmp r8, rcx
jne 0x14011ed80
and eax, 0x7fff
add rsp, 0x78
pop rdi
pop rsi
ret
Function at 0x140120540
Capabilities:
Encrypt data using salsa20 or chacha

Disassembly:
push rbp
push rsi
push rdi
sub rsp, 0xc0
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x38], 0xfffffffffffffffe
mov rsi, rdx
mov rdi, rcx
add rcx, 0x48
xorps xmm0, xmm0
movaps xmmword [rbp + 0x10], xmm0
movaps xmmword [rbp], xmm0
mov rdx, rbp
mov r8d, 0x20
call fcn.14039ce40
mov qword [rbp + 0x28], rax
test rax, rax
je 0x1401205b4
mov qword [rbp + 0x30], rdx
mov rax, qword [rdx]
test rax, rax
je 0x140120598
mov rcx, qword [rbp + 0x28]
call rax
mov rax, qword [rbp + 0x30]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1401205fd
mov r8, qword [rax + 0x10]
mov rcx, qword [rbp + 0x28]
call fcn.1400ebc00
jmp 0x1401205fd
movaps xmm0, xmmword [rbp]
movaps xmm1, xmmword [rbp + 0x10]
movaps xmmword [rbp - 0x10], xmm1
movaps xmmword [rbp - 0x20], xmm0
lea rcx, [rbp - 0x50]
lea r8, [0x14040f098]
lea rdx, [rbp - 0x20]
mov r9d, 8
call fcn.14039cc40
mov rax, qword [rdi + 0x30]
mov qword [rdi + 0x38], rax
movaps xmm0, xmmword [rbp - 0x50]
movaps xmm1, xmmword [rbp - 0x40]
movaps xmm2, xmmword [rbp - 0x30]
movaps xmmword [rdi], xmm0
movaps xmmword [rdi + 0x10], xmm1
movaps xmmword [rdi + 0x20], xmm2
mov qword [rdi + 0x40], 0
mov rax, 0xffffffffffffff00
add rax, qword [rdi + 0x30]
mov qword [rdi + 0x38], rax
mov rcx, rdi
mov edx, 6
mov r8, rsi
add rsp, 0xc0
pop rdi
pop rsi
pop rbp
jmp fcn.14039a730
Function at 0x140158000
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
test byte [rdx], 1
je 0x140158040
lea rax, [rdx + 8]
cmp qword [rdx + 0x38], 0xffffffffffffffff
mov r8, qword [rdx + 0x48]
mov r9, qword [rdx + 0x50]
mov r10, qword [rdx + 0x58]
mov rdx, qword [rdx + 0x60]
je 0x140158162
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x30], 0
jmp 0x140158171
cmp byte [rdx + 0x1a], 0
jne 0x140158198
mov r8, qword [rdx + 8]
mov rax, qword [rdx + 0x48]
mov r9, qword [rdx + 0x50]
movzx r10d, byte [rdx + 0x18]
jmp 0x140158067
add r8, r11
mov qword [rdx + 8], r8
mov r11d, r10d
xor r10b, 1
test r8, r8
je 0x140158096
cmp r8, r9
jae 0x140158090
cmp byte [rax + r8], 0xbf
jg 0x140158096
jmp 0x1401581a6
jne 0x1401581a6
cmp r8, r9
je 0x14015817b
movzx ebx, byte [rax + r8]
movzx esi, bl
test sil, sil
js 0x1401580f0
test r11b, 1
jne 0x140158159
mov r11d, 1
cmp esi, 0x80
jb 0x140158060
mov r11d, 2
cmp esi, 0x800
jb 0x140158060
cmp esi, 0x10000
mov r11d, 4
sbb r11, 0
jmp 0x140158060
mov edi, esi
and edi, 0x1f
movzx ebp, byte [rax + r8 + 1]
and ebp, 0x3f
cmp sil, 0xdf
jbe 0x140158137
movzx esi, byte [rax + r8 + 2]
shl ebp, 6
and esi, 0x3f
or esi, ebp
cmp bl, 0xf0
jb 0x14015814a
movzx ebx, byte [rax + r8 + 3]
and edi, 7
shl edi, 0x12
shl esi, 6
and ebx, 0x3f
or ebx, esi
or ebx, edi
mov esi, ebx
test r11b, 1
je 0x1401580b6
jmp 0x140158159
shl edi, 6
or edi, ebp
mov esi, edi
test r11b, 1
je 0x1401580b6
jmp 0x140158159
shl edi, 0xc
or esi, edi
test r11b, 1
je 0x1401580b6
mov byte [rdx + 0x18], r10b
mov r9, r8
jmp 0x140158185
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x30], 1
mov rdx, rax
call fcn.140156480
jmp 0x14015819d
mov byte [rdx + 0x18], r10b
test r11b, 1
je 0x140158194
mov qword [rcx + 8], r9
mov qword [rcx + 0x10], r9
mov eax, 1
jmp 0x14015819a
mov byte [rdx + 0x1a], 1
xor eax, eax
mov qword [rcx], rax
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
ret
mov byte [rdx + 0x18], r10b
lea rcx, [0x140415b20]
mov qword [rsp + 0x20], rcx
mov rcx, rax
mov rdx, r9
call fcn.1403f2390
int3
Function at 0x1401bf6f0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x38
call fcn.14039d6a0
mov rsi, rax
cmp dword [rax], 1
jne 0x1401bf71b
mov r9, rsi
add r9, 8
mov rax, qword [rsi + 8]
mov rcx, qword [rsi + 0x10]
jmp 0x1401bf74f
xorps xmm0, xmm0
movaps xmmword [rsp + 0x20], xmm0
lea rcx, [rsp + 0x20]
mov edx, 0x10
call qword [sym.imp.bcryptprimitives.dll_ProcessPrng]
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0x28]
mov r9, rsi
add r9, 8
mov qword [rsi], 1
mov qword [rsi + 0x10], rcx
lea r10, [rax + 1]
movabs rdx, 0x646f72616e646f6d
xor rdx, rcx
movabs r8, 0x736f6d6570736575
xor r8, rax
add r8, rdx
rol rdx, 0xd
mov qword [r9], r10
xor rdx, r8
rol r8, 0x20
movabs r9, 0x6c7967656e657261
mov r10, rdx
rol r10, 0x11
xor r9, rax
mov r11d, 1
movabs rsi, 0x7465646279746573
movabs rdi, 0x800000000000000
nop dword [rax]
mov r12, rcx
xor r12, r11
xor r12, rsi
lea r14, [r12 + r9]
rol r12, 0x10
xor r12, r14
lea r15, [r12 + r8]
mov rax, r15
xor rax, r11
add r14, rdx
mov rbx, r14
rol rbx, 0x20
rol r12, 0x15
xor r14, r10
xor r15, rdi
xor r15, r12
add rax, r14
rol r14, 0xd
add rbx, r15
xor r14, rax
rol r15, 0x10
xor r15, rbx
rol rax, 0x20
add rbx, r14
add rax, r15
rol r14, 0x11
xor r14, rbx
rol r15, 0x15
rol rbx, 0x20
xor r15, rax
xor rax, rdi
xor rbx, 0xff
add rax, r14
add rbx, r15
rol r14, 0xd
xor r14, rax
rol r15, 0x10
rol rax, 0x20
xor r15, rbx
add rbx, r14
rol r14, 0x11
add rax, r15
xor r14, rbx
rol r15, 0x15
xor r15, rax
rol rbx, 0x20
add rax, r14
add rbx, r15
rol r14, 0xd
xor r14, rax
rol r15, 0x10
rol rax, 0x20
xor r15, rbx
add rbx, r14
rol r14, 0x11
add rax, r15
xor r14, rbx
rol r15, 0x15
xor r15, rax
rol rbx, 0x20
add rax, r14
add rbx, r15
rol r14, 0xd
xor r14, rax
rol r15, 0x10
xor r15, rbx
add rbx, r14
rol r14, 0x11
rol r15, 0x15
mov rax, rbx
rol rax, 0x20
xor rax, r14
xor rax, r15
inc r11
cmp rax, rbx
je 0x1401bf7b0
xor rax, rbx
add rsp, 0x38
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
Function at 0x1401dc8c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
cmp byte [rcx + 0x79], 0
je 0x1401dc8d4
xor eax, eax
jmp 0x1401dcafd
mov r8, qword [rcx + 0x48]
mov r9, qword [rcx + 0x50]
test byte [rcx], 1
je 0x1401dc90f
lea rdx, [rcx + 8]
mov rax, qword [rcx + 0x58]
cmp qword [rcx + 0x38], 0xffffffffffffffff
mov rdi, rcx
mov rcx, qword [rcx + 0x60]
je 0x1401dca46
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x30], 0
jmp 0x1401dca55
cmp byte [rcx + 0x1a], 0
je 0x1401dc92f
mov rsi, r8
xor eax, eax
mov qword [rsp + 0x38], rax
test byte [rsp + 0x38], 1
jne 0x1401dca95
jmp 0x1401dcac7
mov rax, qword [rcx + 8]
movzx edx, byte [rcx + 0x18]
jmp 0x1401dc947
add rax, r10
mov qword [rcx + 8], rax
mov r10d, edx
xor dl, 1
test rax, rax
je 0x1401dc976
cmp rax, r9
jae 0x1401dc970
cmp byte [r8 + rax], 0xbf
jg 0x1401dc976
jmp 0x1401dcb05
jne 0x1401dcb05
cmp rax, r9
je 0x1401dca6e
movzx ebx, byte [r8 + rax]
movzx r11d, bl
test r11b, r11b
jns 0x1401dc9f0
mov esi, r11d
and esi, 0x1f
movzx edi, byte [r8 + rax + 1]
and edi, 0x3f
cmp r11b, 0xdf
jbe 0x1401dc9da
movzx r11d, byte [r8 + rax + 2]
shl edi, 6
and r11d, 0x3f
or r11d, edi
cmp bl, 0xf0
jb 0x1401dca32
movzx edi, byte [r8 + rax + 3]
and esi, 7
shl esi, 0x12
shl r11d, 6
and edi, 0x3f
or edi, r11d
or edi, esi
mov r11d, edi
test r10b, 1
je 0x1401dc9f6
jmp 0x1401dca3e
shl esi, 6
or esi, edi
mov r11d, esi
nop word cs:[rax + rax]
test r10b, 1
jne 0x1401dca3e
mov r10d, 1
cmp r11d, 0x80
jb 0x1401dc940
mov r10d, 2
cmp r11d, 0x800
jb 0x1401dc940
cmp r11d, 0x10000
mov r10d, 4
sbb r10, 0
jmp 0x1401dc940
shl esi, 0xc
or r11d, esi
test r10b, 1
je 0x1401dc9f6
mov byte [rcx + 0x18], dl
mov r9, rax
jmp 0x1401dca77
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov byte [rsp + 0x30], 1
lea rcx, [rsp + 0x38]
mov rsi, r8
call fcn.1401d7f60
mov rcx, rdi
test byte [rsp + 0x38], 1
jne 0x1401dca95
jmp 0x1401dcac7
mov byte [rcx + 0x18], dl
test r10b, 1
je 0x1401dcab2
mov rsi, r8
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x48], r9
mov eax, 1
mov qword [rsp + 0x38], rax
test byte [rsp + 0x38], 1
je 0x1401dcac7
mov rdx, qword [rsp + 0x40]
mov r8, qword [rsp + 0x48]
mov r9, qword [rcx + 0x68]
sub rdx, r9
mov rax, rsi
add rax, r9
mov qword [rcx + 0x68], r8
jmp 0x1401dcafd
mov rsi, r8
mov byte [rcx + 0x1a], 1
xor eax, eax
mov qword [rsp + 0x38], rax
test byte [rsp + 0x38], 1
jne 0x1401dca95
cmp byte [rcx + 0x79], 0
jne 0x1401dc8cd
mov byte [rcx + 0x79], 1
cmp byte [rcx + 0x78], 1
jne 0x1401dcae5
mov rax, qword [rcx + 0x68]
mov rdx, qword [rcx + 0x70]
jmp 0x1401dcaf6
mov rax, qword [rcx + 0x68]
mov rdx, qword [rcx + 0x70]
cmp rdx, rax
je 0x1401dc8cd
sub rdx, rax
add rax, qword [rcx + 0x48]
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret
mov byte [rcx + 0x18], dl
lea rcx, [0x140420658]
mov qword [rsp + 0x20], rcx
mov rcx, r8
mov rdx, r9
mov r8, rax
call fcn.1403f2390
int3
Function at 0x1401f6aa0
Capabilities:
Query or enumerate registry value

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x88
lea rbp, [rsp + 0x80]
mov qword [rbp], 0xfffffffffffffffe
mov rbx, rdx
mov rsi, rcx
add r9, r8
mov qword [rbp - 0x28], r8
mov qword [rbp - 0x20], r9
mov word [rbp - 0x18], 0
mov dword [rbp - 0x10], 1
lea rcx, [rbp - 0x48]
lea rdx, [rbp - 0x28]
call fcn.1401de3b0
mov dword [rbp - 4], 0x800
mov dword [rbp - 8], 0
movzx eax, byte [0x1405c4221]
mov ecx, 0x800
mov edx, 1
call fcn.1400ebbf0
test rax, rax
je 0x1401f6c3f
mov r14, rax
mov qword [rbp - 0x30], rsi
mov qword [rbp - 0x28], 0x800
mov qword [rbp - 0x20], rax
mov qword [rbp - 0x18], 0
mov rdi, qword [rbp - 0x40]
lea r12, [rbp - 4]
lea r15, [rbp - 8]
mov rsi, qword [rbp - 0x28]
mov r13, qword [rbp - 0x18]
sub rsi, r13
nop dword [rax]
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r14
mov rcx, rbx
mov rdx, rdi
xor r8d, r8d
mov r9, r15
call sub.advapi32.dll_RegQueryValueExW
cmp eax, 0xea
jne 0x1401f6b9c
mov r8d, dword [rbp - 4]
cmp rsi, r8
jae 0x1401f6b50
mov qword [rsp + 0x20], 1
mov r9d, 1
lea rcx, [rbp - 0x28]
mov rdx, r13
call fcn.1403e4f90
mov r14, qword [rbp - 0x20]
jmp 0x1401f6b42
test eax, eax
jne 0x1401f6bbf
mov eax, dword [rbp - 4]
mov qword [rbp - 0x18], rax
mov eax, dword [rbp - 8]
cmp eax, 0xb
mov rdx, qword [rbp - 0x30]
jbe 0x1401f6c22
movabs rax, 0xde00000002
jmp 0x1401f6bcb
shl rax, 0x20
or rax, 2
mov rdx, qword [rbp - 0x30]
mov qword [rdx + 8], rax
movabs rax, 0x8000000000000000
mov qword [rdx], rax
mov rdx, qword [rbp - 0x28]
test rdx, rdx
je 0x1401f6bf3
mov r8d, 1
mov rcx, r14
call fcn.1400ebc00
mov rdx, qword [rbp - 0x48]
test rdx, rdx
je 0x1401f6c0d
add rdx, rdx
mov r8d, 2
mov rcx, rdi
call fcn.1400ebc00
nop
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, qword [rbp - 0x18]
mov qword [rdx + 0x10], rcx
movups xmm0, xmmword [rbp - 0x28]
movups xmmword [rdx], xmm0
mov byte [rdx + 0x18], al
mov rdx, qword [rbp - 0x48]
test rdx, rdx
jne 0x1401f6bfc
jmp 0x1401f6c0d
mov ecx, 1
mov edx, 0x800
call fcn.1403f1990
ud2
Function at 0x140296510
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
test rdx, rdx
je 0x140296560
mov rsi, rdx
mov rdi, rcx
xor ebx, ebx
mov r14d, 0xffffffff
nop
mov r15, rbx
mov rbx, rsi
sub rbx, r15
lea rcx, [rdi + r15]
cmp rbx, r14
cmovae rbx, r14
mov edx, ebx
call sub.advapi32.dll_SystemFunction036
mov ecx, eax
test al, al
sete al
add rbx, r15
cmp rbx, rsi
jae 0x140296562
test cl, cl
jne 0x140296530
jmp 0x140296562
xor eax, eax
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret

Function at 0x14029e6f0
Capabilities:
Hash data using sha512

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x228
mov rdi, r9
mov rsi, rcx
movups xmm0, xmmword [0x140469c88]
movups xmmword [rsp + 0x60], xmm0
movups xmm0, xmmword [0x140469c78]
movups xmmword [rsp + 0x50], xmm0
movups xmm0, xmmword [0x140469c68]
movups xmmword [rsp + 0x40], xmm0
movups xmm0, xmmword [0x140469c58]
movups xmmword [rsp + 0x30], xmm0
mov rax, qword [0x1405c4228]
test rax, rax
jne 0x14029e7a9
mov ecx, 1
xor eax, eax
lock cmpxchg qword [0x1405c4228], rcx
jne 0x14029e7a9
lea rax, [0x1405c4228]
mov qword [rsp + 0x150], rax
mov rbx, r8
mov r14, rdx
call fcn.1403d56c0
mov byte [0x1405c4230], 1
mov byte [rsp + 0x158], 0
mov eax, 2
xchg qword [0x1405c4228], rax
lea rcx, [rsp + 0x150]
call fcn.1402c7e10
mov rdx, r14
mov r8, rbx
jmp 0x14029e7b9
pause
mov rax, qword [0x1405c4228]
cmp rax, 1
je 0x14029e7a0
cmp rax, 2
jne 0x14029e900
mov rbx, qword [rsp + 0x290]
mov r14, qword [rsp + 0x288]
mov r15, qword [rsp + 0x280]
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
movups xmmword [rsp + 0xd8], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xa8], xmm0
movups xmmword [rsp + 0x98], xmm0
movups xmmword [rsp + 0x88], xmm0
movups xmmword [rsp + 0x78], xmm0
lea rax, [0x140469c28]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x70], 0
mov qword [rsp + 0xf8], 0
lea r12, [rsp + 0x28]
mov rcx, r12
call fcn.140293ce0
mov rcx, r12
mov rdx, rdi
mov r8, r15
call fcn.140293ce0
mov rcx, r12
mov rdx, r14
mov r8, rbx
call fcn.140293ce0
lea rcx, [rsp + 0x150]
mov r8d, 0xd8
mov rdx, r12
call sub.VCRUNTIME140.dll_memcpy
mov rax, qword [rsp + 0x150]
mov r9, qword [rax + 0x20]
movups xmm0, xmmword [rsp + 0x68]
movaps xmmword [rsp + 0x140], xmm0
movups xmm0, xmmword [rsp + 0x28]
movups xmm1, xmmword [rsp + 0x38]
movups xmm2, xmmword [rsp + 0x48]
movups xmm3, xmmword [rsp + 0x58]
movaps xmmword [rsp + 0x130], xmm3
movaps xmmword [rsp + 0x120], xmm2
movaps xmmword [rsp + 0x110], xmm1
movaps xmmword [rsp + 0x100], xmm0
cmp r9, 0x81
jae 0x14029e936
lea r8, [rsp + 0x1a0]
mov rax, qword [rsp + 0x220]
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x100]
mov rcx, rsi
call fcn.1402939a0
mov rax, rsi
add rsp, 0x228
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
cmp rax, 3
jne 0x14029e91e
lea rcx, str.Once_has_panicked
lea r8, [0x140469df0]
mov edx, 0x11
call fcn.1403f1d50
lea rcx, [0x140469d3b]
lea r8, [0x140469dc0]
mov edx, 0x28
call fcn.1403f1d50
lea r8, [0x1404699e8]
mov edx, 0x80
mov rcx, r9
call fcn.1403f21c0
int3
Function at 0x1402a1460
Capabilities:
Enumerate pe sections

Disassembly:
push rsi
push rdi
sub rsp, 0x48
mov rdi, rdx
mov rsi, rcx
movzx eax, byte [rdx + 0x1e]
movzx ecx, byte [rdx + 0x1f]
shl ecx, 0x10
shl eax, 8
or eax, ecx
movzx ecx, byte [rdx + 0x1d]
or eax, ecx
movzx ecx, byte [rdx + 0x1c]
shl rax, 0x10
shl ecx, 8
or rcx, rax
movzx eax, byte [rdx + 0x1b]
or rcx, rax
movzx eax, byte [rdx + 0x1a]
shl rcx, 0x10
shl eax, 8
or rax, rcx
movzx ecx, byte [rdx + 0x19]
or rax, rcx
movzx ecx, byte [rdx + 0x18]
shl rax, 8
or rax, rcx
movzx ecx, byte [rdx + 0x16]
mov qword [rsp + 0x40], rax
movzx eax, byte [rdx + 0x17]
shl eax, 0x10
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 0x15]
or ecx, eax
movzx eax, byte [rdx + 0x14]
shl rcx, 0x10
shl eax, 8
or rax, rcx
movzx ecx, byte [rdx + 0x13]
or rax, rcx
movzx ecx, byte [rdx + 0x12]
shl rax, 0x10
shl ecx, 8
or rcx, rax
movzx eax, byte [rdx + 0x11]
or rcx, rax
movzx eax, byte [rdx + 0x10]
shl rcx, 8
or rcx, rax
movzx eax, byte [rdx + 0xe]
mov qword [rsp + 0x38], rcx
movzx ecx, byte [rdx + 0xf]
shl ecx, 0x10
shl eax, 8
or eax, ecx
movzx ecx, byte [rdx + 0xd]
or eax, ecx
movzx ecx, byte [rdx + 0xc]
shl rax, 0x10
shl ecx, 8
or rcx, rax
movzx eax, byte [rdx + 0xb]
or rcx, rax
movzx eax, byte [rdx + 0xa]
shl rcx, 0x10
shl eax, 8
or rax, rcx
movzx ecx, byte [rdx + 9]
or rax, rcx
movzx ecx, byte [rdx + 8]
shl rax, 8
or rax, rcx
movzx ecx, byte [rdx + 6]
mov qword [rsp + 0x30], rax
movzx eax, byte [rdx + 7]
shl eax, 0x10
shl ecx, 8
or ecx, eax
movzx eax, byte [rdx + 5]
or ecx, eax
movzx eax, byte [rdx + 4]
shl rcx, 0x10
shl eax, 8
or rax, rcx
movzx ecx, byte [rdx + 3]
or rax, rcx
movzx ecx, byte [rdx + 2]
shl rax, 0x10
shl ecx, 8
or rcx, rax
movzx eax, byte [rdx + 1]
or rcx, rax
movzx eax, byte [rdx]
shl rcx, 8
or rcx, rax
mov qword [rsp + 0x28], rcx
lea rdx, [0x14046bb70]
lea rcx, [rsp + 0x28]
mov r8d, 4
call fcn.1403d9520
cmp rax, 0xffffffffffffffff
je 0x1402a15cc
mov al, 1
jmp 0x1402a15dd
movups xmm0, xmmword [rdi]
movups xmm1, xmmword [rdi + 0x10]
movups xmmword [rsi + 0x11], xmm1
movups xmmword [rsi + 1], xmm0
xor eax, eax
mov byte [rsi], al
mov rax, rsi
add rsp, 0x48
pop rdi
pop rsi
ret
Function at 0x1402a6a00
Capabilities:
Encode data using xor

Disassembly:
xor r10, r10
xor r11, r11
xor r12, r12
cmp r8, 0xd
jne 0x1402a6aaf
mov r10, qword [rcx]
mov r11, qword [rcx + 5]
shr r11, 0x18
mov r12d, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
repz ret
cmp r8, 0x10
jb 0x1402a6b5a
add r10, qword [rcx]
adc r11, qword [rcx + 8]
adc r12, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
lea rcx, [rcx + 0x10]
sub r8, 0x10
jmp 0x1402a6aaf
cmp r8, 0
je 0x1402a6c20
xor r13, r13
xor r14, r14
xor r15, r15
add rcx, r8
shld r14, r13, 8
shl r13, 8
movzx r15, byte [rcx - 1]
xor r13, r15
dec rcx
dec r8
jne 0x1402a6b70
add r10, r13
adc r11, r14
adc r12, 1
mov rax, qword [rbp + 0xa0]
mov r15, rax
mul r10
mov r13, rax
mov r14, rdx
mov rax, qword [rbp + 0xa0]
mul r11
imul r15, r12
add r14, rax
adc r15, rdx
mov rax, qword [rbp + 0xa8]
mov r9, rax
mul r10
add r14, rax
adc rdx, 0
mov r10, rdx
mov rax, qword [rbp + 0xa8]
mul r11
add r15, rax
adc rdx, 0
imul r9, r12
add r15, r10
adc r9, rdx
mov r10, r13
mov r11, r14
mov r12, r15
and r12, 3
mov r13, r15
and r13, 0xfffffffffffffffc
mov r14, r9
shrd r15, r9, 2
shr r9, 2
add r15, r13
adc r9, r14
add r10, r15
adc r11, r9
adc r12, 0
repz ret
Function at 0x1402b3bd0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov qword [rsp + 0x30], r8
mov qword [rsp + 0x28], rdx
mov rdx, qword [rsp + 0xb0]
mov rax, qword [rcx]
bswap rax
mov qword [rsp + 0x38], rcx
mov r15, qword [rcx + 8]
bswap r15
mov qword [rsp + 0x20], rdx
cmp rdx, 0x10
jb 0x1402b3d12
mov rdi, r9
and qword [rsp + 0x20], 0xfffffffffffffff0
mov rcx, qword [rsp + 0x30]
xor rcx, qword [rsp + 0x28]
mov qword [rsp + 0x40], rcx
xor r12d, r12d
nop
mov rbx, qword [rdi + r12]
mov r14, qword [rdi + r12 + 8]
bswap r14
xor r14, r15
bswap rbx
xor rbx, rax
mov rcx, r14
mov rdx, qword [rsp + 0x30]
call fcn.1402b3920
mov r13, rax
mov r15, rdx
mov rcx, rbx
mov rdx, qword [rsp + 0x28]
call fcn.1402b3920
mov rbp, rax
mov rsi, rdx
xor rbx, r14
mov rcx, rbx
mov rdx, qword [rsp + 0x40]
call fcn.1402b3920
mov rcx, r13
shl rcx, 0x3f
mov r8, r13
shl r8, 0x3e
xor r8, rcx
mov r9, r13
shl r9, 0x39
xor r9, rax
xor r9, r8
xor r15, r13
mov rcx, r15
xor rcx, rbp
xor rcx, r9
mov r8, r13
shr r8, 1
mov rax, rcx
shr rax, 1
mov r9, rcx
mov r11, rcx
shr r11, 2
xor r11, rax
mov r10, rcx
mov rax, rcx
shr rax, 7
xor rax, rsi
xor rax, r11
xor rax, rcx
shl rcx, 0x3f
mov r11, r13
shr r11, 2
xor r11, r8
shl r9, 0x3e
shr r13, 7
shl r10, 0x39
xor r10, r9
xor r13, rdx
xor r13, r11
xor r13, rcx
xor r13, r10
xor r15, rsi
xor r15, rbp
xor r15, r13
add r12, 0x10
cmp qword [rsp + 0x20], r12
jne 0x1402b3c30
bswap rax
bswap r15
mov rcx, qword [rsp + 0x38]
mov qword [rcx], rax
mov qword [rcx + 8], r15
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret

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

Disassembly:
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
movups xmm1, xmmword [rcx + rax]
add rax, 0x20
aesenc xmm2, xmm0
aesenc xmm3, xmm0
aesenc xmm4, xmm0
aesenc xmm5, xmm0
aesenc xmm6, xmm0
aesenc xmm7, xmm0
movups xmm0, xmmword [rcx + rax - 0x10]
jne fcn.1402b75d0
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenclast xmm2, xmm0
aesenclast xmm3, xmm0
aesenclast xmm4, xmm0
aesenclast xmm5, xmm0
aesenclast xmm6, xmm0
aesenclast xmm7, xmm0
repz ret

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

Disassembly:
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
movups xmm1, xmmword [rcx + rax]
add rax, 0x20
aesenc xmm2, xmm0
aesenc xmm3, xmm0
aesenc xmm4, xmm0
aesenc xmm5, xmm0
aesenc xmm6, xmm0
aesenc xmm7, xmm0
aesenc xmm8, xmm0
aesenc xmm9, xmm0
movups xmm0, xmmword [rcx + rax - 0x10]
jne 0x1402b76b0
aesenc xmm2, xmm1
aesenc xmm3, xmm1
aesenc xmm4, xmm1
aesenc xmm5, xmm1
aesenc xmm6, xmm1
aesenc xmm7, xmm1
aesenc xmm8, xmm1
aesenc xmm9, xmm1
aesenclast xmm2, xmm0
aesenclast xmm3, xmm0
aesenclast xmm4, xmm0
aesenclast xmm5, xmm0
aesenclast xmm6, xmm0
aesenclast xmm7, xmm0
aesenclast xmm8, xmm0
aesenclast xmm9, xmm0
repz ret