joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140053bb0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x6270], 0
lea rbx, [rcx + 0x6278]
mov rsi, r8
mov rbp, rdx
mov rdi, rcx
je 0x140053c57
mov r9d, dword [rbx + 4]
mov qword [rsp + 0x30], r14
xor r14d, r14d
test r9d, r9d
jns 0x140053c0a
mov eax, r9d
mov rcx, rbx
cdq
sub eax, edx
mov edx, r14d
sar eax, 1
add eax, r9d
test eax, eax
cmovg edx, eax
call fcn.140060e90
mov r8, rsi
mov dword [rbx], r14d
mov rdx, rbp
mov rcx, rbx
call fcn.140039100
mov eax, dword [rbx]
mov edx, 1
mov r9, qword [rdi + 0x6270]
test eax, eax
lea ecx, [rax - 1]
mov rax, qword [rdi + 0x6280]
cmove ecx, r14d
test rax, rax
movsxd r8, ecx
lea rcx, [0x14033c3dc]
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r14, qword [rsp + 0x30]
jmp 0x140053c5f
mov rcx, rbx
call fcn.140039100
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret

Function at 0x140053f80
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x20
mov rbx, qword [0x14033c3e8]
xor ebp, ebp
cmp byte [rbx + 0x61b0], bpl
jne 0x14005405f
mov rcx, qword [rbx + 0x20]
test rcx, rcx
je 0x140054058
lea r8, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
call fcn.1400385c0
mov rsi, rax
test rax, rax
je 0x140054058
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x140053fe4
mov rcx, rax
call fcn.1400541b0
mov r8, qword [0x14033c3e8]
test r8, r8
je 0x14005404f
movsx rdx, word [r8 + 0x6340]
lea rcx, [r8 + 0x6344]
mov r9d, dword [r8 + 0x4130]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x140054044
lea ecx, [rdx + 1]
mov eax, 0x2aaaaaab
imul ecx
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [rdx + rdx*2]
add eax, eax
sub ecx, eax
mov word [r8 + 0x6340], cx
movsx rax, cx
lea rcx, [r8 + 0x6344]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], ebp
inc word [rcx + 6]
inc dword [r8 + 0x633c]
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
mov byte [rbx + 0x61b0], 1
movss xmm0, dword [rbx + 0x61b4]
xorps xmm1, xmm1
comiss xmm0, xmm1
jbe 0x1400540ee
subss xmm0, dword [rbx + 0x18]
comiss xmm1, xmm0
movss dword [rbx + 0x61b4], xmm0
jb 0x1400540ee
mov rdi, qword [rbx + 0x20]
test rdi, rdi
je 0x1400540e1
mov rax, qword [0x14033c3e8]
lea rcx, [rsp + 0x30]
mov qword [rsp + 0x30], rbp
mov dword [rax + 0x61b4], ebp
call fcn.140054410
lea rdx, [0x1401105c8]
mov rcx, rdi
mov rsi, rax
call fcn.1400384d0
mov rdi, rax
test rax, rax
je 0x1400540e8
mov r8, qword [rsp + 0x30]
mov r9, rax
mov edx, 1
mov rcx, rsi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
jmp 0x1400540e8
mov byte [rbx + 0xd6], 1
mov dword [rbx + 0x61b4], ebp
mov rbx, qword [rsp + 0x38]
mov rbp, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop rdi
ret
Function at 0x140054110
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 8
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10, qword [0x14033c3e8]
mov r11d, 0xffffffff
mov eax, r11d
test r9b, r9b
je 0x140054173
mov qword [rsp], rbx
lea rbx, [0x140108d50]
nop dword [rax]
cmp r9b, 0x23
jne 0x140054153
cmp byte [r8], r9b
jne 0x140054153
cmp byte [r8 + 1], r9b
cmove eax, r11d
movzx edx, al
movzx ecx, r9b
movzx r9d, byte [r8]
xor rdx, rcx
shr eax, 8
inc r8
xor eax, dword [rbx + rdx*4]
test r9b, r9b
jne 0x140054140
mov rbx, qword [rsp]
movsxd rcx, dword [r10 + 0x61c8]
not eax
mov r8, qword [r10 + 0x61d0]
lea rdx, [rcx + rcx*8]
lea rcx, [r8 + rdx*8]
cmp r8, rcx
je 0x14005419f
cmp dword [r8 + 8], eax
je 0x1400541a6
add r8, 0x48
cmp r8, rcx
jne 0x140054190
xor eax, eax
add rsp, 8
ret
mov rax, r8
add rsp, 8
ret
Function at 0x140057590
Capabilities:
Hash data with crc32

Disassembly:
test r8d, r8d
jle 0x14005779c
mov r11, rsp
push rbp
push rsi
sub rsp, 0x58
mov rax, qword [0x140154e70]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov qword [r11 - 0x18], rdi
mov rbp, rcx
mov qword [r11 - 0x20], r14
lea rdi, [rdx + 0x18]
mov qword [r11 - 0x28], r15
mov r14d, 0xffffffff
lea r15, [0x140108d50]
mov qword [r11 + 0x18], rbx
movsxd rsi, r8d
nop dword [rax + rax]
mov edx, dword [rdi - 0x18]
test edx, edx
je 0x140057764
mov rcx, rbp
call fcn.140056d60
mov edx, dword [rdi - 0x14]
mov rbx, rax
test edx, edx
je 0x14005760e
lea rcx, [rbp + 0x6170]
call fcn.140038d60
mov r11, rax
jmp 0x140057611
xor r11d, r11d
mov qword [rbx + 0x18], r11
movsx eax, word [rdi]
movd xmm1, eax
movsx eax, word [rdi + 2]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
movss dword [rbx + 0x48], xmm1
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x4c], xmm0
movsx eax, word [rdi + 4]
movd xmm1, eax
movsx eax, word [rdi + 6]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
movss dword [rbx + 0x50], xmm1
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x54], xmm0
movsx eax, word [rdi + 8]
movd xmm1, eax
movsx eax, word [rdi + 0xa]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, dword [rbx + 0xc8]
and eax, 0xfffffe49
movss dword [rbx + 0x58], xmm1
or eax, 0x49
mov dword [rbx + 0xc8], eax
cvtdq2ps xmm0, xmm0
movss dword [rbx + 0x5c], xmm0
test r11, r11
je 0x1400576a5
cmp qword [r11 + 0x20], 0
jne 0x14005769a
mov qword [r11 + 0x20], rbx
jmp 0x1400576a5
cmp qword [r11 + 0x28], 0
jne 0x1400576a5
mov qword [r11 + 0x28], rbx
mov eax, dword [rdi - 0xc]
mov dword [rbx + 0xbc], eax
movsx eax, byte [rdi - 8]
mov dword [rbx + 0x60], eax
mov ecx, dword [rdi - 4]
mov eax, dword [rbx + 0xc]
and ecx, 0x3fc20
or eax, dword [rbx + 4]
or eax, ecx
mov dword [rbx + 8], ecx
mov dword [rbx + 0x10], eax
mov rcx, rbx
mov rax, qword [rbx + 0x18]
test rax, rax
je 0x1400576ec
nop dword [rax + rax]
mov rcx, rax
mov rax, qword [rax + 0x18]
test rax, rax
jne 0x1400576e0
mov r9d, dword [rcx]
lea r8, str.DockNode__02X
lea rcx, [rsp + 0x20]
mov edx, 0x14
call fcn.140038200
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov edx, r14d
test r9b, r9b
je 0x140057748
cmp r9b, 0x23
jne 0x14005772b
cmp byte [r8], r9b
jne 0x14005772b
cmp byte [r8 + 1], r9b
cmove edx, r14d
movzx ecx, dl
movzx eax, r9b
movzx r9d, byte [r8]
xor rcx, rax
shr edx, 8
inc r8
xor edx, dword [r15 + rcx*4]
test r9b, r9b
jne 0x140057718
mov rcx, qword [0x14033c3e8]
not edx
add rcx, 0x41b8
call fcn.140038d60
mov qword [rbx + 0x88], rax
add rdi, 0x24
sub rsi, 1
jne 0x1400575e0
mov r15, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
mov rbx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400ee850
add rsp, 0x58
pop rsi
pop rbp
ret
Function at 0x14005ef50
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
sub rsp, 0x50
mov edi, r8d
mov rbx, rdx
mov rbp, rcx
xor r14d, r14d
nop word [rax + rax]
mov eax, dword [rbx]
mov dword [rsp + 0x20], eax
mov rax, qword [rbx + 0x18]
mov word [rsp + 0x32], r14w
test rax, rax
je 0x14005ef9d
mov eax, dword [rax]
mov dword [rsp + 0x24], eax
jmp 0x14005efa2
mov dword [rsp + 0x24], r14d
mov eax, dword [rbx + 0x10]
shr eax, 0xa
test al, 1
je 0x14005efcd
mov rax, qword [rbx + 0x88]
test rax, rax
je 0x14005efcd
mov rcx, qword [rax + 0x3b0]
test rcx, rcx
je 0x14005efcd
mov eax, dword [rcx + 0x10]
mov dword [rsp + 0x28], eax
jmp 0x14005efd2
mov dword [rsp + 0x28], r14d
mov eax, dword [rbx + 0xbc]
mov dword [rsp + 0x2c], eax
cmp qword [rbx + 0x20], r14
je 0x14005efec
movzx eax, byte [rbx + 0x60]
mov byte [rsp + 0x30], al
jmp 0x14005eff1
mov byte [rsp + 0x30], 0xff
cvttss2si ecx, dword [rbx + 0x48]
mov eax, dword [rbx + 8]
mov r8d, dword [rbp + 0x24]
and eax, 0x3fc20
mov dword [rsp + 0x34], eax
mov byte [rsp + 0x31], dil
cvttss2si eax, dword [rbx + 0x4c]
mov word [rsp + 0x38], cx
cvttss2si ecx, dword [rbx + 0x50]
mov word [rsp + 0x3a], ax
cvttss2si eax, dword [rbx + 0x54]
mov word [rsp + 0x3c], cx
cvttss2si ecx, dword [rbx + 0x58]
mov word [rsp + 0x3e], ax
cvttss2si eax, dword [rbx + 0x5c]
mov word [rsp + 0x40], cx
mov ecx, dword [rbp + 0x20]
mov word [rsp + 0x42], ax
cmp ecx, r8d
jne 0x14005f073
inc ecx
test r8d, r8d
je 0x14005f05e
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
add eax, r8d
jmp 0x14005f063
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
mov edx, ecx
lea rcx, [rbp + 0x20]
call fcn.140060bd0
movsxd rax, dword [rbp + 0x20]
mov rcx, qword [rbp + 0x28]
movups xmm0, xmmword [rsp + 0x20]
movups xmm1, xmmword [rsp + 0x30]
lea rdx, [rax + rax*8]
mov eax, dword [rsp + 0x40]
movups xmmword [rcx + rdx*4], xmm0
movups xmmword [rcx + rdx*4 + 0x10], xmm1
mov dword [rcx + rdx*4 + 0x20], eax
inc dword [rbp + 0x20]
mov rdx, qword [rbx + 0x20]
inc edi
test rdx, rdx
je 0x14005f0b3
mov r8d, edi
mov rcx, rbp
call fcn.14005ef50
mov rbx, qword [rbx + 0x28]
test rbx, rbx
jne 0x14005ef80
mov rbx, qword [rsp + 0x60]
mov rbp, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x70]
mov rdi, qword [rsp + 0x78]
add rsp, 0x50
pop r14
ret
Function at 0x140077160
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x38
mov rax, qword [0x14033c3e8]
mov rcx, qword [rax + 0x5028]
mov r9, qword [rax + 0x41d8]
movups xmm0, xmmword [r9 + 0x278]
movups xmmword [rcx + 0x170], xmm0
mov rax, qword [r9 + 0x2e0]
movups xmm0, xmmword [rcx + 0x150]
movss xmm4, dword [rcx + 0x150]
movss xmm3, dword [rcx + 0x154]
movss xmm2, dword [rcx + 0x158]
movss xmm1, dword [rcx + 0x15c]
movups xmmword [r9 + 0x278], xmm0
movss dword [rsp + 0x20], xmm4
movss dword [rsp + 0x24], xmm3
movss dword [rsp + 0x28], xmm2
movss dword [rsp + 0x2c], xmm1
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r9 + 0x2e0]
movups xmm0, xmmword [rsp + 0x20]
movsxd r8, dword [rax + 0x58]
mov rdx, qword [rax + 0x60]
add r8, r8
movups xmmword [rdx + r8*8 - 0x10], xmm0
movzx r8d, word [rcx + 0x232]
mov rcx, qword [rcx + 0x1a0]
mov rdx, qword [r9 + 0x2e0]
add rsp, 0x38
jmp fcn.14006d630

Function at 0x140077240
Capabilities:
Resolve function by parsing pe exports

Disassembly:
sub rsp, 0x38
mov rax, qword [0x14033c3e8]
mov rcx, qword [rax + 0x5028]
mov r10, qword [rax + 0x41d8]
movsxd rax, dword [rcx + 0x74]
movups xmm0, xmmword [rcx + 0x170]
movss xmm4, dword [rcx + 0x170]
movss xmm3, dword [rcx + 0x174]
movss xmm2, dword [rcx + 0x178]
movss xmm1, dword [rcx + 0x17c]
movss dword [rsp + 0x20], xmm4
movss dword [rsp + 0x24], xmm3
movss dword [rsp + 0x28], xmm2
movss dword [rsp + 0x2c], xmm1
imul r9, rax, 0x70
mov rax, qword [r10 + 0x2e0]
add r9, qword [rcx + 0x18]
movups xmmword [r10 + 0x278], xmm0
movss dword [rax + 0x88], xmm4
movss dword [rax + 0x8c], xmm3
movss dword [rax + 0x90], xmm2
movss dword [rax + 0x94], xmm1
mov rax, qword [r10 + 0x2e0]
movups xmm0, xmmword [rsp + 0x20]
movsxd r8, dword [rax + 0x58]
mov rdx, qword [rax + 0x60]
add r8, r8
movups xmmword [rdx + r8*8 - 0x10], xmm0
movzx r8d, word [r9 + 0x5c]
mov rdx, qword [r10 + 0x2e0]
mov rcx, qword [rcx + 0x1a0]
add rsp, 0x38
jmp fcn.14006d630
Function at 0x14009a830
Capabilities:
Log keystrokes via polling

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x90
mov rax, qword [0x140154e70]
xor rax, rsp
mov qword [rsp + 0x80], rax
xor r14d, r14d
movabs r15, 0xe38e38e38e38e39
nop word [rax + rax]
mov ecx, r14d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x14009aa1e
xor ebp, ebp
mov r9, qword [0x140337cc8]
mov rcx, r9
mov r8, qword [0x140337cc0]
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
je 0x14009aa1e
xor r10d, r10d
xor esi, esi
nop word [rax + rax]
mov rcx, r9
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r10, rdx
ja 0x14009a9f2
lea rbx, [rsi + r8]
mov rdx, rbx
lea rcx, [rsp + 0x30]
call fcn.140009220
movsxd rdi, dword [rbx + 0x20]
mov dword [rsp + 0x50], edi
mov ecx, dword [rbx + 0x24]
mov dword [rsp + 0x54], ecx
movups xmm0, xmmword [rbx + 0x28]
movups xmmword [rsp + 0x58], xmm0
mov rax, qword [rbx + 0x38]
mov qword [rsp + 0x68], rax
mov rax, qword [rbx + 0x40]
mov qword [rsp + 0x70], rax
cmp r14d, ecx
jne 0x14009a9da
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
mov rbx, rax
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
cmp rbx, 0x989680
jne 0x14009a945
imul rdx, rax, 0x64
jmp 0x14009a961
cqo
idiv rbx
imul rcx, rax, 0x3b9aca00
imul rax, rdx, 0x3b9aca00
cqo
idiv rbx
lea rdx, [rax + rcx]
mov qword [rsp + 0x68], rdx
imul rcx, rdi, 0x3b9aca00
add rcx, rdx
mov qword [rsp + 0x70], rcx
mov rbx, qword [0x140337cb0]
cmp rbx, qword [0x140337cb8]
je 0x14009a9c5
lea rdx, [rsp + 0x30]
mov rcx, rbx
call fcn.140009220
mov eax, dword [rsp + 0x50]
mov dword [rbx + 0x20], eax
mov eax, dword [rsp + 0x54]
mov dword [rbx + 0x24], eax
movups xmm0, xmmword [rsp + 0x58]
movups xmmword [rbx + 0x28], xmm0
mov rax, qword [rsp + 0x68]
mov qword [rbx + 0x38], rax
mov rax, qword [rsp + 0x70]
mov qword [rbx + 0x40], rax
add qword [0x140337cb0], 0x48
jmp 0x14009a9da
lea r8, [rsp + 0x30]
mov rdx, rbx
lea rcx, [0x140337ca8]
call fcn.14009d520
nop
lea rcx, [rsp + 0x30]
call fcn.14000a8f0
mov r9, qword [0x140337cc8]
mov r8, qword [0x140337cc0]
inc ebp
add rsi, 0x48
movsxd r10, ebp
mov rcx, r9
sub rcx, r8
mov rax, r15
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
cmp r10, rdx
jb 0x14009a8c0
inc r14d
cmp r14d, 0x100
jl 0x14009a870
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.1400ee850
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rdi
ret
Function at 0x1400a5510
Capabilities:
Enumerate processes

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x270
mov rax, qword [0x140154e70]
xor rax, rsp
mov qword [rsp + 0x260], rax
xor edx, edx
mov rbx, rcx
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rdi, rax
cmp rax, 0xffffffffffffffff
je 0x1400a55ee
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x238
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
je 0x1400a55e5
nop dword [rax + rax]
lea rcx, [rsp + 0x4c]
mov rax, 0xffffffffffffffff
nop dword [rax]
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400a5580
cmp qword [rbx + 0x18], 8
mov r8, rbx
mov rdx, qword [rbx + 0x10]
jb 0x1400a559b
mov r8, qword [rbx]
cmp rdx, rax
jne 0x1400a55d3
lea rax, [rsp + 0x4c]
test rdx, rdx
je 0x1400a55c6
lea rcx, [rsp + 0x4c]
sub r8, rcx
movzx ecx, word [r8 + rax]
cmp cx, word [rax]
jne 0x1400a55d3
add rax, 2
sub rdx, 1
jne 0x1400a55b2
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov al, 1
jmp 0x1400a55f0
lea rdx, [rsp + 0x20]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x1400a5570
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor al, al
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.1400ee850
mov rbx, qword [rsp + 0x280]
add rsp, 0x270
pop rdi
ret
Function at 0x1400a6ff0
Capabilities:
Get file attributes
Set file attributes

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0xa0
mov rsi, rdx
mov rbx, rcx
lea rdx, [rsp + 0x60]
lea rcx, [0x140337d18]
call fcn.1400042c0
nop
mov rdx, rbx
cmp qword [rbx + 0x18], 0x10
jb 0x1400a7027
mov rdx, qword [rbx]
mov r8, qword [rbx + 0x10]
mov rcx, rax
call fcn.140009050
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov edi, eax
lea rcx, [rsp + 0x20]
call fcn.14000a8f0
nop
lea rcx, [rsp + 0x60]
call fcn.14000a8f0
mov eax, edi
and eax, 0xfffffffe
or edi, 1
cmp byte [rsi], 0
cmove edi, eax
lea rdx, [rsp + 0x80]
lea rcx, [0x140337d18]
call fcn.1400042c0
nop
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1400a70c7
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.140009050
xorps xmm0, xmm0
movups xmmword [rsp + 0x40], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x50], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x50], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x40]
cmp qword [rsp + 0x58], 0x10
cmovae rcx, qword [rsp + 0x40]
mov edx, edi
call qword [sym.imp.KERNEL32.dll_SetFileAttributesA]
test eax, eax
setne bl
lea rcx, [rsp + 0x40]
call fcn.14000a8f0
nop
lea rcx, [rsp + 0x80]
call fcn.14000a8f0
movzx eax, bl
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret

Function at 0x1400a7160
Capabilities:
Get file attributes

Disassembly:
push rbx
sub rsp, 0x60
mov rbx, rcx
lea rdx, [rsp + 0x40]
lea rcx, [0x140337d18]
call fcn.1400042c0
nop
mov r8, qword [rbx + 0x10]
cmp qword [rbx + 0x18], 0x10
jb 0x1400a7189
mov rbx, qword [rbx]
mov rdx, rbx
mov rcx, rax
call fcn.140009050
xorps xmm0, xmm0
movups xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x30], xmm1
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x30], xmm1
mov qword [rax + 0x10], 0
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
lea rcx, [rsp + 0x20]
cmp qword [rsp + 0x38], 0x10
cmovae rcx, qword [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov ebx, eax
and bl, 1
lea rcx, [rsp + 0x20]
call fcn.14000a8f0
nop
lea rcx, [rsp + 0x40]
call fcn.14000a8f0
movzx eax, bl
add rsp, 0x60
pop rbx
ret

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

Disassembly:
movabs rax, 0xcbf29ce484222325
mov r9d, 0
sub r8, rdx
je 0x1400a7ff4
movabs r10, 0x100000001b3
nop
movzx ecx, byte [r9 + rdx]
inc r9
xor rax, rcx
imul rax, r10
cmp r9, r8
jb 0x1400a7fe0
ret
Function at 0x1400ac070
Capabilities:
Validate payment card number using luhn algorithm

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov esi, edx
mov dword [rcx + 0x74], 0
mov rbx, rcx
mov edi, 0x7fffffff
movsx ecx, byte [rbx + 0x78]
lea eax, [rcx - 0x30]
cmp al, 9
ja 0x1400ac13c
lea r8d, [rcx - 0x30]
cmp r8d, 0xffffffff
je 0x1400ac13c
mov r9d, dword [rbx + 0x74]
mov ecx, 0x7fffffff
sub ecx, r8d
mov eax, 0x66666667
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add edx, eax
cmp r9d, edx
jg 0x1400ac155
lea eax, [r9 + r9*4]
dec edi
lea ecx, [r8 + rax*2]
mov rax, qword [rbx]
mov dword [rbx + 0x74], ecx
mov rcx, qword [rbx + 0x10]
cmp rax, rcx
je 0x1400ac12c
cmp byte [rax], 0x5c
jne 0x1400ac126
lea rdx, [rax + 1]
cmp rdx, rcx
je 0x1400ac126
mov r8d, dword [rbx + 0x80]
test r8b, 8
jne 0x1400ac112
movzx ecx, byte [rdx]
sub cl, 0x28
cmp cl, 1
jbe 0x1400ac123
test r8b, 0x10
jne 0x1400ac126
movzx ecx, byte [rdx]
sub cl, 0x7b
test cl, 0xfd
jne 0x1400ac126
mov rax, rdx
inc rax
mov qword [rbx], rax
mov rcx, rbx
call fcn.1400a8e70
test edi, edi
jne 0x1400ac090
mov rbx, qword [rsp + 0x30]
cmp edi, 0x7fffffff
mov rsi, qword [rsp + 0x38]
setne al
add rsp, 0x20
pop rdi
ret
mov edx, esi
call fcn.1400a8e60
int3
Function at 0x1400cab70
Capabilities:
Create process on windows
Enumerate processes
Terminate process

Disassembly:
push rbx
sub rsp, 0x2c0
mov rax, qword [0x140154e70]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
xorps xmm0, xmm0
lea rdx, str.DeadByDaylight_Win64_Shipping.exe
xorps xmm1, xmm1
lea rcx, [rsp + 0x50]
mov r8d, 0x21
movups xmmword [rsp + 0x50], xmm0
movdqu xmmword [rsp + 0x60], xmm1
call fcn.14000eef0
lea rcx, [rsp + 0x50]
call fcn.1400a5510
lea rcx, [rsp + 0x50]
movzx ebx, al
call fcn.14000a880
test bl, bl
je 0x1400cad7f
mov r9d, 4
lea r8, str.Continue_
lea rdx, str.This_Will_Close_And_Reopen_Dead_By_Daylight.
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
cmp eax, 7
je 0x1400cada9
xorps xmm0, xmm0
mov qword [rsp + 0x40], 0
mov r8d, 0x21
mov qword [rsp + 0x48], 0
lea rdx, str.DeadByDaylight_Win64_Shipping.exe
lea rcx, [rsp + 0x30]
movups xmmword [rsp + 0x30], xmm0
call fcn.14000eef0
xor edx, edx
lea ecx, [rdx + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rbx, rax
cmp rax, 0xffffffffffffffff
jne 0x1400cac44
xor r8d, r8d
jmp 0x1400cad4e
lea rdx, [rsp + 0x70]
mov dword [rsp + 0x70], 0x238
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32FirstW]
test eax, eax
jne 0x1400cac6f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r8d, r8d
jmp 0x1400cad4e
mov qword [rsp + 0x2d0], rbp
mov rbp, qword [rsp + 0x30]
mov qword [rsp + 0x2d8], rsi
mov rsi, qword [rsp + 0x48]
mov qword [rsp + 0x2e0], rdi
mov rdi, qword [rsp + 0x40]
nop word [rax + rax]
lea rcx, [rsp + 0x9c]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], 0
jne 0x1400cacb0
cmp rsi, 8
lea r8, [rsp + 0x30]
cmovae r8, rbp
cmp rdi, rax
jne 0x1400cad14
lea rax, [rsp + 0x9c]
mov rdx, rdi
test rdi, rdi
je 0x1400cad04
lea rcx, [rsp + 0x9c]
sub r8, rcx
nop word [rax + rax]
movzx ecx, word [r8 + rax]
cmp cx, word [rax]
jne 0x1400cad14
add rax, 2
sub rdx, 1
jne 0x1400cacf0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov r8d, dword [rsp + 0x78]
jmp 0x1400cad36
lea rdx, [rsp + 0x70]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32NextW]
test eax, eax
jne 0x1400caca0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
xor r8d, r8d
mov rsi, qword [rsp + 0x2d8]
mov rbp, qword [rsp + 0x2d0]
mov rdi, qword [rsp + 0x2e0]
xor edx, edx
lea ecx, [rdx + 1]
call qword [sym.imp.KERNEL32.dll_OpenProcess]
lea rcx, [rsp + 0x30]
mov rbx, rax
call fcn.14000a880
test rbx, rbx
je 0x1400cad7f
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [rsp + 0x28], 0xa
lea r8, str.steam:__rungameid_381210
xor r9d, r9d
mov qword [rsp + 0x20], 0
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteA]
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1400ee850
add rsp, 0x2c0
pop rbx
ret
Function at 0x1400cb510
Capabilities:
Open clipboard
Read clipboard data

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x30
mov rbx, rcx
xor eax, eax
mov dword [rsp + 0x20], eax
xorps xmm0, xmm0
movups xmmword [rcx], xmm0
mov qword [rcx + 0x10], rax
mov qword [rcx + 0x18], 0xf
mov byte [rcx], al
mov dword [rsp + 0x20], 1
xor ecx, ecx
call qword [sym.imp.USER32.dll_OpenClipboard]
test eax, eax
je 0x1400cb5a4
mov ecx, 1
call qword [sym.imp.USER32.dll_GetClipboardData]
mov rdi, rax
test rax, rax
je 0x1400cb59e
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GlobalLock]
test rax, rax
je 0x1400cb59e
mov r8, 0xffffffffffffffff
nop dword [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400cb580
mov rdx, rax
mov rcx, rbx
call fcn.14000a9f0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GlobalUnlock]
call qword [sym.imp.USER32.dll_CloseClipboard]
mov rax, rbx
mov rbx, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret