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

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x58], r8
mov rsi, rdx
mov r13, rcx
mov rax, qword [rsp + 0xf0]
xor ebx, ebx
mov qword [rsp + 0x70], rbx
lea rbp, [rsp + 0x70]
test rax, rax
cmovne rbp, rax
cmp byte [rcx + 0x15], bl
je 0x140038d9e
cmp rdx, 0x7fffffff
jae 0x140038d9e
mov rax, qword gs:[0x30]
mov dword [rax + 0x1250], ebx
mov qword [rsp + 0x20], rbp
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword gs:[0x30]
mov eax, dword [rax + 0x1250]
jmp 0x140038eca
call fcn.14000c8f0
mov r12, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 0x1a
lea rdx, str.NtWow64ReadVirtualMemory64
lea rcx, [rsp + 0x30]
call fcn.140002bf0
nop
call fcn.140026ec0
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rsp + 0x30]
mov rdi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
cmp r14, 0xf
cmova rcx, rdi
movabs r9, 0xcbf29ce484222325
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x140038e33
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rbx]
xor r9, rax
imul r9, r8
inc rbx
cmp rbx, rdx
jb 0x140038e20
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x60]
mov rcx, r12
call fcn.14000d1e0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140038e85
cmp rdx, qword [r12 + 8]
je 0x140038e85
mov rbx, qword [rdx + 0x30]
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140038e90
mov qword [rsp + 0x20], rbp
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdx, rsi
mov rcx, qword [r13 + 8]
call rbx
mov ebx, eax
jmp 0x140038e95
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, 0xc0000138
cmp r14, 0xf
jbe 0x140038ec8
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140038ec0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038eeb
mov rcx, rdi
call fcn.14004391c
mov eax, ebx
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140043560
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.14004a6ec
int3
Function at 0x140038f00
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x50], r9
mov qword [rsp + 0x58], r8
mov rsi, rdx
mov r13, rcx
mov rax, qword [rsp + 0xf0]
xor ebx, ebx
mov qword [rsp + 0x70], rbx
lea rbp, [rsp + 0x70]
test rax, rax
cmovne rbp, rax
cmp byte [rcx + 0x15], bl
je 0x140038f8e
cmp rdx, 0x7fffffff
jae 0x140038f8e
mov rax, qword gs:[0x30]
mov dword [rax + 0x1250], ebx
mov qword [rsp + 0x20], rbp
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rax, qword gs:[0x30]
mov eax, dword [rax + 0x1250]
jmp 0x1400390ba
call fcn.14000c8f0
mov r12, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rbx
mov r8d, 0x1b
lea rdx, str.NtWow64WriteVirtualMemory64
lea rcx, [rsp + 0x30]
call fcn.140002bf0
nop
call fcn.140026ec0
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rsp + 0x30]
mov rdi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
cmp r14, 0xf
cmova rcx, rdi
movabs r9, 0xcbf29ce484222325
mov rdx, qword [rsp + 0x40]
test rdx, rdx
je 0x140039023
movabs r8, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rcx + rbx]
xor r9, rax
imul r9, r8
inc rbx
cmp rbx, rdx
jb 0x140039010
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x60]
mov rcx, r12
call fcn.14000d1e0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140039075
cmp rdx, qword [r12 + 8]
je 0x140039075
mov rbx, qword [rdx + 0x30]
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140039080
mov qword [rsp + 0x20], rbp
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdx, rsi
mov rcx, qword [r13 + 8]
call rbx
mov ebx, eax
jmp 0x140039085
lea rcx, [r12 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, 0xc0000138
cmp r14, 0xf
jbe 0x1400390b8
lea rdx, [r14 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x1400390b0
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400390db
mov rcx, rdi
call fcn.14004391c
mov eax, ebx
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140043560
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.14004a6ec
int3
Function at 0x1400390f0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x88
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x30], r9d
mov r13, r8
mov r12d, edx
mov r15, rcx
xor ebx, ebx
mov dword [rsp + 0x68], ebx
call fcn.14000c8f0
mov r14, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x50], rbx
lea r8d, [rbx + 0x20]
lea rdx, str.NtWow64QueryInformationProcess64
lea rcx, [rsp + 0x38]
call fcn.140002bf0
nop
call fcn.140026ec0
lea rcx, [r14 + 0x40]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rcx, [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x50]
cmp rsi, 0xf
cmova rcx, rdi
movabs r9, 0xcbf29ce484222325
mov rdx, qword [rsp + 0x48]
test rdx, rdx
je 0x1400391b3
movabs r8, 0x100000001b3
nop dword [rax + rax]
movzx eax, byte [rcx + rbx]
xor r9, rax
imul r9, r8
inc rbx
cmp rbx, rdx
jb 0x1400391a0
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov rcx, r14
call fcn.14000d1e0
mov r10, qword [rax + 8]
test r10, r10
je 0x140039206
cmp r10, qword [r14 + 8]
je 0x140039206
mov rbx, qword [r10 + 0x30]
lea rcx, [r14 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140039210
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, dword [rsp + 0x30]
mov r8, r13
mov edx, r12d
mov rcx, qword [r15 + 8]
call rbx
mov ebx, eax
jmp 0x140039215
lea rcx, [r14 + 0x40]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ebx, 0xc0000138
cmp rsi, 0xf
jbe 0x140039248
lea rdx, [rsi + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140039240
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003926b
mov rcx, rdi
call fcn.14004391c
mov eax, ebx
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140043560
add rsp, 0x88
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.14004a6ec
int3

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

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x40
cmp byte [rcx + 0x15], 0
mov rbx, r9
mov rdi, r8
mov rsi, rdx
je 0x140039672
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
jmp method.blackbone::Native.virtual_112
mov rax, qword gs:[0x58]
mov edx, 4
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14008bc10], eax
jle 0x1400396ca
lea rcx, [0x14008bc10]
call fcn.140043628
cmp dword [0x14008bc10], 0xffffffff
jne 0x1400396ca
call fcn.14003f720
mov rcx, rax
lea rdx, str.NtQueueApcThread
call fcn.14003f7b0
lea rcx, [0x14008bc10]
mov qword [0x14008bc00], rax
call fcn.1400435bc
mov rcx, qword [0x14008bc00]
test rcx, rcx
jne 0x1400396eb
mov eax, 0xc0000138
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
xor eax, eax
mov r9, rdi
mov qword [rsp + 0x30], rax
mov r8, rsi
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
lea edx, [rax + 5]
call fcn.14003f6e0
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
Function at 0x140039720
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rbp, rdx
mov rbx, rcx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
cmp byte [rcx + 0x15], r12b
jne 0x140039766
xor eax, eax
jmp 0x1400398f6
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [rsp + 0x88], xmm0
mov dword [rsp + 0x98], r12d
call fcn.14000c8f0
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
mov r8d, 0x19
lea rdx, str.NtQueryInformationProcess
lea rcx, [rsp + 0x38]
call fcn.140002bf0
nop
mov dword [rsp + 0x30], 1
call fcn.140026ec0
lea r14, [rdi + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x38]
mov rsi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x50]
cmp r15, 0xf
cmova rdx, rsi
movabs r9, 0xcbf29ce484222325
mov rcx, r12
mov r8, qword [rsp + 0x48]
test r8, r8
je 0x140039823
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x140039810
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.14000d1e0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x14003988a
cmp rdx, qword [rdi + 8]
je 0x14003988a
mov rdi, qword [rdx + 0x30]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rdi, rdi
je 0x140039893
add rbx, 8
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
mov r9d, 0x30
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, qword [rbx]
call rdi
mov rcx, rbx
test eax, eax
js 0x140039897
test rbp, rbp
je 0x140039897
mov dil, 1
jmp 0x14003989d
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [rbx + 8]
xor dil, dil
mov rbx, rcx
cmp r15, 0xf
jbe 0x1400398d0
lea rdx, [r15 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x1400398c8
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039922
mov rcx, rsi
call fcn.14004391c
test dil, dil
je 0x1400398f1
mov qword [rsp + 0x20], r12
mov r9d, 0x250
mov r8, rbp
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140043560
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call fcn.14004a6ec
int3
Function at 0x140039c10
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rsi, r8
mov r12, rdx
mov r14, rcx
xor r13d, r13d
mov dword [rsp + 0x30], r13d
xor eax, eax
cmp byte [rcx + 0x15], r13b
je 0x140039dc4
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
mov qword [r11 - 0x60], rax
mov dword [r11 - 0x58], eax
mov dword [r11 - 0x50], r13d
call fcn.14000c8f0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r13
mov qword [rsp + 0x50], r13
lea r8d, [r13 + 0x18]
lea rdx, str.NtQueryInformationThread
lea rcx, [rsp + 0x38]
call fcn.140002bf0
nop
mov dword [rsp + 0x30], 1
call fcn.140026ec0
lea rbp, [rbx + 0x40]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
mov r15, qword [rsp + 0x50]
cmp r15, 0xf
cmova rdx, rdi
movabs r9, 0xcbf29ce484222325
mov ecx, r13d
mov r8, qword [rsp + 0x48]
test r8, r8
je 0x140039d03
movabs r10, 0x100000001b3
nop
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x140039cf0
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.14000d1e0
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x140039d62
cmp rcx, qword [rbx + 8]
je 0x140039d62
mov rbx, qword [rcx + 0x30]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x140039d6b
lea rax, [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov r9d, 0x1c
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, r12
call rbx
test eax, eax
js 0x140039d6b
test rsi, rsi
je 0x140039d6b
mov bl, 1
jmp 0x140039d6d
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor bl, bl
cmp r15, 0xf
jbe 0x140039da0
lea rdx, [r15 + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x140039d98
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039def
mov rcx, rdi
call fcn.14004391c
test bl, bl
je 0x140039dc0
mov edx, dword [rsp + 0x6c]
mov qword [rsp + 0x20], r13
mov r9d, 0x1000
mov r8, rsi
mov rcx, qword [r14 + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140043560
mov rbx, qword [rsp + 0xf8]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14004a6ec
int3
Function at 0x140039e00
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xc0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0xb0], rax
mov r12, r8
mov rdi, rdx
mov r13, rcx
xor ebx, ebx
mov r15d, ebx
mov dword [rsp + 0x40], ebx
xorps xmm0, xmm0
movups xmmword [r11 - 0x78], xmm0
movups xmmword [r11 - 0x68], xmm0
movups xmmword [r11 - 0x58], xmm0
mov dword [rsp + 0x78], ebx
mov edx, 4
mov rax, qword gs:[0x58]
mov rcx, qword [rax]
mov eax, dword [rdx + rcx]
cmp dword [0x14008bc0c], eax
jle 0x140039eab
lea rcx, [0x14008bc0c]
call fcn.140043628
cmp dword [0x14008bc0c], 0xffffffff
jne 0x140039eab
call fcn.14003f720
mov rcx, rax
lea rdx, str.NtQueryInformationThread
call fcn.14003f7b0
mov qword [0x14008bb90], rax
lea rcx, [0x14008bc0c]
call fcn.1400435bc
mov rcx, qword [0x14008bb90]
test rcx, rcx
jne 0x140039ed1
mov rax, qword gs:[0x30]
mov dword [rax + 0x1250], 0xc0000138
xor eax, eax
jmp 0x14003a05d
lea rax, [rsp + 0x78]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], 0x30
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
xor r9d, r9d
mov r8, rdi
lea edx, [r9 + 5]
call fcn.14003f6e0
cmp dword [rsp + 0x78], ebx
jbe 0x14003a008
call fcn.14000c8f0
mov rsi, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x48], xmm0
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbx
mov r8d, 0x1a
lea rdx, str.NtWow64ReadVirtualMemory64
lea rcx, [rsp + 0x48]
call fcn.140002bf0
nop
mov r15d, 1
mov dword [rsp + 0x40], r15d
call fcn.140026ec0
lea r14, [rsi + 0x40]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x48]
mov rdi, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x60]
cmp rbp, 0xf
cmova rdx, rdi
movabs r9, 0xcbf29ce484222325
mov rcx, rbx
mov r8, qword [rsp + 0x58]
test r8, r8
je 0x140039fa4
movabs r10, 0x100000001b3
movzx eax, byte [rcx + rdx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x140039f91
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x68]
mov rcx, rsi
call fcn.14000d1e0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140039ffd
cmp rdx, qword [rsi + 8]
je 0x140039ffd
mov rsi, qword [rdx + 0x30]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rsi, rsi
je 0x14003a012
mov qword [rsp + 0x20], rbx
mov r9d, 0x1838
mov r8, r12
mov rdx, qword [rsp + 0x88]
mov rcx, qword [r13 + 8]
call rsi
test eax, eax
js 0x14003a012
movzx esi, r15b
jmp 0x14003a015
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x14003a012
mov rbp, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x48]
xor sil, sil
test r15b, 1
je 0x14003a04e
cmp rbp, 0xf
jbe 0x14003a04e
lea rdx, [rbp + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14003a046
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a088
mov rcx, rdi
call fcn.14004391c
test sil, sil
cmovne rbx, qword [rsp + 0x88]
mov rax, rbx
mov rcx, qword [rsp + 0xb0]
xor rcx, rsp
call fcn.140043560
mov rbx, qword [rsp + 0x118]
add rsp, 0xc0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14004a6ec
int3
Function at 0x14003a090
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xa0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov rbx, r8
mov r12, rdx
mov r15, rcx
xorps xmm0, xmm0
movups xmmword [rsp + 0x60], xmm0
movups xmmword [rsp + 0x70], xmm0
movups xmmword [rsp + 0x80], xmm0
call fcn.14000c8f0
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 0
mov r8d, 0x14
lea rdx, str.NtQueryVirtualMemory
lea rcx, [rsp + 0x30]
call fcn.140002bf0
nop
call fcn.140026ec0
lea rbp, [rdi + 0x40]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x30]
mov rsi, qword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
cmp r14, 0xf
cmova rdx, rsi
xor ecx, ecx
movabs r9, 0xcbf29ce484222325
mov r8, qword [rsp + 0x40]
test r8, r8
je 0x14003a173
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x14003a160
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.14000d1e0
mov r8, qword [rax + 8]
test r8, r8
je 0x14003a1cd
cmp r8, qword [rdi + 8]
je 0x14003a1cd
mov rdi, qword [r8 + 0x30]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rdi, rdi
je 0x14003a1d6
mov qword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0x30
lea r9, [rsp + 0x60]
xor r8d, r8d
mov rdx, r12
mov rcx, qword [r15 + 8]
call rdi
mov edi, eax
jmp 0x14003a1db
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, 0xc0000138
cmp r14, 0xf
jbe 0x14003a20e
lea rdx, [r14 + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14003a206
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a279
mov rcx, rsi
call fcn.14004391c
test edi, edi
je 0x14003a216
mov eax, edi
jmp 0x14003a257
mov rax, qword [rsp + 0x68]
mov qword [rbx + 8], rax
mov eax, dword [rsp + 0x70]
mov dword [rbx + 0x10], eax
mov rax, qword [rsp + 0x60]
mov qword [rbx], rax
mov eax, dword [rsp + 0x84]
mov dword [rbx + 0x24], eax
mov rax, qword [rsp + 0x78]
mov qword [rbx + 0x18], rax
mov eax, dword [rsp + 0x80]
mov dword [rbx + 0x20], eax
mov eax, dword [rsp + 0x88]
mov dword [rbx + 0x28], eax
xor eax, eax
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140043560
add rsp, 0xa0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
call fcn.14004a6ec
int3
Function at 0x14003a290
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0xb0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov r15, rdx
mov r14, rcx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
movups xmmword [rsp + 0x78], xmm0
movups xmmword [r11 - 0x50], xmm0
mov dword [r11 - 0x40], r12d
call fcn.14000c8f0
mov rdi, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
lea r8d, [r12 + 0x19]
lea rdx, str.NtQueryInformationProcess
lea rcx, [rsp + 0x38]
call fcn.140002bf0
nop
mov dword [rsp + 0x30], 1
call fcn.140026ec0
lea rbx, [rdi + 0x40]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x38]
mov rsi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x50]
cmp rbp, 0xf
cmova rdx, rsi
movabs r9, 0xcbf29ce484222325
mov ecx, r12d
mov r8, qword [rsp + 0x48]
test r8, r8
je 0x14003a383
movabs r10, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x14003a370
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov rcx, rdi
call fcn.14000d1e0
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x14003a3ea
cmp rdx, qword [rdi + 8]
je 0x14003a3ea
mov rdi, qword [rdx + 0x30]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rdi, rdi
je 0x14003a3f3
lea rbx, [r14 + 8]
lea rax, [rsp + 0x98]
mov qword [rsp + 0x20], rax
mov r9d, 0x30
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, qword [rbx]
call rdi
mov rcx, rbx
test eax, eax
js 0x14003a3f7
test r15, r15
je 0x14003a3f7
mov dil, 1
jmp 0x14003a3fd
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea rcx, [r14 + 8]
xor dil, dil
mov rbx, rcx
cmp rbp, 0xf
jbe 0x14003a430
lea rdx, [rbp + 1]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14003a428
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a482
mov rcx, rsi
call fcn.14004391c
test dil, dil
je 0x14003a451
mov qword [rsp + 0x20], r12
mov r9d, 0x250
mov r8, r15
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rbx]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140043560
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
call fcn.14004a6ec
int3
Function at 0x14003a4b0
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov r11, rsp
mov qword [r11 + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xa0
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x90], rax
mov r14, r8
mov r15, rdx
mov r13, rcx
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x68], xmm0
mov qword [r11 - 0x60], rax
mov dword [r11 - 0x58], eax
mov dword [r11 - 0x50], r12d
call fcn.14000c8f0
mov rbx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], r12
mov qword [rsp + 0x50], r12
lea r8d, [r12 + 0x18]
lea rdx, str.NtQueryInformationThread
lea rcx, [rsp + 0x38]
call fcn.140002bf0
nop
mov dword [rsp + 0x30], 1
call fcn.140026ec0
lea rsi, [rbx + 0x40]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x38]
mov rdi, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x50]
cmp rbp, 0xf
cmova rdx, rdi
movabs r9, 0xcbf29ce484222325
mov ecx, r12d
mov r8, qword [rsp + 0x48]
test r8, r8
je 0x14003a5a3
movabs r10, 0x100000001b3
nop word [rax + rax]
movzx eax, byte [rdx + rcx]
xor r9, rax
imul r9, r10
inc rcx
cmp rcx, r8
jb 0x14003a590
lea r8, [rsp + 0x38]
lea rdx, [rsp + 0x58]
mov rcx, rbx
call fcn.14000d1e0
mov rcx, qword [rax + 8]
test rcx, rcx
je 0x14003a602
cmp rcx, qword [rbx + 8]
je 0x14003a602
mov rbx, qword [rcx + 0x30]
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
test rbx, rbx
je 0x14003a60b
lea rax, [rsp + 0x88]
mov qword [rsp + 0x20], rax
mov r9d, 0x1c
lea r8, [rsp + 0x68]
xor edx, edx
mov rcx, r15
call rbx
test eax, eax
js 0x14003a60b
test r14, r14
je 0x14003a60b
mov bl, 1
jmp 0x14003a60d
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
xor bl, bl
cmp rbp, 0xf
jbe 0x14003a640
lea rdx, [rbp + 1]
mov rax, rdi
cmp rdx, 0x1000
jb 0x14003a638
add rdx, 0x27
mov rdi, qword [rdi - 8]
sub rax, rdi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14003a68f
mov rcx, rdi
call fcn.14004391c
test bl, bl
je 0x14003a660
mov edx, dword [rsp + 0x6c]
mov qword [rsp + 0x20], r12
mov r9d, 0x1000
mov r8, r14
mov rcx, qword [r13 + 8]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rsp + 0x6c]
mov rcx, qword [rsp + 0x90]
xor rcx, rsp
call fcn.140043560
mov rbx, qword [rsp + 0xf8]
add rsp, 0xa0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14004a6ec
int3

Function at 0x14003a6a0
Capabilities:
Get system information on windows

Disassembly:
sub rsp, 0x68
mov rax, qword [0x140088040]
xor rax, rsp
mov qword [rsp + 0x50], rax
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140043560
add rsp, 0x68
ret