joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400340e8
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x50
mov rax, qword [0x140050808]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov ebp, r8d
mov r14, rdx
mov r13, rcx
call fcn.14002b72c
xor ebx, ebx
cmp qword [0x140053620], rbx
mov rdi, rax
jne 0x1400341fb
lea rcx, str.USER32.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
test rax, rax
je 0x1400342d2
lea rdx, str.MessageBoxW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400342d2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetActiveWindow
mov rcx, rsi
mov qword [0x140053620], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetLastActivePopup
mov rcx, rsi
mov qword [0x140053628], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetUserObjectInformationW
mov rcx, rsi
mov qword [0x140053630], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov r11, rax
mov qword [0x140053640], rax
test rax, rax
je 0x1400341f2
lea rdx, str.GetProcessWindowStation
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov qword [0x140053638], rax
jmp 0x140034202
mov rax, qword [0x140053638]
jmp 0x140034209
mov rax, qword [0x140053638]
mov r11, qword [0x140053640]
cmp rax, rdi
je 0x140034270
cmp r11, rdi
je 0x140034270
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov rcx, qword [0x140053640]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov r12, rax
test rsi, rsi
je 0x140034270
test rax, rax
je 0x140034270
call rsi
test rax, rax
je 0x14003426a
lea rcx, [rsp + 0x30]
mov r9d, 0xc
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
lea edx, [r9 - 0xb]
mov rcx, rax
call r12
test eax, eax
je 0x14003426a
test byte [rsp + 0x40], 1
jne 0x140034270
bts ebp, 0x15
jmp 0x1400342b0
mov rcx, qword [0x140053628]
cmp rcx, rdi
je 0x1400342b0
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x1400342b0
call rax
mov rbx, rax
test rax, rax
je 0x1400342b0
mov rcx, qword [0x140053630]
cmp rcx, rdi
je 0x1400342b0
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x1400342b0
mov rcx, rbx
call rax
mov rbx, rax
mov rcx, qword [0x140053620]
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x1400342d2
mov r9d, ebp
mov r8, r14
mov rdx, r13
mov rcx, rbx
call rax
jmp 0x1400342d4
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140023180
add rsp, 0x50
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140001750
Capabilities:
Read file on windows

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x20], r9
mov qword [r11 + 0x18], r8
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov edi, dword [rsp + 0xb0]
mov eax, 0x100000
mov r14, qword [rsp + 0xb8]
cmp edi, eax
mov r15, rdx
mov r12, rcx
mov ebx, edi
mov rcx, r15
cmova ebx, eax
and qword [r11 - 0x48], 0
lea rax, [r11 + 0x20]
xor r9d, r9d
mov qword [r11 - 0x50], rax
xor r8d, r8d
mov dword [rsp + 0x30], ebx
lea rax, [r11 - 0x38]
mov qword [r11 - 0x60], r14
xor edx, edx
mov qword [r11 - 0x68], rax
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
test eax, eax
js 0x14000186d
lfence
mov rsi, qword [rsp + 0xc0]
mov r8d, ebx
mov rdx, r14
mov rcx, rsi
mov ebp, ebx
call fcn.140015a80
mov rax, qword [r12 + 0x10]
lea r9, [rsp + 0xa0]
mov rcx, qword [r12]
mov r8d, ebx
and qword [rsp + 0x20], 0
mov rdx, r14
call qword [case.0x140002ecf.0]
test eax, eax
js 0x14000186d
sub edi, ebx
je 0x14000186d
lfence
add qword [rsp + 0xa0], rbp
mov eax, 0x100000
add qword [rsp + 0xa8], rbp
add rsi, rbp
cmp edi, eax
mov ebx, edi
mov rcx, r15
cmova ebx, eax
and qword [rsp + 0x40], 0
lea rax, [rsp + 0xa8]
xor r9d, r9d
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov dword [rsp + 0x30], ebx
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], r14
xor edx, edx
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
test eax, eax
jns 0x1400017d1
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x140001d88
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov eax, dword [rdx + 8]
xor edi, edi
mov rbx, rdx
test eax, eax
jne 0x140001dac
mov edx, dword [rdx + 0xc]
lea r8d, [rdi + 8]
jmp 0x140001e18
cmp eax, 1
jne 0x140001e29
mov rax, qword [rdx + 0x18]
test rax, rax
je 0x140001e0f
and qword [rsp + 0x40], rdi
lea rcx, [rsp + 0x78]
and qword [rsp + 0x78], rdi
xor r9d, r9d
mov esi, dword [rax + 0x24]
xor r8d, r8d
mov qword [rsp + 0x38], rcx
add esi, 0x200
mov rcx, qword [rbx]
xor edx, edx
mov dword [rsp + 0x30], esi
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwWriteFile]
mov edi, eax
test eax, eax
js 0x140001e0a
mov ecx, esi
cmp qword [rsp + 0x58], rcx
je 0x140001e0f
mov edi, 0xc0000001
mov edx, dword [rbx + 0xc]
mov r8d, 2
add rdx, qword [rbx + 0x10]
mov rcx, qword [rbx]
call fcn.14000fdbc
jmp 0x140001f18
cmp eax, 2
jne 0x140001f18
mov ecx, dword [0x140022120]
mov edx, 0x1000
mov r8d, 0x64526346
call qword [sym.imp.ntoskrnl.exe_ExAllocatePoolWithTag]
mov rsi, rax
test rax, rax
jne 0x140001e5b
mov eax, 0xc000009a
jmp 0x140001f1a
lea rcx, [rax + 0xc]
xor edx, edx
mov r8d, 0x1f4
call fcn.140015d40
and qword [rsp + 0x40], rdi
movabs rax, 0x8602113816328511
mov qword [rsi], rax
xor r9d, r9d
mov dword [rsi + 8], 0x30
xor r8d, r8d
mov eax, dword [rbx + 0x18]
xor edx, edx
mov dword [rsi + 0x14], eax
mov eax, dword [rbx + 0x1c]
mov dword [rsi + 0x28], eax
mov rax, qword [rbx + 0x10]
mov qword [rsi + 0x18], rax
mov rax, qword [rbx + 0x20]
add rax, 0x200
mov dword [rsi + 0x10], 1
mov qword [rsi + 0x20], rax
lea rax, [rsp + 0x78]
mov rcx, qword [rbx]
and qword [rsp + 0x78], rdi
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0x50]
mov dword [rsp + 0x30], 0x200
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwWriteFile]
mov edi, eax
test eax, eax
js 0x140001efb
cmp qword [rsp + 0x58], 0x30
mov edi, 0xc0000001
cmovb eax, edi
mov edi, eax
mov rdx, qword [rsi + 0x20]
mov r8d, 4
mov rcx, qword [rbx]
call fcn.14000fdbc
xor edx, edx
mov rcx, rsi
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov eax, edi
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x1400020a8
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x60
cmp dword [rdx + 8], 1
mov r14, rdx
mov rbx, rcx
jne 0x14000217a
mov rdi, qword [rdx + 0x20]
lea rsi, [rcx + 0x80]
mov edx, dword [rdi + 0x14]
call fcn.1400027b4
test eax, eax
jns 0x1400020ec
lfence
jmp 0x140002181
mov eax, dword [rsi + 0x44]
cmp dword [rdi + 0x14], eax
je 0x1400020fe
mov eax, 0xc0000004
jmp 0x140002181
lfence
and qword [rsp + 0x40], 0
lea rax, [rsp + 0x78]
mov rcx, qword [r14]
xor r9d, r9d
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov qword [rsp + 0x78], 0x200
xor edx, edx
mov eax, dword [rdi + 0x24]
mov dword [rsp + 0x30], eax
mov rax, qword [rsi]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
test eax, eax
js 0x140002181
mov eax, dword [rdi + 0x24]
cmp qword [rsp + 0x58], rax
jne 0x140002173
lfence
mov eax, dword [rdi + 0x1c]
mov rcx, rsi
mov dword [rsi + 0x54], eax
mov dword [rsi + 0x58], eax
call fcn.140001c68
test al, al
jne 0x14000217f
mov byte [rbx + 0x224], 1
jmp 0x14000217f
mov eax, 0xc0000001
jmp 0x140002181
call fcn.1400027f0
xor eax, eax
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop r14
ret
Function at 0x140003c94
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
xor ebx, ebx
xor r14d, r14d
mov r13, r9
mov rdi, rcx
cmp dword [rcx + 8], ebx
jbe 0x140003e50
mov rax, qword [rdi + 0x100]
mov edx, r14d
mov rcx, rdi
call qword [case.0x140002ecf.0]
mov qword [rsp + 0x58], rax
test rax, rax
je 0x140003e95
mov ecx, dword [rax + 0x28]
xor r12d, r12d
cmp rcx, r13
mov qword [rsp + 0x50], r12
mov esi, r13d
cmovl esi, ecx
mov eax, esi
mov ecx, esi
sub r13, rax
mov dword [rsp + 0xb0], ecx
test esi, esi
je 0x140003e23
mov r15d, 0x100000
mov rcx, r12
cmp esi, r15d
cmovb r15d, esi
and qword [rsp + 0x20], 0
mov edx, r15d
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.ntoskrnl.exe_IoAllocateMdl]
mov rbp, rax
test rax, rax
je 0x140003e73
mov rcx, qword [rsp + 0x58]
mov r9d, r15d
mov r8, r12
mov rdx, rax
call qword [sym.imp.ntoskrnl.exe_IoBuildPartialMdl]
test byte [rbp + 0xa], 5
je 0x140003d62
mov r12, qword [rbp + 0x18]
jmp 0x140003d89
mov eax, dword [0x140022124]
xor r9d, r9d
or eax, 0x10
xor edx, edx
mov dword [rsp + 0x28], eax
mov rcx, rbp
and dword [rsp + 0x20], 0
lea r8d, [r9 + 1]
call qword [sym.imp.ntoskrnl.exe_MmMapLockedPagesSpecifyCache]
mov r12, rax
test r12, r12
je 0x140003e6a
and qword [rsp + 0x40], 0
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
xor r9d, r9d
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov dword [rsp + 0x30], r15d
lea rax, [rsp + 0x60]
mov qword [rsp + 0x28], r12
xor edx, edx
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
mov ebx, eax
cmp dword [rsp + 0x68], r15d
je 0x140003de2
test ebx, ebx
mov eax, 0xc0000001
cmovns ebx, eax
mov rdx, rbp
mov rcx, r12
call qword [sym.imp.ntoskrnl.exe_MmUnmapLockedPages]
mov rcx, rbp
call qword [sym.imp.ntoskrnl.exe_IoFreeMdl]
test ebx, ebx
js 0x140003e78
mov r12, qword [rsp + 0x50]
mov eax, r15d
add qword [rsp + 0xc0], rax
add r12, rax
mov qword [rsp + 0x50], r12
sub esi, r15d
jne 0x140003d11
mov ecx, dword [rsp + 0xb0]
mov rax, qword [rdi + 0x110]
test rax, rax
je 0x140003e3e
mov r8d, ecx
mov edx, r14d
mov rcx, rdi
call qword [case.0x140002ecf.0]
test r13, r13
je 0x140003e50
inc r14d
cmp r14d, dword [rdi + 8]
jb 0x140003cc6
mov eax, ebx
mov rbx, qword [rsp + 0xc8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rcx, rbp
call qword [sym.imp.ntoskrnl.exe_IoFreeMdl]
mov ebx, 0xc000009a
mov rax, qword [rdi + 0x110]
test rax, rax
je 0x140003e50
xor r8d, r8d
mov edx, r14d
mov rcx, rdi
call qword [case.0x140002ecf.0]
jmp 0x140003e50
mov eax, 0xc000009a
jmp 0x140003e52
Function at 0x140004250
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x20], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x70
xor ebx, ebx
xor esi, esi
mov rbp, r9
mov rdi, rcx
cmp dword [rcx + 8], ebx
jbe 0x14000444a
mov rax, qword [rdi + 0x108]
mov edx, esi
mov rcx, rdi
call qword [case.0x140002ecf.0]
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x1400042c7
mov eax, dword [rdi + 8]
dec eax
cmp esi, eax
mov eax, 0x400000
jne 0x1400042ae
mov eax, dword [rdi + 0xc]
cmp rbp, rax
jle 0x14000444a
sub rbp, rax
add qword [rsp + 0xc0], rax
jmp 0x140004416
mov ecx, dword [rax + 0x28]
xor r13d, r13d
cmp rcx, rbp
mov r14d, ebp
cmovl r14d, ecx
mov eax, r14d
sub rbp, rax
test r14d, r14d
jmp 0x1400043e9
mov r12d, 0x100000
mov rcx, r13
cmp r14d, r12d
cmovb r12d, r14d
and qword [rsp + 0x20], 0
mov edx, r12d
xor r9d, r9d
xor r8d, r8d
call qword [sym.imp.ntoskrnl.exe_IoAllocateMdl]
mov r15, rax
test rax, rax
je 0x14000442b
mov rcx, qword [rsp + 0x50]
mov r9d, r12d
mov r8, r13
mov rdx, rax
call qword [sym.imp.ntoskrnl.exe_IoBuildPartialMdl]
test byte [r15 + 0xa], 5
je 0x140004337
mov r13, qword [r15 + 0x18]
jmp 0x14000435e
mov eax, dword [0x140022124]
xor r9d, r9d
or eax, 0x10
xor edx, edx
mov dword [rsp + 0x28], eax
mov rcx, r15
and dword [rsp + 0x20], 0
lea r8d, [r9 + 1]
call qword [sym.imp.ntoskrnl.exe_MmMapLockedPagesSpecifyCache]
mov r13, rax
test r13, r13
je 0x140004422
and qword [rsp + 0x40], 0
lea rax, [rsp + 0xc0]
mov rcx, qword [rsp + 0xb8]
xor r9d, r9d
mov qword [rsp + 0x38], rax
xor r8d, r8d
mov dword [rsp + 0x30], r12d
lea rax, [rsp + 0x58]
mov qword [rsp + 0x28], r13
xor edx, edx
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwWriteFile]
mov ebx, eax
cmp dword [rsp + 0x60], r12d
je 0x1400043b7
test ebx, ebx
mov eax, 0xc0000001
cmovns ebx, eax
mov rdx, r15
mov rcx, r13
call qword [sym.imp.ntoskrnl.exe_MmUnmapLockedPages]
mov rcx, r15
call qword [sym.imp.ntoskrnl.exe_IoFreeMdl]
test ebx, ebx
js 0x140004430
mov r13, qword [rsp + 0xb0]
mov eax, r12d
add qword [rsp + 0xc0], rax
add r13, rax
sub r14d, r12d
mov qword [rsp + 0xb0], r13
jne 0x1400042e5
mov rax, qword [rdi + 0x110]
test rax, rax
je 0x140004411
xor r8d, r8d
mov edx, esi
mov rcx, rdi
call qword [case.0x140002ecf.0]
test rbp, rbp
je 0x14000444a
inc esi
cmp esi, dword [rdi + 8]
jae 0x14000444a
jmp 0x140004281
mov rcx, r15
call qword [sym.imp.ntoskrnl.exe_IoFreeMdl]
mov ebx, 0xc000009a
mov rax, qword [rdi + 0x110]
test rax, rax
je 0x14000444a
xor r8d, r8d
mov edx, esi
mov rcx, rdi
call qword [case.0x140002ecf.0]
mov eax, ebx
mov rbx, qword [rsp + 0xc8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140005f38
Capabilities:
Terminate thread

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r12
push r14
push r15
sub rsp, 0x20
mov rdi, qword [rcx]
xor r12d, r12d
mov r15b, dl
mov r14, rcx
mov esi, r12d
cmp rdi, rcx
je 0x14000606a
lea rbx, [rdi - 0x540]
mov rbp, rdi
test r15b, r15b
jne 0x140005fae
movzx ecx, word [rbx + 0x53a]
test cx, cx
je 0x140005f91
call fcn.14000fb80
test al, al
je 0x140005fa6
movzx ecx, word [rbx + 0x53c]
test cx, cx
je 0x140005fae
call fcn.14000fb80
test al, al
jne 0x140005fae
mov rdi, qword [rdi]
jmp 0x140006050
mov r8, qword [rbx + 0x550]
mov rcx, rbx
mov rdx, qword [rbx + 0x558]
call fcn.140009804
test eax, eax
jns 0x140005fe1
lfence
mov rcx, qword [rbx]
mov r9d, eax
mov edx, 5
mov r8d, 0xe0060003
call fcn.14000ed30
mov rcx, qword [rbx + 0x558]
test rcx, rcx
je 0x140005ffc
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov qword [rbx + 0x558], r12
mov rcx, qword [rbx + 0x550]
test rcx, rcx
je 0x140006017
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
mov qword [rbx + 0x550], r12
mov rax, qword [rdi]
mov rdi, rax
cmp qword [rax + 8], rbp
jne 0x140006089
mov rcx, qword [rbp + 8]
cmp qword [rcx], rbp
jne 0x140006089
mov qword [rcx], rax
mov qword [rax + 8], rcx
cmp byte [rbx + 0x539], r12b
je 0x140006050
mov byte [rbx + 0x539], r12b
test rsi, rsi
jne 0x140006050
mov rax, qword [rbx + 0x58]
mov rsi, qword [rax + 0x40]
cmp rdi, r14
jne 0x140005f6d
test rsi, rsi
je 0x14000606a
mov rcx, qword [rsi + 0x58]
xor edx, edx
call qword [sym.imp.ntoskrnl.exe_IoInvalidateDeviceRelations]
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
ret
mov ecx, 3
int 0x29
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov rbx, rcx
xor edi, edi
mov rcx, qword gs:[0x188]
lea edx, [rdi + 0x10]
call qword [sym.imp.ntoskrnl.exe_KeSetPriorityThread]
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], 0xffffffffff676980
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ntoskrnl.exe_KeDelayExecutionThread]
add rbx, 0x48
jmp 0x1400060fc
inc edi
cmp edi, 0x12c
ja 0x14000610d
cmp edi, 0x14
jb 0x1400060ed
test dil, 3
jne 0x1400060ed
call fcn.14000fe78
test al, al
jne 0x14000610d
lea r8, [rsp + 0x30]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ntoskrnl.exe_KeDelayExecutionThread]
xor edx, edx
mov rcx, rbx
call fcn.140005f38
cmp qword [rbx], rbx
jne 0x1400060cf
jmp 0x140006117
mov dl, 1
mov rcx, rbx
call fcn.140005f38
xor ecx, ecx
call qword [sym.imp.ntoskrnl.exe_PsTerminateSystemThread]
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140006f60
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov qword [rcx], rdx
lea rsi, [rcx + 0x68]
xor edx, edx
mov dword [rcx + 8], r8d
mov rbx, rcx
call fcn.140011270
mov edi, eax
cmp eax, 1
jne 0x140006f9d
mov byte [rbx + 0x84], al
xor eax, eax
jmp 0x140007061
xor ebp, ebp
test eax, eax
je 0x140006fb2
cmp eax, 0xfffffffb
je 0x140006fb2
mov eax, 0xc0000001
jmp 0x140007061
cmp dword [rbx + 0x18], ebp
jne 0x140007056
mov eax, dword [rbx + 0x80]
xor r9d, r9d
mov rcx, qword [rbx + 0x60]
xor r8d, r8d
mov qword [rsp + 0x40], rbp
xor edx, edx
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], eax
mov rax, qword [rbx + 0x70]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwWriteFile]
mov rdx, qword [rsp + 0x58]
add qword [rsi], rdx
test eax, eax
js 0x140007051
mov ecx, dword [rbx + 0x80]
cmp rcx, rdx
jne 0x140007051
mov rax, qword [rbx + 0x70]
mov qword [rbx + 0x10], rax
mov dword [rbx + 0x18], ecx
cmp dword [rbx + 8], ebp
je 0x140007038
lfence
xor edx, edx
mov rcx, rbx
call fcn.140011270
mov edi, eax
cmp eax, 1
je 0x140007048
test eax, eax
je 0x140007038
cmp eax, 0xfffffffb
jne 0x140007051
mov eax, edi
cmp dword [rbx + 0x18], ebp
je 0x140006fbb
cmp eax, 1
jne 0x140007056
mov byte [rbx + 0x84], 1
jmp 0x140007056
mov edi, 0xfffffffd
cmp edi, 0xfffffffd
mov eax, 0xc0000001
cmovne eax, ebp
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x140007078
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x60
mov qword [rcx + 0x10], rdx
lea rsi, [rcx + 0x68]
xor edx, edx
mov dword [rcx + 0x18], r8d
mov rbx, rcx
call fcn.140011f58
cmp eax, 1
jne 0x1400070b4
mov byte [rbx + 0x84], al
xor eax, eax
jmp 0x14000717f
xor ebp, ebp
test eax, eax
je 0x1400070c9
cmp eax, 0xfffffffb
je 0x1400070c9
mov eax, 0xc0000001
jmp 0x14000717f
cmp dword [rbx + 0x18], ebp
je 0x140007172
cmp dword [rbx + 8], ebp
jne 0x14000716d
mov edi, dword [rbx + 0x80]
cmp rdi, qword [rbx + 0x58]
jl 0x1400070ea
mov edi, dword [rbx + 0x58]
test edi, edi
je 0x140007195
mov rax, qword [rbx + 0x70]
xor r9d, r9d
mov rcx, qword [rbx + 0x60]
xor r8d, r8d
mov qword [rsp + 0x40], rbp
xor edx, edx
mov qword [rsp + 0x38], rsi
mov dword [rsp + 0x30], edi
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
mov rcx, qword [rsp + 0x58]
sub qword [rbx + 0x58], rcx
add qword [rsi], rcx
test eax, eax
js 0x14000716d
mov eax, edi
cmp rax, rcx
jne 0x14000716d
lfence
mov rax, qword [rbx + 0x70]
xor edx, edx
mov qword [rbx], rax
mov rcx, rbx
mov eax, dword [rsp + 0x58]
mov dword [rbx + 8], eax
call fcn.140011f58
cmp eax, 1
je 0x14000719a
test eax, eax
je 0x1400070c9
cmp eax, 0xfffffffb
je 0x1400070c9
mov eax, 0xfffffffd
cmp eax, 0xfffffffd
mov ecx, 0xc0000001
cmovne ecx, ebp
mov eax, ecx
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
mov eax, 1
mov byte [rbx + 0x84], 1
jmp 0x140007172
Function at 0x1400071a4
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
or edi, 0xffffffff
xor r15d, r15d
mov rsi, r8
mov r14, rdx
mov rbp, rcx
mov r12d, 0x200
test r8, r8
je 0x1400071d9
mov rbx, r8
jmp 0x1400071fa
mov ecx, dword [0x140022120]
mov r8d, 0x64526346
mov rdx, r12
call qword [sym.imp.ntoskrnl.exe_ExAllocatePoolWithTag]
mov rbx, rax
test rax, rax
je 0x14000733f
mov qword [rsp + 0x40], r15
lea rax, [rsp + 0xa0]
mov qword [rsp + 0x38], rax
xor r9d, r9d
mov dword [rsp + 0x30], r12d
lea rax, [rsp + 0x50]
mov qword [rsp + 0x28], rbx
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
mov rcx, rbp
mov qword [rsp + 0xa0], r15
call qword [sym.imp.ntoskrnl.exe_ZwReadFile]
test eax, eax
js 0x14000732f
cmp qword [rsp + 0x58], r12
jne 0x14000732f
mov rcx, qword [rbx]
movabs rax, 0x97dfddb6d877fb7a
add rax, rcx
cmp rax, 1
jbe 0x1400072a0
movabs rax, 0x8602113816328511
cmp rcx, rax
jne 0x14000731b
cmp dword [rbx + 8], 0x30
jne 0x14000731b
cmp dword [rbx + 0x10], r15d
je 0x14000732f
mov rax, qword [r14]
cmp qword [rbx + 0x20], rax
jg 0x14000732f
mov edi, 2
jmp 0x14000732f
mov r8d, 0x50
cmp dword [rbx + 8], r8d
jne 0x14000731b
cmp dword [rbx + 0xc], 1
ja 0x14000732f
cmp dword [rbx + 0x10], r15d
je 0x14000732f
mov eax, dword [rbx + 0x18]
cmp dword [rbx + 0x1c], eax
ja 0x14000732f
mov edx, r15d
lea rcx, [rbx + 0x47]
jmp 0x1400072d1
movzx eax, byte [rcx]
add edx, eax
dec rcx
cmp rcx, rbx
jae 0x1400072c9
cmp edx, dword [rbx + 0x48]
jne 0x14000732f
movzx eax, word [rbx + 0x42]
test ax, ax
je 0x140007314
movzx ecx, word [rbx + 0x40]
cmp cx, r8w
jb 0x14000732f
add ecx, eax
cmp ecx, r12d
ja 0x14000732f
lfence
movzx r8d, word [rbx + 0x42]
xor ecx, ecx
movzx edx, word [rbx + 0x40]
shr r8d, 1
add rdx, rbx
call fcn.14000f880
cmp ax, word [rbx + 0x44]
jne 0x14000732f
mov edi, 1
jmp 0x14000732f
cmp byte [rbx + 0x1fe], 0x55
jne 0x14000732f
cmp byte [rbx + 0x1ff], 0xaa
cmove edi, r15d
cmp rbx, rsi
je 0x14000733f
xor edx, edx
mov rcx, rbx
call qword [sym.imp.ntoskrnl.exe_ExFreePoolWithTag]
lea r11, [rsp + 0x60]
mov eax, edi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret