joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140002234
Capabilities:
Access pe header

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x30
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rsp + 0x28], rax
xor ebx, ebx
mov rbp, rcx
mov dword [rsp + 0x20], ebx
call qword [sym.imp.ntoskrnl.exe_RtlImageNtHeader]
mov rdi, rax
test rax, rax
jne 0x140002278
mov ebx, 0xc000007b
jmp 0x1400022fb
movzx eax, word [rax + 0x18]
cmp eax, 0x10b
je 0x140002290
cmp eax, 0x20b
jne 0x14000226e
mov rsi, qword [rdi + 0x30]
jmp 0x140002293
mov esi, dword [rdi + 0x34]
mov r8d, 5
lea r9, [rsp + 0x20]
mov dl, 1
mov rcx, rbp
call qword [sym.imp.ntoskrnl.exe_RtlImageDirectoryEntryToData]
test rax, rax
je 0x1400022eb
mov ecx, dword [rsp + 0x20]
test ecx, ecx
je 0x1400022eb
mov r9, rbp
sub r9, rsi
mov edx, dword [rax + 4]
test edx, edx
je 0x14000226e
sub ecx, edx
lea r8, [rax + 8]
mov dword [rsp + 0x20], ecx
add edx, 0xfffffff8
mov ecx, dword [rax]
add rcx, rbp
shr edx, 1
call fcn.140002320
test rax, rax
je 0x14000226e
mov ecx, dword [rsp + 0x20]
test ecx, ecx
jne 0x1400022bc
jmp 0x1400022fb
mov al, byte [rdi + 0x16]
and al, 1
neg al
sbb eax, eax
and eax, 0xc0000018
mov ebx, eax
mov eax, ebx
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.14002ff90
mov rbx, qword [rsp + 0x48]
mov rbp, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
Function at 0x140002e00
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
mov rbp, rsp
sub rsp, 0x40
xor ebx, ebx
mov dword [rbp - 0x20], 0x760018
xor eax, eax
mov dword [rbp + 0x10], ebx
mov dword [rbp - 0x1c], 0x77006c
mov dword [rbp - 0x18], 0x73006b
lea edx, [rbx + 0x7d]
mov dword [rbp - 0x14], 0x76006a
mov word [rbp - 8], dx
lea ecx, [rbx + 0x18]
mov dword [rbp - 0x10], 0x360074
mov dword [rbp - 0xc], 0x60007d
mov dword [rbp - 6], eax
xor word [rbp + rax*2 - 0x1e], cx
inc rax
cmp rax, 0xc
jae 0x140002e5f
movzx ecx, word [rbp - 0x20]
jmp 0x140002e4b
lea rdx, [rbp + 0x10]
mov word [rbp - 6], bx
lea rcx, [rbp - 0x1e]
call fcn.140005b10
test rax, rax
je 0x140002e7d
mov rcx, rax
call fcn.140002418
mov eax, 1
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rbp
ret

Function at 0x140002e94
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rbp + 0x37], rax
xor r15d, r15d
mov r14, rdx
cmp byte [0x1400a6cc0], r15b
mov rsi, rcx
mov ebx, 1
jne 0x140002f69
lea r8d, [rbx + 0xb]
mov dword [rbp - 9], r15d
movzx ecx, r8w
mov dword [rbp - 0x27], 0x780062
mov word [rbp - 0x29], cx
mov edi, ebx
mov dword [rbp - 0x23], 0x7f0063
mov eax, r15d
mov dword [rbp - 0x1f], 0x7e0067
mov dword [rbp - 0x1b], 0x600062
mov dword [rbp - 0x17], 0x690022
mov qword [rbp - 0x13], 0x690074
xor word [rbp + rax*2 - 0x27], cx
add rax, rbx
cmp rax, r8
jae 0x140002f2f
movzx ecx, word [rbp - 0x29]
jmp 0x140002f1c
lea rdx, [rbp - 9]
mov word [rbp - 0xf], r15w
lea rcx, [rbp - 0x27]
call fcn.140005b10
test rax, rax
je 0x140002f50
mov rdx, rax
call fcn.140003014
mov edi, eax
test edi, edi
mov ebx, edi
sete al
mov byte [0x1400a6cc0], al
test edi, edi
jne 0x140002fe7
test al, al
je 0x140002fe7
xor eax, eax
mov qword [rbp - 0x29], r15
lea rcx, [rbp - 0x29]
mov qword [rbp - 0x21], rax
mov qword [rbp - 0x19], rax
mov qword [rbp - 0x11], rax
call fcn.1400042d0
test eax, eax
jne 0x140002fe2
xor edx, edx
lea r8d, [rax + 0x38]
lea rcx, [rbp - 1]
call fcn.140034240
xorps xmm0, xmm0
mov dword [rbp + 0x1f], 0x1000
xorps xmm1, xmm1
lea rdx, [rbp - 0x29]
lea rcx, [rbp - 1]
movdqu xmmword [rbp - 1], xmm0
movdqu xmmword [rbp + 0xf], xmm1
movdqu xmmword [rbp + 0x27], xmm0
call fcn.140004514
test al, al
je 0x140002fe2
mov rdx, r14
lea rcx, [rbp - 1]
call fcn.140004704
test rax, rax
je 0x140002fe2
test rsi, rsi
je 0x140002fe7
mov qword [rsi], rax
mov ebx, r15d
jmp 0x140002fe7
mov ebx, 0x11
mov eax, ebx
mov rcx, qword [rbp + 0x37]
xor rcx, rsp
call fcn.14002ff90
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x140003800
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x50
xor edi, edi
mov rbx, rcx
test rcx, rcx
je 0x1400039cd
lea edx, [rdi + 0x4f]
mov dword [rbp - 8], edi
xor eax, eax
mov word [rbp - 0x14], dx
mov dword [rbp - 0x12], eax
lea ecx, [rdi + 0x3c]
mov dword [rbp - 0x30], 0x4b003c
lea r8d, [rdi + 0xe]
mov dword [rbp - 0x2c], 0x520055
mov dword [rbp - 0x28], 0xe000f
mov dword [rbp - 0x24], 0x5e0057
mov dword [rbp - 0x20], 0x4f005d
mov dword [rbp - 0x1c], 0x120059
mov dword [rbp - 0x18], 0x45004f
xor word [rbp + rax*2 - 0x2e], cx
inc rax
cmp rax, r8
jae 0x140003883
movzx ecx, word [rbp - 0x30]
jmp 0x140003870
lea rdx, [rbp - 8]
mov word [rbp - 0x12], di
lea rcx, [rbp - 0x2e]
call fcn.140005b10
mov r8, rax
test rax, rax
je 0x1400039cd
movdqa xmm0, xmmword [0x140076db0]
mov rcx, rdi
movdqu xmmword [rbp - 0x30], xmm0
mov dword [rbp - 0x20], 0x6948756d
mov dword [rbp - 0x1c], 0x696f657a
mov word [rbp - 0x18], 0x7f
mov al, byte [rbp - 0x30]
xor byte [rbp + rcx - 0x2f], al
inc rcx
cmp rcx, 0x18
jb 0x1400038c4
lea rdx, [rbp - 0x2f]
mov byte [rbp - 0x17], dil
mov rcx, r8
call fcn.140005828
mov r14, rax
test rax, rax
je 0x1400039cd
mov r15d, 0x348
mov ecx, r15d
call fcn.140005e20
mov rsi, rax
test rax, rax
je 0x1400039cd
mov dword [rax], r15d
mov rcx, r14
mov r15d, edi
call qword [fcn.140002e90]
xor edx, edx
jmp 0x140003936
mov eax, dword [rsi + 0x144]
test al, 4
jne 0x140003947
inc r15d
mov rcx, r14
call qword [fcn.140002e90]
mov edx, r15d
xor r9d, r9d
mov r8, rsi
xor ecx, ecx
call r14
test eax, eax
jns 0x14000391d
jmp 0x1400039c5
mov eax, 6
mov dil, 1
mov rcx, rsi
lea edx, [rax + 0x7a]
movups xmm0, xmmword [rcx]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rbx + 0x30], xmm1
movups xmm0, xmmword [rcx + 0x40]
movups xmmword [rbx + 0x40], xmm0
movups xmm1, xmmword [rcx + 0x50]
movups xmmword [rbx + 0x50], xmm1
movups xmm0, xmmword [rcx + 0x60]
movups xmmword [rbx + 0x60], xmm0
add rbx, rdx
movups xmm1, xmmword [rcx + 0x70]
add rcx, rdx
movups xmmword [rbx - 0x10], xmm1
sub rax, 1
jne 0x140003955
movups xmm0, xmmword [rcx]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rcx + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rcx + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rcx + 0x30]
movups xmmword [rbx + 0x30], xmm1
mov rcx, qword [rcx + 0x40]
mov qword [rbx + 0x40], rcx
mov rcx, rsi
call fcn.140005eb0
lea r11, [rsp + 0x50]
mov al, dil
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x1400039ec
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r15
lea rbp, [rsp - 0x2f0]
sub rsp, 0x3f0
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rbp + 0x2e0], rax
mov rbx, rdx
mov rdi, rcx
xor r15d, r15d
lea rcx, [rbp - 0x70]
xor edx, edx
mov qword [rsp + 0x38], r15
mov r8d, 0x348
mov sil, r15b
call fcn.140034240
lea rcx, [rbp - 0x70]
call fcn.140003800
test al, al
je 0x140003bb1
xor edx, edx
lea r8d, [r15 + 0x30]
lea rcx, [rsp + 0x40]
call fcn.140034240
xor eax, eax
lea rdx, [rbp + 0x1d8]
lea rcx, [rbp - 0x80]
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], rax
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
mov rdx, rdi
lea rcx, [rsp + 0x70]
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
lea rax, [rbp - 0x80]
mov dword [rsp + 0x40], 0x30
xorps xmm0, xmm0
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x40]
mov qword [rsp + 0x48], r15
lea edx, [r15 + 1]
mov dword [rsp + 0x58], 0x40
lea rcx, [rsp + 0x38]
movdqu xmmword [rsp + 0x60], xmm0
call qword [sym.imp.ntoskrnl.exe_ZwOpenKey]
test eax, eax
js 0x140003bb1
mov rcx, qword [rsp + 0x38]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea r8d, [r15 + 2]
xor r9d, r9d
mov dword [rsp + 0x20], r15d
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x30], r15d
call qword [sym.imp.ntoskrnl.exe_ZwQueryValueKey]
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x140003bb1
mov edx, eax
xor ecx, ecx
mov r8d, 0x53484d45
call qword [sym.imp.ntoskrnl.exe_ExAllocatePoolWithTag]
mov rdi, rax
test rax, rax
je 0x140003bb1
mov ecx, dword [rsp + 0x30]
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea r8d, [r15 + 2]
mov dword [rsp + 0x20], ecx
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x38]
mov r9, rdi
call qword [sym.imp.ntoskrnl.exe_ZwQueryValueKey]
test eax, eax
js 0x140003ba6
mov r8d, dword [rdi + 8]
cmp r8, 0x7ffffffe
jbe 0x140003b66
mov word [rbx], r15w
jmp 0x140003ba3
lea rdx, [rdi + 0xc]
mov ecx, 0x104
sub rdx, rbx
lea rax, [r8 - 0x104]
add rax, rcx
je 0x140003b94
movzx eax, word [rdx + rbx]
test ax, ax
je 0x140003b94
mov word [rbx], ax
add rbx, 2
sub rcx, 1
jne 0x140003b72
test rcx, rcx
lea rax, [rbx - 2]
cmovne rax, rbx
mov word [rax], r15w
mov sil, 1
xor edx, edx
mov rcx, rdi
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x140003bc1
call qword [sym.imp.ntoskrnl.exe_ZwClose]
mov al, sil
mov rcx, qword [rbp + 0x2e0]
xor rcx, rsp
call fcn.14002ff90
lea r11, [rsp + 0x3f0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop rdi
pop rbp
ret
Function at 0x1400042d0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x9b8]
sub rsp, 0xaa0
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rbp + 0x990], rax
mov rsi, rcx
xor r15d, r15d
lea rcx, [rbp + 0x780]
xor edx, edx
mov r8d, 0x20a
mov r14b, r15b
call fcn.140034240
lea rcx, [rbp + 0x780]
call fcn.140003dbc
mov ebx, eax
test eax, eax
jne 0x1400044e5
lea edx, [rax + 0x5c]
lea rcx, [rbp + 0x780]
call qword [sym.imp.ntoskrnl.exe_wcsrchr]
lea rdx, [rax + 2]
test rax, rax
jne 0x140004356
lea rdx, [rbp + 0x780]
xor eax, eax
lea rcx, [rbp + 0x770]
mov qword [rbp + 0x770], rax
mov qword [rbp + 0x778], rax
call qword [sym.imp.ntoskrnl.exe_RtlInitUnicodeString]
call qword [sym.imp.ntoskrnl.exe_IoGetCurrentProcess]
xor r8d, r8d
lea rdx, [rbp + 0x770]
mov rcx, rax
call fcn.1400acf58
mov rdi, rax
test rax, rax
jne 0x140004434
xor edx, edx
lea rcx, [rsp + 0x40]
mov r8d, 0x830
call fcn.140034240
lea r8, [rbp + 0x780]
mov dword [rsp + 0x40], 1
lea rax, [rsp + 0x44]
mov edx, 0x200
sub r8, rax
lea rcx, [rsp + 0x44]
lea rax, [rdx + 0x7ffffdfe]
test rax, rax
je 0x1400043ed
movzx eax, word [rcx + r8]
test ax, ax
je 0x1400043ed
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x1400043ca
test rdx, rdx
lea rax, [rcx - 2]
cmovne rax, rcx
mov word [rax], r15w
call qword [sym.imp.ntoskrnl.exe_PsGetCurrentProcessId]
lea rcx, [rsp + 0x40]
mov word [rbp + 0x74c], 0x101
mov dword [rbp + 0x748], eax
mov byte [rbp + 0x74e], r15b
call fcn.1400b0150
test eax, eax
js 0x1400044e5
mov rdi, qword [rbp + 0x768]
mov r14b, 1
movdqa xmm0, xmmword [0x140076c20]
mov rcx, r15
movdqu xmmword [rsp + 0x20], xmm0
mov qword [rsi], rdi
mov word [rsp + 0x30], 0x27
mov al, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x21], al
inc rcx
cmp rcx, 0x10
jb 0x14000444f
lea rdx, [rsp + 0x21]
mov byte [rsp + 0x31], r15b
mov rcx, rdi
call fcn.140005828
movdqa xmm0, xmmword [0x140076eb0]
mov rcx, r15
mov qword [rsi + 8], rax
xor eax, eax
mov byte [rsp + 0x36], al
movdqu xmmword [rsp + 0x20], xmm0
mov dword [rsp + 0x30], 0x6144666a
mov word [rsp + 0x34], 0x7761
mov al, byte [rsp + 0x20]
xor byte [rsp + rcx + 0x21], al
inc rcx
cmp rcx, 0x15
jb 0x14000449c
lea rdx, [rsp + 0x21]
mov byte [rsp + 0x36], r15b
mov rcx, rdi
call fcn.140005828
mov qword [rsi + 0x10], rax
cmp qword [rsi + 8], r15
je 0x1400044e0
test rax, rax
je 0x1400044e0
test r14b, r14b
je 0x1400044db
mov rcx, rdi
call fcn.140001c08
mov ebx, r15d
jmp 0x1400044e5
mov ebx, 0xe
mov eax, ebx
mov rcx, qword [rbp + 0x990]
xor rcx, rsp
call fcn.14002ff90
lea r11, [rsp + 0xaa0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x140004c78
Capabilities:
Access peb ldr_data

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x48]
sub rsp, 0x120
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rbp + 0x10], rax
mov r8, qword [rcx + 8]
lea rdx, [rsp + 0x20]
mov rdi, rcx
xor ebx, ebx
call fcn.140004e58
xor edx, edx
lea r8d, [rbx + 0x28]
lea rcx, [rsp + 0x28]
call fcn.140034240
mov eax, dword [rsp + 0x20]
lea r13d, [rbx + 1]
mov dword [rsp + 0x3c], eax
lea r8d, [rbx + 0x48]
mov rax, qword [rdi + 0x28]
lea rcx, [rsp + 0x50]
mov dword [rsp + 0x28], 2
xor edx, edx
movups xmm0, xmmword [rsp + 0x28]
mov dword [rsp + 0x40], r13d
movups xmm1, xmmword [rsp + 0x38]
mov qword [rsp + 0x48], rbx
movups xmmword [rax], xmm0
movsd xmm0, qword [rsp + 0x48]
movups xmmword [rax + 0x10], xmm1
movsd qword [rax + 0x20], xmm0
call fcn.140034240
mov rax, qword [rdi + 0x28]
mov r12, qword [0x1400a6a30]
mov qword [rsp + 0x68], rax
mov dword [rsp + 0x50], 3
lea rdx, [rax + 0x28]
mov qword [rsp + 0x58], rbx
movaps xmm0, xmmword [rsp + 0x50]
movups xmmword [rdx], xmm0
mov dword [rsp + 0x64], r13d
movaps xmm1, xmmword [rsp + 0x60]
movups xmmword [rdx + 0x10], xmm1
mov dword [rsp + 0x70], ebx
movaps xmm0, xmmword [rsp + 0x70]
movups xmmword [rdx + 0x20], xmm0
mov dword [rbp - 0x80], ebx
mov qword [rbp - 0x78], rbx
movaps xmm1, xmmword [rbp - 0x80]
movups xmmword [rdx + 0x30], xmm1
mov qword [rbp - 0x70], rbx
movsd xmm0, qword [rbp - 0x70]
movsd qword [rdx + 0x40], xmm0
mov rax, qword gs:[0x188]
mov r9, qword [rdi + 0x30]
mov r10, qword [rdi + 8]
mov rcx, qword [rax + 0x90]
mov rsi, qword [rcx + 0x180]
sub rsi, 0x98
and rsi, 0xfffffffffffffff0
pushfq
pop r15
shr r15, 9
and r15b, r13b
mov r14, cr8
test r14, r14
je 0x140004dbd
mov cr8, rbx
mov qword [rbp - 0x58], rdx
lea rcx, [rbp - 0x40]
xor edx, edx
mov qword [rbp - 0x60], r10
movups xmm0, xmmword [rbp - 0x60]
mov qword [rbp - 0x48], r9
mov qword [rbp - 0x50], rbx
movups xmm1, xmmword [rbp - 0x50]
lea r8d, [rdx + 0x48]
movups xmmword [rsi + 0x20], xmm0
movups xmmword [rsi + 0x30], xmm1
call fcn.140034240
lea r9, [rbp - 0x40]
mov r8, rsi
mov rdx, r12
call fcn.1400035e4
mov rdx, rax
test r14, r14
je 0x140004e07
mov cr8, r14
test r15b, r15b
jne 0x140004e0d
cli
mov rax, qword [rdi + 0x30]
mov rcx, qword [rax]
mov qword [rdi + 0x10], rcx
test edx, edx
jne 0x140004e26
test rcx, rcx
movzx ebx, bl
cmovne ebx, r13d
mov al, bl
mov rcx, qword [rbp + 0x10]
xor rcx, rsp
call fcn.14002ff90
lea r11, [rsp + 0x120]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
Function at 0x140005828
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x20
xor edi, edi
mov r14, rdx
mov rbx, rcx
test rcx, rcx
je 0x140005916
test rdx, rdx
je 0x140005916
or rsi, 0xffffffffffffffff
inc rsi
cmp byte [rdx + rsi], dil
jne 0x140005862
cmp esi, 0x40
ja 0x140005916
call fcn.1400056d0
test al, al
jne 0x140005916
mov eax, 0x5a4d
cmp word [rbx], ax
jne 0x140005916
movsxd rax, dword [rbx + 0x3c]
cmp dword [rax + rbx], 0x4550
jne 0x140005916
mov ecx, 0x20b
cmp word [rax + rbx + 0x18], cx
jne 0x1400058b1
mov ecx, dword [rax + rbx + 0x88]
jmp 0x1400058b5
mov ecx, dword [rax + rbx + 0x78]
mov r15d, ecx
mov ebp, edi
mov ecx, dword [r15 + rbx + 0x20]
mov r12d, dword [r15 + rbx + 0x1c]
add rcx, rbx
mov r13d, dword [r15 + rbx + 0x24]
add r12, rbx
add r13, rbx
mov qword [rsp + 0x50], rcx
cmp dword [r15 + rbx + 0x14], edi
jbe 0x140005916
mov eax, ebp
mov ecx, dword [rcx + rax*4]
add rcx, rbx
je 0x1400058f7
mov r8d, esi
mov rdx, r14
call fcn.140022560
test eax, eax
je 0x140005907
inc ebp
cmp ebp, dword [r15 + rbx + 0x14]
jae 0x140005916
mov rcx, qword [rsp + 0x50]
jmp 0x1400058de
mov eax, ebp
movzx ecx, word [r13 + rax*2]
mov edi, dword [r12 + rcx*4]
add rdi, rbx
mov rbx, qword [rsp + 0x58]
mov rax, rdi
mov rbp, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x20
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
Function at 0x140005954
Capabilities:
Get system information on windows

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x270
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rbp + 0x160], rax
and dword [rsp + 0x28], 0
lea r9, [rsp + 0x28]
xor r8d, r8d
mov rsi, rdx
xor edx, edx
lea r14d, [r8 + 0xb]
mov ecx, r14d
call qword [sym.imp.ntoskrnl.exe_ZwQuerySystemInformation]
mov eax, dword [rsp + 0x28]
test eax, eax
je 0x140005ae0
mov edx, eax
mov ecx, 0x100
call fcn.140005f0c
mov rbx, rax
test rax, rax
je 0x140005ae0
mov ecx, dword [rsp + 0x28]
lea r9, [rsp + 0x28]
mov rdi, rax
mov rdx, rbx
xor eax, eax
rep stosb byte [rdi], al
mov r8d, dword [rsp + 0x28]
mov ecx, r14d
call qword [sym.imp.ntoskrnl.exe_ZwQuerySystemInformation]
test eax, eax
js 0x140005ad2
lea r14, [rbx + 8]
test r14, r14
je 0x140005ad2
mov r12d, dword [rbx]
xor edi, edi
test r12d, r12d
je 0x140005ad2
mov eax, edi
imul rax, rax, 0x128
mov qword [rsp + 0x20], rax
mov r15, qword [rax + r14 + 0x10]
mov r13d, dword [rax + r14 + 0x18]
movabs rax, 0x8000000000000000
cmp r15, rax
jb 0x140005ab8
test r13d, r13d
je 0x140005ab8
xor edx, edx
lea rcx, [rsp + 0x50]
mov r8d, 0x20a
call fcn.140034240
mov rdx, qword [rsp + 0x20]
lea rcx, [rsp + 0x40]
add rdx, 0x28
add rdx, r14
call qword [sym.imp.ntoskrnl.exe_RtlInitAnsiString]
lea rax, [rsp + 0x50]
xor r8d, r8d
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x40]
mov eax, 0x208
lea rcx, [rsp + 0x30]
mov word [rsp + 0x32], ax
call qword [sym.imp.ntoskrnl.exe_RtlAnsiStringToUnicodeString]
test eax, eax
jne 0x140005ab8
test r15, r15
je 0x140005ab8
test rsi, rsi
je 0x140005ab8
lea rcx, [rsp + 0x50]
call fcn.140022518
mov rdx, rsi
lea rcx, [rsp + 0x50]
call fcn.1400221a0
test rax, rax
jne 0x140005ac4
inc edi
cmp edi, r12d
jae 0x140005ad2
jmp 0x140005a12
mov qword [rsi + 0x208], r15
mov dword [rsi + 0x210], r13d
mov edx, 0x6c747373
mov rcx, rbx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov rcx, qword [rbp + 0x160]
xor rcx, rsp
call fcn.14002ff90
lea r11, [rsp + 0x270]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
Function at 0x140008200
Capabilities:
Create thread

Disassembly:
push rdi
sub rsp, 0x60
xor r8d, r8d
mov edx, 1
lea rcx, [0x140097ce0]
call qword [sym.imp.ntoskrnl.exe_KeInitializeEvent]
mov qword [rsp + 0x48], 0
lea rax, [rsp + 0x50]
mov rdi, rax
xor eax, eax
mov ecx, 8
rep stosb byte [rdi], al
mov qword [rsp + 0x30], 0
lea rax, [0x140008410]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x48]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, 0x10000000
lea rcx, [0x140097cf8]
call qword [sym.imp.ntoskrnl.exe_PsCreateSystemThread]
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 0
jge 0x140008287
mov qword [0x140097cf8], 0
jmp 0x140008317
mov qword [rsp + 0x28], 0
lea rax, [0x140097d00]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, qword [0x140097cf8]
call qword [sym.imp.ntoskrnl.exe_ObReferenceObjectByHandle]
mov dword [rsp + 0x40], eax
mov rcx, qword [0x140097cf8]
call qword [sym.imp.ntoskrnl.exe_ZwClose]
mov qword [0x140097cf8], 0
mov rax, qword [rsp + 0x50]
mov qword [0x140097d08], rax
cmp dword [rsp + 0x40], 0
jge 0x140008306
mov qword [0x140097d00], 0
mov byte [0x140097d10], 1
xor r8d, r8d
xor edx, edx
lea rcx, [0x140097ce0]
call qword [sym.imp.ntoskrnl.exe_KeSetEvent]
jmp 0x140008317
mov byte [0x140097d19], 1
xor eax, eax
test eax, eax
jne 0x140008206
add rsp, 0x60
pop rdi
ret
Function at 0x140009080
Capabilities:
Contain obfuscated stackstrings
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x78
mov rax, qword [0x14007a2b0]
xor rax, rsp
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x38], 0
mov dword [rsp + 0x28], 0
cmp qword [0x140097e10], 0
jne 0x1400091c5
mov byte [rsp + 0x48], 0x63
mov byte [rsp + 0x49], 1
mov byte [rsp + 0x4a], 0x71
mov byte [rsp + 0x4b], 3
mov byte [rsp + 0x4c], 0x6c
mov byte [rsp + 0x4d], 5
mov byte [rsp + 0x4e], 0x63
mov byte [rsp + 0x4f], 7
mov byte [rsp + 0x50], 0x64
mov byte [rsp + 0x51], 9
mov byte [rsp + 0x52], 0x66
mov byte [rsp + 0x53], 0xb
mov byte [rsp + 0x54], 0x53
mov byte [rsp + 0x55], 0xd
mov byte [rsp + 0x56], 0x76
mov byte [rsp + 0x57], 0xf
mov byte [rsp + 0x58], 0x26
mov byte [rsp + 0x59], 0x11
mov byte [rsp + 0x5a], 0x26
mov byte [rsp + 0x5b], 0x13
mov byte [rsp + 0x5c], 0x3a
mov byte [rsp + 0x5d], 0x15
mov byte [rsp + 0x5e], 0x72
mov byte [rsp + 0x5f], 0x17
mov byte [rsp + 0x60], 0x74
mov byte [rsp + 0x61], 0x19
mov byte [rsp + 0x62], 0x76
mov byte [rsp + 0x63], 0x1b
mov byte [rsp + 0x64], 0x1c
mov byte [rsp + 0x65], 0x1d
mov dword [rsp + 0x24], 0
jmp 0x140009161
mov eax, dword [rsp + 0x24]
inc eax
mov dword [rsp + 0x24], eax
mov eax, dword [rsp + 0x24]
cmp rax, 0x1e
jae 0x140009194
mov eax, dword [rsp + 0x24]
movzx eax, byte [rsp + rax + 0x48]
mov byte [rsp + 0x20], al
movzx eax, byte [rsp + 0x20]
xor eax, dword [rsp + 0x24]
mov byte [rsp + 0x20], al
mov eax, dword [rsp + 0x24]
movzx ecx, byte [rsp + 0x20]
mov byte [rsp + rax + 0x48], cl
jmp 0x140009157
lea rax, [rsp + 0x48]
mov qword [rsp + 0x40], rax
lea r9, [rsp + 0x28]
lea r8, [0x140097e10]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x80]
call fcn.1400119b4
movzx eax, al
test eax, eax
jne 0x1400091c5
jmp 0x14000920e
mov eax, dword [0x14007a008]
mov rcx, qword [0x140097e10]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ntoskrnl.exe_MmIsAddressValid]
movzx eax, al
test eax, eax
jne 0x1400091f1
jmp 0x14000920e
mov rax, qword [rsp + 0x30]
mov rax, qword [rax]
add rax, 0x290
mov qword [rsp + 0x38], rax
xor eax, eax
test eax, eax
jne 0x1400090a1
mov rax, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.14002ff90
add rsp, 0x78
ret