joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14004932c
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140049376
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140049376
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140049376
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140049376
cmp dword [rcx + 0x84], 0xe
jbe 0x140049376
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140049378
xor al, al
add rsp, 0x28
ret
Function at 0x140028a5c
Capabilities:
Clear file content

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 rbx, rdx
mov rsi, r8
xor edx, edx
mov r14d, ecx
lea r8d, [rdx + 1]
call fcn.14001bef8
xor edx, edx
mov ecx, r14d
mov r12, rax
lea r8d, [rdx + 2]
call fcn.14001bef8
mov rbp, rbx
sub rbp, rax
cmp r12, 0xffffffffffffffff
je 0x140028bac
cmp rax, 0xffffffffffffffff
je 0x140028bac
xor edi, edi
test rbp, rbp
jle 0x140028b57
lea edx, [rdi + 1]
mov ecx, 0x1000
call fcn.14001eb84
mov rbx, rax
test rax, rax
jne 0x140028ae4
lea edi, [rax + 0xc]
mov byte [rsi + 0x30], 1
mov dword [rsi + 0x2c], edi
jmp 0x140028b4d
mov edx, 0x8000
mov ecx, r14d
call fcn.1400197a0
mov r15d, eax
mov eax, 0x1000
mov r8d, ebp
cmp rbp, rax
mov r9, rsi
mov rdx, rbx
mov ecx, r14d
cmovge r8d, eax
call fcn.14001cbe0
cmp eax, 0xffffffff
je 0x140028b2d
cdqe
sub rbp, rax
test rbp, rbp
jg 0x140028af4
mov edx, r15d
mov ecx, r14d
call fcn.1400197a0
jmp 0x140028b4d
cmp byte [rsi + 0x38], dil
je 0x140028b44
cmp dword [rsi + 0x34], 5
jne 0x140028b44
mov byte [rsi + 0x30], 1
mov dword [rsi + 0x2c], 0xd
cmp byte [rsi + 0x30], dil
je 0x140028b4d
mov edi, dword [rsi + 0x2c]
mov rcx, rbx
call fcn.14001a0e4
jmp 0x140028bc0
jns 0x140028bc0
xor r8d, r8d
mov rdx, rbx
mov ecx, r14d
call fcn.14001bef8
cmp rax, 0xffffffffffffffff
jne 0x140028b78
cmp byte [rsi + 0x30], dil
je 0x140028bc0
mov edi, dword [rsi + 0x2c]
jmp 0x140028bc0
mov ecx, r14d
call fcn.1400182d0
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
test eax, eax
jne 0x140028bc0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov byte [rsi + 0x38], 1
mov edi, 0xd
mov dword [rsi + 0x34], eax
mov byte [rsi + 0x30], 1
mov dword [rsi + 0x2c], 0xd
jmp 0x140028bc0
xor edi, edi
cmp byte [rsi + 0x30], dil
je 0x140028bb9
mov eax, dword [rsi + 0x2c]
jmp 0x140028bbe
mov eax, 0x16
mov edi, eax
xor r8d, r8d
mov rdx, r12
mov ecx, r14d
call fcn.14001bef8
mov rbx, qword [rsp + 0x40]
mov eax, edi
mov rdi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop r12
ret

Function at 0x140029cb0
Capabilities:
Parse pe header

Disassembly:
mov eax, 0x5a4d
cmp word [rcx], ax
jne 0x140029cd8
movsxd rdx, dword [rcx + 0x3c]
add rdx, rcx
cmp dword [rdx], 0x4550
jne 0x140029cd8
xor eax, eax
mov ecx, 0x20b
cmp word [rdx + 0x18], cx
sete al
ret
xor eax, eax
ret

Function at 0x140001a60
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140001aaa
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140001aaa
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140001aaa
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140001aaa
cmp dword [rcx + 0x84], 0xe
jbe 0x140001aaa
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140001aac
xor al, al
add rsp, 0x28
ret
Function at 0x140025140
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rax, qword [0x1400e0300]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rdi, rdx
mov qword [rsp + 0x30], rdx
xor r12d, r12d
mov r15d, dword [rdx + 0x10]
mov rbp, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x140025187
mov rbp, qword [rdx]
mov r14d, 0x20
mov r13d, select
cmp byte [r12], r12b
cmove r14d, r13d
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov ebx, dword [rcx + r11 + 0x88]
add rbx, r11
cmp rbx, r11
je 0x140025226
mov r9d, dword [rbx + 0x18]
test r9d, r9d
je 0x140025226
mov esi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rsi + r9*4]
mov ecx, dword [rcx + r11]
add rcx, r11
mov r8d, 0xe772dd32
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x140025221
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x140025200
cmp r8d, 0x9057a9
je 0x14002522b
test r9d, r9d
jne 0x1400251e0
mov rax, qword [rax]
jmp 0x1400251b0
mov ecx, dword [rbx + 0x1c]
add rcx, r11
mov eax, dword [rbx + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r14
xor r9d, r9d
mov r8d, r15d
mov rdx, rbp
mov rcx, qword [8]
call r10
nop
mov rdx, qword [rdi + 0x18]
cmp rdx, 0xf
jbe 0x140025298
inc rdx
mov rcx, qword [rdi]
cmp rdx, 0x1000
jb 0x140025293
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400252d2
mov rcx, r8
call fcn.140073ed4
mov qword [rdi + 0x10], r12
mov qword [rdi + 0x18], select
mov byte [rdi], 0
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140073a40
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.14007a684
int3
Function at 0x140025400
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rax, qword [0x1400e0300]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rbx, rdx
mov qword [rsp + 0x30], rdx
mov r15, qword [0x1400e6128]
mov r12d, dword [rdx + 0x10]
mov r14, rdx
cmp qword [rdx + 0x18], 0xf
jbe 0x14002544b
mov r14, qword [rdx]
mov ebp, 0x20
mov r13d, select
cmp byte [r15], 0
cmove ebp, r13d
add rbp, r15
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rax, qword [rax + 0x10]
nop dword [rax]
nop word [rax + rax]
mov r11, qword [rax + 0x30]
movsxd rcx, dword [r11 + 0x3c]
mov edi, dword [rcx + r11 + 0x88]
add rdi, r11
cmp rdi, r11
je 0x1400254f6
mov r9d, dword [rdi + 0x18]
test r9d, r9d
je 0x1400254f6
mov esi, dword [rdi + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r9d
lea rcx, [rsi + r9*4]
mov ecx, dword [rcx + r11]
add rcx, r11
mov r8d, 0xe772dd32
movzx edx, byte [rcx]
inc rcx
test dl, dl
je 0x1400254f1
nop
movsx edx, dl
xor edx, r8d
imul r8d, edx, 0x1000193
movzx edx, byte [rcx]
lea rcx, [rcx + 1]
test dl, dl
jne 0x1400254d0
cmp r8d, 0x9057a9
je 0x1400254fb
test r9d, r9d
jne 0x1400254b0
mov rax, qword [rax]
jmp 0x140025480
mov ecx, dword [rdi + 0x1c]
add rcx, r11
mov eax, dword [rdi + 0x24]
add rax, r11
movzx eax, word [rax + r9*2]
mov r10d, dword [rcx + rax*4]
add r10, r11
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], rbp
xor r9d, r9d
mov r8d, r12d
mov rdx, r14
mov rcx, qword [r15 + 8]
call r10
nop
mov rdx, qword [rbx + 0x18]
cmp rdx, 0xf
jbe 0x140025564
inc rdx
mov rcx, qword [rbx]
cmp rdx, 0x1000
jb 0x14002555f
add rdx, 0x27
mov r8, qword [rcx - 8]
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x1400255a2
mov rcx, r8
call fcn.140073ed4
mov qword [rbx + 0x10], 0
mov qword [rbx + 0x18], select
mov byte [rbx], 0
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.140073a40
lea r11, [rsp + 0x40]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.14007a684
int3
Function at 0x140028540
Capabilities:
Access peb ldr_data
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push rbx
sub rsp, 0x60
mov rax, qword [0x1400e6158]
test rax, rax
jne 0x140028652
mov rax, qword gs:[0x60]
mov rax, qword [rax + 0x18]
mov rcx, qword [rax + 0x10]
mov r11, qword [rcx]
mov qword [rsp + 0x30], r11
mov rbx, r11
mov qword [rsp + 0x38], rbx
mov rax, r11
nop word [rax + rax]
mov r8, qword [rax + 0x30]
mov qword [rsp + 0x40], r8
movsxd rax, dword [r8 + 0x3c]
mov rcx, qword [rax + r8 + 0x88]
mov qword [rsp + 0x70], rcx
mov r10d, ecx
add r10, r8
mov qword [rsp + 0x48], r10
shr rcx, 0x20
mov dword [rsp + 0x50], ecx
cmp r10, r8
je 0x14002862e
mov r9d, dword [r10 + 0x18]
mov dword [rsp + 0x20], r9d
nop dword [rax + rax]
mov eax, r9d
dec r9d
mov dword [rsp + 0x20], r9d
test eax, eax
je 0x14002862e
mov eax, dword [r10 + 0x20]
add rax, r8
mov eax, dword [rax + r9*4]
add rax, r8
mov qword [rsp + 0x28], rax
mov edx, 0x51a669dc
nop word [rax + rax]
movsx ecx, byte [rax]
inc rax
mov qword [rsp + 0x28], rax
test cl, cl
jne 0x140028624
cmp edx, 0x755e7a9d
jne 0x140028622
mov edx, dword [r10 + 0x1c]
add rdx, r8
mov ecx, dword [r10 + 0x24]
add rcx, r8
movzx ecx, word [rcx + r9*2]
mov eax, dword [rdx + rcx*4]
add rax, r8
jmp 0x14002864b
jmp 0x1400285c0
xor ecx, edx
imul edx, ecx, 0x1000193
jmp 0x1400285f0
mov r11, qword [r11]
mov rax, r11
mov qword [rsp + 0x30], r11
cmp r11, rbx
je 0x140028649
cmp qword [r11 + 0x30], 0
jne 0x140028580
xor eax, eax
mov qword [0x1400e6158], rax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov ecx, 0x40010006
call rax
nop
mov al, 1
add rsp, 0x60
pop rbx
ret
Function at 0x14002b700
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
mov r11, rsp
push rbp
lea rbp, [r11 - 0x5f]
sub rsp, 0xc0
mov rax, qword [0x1400e0300]
xor rax, rsp
mov qword [rbp + 0x47], rax
xorps xmm0, xmm0
mov qword [rbp + 0x17], 0x20
xor eax, eax
mov qword [rbp + 0x1f], rcx
mov qword [rbp + 7], rax
lea rax, [rbp + 0x17]
movups xmmword [rbp - 0x29], xmm0
mov qword [rbp - 0x21], rax
mov rax, qword [0x1400e66e0]
mov dword [rbp - 0x29], 1
mov dword [rbp + 0x37], 0xaac56b
mov dword [rbp + 0x3b], 0x11d0cd44
mov dword [rbp + 0x3f], 0xc000c28c
mov dword [rbp + 0x43], 0xee95c24f
movups xmmword [rbp - 0x49], xmm0
mov dword [rbp - 0x49], 0x58
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x31], 2
movups xmmword [rbp - 0x19], xmm0
mov dword [rbp - 0x19], 1
movups xmmword [rbp - 9], xmm0
mov dword [rbp - 1], 0x100
movdqu xmmword [rbp + 0x27], xmm0
test rax, rax
jne 0x14002b87b
mov rax, qword gs:[0x60]
mov qword [r11 + 0x10], rbx
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov rcx, qword [rax + 0x18]
mov rax, qword [rcx + 0x10]
mov rsi, qword [rax]
mov r11, rsi
nop word [rax + rax]
mov r9, qword [r11 + 0x30]
movsxd rax, dword [r9 + 0x3c]
mov ebx, dword [rax + r9 + 0x88]
add rbx, r9
cmp rbx, r9
je 0x14002b844
mov r8d, dword [rbx + 0x18]
test r8d, r8d
je 0x14002b844
mov edi, dword [rbx + 0x20]
nop dword [rax]
nop dword [rax + rax]
dec r8d
mov edx, 0x12568c0c
lea rax, [rdi + r8*4]
mov eax, dword [rax + r9]
add rax, r9
movzx ecx, byte [rax]
inc rax
test cl, cl
je 0x14002b83f
nop dword [rax]
movsx ecx, cl
lea rax, [rax + 1]
xor ecx, edx
imul edx, ecx, 0x1000193
movzx ecx, byte [rax - 1]
test cl, cl
jne 0x14002b820
cmp edx, 0x3b27f67f
je 0x14002b896
test r8d, r8d
jne 0x14002b800
mov rax, qword [r11]
mov r11, rax
cmp rax, rsi
je 0x14002b85a
cmp qword [rax + 0x30], 0
jne 0x14002b7d0
xor eax, eax
mov rdi, qword [rsp + 0xe8]
mov rsi, qword [rsp + 0xe0]
mov rbx, qword [rsp + 0xd8]
mov qword [0x1400e66e0], rax
lea r8, [rbp - 0x49]
xor ecx, ecx
lea rdx, [rbp + 0x37]
call rax
test eax, eax
je 0x14002b8af
cmp eax, 0x800b010a
je 0x14002b8af
xor al, al
jmp 0x14002b8b1
mov ecx, dword [rbx + 0x24]
add rcx, r9
movzx edx, word [rcx + r8*2]
mov ecx, dword [rbx + 0x1c]
add rcx, r9
mov eax, dword [rcx + rdx*4]
add rax, r9
jmp 0x14002b85c
mov al, 1
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.140073a40
add rsp, 0xc0
pop rbp
ret

Function at 0x14002fa90
Capabilities:
Check for software breakpoints

Disassembly:
sub rsp, 0x18
mov r10, rdx
mov r9, rcx
xor r8d, r8d
mov dword [rsp], r8d
mov eax, r8d
mov dword [rsp + 4], eax
mov edx, eax
movzx ecx, byte [rdx + r9]
cmp cl, 0xcc
je 0x14002faca
cmp cl, 0xc3
je 0x14002faca
cmp cl, byte [rdx + r10]
jne 0x14002fac6
inc r8d
mov dword [rsp], r8d
inc eax
jmp 0x14002faa4
cmp r8d, eax
sete al
jmp 0x14002fad4
add rsp, 0x18
ret
Function at 0x1400313a0
Capabilities:
Access peb ldr_data
Enumerate pe sections

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r14
sub rsp, 0x70
mov rax, qword [0x1400e0300]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, rdx
mov qword [rsp + 0x30], rdx
xor r14d, r14d
mov rax, qword gs:[0x60]
mov rdx, qword [rax + 0x10]
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x10]
movsxd rax, dword [rcx + 0x3c]
movzx ebp, word [rax + rdx + 6]
mov rax, qword gs:[0x60]
mov rdx, qword [rax + 0x10]
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x10]
movsxd rbx, dword [rcx + 0x3c]
add rbx, rdx
mov rax, qword gs:[0x60]
mov rdx, qword [rax + 0x10]
mov rax, qword gs:[0x60]
mov rcx, qword [rax + 0x10]
movsxd rax, dword [rcx + 0x3c]
movzx eax, word [rax + rdx + 0x14]
add rbx, 0x18
add rbx, rax
movzx esi, r14w
cmp r14w, bp
jae 0x1400314fc
nop dword [rax + rax]
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
mov qword [rsp + 0x50], r14
mov qword [rsp + 0x58], r14
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rbx + r8], 0
jne 0x140031470
mov rdx, rbx
lea rcx, [rsp + 0x40]
call fcn.1400273d0
nop
lea rax, [rsp + 0x40]
mov rcx, qword [rsp + 0x40]
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
cmova rax, rcx
cmp qword [rsp + 0x50], 5
jne 0x1400314b9
cmp dword [rax], 0x7865742e
jne 0x1400314b9
cmp byte [rax + 4], 0x74
je 0x140031543
cmp rdx, 0xf
jbe 0x1400314ec
inc rdx
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400314e7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400315a7
call fcn.140073ed4
inc si
add rbx, 0x28
cmp si, bp
jb 0x140031450
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x30], xmm0
mov qword [rdi + 0x40], rax
movups xmmword [rdi], xmm0
mov qword [rdi + 0x10], r14
mov qword [rdi + 0x18], select
mov byte [rdi], al
mov rax, rdi
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140073a40
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x30]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
lea rdx, [rsp + 0x40]
mov rcx, rdi
call fcn.140026a40
movups xmm0, xmmword [rbx]
movups xmmword [rdi + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rdi + 0x30], xmm1
movsd xmm0, qword [rbx + 0x20]
movsd qword [rdi + 0x40], xmm0
mov rdx, qword [rsp + 0x58]
cmp rdx, 0xf
jbe 0x14003151e
inc rdx
mov rcx, qword [rsp + 0x40]
mov r8, rcx
cmp rdx, 0x1000
jb 0x14003159d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub r8, rcx
add r8, 0xfffffffffffffff8
cmp r8, 0x1f
ja 0x1400315a7
call fcn.140073ed4
jmp 0x14003151e
call fcn.14007a684
int3
Function at 0x140036a30
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x30
mov rbx, rcx
xor edx, edx
mov dword [rsp + 0x20], edx
mov rax, qword gs:[0x60]
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx], rdx
mov qword [rcx + 8], rdx
mov qword [rcx + 0x10], rdx
mov dword [rsp + 0x20], 1
mov rax, qword [rax + 0x18]
mov rsi, qword [rax + 0x20]
mov rax, rsi
nop word [rax + rax]
lea rdi, [rax - 0x10]
mov qword [rsp + 0x48], rdi
mov rdx, qword [rbx + 8]
cmp rdx, qword [rbx + 0x10]
je 0x140036a9d
mov qword [rdx], rdi
add qword [rbx + 8], 8
jmp 0x140036aaa
lea r8, [rsp + 0x48]
mov rcx, rbx
call fcn.1400315b0
mov rax, qword [rdi + 0x10]
cmp rax, rsi
jne 0x140036a80
mov rax, rbx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret

Function at 0x14003ab10
Capabilities:
Execute syscall

Disassembly:
mov eax, dword [rcx]
mov r10, qword [rcx + 4]
syscall
ret

Function at 0x14003ac90
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
mov rax, qword [rsp + 0x78]
sub rax, 0x10000
mov rcx, rax
call fcn.14003aeb0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x70]
cmp qword [rsp + 0x20], rax
jbe 0x14003ad97
mov rax, qword [section..data]
cmp qword [rsp + 0x20], rax
jb 0x14003acf4
mov rax, qword [0x1400e0008]
cmp qword [rsp + 0x20], rax
ja 0x14003acf4
mov rax, qword [rsp + 0x20]
sub rax, 0x8000000
mov qword [rsp + 0x20], rax
jmp 0x14003acb6
mov r8d, 0x30
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.1400907a0
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
jne 0x14003ad23
jmp 0x14003ad97
cmp dword [rsp + 0x50], 0x10000
jne 0x14003ad7a
cmp qword [rsp + 0x48], 0x10000
jb 0x14003ad7a
mov r9d, 0x40
mov r8d, 0x3000
mov edx, 0x10000
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
je 0x14003ad68
mov rax, qword [rsp + 0x28]
jmp 0x14003ad99
mov rax, qword [rsp + 0x20]
sub rax, 0x10000
mov qword [rsp + 0x20], rax
jmp 0x14003ad92
mov rax, qword [rsp + 0x38]
sub rax, 0x10000
mov rcx, rax
call fcn.14003aeb0
mov qword [rsp + 0x20], rax
jmp 0x14003acb6
xor eax, eax
add rsp, 0x68
ret
Function at 0x14003ada0
Capabilities:
Allocate or change rwx memory

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
sub rsp, 0x68
mov rcx, qword [rsp + 0x70]
call fcn.14003aef0
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x78]
cmp qword [rsp + 0x20], rax
jae 0x14003aea3
mov rax, qword [section..data]
cmp qword [rsp + 0x20], rax
jb 0x14003adfb
mov rax, qword [0x1400e0008]
cmp qword [rsp + 0x20], rax
ja 0x14003adfb
mov rax, qword [rsp + 0x20]
add rax, 0x8000000
mov qword [rsp + 0x20], rax
jmp 0x14003adbd
mov r8d, 0x30
xor edx, edx
lea rcx, [rsp + 0x30]
call fcn.1400907a0
mov r8d, 0x30
lea rdx, [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualQuery]
test rax, rax
jne 0x14003ae2a
jmp 0x14003aea3
cmp dword [rsp + 0x50], 0x10000
jne 0x14003ae81
cmp qword [rsp + 0x48], 0x10000
jb 0x14003ae81
mov r9d, 0x40
mov r8d, 0x3000
mov edx, 0x10000
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_VirtualAlloc]
mov qword [rsp + 0x28], rax
cmp qword [rsp + 0x28], 0
je 0x14003ae6f
mov rax, qword [rsp + 0x28]
jmp 0x14003aea5
mov rax, qword [rsp + 0x20]
add rax, 0x10000
mov qword [rsp + 0x20], rax
jmp 0x14003ae9e
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x30]
add rcx, rax
mov rax, rcx
mov rcx, rax
call fcn.14003aef0
mov qword [rsp + 0x20], rax
jmp 0x14003adbd
xor eax, eax
add rsp, 0x68
ret
Function at 0x14003af40
Capabilities:
Hook routines via microsoft detours

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0x58
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x38]
mov rcx, qword [rsp + 0x60]
call fcn.14003b4d0
mov qword [rsp + 0x28], 0
cmp qword [0x1400e2028], 0
jne 0x14003af88
cmp qword [0x1400e2020], 0
je 0x14003af88
mov rax, qword [0x1400e2020]
mov qword [0x1400e2028], rax
cmp qword [0x1400e2028], 0
je 0x14003b02e
mov rax, qword [0x1400e2028]
cmp qword [rax + 0x10], 0
je 0x14003b02e
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x38]
cmp qword [rax + 0x10], rcx
jb 0x14003b02e
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
ja 0x14003b02e
mov rax, qword [0x1400e2028]
mov rax, qword [rax + 0x10]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x38]
cmp qword [rsp + 0x28], rax
jb 0x14003aff4
mov rax, qword [rsp + 0x30]
cmp qword [rsp + 0x28], rax
jbe 0x14003affb
xor eax, eax
jmp 0x14003b1a9
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x28]
mov rcx, qword [rcx + 0x48]
mov qword [rax + 0x10], rcx
mov r8d, 0x60
mov edx, 0xcc
mov rcx, qword [rsp + 0x28]
call fcn.1400907a0
mov rax, qword [rsp + 0x28]
jmp 0x14003b1a9
mov rax, qword [0x1400e2020]
mov qword [0x1400e2028], rax
jmp 0x14003b050
mov rax, qword [0x1400e2028]
mov rax, qword [rax + 8]
mov qword [0x1400e2028], rax
cmp qword [0x1400e2028], 0
je 0x14003b09d
cmp qword [0x1400e2028], 0
je 0x14003b09b
mov rax, qword [0x1400e2028]
cmp qword [rax + 0x10], 0
je 0x14003b09b
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x38]
cmp qword [rax + 0x10], rcx
jb 0x14003b09b
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x30]
cmp qword [rax + 0x10], rcx
ja 0x14003b09b
jmp 0x14003afcc
jmp 0x14003b03e
mov rcx, qword [rsp + 0x60]
call fcn.14003d100
and eax, 0xffff
mov eax, eax
mov rcx, qword [rsp + 0x60]
sub rcx, rax
mov rax, rcx
mov qword [rsp + 0x60], rax
mov r8, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x60]
call fcn.14003b1b0
mov qword [rsp + 0x48], rax
cmp qword [rsp + 0x48], 0
je 0x14003b1a7
mov rax, qword [rsp + 0x48]
mov qword [0x1400e2028], rax
mov rax, qword [0x1400e2028]
mov dword [rax], 0x52727464
mov rax, qword [0x1400e2028]
mov qword [rax + 0x10], 0
mov rax, qword [0x1400e2028]
mov rcx, qword [0x1400e2020]
mov qword [rax + 8], rcx
mov rax, qword [0x1400e2028]
mov qword [0x1400e2020], rax
mov qword [rsp + 0x40], 0
mov rax, qword [0x1400e2028]
add rax, 0x60
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x2a8
jmp 0x14003b158
mov eax, dword [rsp + 0x20]
dec eax
mov dword [rsp + 0x20], eax
cmp dword [rsp + 0x20], 1
jle 0x14003b192
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x60
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x40]
mov qword [rcx + rax + 0x48], rdx
movsxd rax, dword [rsp + 0x20]
imul rax, rax, 0x60
mov rcx, qword [rsp + 0x28]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x40], rax
jmp 0x14003b14e
mov rax, qword [0x1400e2028]
mov rcx, qword [rsp + 0x40]
mov qword [rax + 0x10], rcx
jmp 0x14003afcc
xor eax, eax
add rsp, 0x58
ret
Function at 0x140047c20
Capabilities:
Decrypt data using aes via x86 extensions
Encrypt data using aes via x86 extensions
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x18], rbp
push rdi
push r14
push r15
sub rsp, 0x20
mov qword [rsp + 0x48], rsi
mov rdi, rcx
mov rsi, qword [rcx + 8]
mov rbp, r9
sub rsi, rcx
mov r14, r8
sub rsi, 0x10
mov ecx, 0x2000000
sar rsi, 2
mov r15d, edx
call fcn.14005e3c0
test eax, eax
je 0x140047c71
mov rcx, rdi
shr rcx, 2
and ecx, 3
je 0x140047c71
mov eax, 4
sub eax, ecx
jmp 0x140047c73
xor eax, eax
cmp eax, esi
je 0x140047cab
mov qword [rsp + 0x40], rbx
mov ebx, eax
mov eax, dword [rdi]
add rbx, 4
inc eax
shl eax, 4
movsxd r8, eax
mov eax, esi
lea rbx, [rdi + rbx*4]
add rax, 4
mov rcx, rbx
lea rdx, [rdi + rax*4]
call fcn.140090100
mov qword [rdi + 8], rbx
mov rbx, qword [rsp + 0x40]
mov ecx, 0x2000000
call fcn.14005e3c0
mov rsi, qword [rsp + 0x48]
mov rcx, rdi
test eax, eax
je 0x140047cdd
mov r9, rbp
mov r8, r14
mov edx, r15d
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
jmp fcn.14005e050
mov r8, rbp
mov rdx, r14
cmp r15d, 1
jne 0x140047cfc
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
jmp fcn.140049b80
mov rbp, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
jmp fcn.140049390
Function at 0x14005d5e0
Capabilities:
Hash data using sha384
Hash data using sha512

Disassembly:
xor eax, eax
movabs r8, 0xcbbb9d5dc1059ed8
mov qword [rcx], rax
test edx, edx
mov qword [rcx + 8], rax
movabs rax, 0x6a09e667f3bcc908
cmovne rax, r8
movabs r8, 0x629a292a367cd507
mov qword [rcx + 0x10], rax
movabs rax, 0xbb67ae8584caa73b
cmovne rax, r8
movabs r8, 0x9159015a3070dd17
mov qword [rcx + 0x18], rax
movabs rax, 0x3c6ef372fe94f82b
cmovne rax, r8
movabs r8, 0x152fecd8f70e5939
mov qword [rcx + 0x20], rax
movabs rax, 0xa54ff53a5f1d36f1
cmovne rax, r8
movabs r8, 0x67332667ffc00b31
mov qword [rcx + 0x28], rax
movabs rax, 0x510e527fade682d1
cmovne rax, r8
movabs r8, 0x8eb44a8768581511
mov qword [rcx + 0x30], rax
movabs rax, 0x9b05688c2b3e6c1f
cmovne rax, r8
movabs r8, 0xdb0c2e0d64f98fa7
mov qword [rcx + 0x38], rax
movabs rax, 0x1f83d9abfb41bd6b
cmovne rax, r8
movabs r8, 0x47b5481dbefa4fa4
mov qword [rcx + 0x40], rax
movabs rax, 0x5be0cd19137e2179
cmovne rax, r8
mov qword [rcx + 0x48], rax
xor eax, eax
mov dword [rcx + 0xd0], edx
ret