joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400aab50
Capabilities:
Hash data using sha1

Disassembly:
push rbx
sub rsp, 0x20
mov rbx, rcx
cmp qword [rbx], 0
jne 0x1400aab7a
lea rcx, [0x1402a9178]
mov edx, 0x55
call fcn.1400043a0
mov rdx, rax
mov rcx, rbx
call fcn.140004500
xor eax, eax
mov qword [rbx + 8], rax
mov dword [rbx + 0x10], eax
mov rax, qword [rbx]
cmp dword [rax + 8], 0x50
jbe 0x1400aabe8
mov dword [rax + 0x150], 0x67452301
mov rax, qword [rbx]
cmp dword [rax + 8], 0x51
jbe 0x1400aabe8
mov dword [rax + 0x154], 0xefcdab89
mov rax, qword [rbx]
cmp dword [rax + 8], 0x52
jbe 0x1400aabe8
mov dword [rax + 0x158], 0x98badcfe
mov rax, qword [rbx]
cmp dword [rax + 8], 0x53
jbe 0x1400aabe8
mov dword [rax + 0x15c], 0x10325476
mov rax, qword [rbx]
cmp dword [rax + 8], 0x54
jbe 0x1400aabe8
mov dword [rax + 0x160], 0xc3d2e1f0
add rsp, 0x20
pop rbx
ret
call fcn.140108b80
int3

Function at 0x1401095c0
Capabilities:
Delete file

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x58
lea rbp, [rsp + 0x90]
xor eax, eax
mov qword [rbp - 0x40], rax
test rcx, rcx
je 0x1401095ec
add rcx, 0xc
mov rbx, rcx
jmp 0x1401095ee
xor ebx, ebx
mov qword [rbp - 0x40], rbx
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, rbx
mov qword [rbp - 0x48], rcx
lea rcx, [rbp - 0x70]
call fcn.140004f10
mov rcx, qword [rbp - 0x48]
call sub.KERNEL32.dll_DeleteFileW
mov ebx, eax
lea rcx, [rbp - 0x70]
call fcn.140004f60
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x40], rax
test ebx, ebx
setne bl
movzx ebx, bl
call fcn.140002476
mov dword [rax + 0xb0], esi
movzx eax, bl
add rsp, 0x58
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret

Function at 0x140109c10
Capabilities:
Get common file path

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0xa0]
xor eax, eax
mov qword [rbp - 0x40], rax
mov ebx, ecx
mov qword [rbp - 0x40], rdx
mov rsi, rdx
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov ecx, ebx
mov dword [rbp - 0x44], ecx
mov rdx, rsi
mov qword [rbp - 0x4c], rdx
lea rcx, [rbp - 0x78]
call fcn.140004f10
mov ecx, dword [rbp - 0x44]
mov rdx, qword [rbp - 0x4c]
call sub.KERNEL32.dll_GetCurrentDirectoryW
mov ebx, eax
lea rcx, [rbp - 0x78]
call fcn.140004f60
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x40], rax
call fcn.140002476
mov dword [rax + 0xb0], esi
mov eax, ebx
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x14010a910
Capabilities:
Create thread

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0xd0]
xor eax, eax
mov qword [rbp - 0x48], rax
mov rbx, rcx
mov rsi, rdx
mov rdi, r8
mov r14, r9
mov r15, qword [rbp + 0x38]
xor ecx, ecx
mov dword [rbp - 0x3c], ecx
mov byte [rbp - 0x4c], 0
lea rcx, [0x1402328e0]
call fcn.1401f6c90
mov qword [rbp - 0x58], rax
mov qword [rbp - 0x48], r15
mov rcx, rbx
mov rdx, rsi
mov r8, rdi
mov r9, r14
mov ebx, dword [rbp + 0x30]
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x68], rdx
mov qword [rbp - 0x70], r8
mov qword [rbp - 0x78], r9
mov dword [rsp + 0x20], ebx
mov qword [rsp + 0x28], r15
lea rcx, [rbp - 0xa0]
call fcn.140004f10
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x68]
mov r8, qword [rbp - 0x70]
mov r9, qword [rbp - 0x78]
call sub.KERNEL32.dll_CreateThread
mov rbx, rax
lea rcx, [rbp - 0xa0]
call fcn.140004f60
nop
xor eax, eax
mov qword [rbp - 0x48], rax
mov dword [rbp - 0x3c], 1
mov byte [rbp - 0x4c], 1
mov rax, qword [rbp - 0x58]
mov qword [rax + 8], rbx
mov rcx, rax
mov rax, rcx
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret

Function at 0x14010aa60
Capabilities:
Resume thread

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0xa0]
xor eax, eax
mov qword [rbp - 0x48], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1400e8c00
mov rcx, qword [rbp - 0x48]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x50], rcx
lea rcx, [rbp - 0x78]
call fcn.140004f10
mov rcx, qword [rbp - 0x50]
call sub.KERNEL32.dll_ResumeThread
mov ebx, eax
lea rcx, [rbp - 0x78]
call fcn.140004f60
nop
cmp byte [rbp - 0x40], 0
je 0x14010aad1
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1400e8c40
mov eax, ebx
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret

Function at 0x14010af10
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0xb0]
xor eax, eax
mov qword [rbp - 0x40], rax
mov rbx, rcx
mov rsi, rdx
mov edi, r8d
mov qword [rbp - 0x40], r9
mov r14, r9
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov r15, qword [rbp + 0x30]
mov qword [rsp + 0x20], r15
mov rcx, rbx
mov qword [rbp - 0x4c], rcx
mov rdx, rsi
mov qword [rbp - 0x54], rdx
mov r8d, edi
mov dword [rbp - 0x44], r8d
mov r9, r14
mov qword [rbp - 0x5c], r9
lea rcx, [rbp - 0x88]
call fcn.140004f10
mov rcx, qword [rbp - 0x4c]
mov rdx, qword [rbp - 0x54]
mov r8d, dword [rbp - 0x44]
mov r9, qword [rbp - 0x5c]
call sub.KERNEL32.dll_WriteFile
mov ebx, eax
lea rcx, [rbp - 0x88]
call fcn.140004f60
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x40], rax
call fcn.140002476
mov dword [rax + 0xb0], esi
mov eax, ebx
add rsp, 0x78
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x14010afd0
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x88
lea rbp, [rsp + 0xc0]
xor eax, eax
mov qword [rbp - 0x48], rax
mov rbx, rdx
mov esi, r8d
mov rdi, r9
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1400e8c00
mov rcx, qword [rbp - 0x48]
mov r14, qword [rcx + 8]
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov r15, qword [rbp + 0x30]
mov qword [rsp + 0x20], r15
mov rcx, r14
mov qword [rbp - 0x54], rcx
mov rdx, rbx
mov qword [rbp - 0x5c], rdx
mov r8d, esi
mov dword [rbp - 0x4c], r8d
mov r9, rdi
mov qword [rbp - 0x64], r9
lea rcx, [rbp - 0x90]
call fcn.140004f10
mov rcx, qword [rbp - 0x54]
mov rdx, qword [rbp - 0x5c]
mov r8d, dword [rbp - 0x4c]
mov r9, qword [rbp - 0x64]
call sub.KERNEL32.dll_WriteFile
mov ebx, eax
lea rcx, [rbp - 0x90]
call fcn.140004f60
call sub.KERNEL32.dll_GetLastError
mov esi, eax
cmp byte [rbp - 0x40], 0
je 0x14010b08d
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1400e8c40
call fcn.140002476
mov dword [rax + 0xb0], esi
mov eax, ebx
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret

Function at 0x14010b0f0
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x88
lea rbp, [rsp + 0xc0]
xorps xmm4, xmm4
movaps xmmword [rbp - 0x50], xmm4
xor eax, eax
mov qword [rbp - 0x40], rax
mov rsi, rdx
mov edi, r8d
mov rbx, r9
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1400e8c00
nop
mov qword [rbp - 0x50], rbx
mov rcx, qword [rbp - 0x48]
mov r14, qword [rcx + 8]
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov r15, qword [rbp + 0x30]
mov qword [rsp + 0x20], r15
mov rcx, r14
mov qword [rbp - 0x5c], rcx
mov rdx, rsi
mov qword [rbp - 0x64], rdx
mov r8d, edi
mov dword [rbp - 0x54], r8d
mov r9, rbx
mov qword [rbp - 0x6c], r9
lea rcx, [rbp - 0x98]
call fcn.140004f10
mov rcx, qword [rbp - 0x5c]
mov rdx, qword [rbp - 0x64]
mov r8d, dword [rbp - 0x54]
mov r9, qword [rbp - 0x6c]
call sub.KERNEL32.dll_WriteFile
mov ebx, eax
lea rcx, [rbp - 0x98]
call fcn.140004f60
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor ecx, ecx
mov qword [rbp - 0x50], rcx
cmp byte [rbp - 0x40], 0
je 0x14010b1bf
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1400e8c40
call fcn.140002476
mov dword [rax + 0xb0], esi
mov eax, ebx
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x1401dac20
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x38
cmp r8d, 8
jge 0x1401dacbd
xor eax, eax
cmp r8d, 4
jl 0x1401dac71
add r8d, 0xfffffffc
movsx r10, word [rcx + rax*2]
movsx r9, dx
cmp r10d, r9d
je 0x1401dacb8
nop dword [rax]
movsx r10, word [rcx + rax*2 + 2]
cmp r10d, r9d
je 0x1401dacb1
movsx r10, word [rcx + rax*2 + 4]
cmp r10d, r9d
je 0x1401daca9
movsx r10, word [rcx + rax*2 + 6]
cmp r10d, r9d
je 0x1401daca1
add rax, 4
test r8d, r8d
jle 0x1401dae9a
movsx r9, dx
nop
dec r8d
movsx rdx, word [rcx + rax*2]
cmp edx, r9d
je 0x1401dacb8
inc rax
test r8d, r8d
jg 0x1401dac80
jmp 0x1401dae9a
add eax, 3
jmp 0x1401dae95
add eax, 2
jmp 0x1401dae95
inc eax
jmp 0x1401dae95
jmp 0x1401dae95
movsx r9, dx
movd xmm0, r9d
punpcklwd xmm0, xmm0
pshufd xmm0, xmm0, 0
mov rax, rcx
lea edx, [r8 - 8]
movsxd rdx, edx
add rdx, rdx
lea r10, [rax + rdx]
movups xmm1, xmmword [rax]
pcmpeqw xmm1, xmm0
movaps xmmword [rsp + 0x20], xmm1
xorps xmm2, xmm2
pcmpeqw xmm1, xmm2
pmovmskb r9d, xmm1
cmp r9d, 0xffff
jne 0x1401dadd6
add rax, 0x10
cmp rax, r10
jbe 0x1401dace0
mov eax, r8d
test al, 7
je 0x1401dae9a
movups xmm1, xmmword [r10]
pcmpeqw xmm0, xmm1
movaps xmmword [rsp + 0x20], xmm0
xorps xmm1, xmm1
pcmpeqw xmm0, xmm1
pmovmskb ecx, xmm0
cmp ecx, 0xffff
je 0x1401dae9a
mov rax, qword [rsp + 0x20]
mov qword [rsp + 8], rax
movzx eax, word [rsp + 8]
shr eax, 0xf
movzx ecx, word [rsp + 0xa]
shr ecx, 0xf
add ecx, ecx
or eax, ecx
movzx ecx, word [rsp + 0xc]
shr ecx, 0xf
shl ecx, 2
or ecx, eax
mov eax, ecx
movzx ecx, word [rsp + 0xe]
shr ecx, 0xf
shl ecx, 3
or ecx, eax
mov eax, ecx
mov rcx, qword [rsp + 0x28]
mov qword [rsp], rcx
movzx ecx, word [rsp]
shr ecx, 0xf
movzx r8d, word [rsp + 2]
shr r8d, 0xf
add r8d, r8d
or ecx, r8d
movzx r8d, word [rsp + 4]
shr r8d, 0xf
shl r8d, 2
or r8d, ecx
mov ecx, r8d
movzx r8d, word [rsp + 6]
shr r8d, 0xf
shl r8d, 3
or r8d, ecx
mov ecx, r8d
shl ecx, 4
or eax, ecx
jne 0x1401dae8c
mov ecx, 0x20
jmp 0x1401dae8f
mov rdx, qword [rsp + 0x20]
mov qword [rsp + 0x18], rdx
movzx edx, word [rsp + 0x18]
shr edx, 0xf
movzx r8d, word [rsp + 0x1a]
shr r8d, 0xf
add r8d, r8d
or edx, r8d
movzx r8d, word [rsp + 0x1c]
shr r8d, 0xf
shl r8d, 2
or r8d, edx
mov edx, r8d
movzx r8d, word [rsp + 0x1e]
shr r8d, 0xf
shl r8d, 3
or r8d, edx
mov edx, r8d
mov r8, qword [rsp + 0x28]
mov qword [rsp + 0x10], r8
movzx r8d, word [rsp + 0x10]
shr r8d, 0xf
movzx r10d, word [rsp + 0x12]
shr r10d, 0xf
add r10d, r10d
or r8d, r10d
movzx r10d, word [rsp + 0x14]
shr r10d, 0xf
shl r10d, 2
or r10d, r8d
mov r8d, r10d
movzx r10d, word [rsp + 0x16]
shr r10d, 0xf
shl r10d, 3
or r10d, r8d
mov r8d, r10d
shl r8d, 4
or edx, r8d
jne 0x1401dae7d
mov r8d, 0x20
jmp 0x1401dae81
bsf r8d, edx
sub rax, rcx
shr rax, 1
add eax, r8d
jmp 0x1401dae95
bsf ecx, eax
shr rdx, 1
lea eax, [rdx + rcx]
add rsp, 0x38
ret
mov eax, 0xffffffff
add rsp, 0x38
ret
Function at 0x1401dee90
Capabilities:
Hash data using murmur3

Disassembly:
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x38
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x68], edx
mov qword [rsp + 0x70], r8
mov qword [rsp + 0x78], r9
mov ebx, dword [rsp + 0x68]
lea rcx, [rsp + 0x70]
cmp qword [rsp + 0x30], 0
jne 0x1401deedc
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x30], 0
jne 0x1401deedc
xor esi, esi
jmp 0x1401deee7
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov esi, eax
xor ecx, ecx
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x78]
cmp qword [rsp + 0x28], 0
jne 0x1401def14
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x28], 0
jne 0x1401def14
xor edi, edi
jmp 0x1401def1f
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov edi, eax
lea rbp, [0x140234e28]
cmp qword [rbp - 8], 0
jne 0x1401def92
mov eax, dword [rbp]
imul ecx, ebx, 0xc2b2ae3d
lea eax, [rax + rcx + 0x165667bd]
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, esi, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, edi, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
mov ecx, eax
shr ecx, 0xf
xor ecx, eax
imul eax, ecx, 0x85ebca77
mov ecx, eax
shr ecx, 0xd
xor ecx, eax
imul eax, ecx, 0xc2b2ae3d
mov ecx, eax
shr ecx, 0x10
xor eax, ecx
add rsp, 0x38
pop rbx
pop rbp
pop rsi
pop rdi
ret
call fcn.14000113f
jmp 0x1401def2d
Function at 0x1401defa0
Capabilities:
Hash data using murmur3

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x38
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x98], r9
mov ebx, dword [rsp + 0x88]
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0x30], 0
jne 0x1401df003
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x30], 0
jne 0x1401df003
xor esi, esi
jmp 0x1401df00e
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov esi, eax
xor ecx, ecx
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x98]
cmp qword [rsp + 0x28], 0
jne 0x1401df03e
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x28], 0
jne 0x1401df03e
xor edi, edi
jmp 0x1401df049
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov edi, eax
mov ebp, dword [rsp + 0xa0]
mov r14d, dword [rsp + 0xa8]
lea rax, [rsp + 0xb0]
mov r15d, dword [rax]
mov r13, qword [rax]
shr r13, 0x20
xor r15d, r13d
mov r13d, dword [rsp + 0xb8]
lea r12, [0x140234e28]
cmp qword [r12 - 8], 0
jne 0x1401df15a
mov eax, dword [r12]
imul ecx, ebx, 0x85ebca77
lea ecx, [rax + rcx + 0x24234428]
rol ecx, 0xd
imul ecx, ecx, 0x9e3779b1
rol ecx, 1
imul edx, esi, 0x85ebca77
lea edx, [rax + rdx - 0x7a143589]
rol edx, 0xd
imul edx, edx, 0x9e3779b1
rol edx, 7
add ecx, edx
imul edx, edi, 0x85ebca77
add edx, eax
rol edx, 0xd
imul edx, edx, 0x9e3779b1
rol edx, 0xc
add ecx, edx
imul edx, ebp, 0x85ebca77
lea eax, [rax + rdx + 0x61c8864f]
rol eax, 0xd
imul eax, eax, 0x9e3779b1
rol eax, 0x12
add eax, ecx
imul ecx, r14d, 0xc2b2ae3d
lea eax, [rax + rcx + 0x1c]
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, r15d, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, r13d, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
mov ecx, eax
shr ecx, 0xf
xor ecx, eax
imul eax, ecx, 0x85ebca77
mov ecx, eax
shr ecx, 0xd
xor ecx, eax
imul eax, ecx, 0xc2b2ae3d
mov ecx, eax
shr ecx, 0x10
xor eax, ecx
add rsp, 0x38
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14000113f
jmp 0x1401df088
Function at 0x1401df170
Capabilities:
Hash data using murmur3

Disassembly:
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x38
xor eax, eax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x88], edx
mov qword [rsp + 0x90], r8
mov qword [rsp + 0x98], r9
mov rbx, qword [rsp + 0xb0]
mov esi, dword [rsp + 0x88]
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0x30], 0
jne 0x1401df1db
mov rcx, qword [rcx]
mov qword [rsp + 0x30], rcx
lea rcx, [rsp + 0x30]
cmp qword [rsp + 0x30], 0
jne 0x1401df1db
xor edi, edi
jmp 0x1401df1e6
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov edi, eax
xor ecx, ecx
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x98]
cmp qword [rsp + 0x28], 0
jne 0x1401df216
mov rcx, qword [rcx]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x28]
cmp qword [rsp + 0x28], 0
jne 0x1401df216
xor ebp, ebp
jmp 0x1401df221
mov rcx, qword [rcx]
mov rax, qword [rcx]
call qword [rax + 0x28]
mov ebp, eax
mov r14d, dword [rsp + 0xa0]
mov r15d, dword [rsp + 0xa8]
mov rcx, rbx
call fcn.140155d40
mov ebx, eax
mov r13d, dword [rsp + 0xb8]
lea r12, [0x140234e28]
cmp qword [r12 - 8], 0
jne 0x1401df328
mov eax, dword [r12]
imul ecx, esi, 0x85ebca77
lea ecx, [rax + rcx + 0x24234428]
rol ecx, 0xd
imul ecx, ecx, 0x9e3779b1
rol ecx, 1
imul edx, edi, 0x85ebca77
lea edx, [rax + rdx - 0x7a143589]
rol edx, 0xd
imul edx, edx, 0x9e3779b1
rol edx, 7
add ecx, edx
imul edx, ebp, 0x85ebca77
add edx, eax
rol edx, 0xd
imul edx, edx, 0x9e3779b1
rol edx, 0xc
add ecx, edx
imul edx, r14d, 0x85ebca77
lea eax, [rax + rdx + 0x61c8864f]
rol eax, 0xd
imul eax, eax, 0x9e3779b1
rol eax, 0x12
add eax, ecx
imul ecx, r15d, 0xc2b2ae3d
lea eax, [rax + rcx + 0x1c]
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, ebx, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
imul ecx, r13d, 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
mov ecx, eax
shr ecx, 0xf
xor ecx, eax
imul eax, ecx, 0x85ebca77
mov ecx, eax
shr ecx, 0xd
xor ecx, eax
imul eax, ecx, 0xc2b2ae3d
mov ecx, eax
shr ecx, 0x10
xor eax, ecx
add rsp, 0x38
pop rbx
pop rbp
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.14000113f
jmp 0x1401df256
Function at 0x180003a20
Capabilities:
Manipulate console buffer

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x2f0
mov rax, qword [0x1800ad828]
xor rax, rsp
mov qword [rsp + 0x2e0], rax
lea edi, [r8 - 0xc]
mov r15, r9
mov r12, rdx
mov rsi, rcx
cmp r8d, edi
jbe case.0x180003aa3.0
mov r14, qword [rsp + 0x48]
lea ebx, [r8 - 0x51]
movzx ebp, byte [rsp + 0x30]
lea rdx, [0x180000000]
mov r8d, 0x50
xor r13d, r13d
lea r10d, [r8 - 0x45]
lea r11d, [r8 - 1]
lea r9d, [r8 - 0x4e]
nop dword [rax]
cmp ebx, 0x19
ja case.0x180003aa3.2
mov ecx, dword [rdx + rbx*4 + 0x3c8c]
add rcx, rdx
jmp rcx
mov word [rsp + 0x3c], r8w
jmp case.0x180003aa3.2
mov r9d, 1
mov dword [rsp + 0x44], 0xb004f
xor r8d, r8d
mov qword [rsp + 0x20], r13
mov ecx, 0xc0000000
lea edx, [r9 + 2]
call qword [sym.imp.KERNEL32.dll_CreateConsoleScreenBuffer]
mov r8d, 0x50
lea rdx, [0x180000000]
mov r14, rax
lea r9d, [r8 - 0x4e]
lea r10d, [r8 - 0x45]
lea r11d, [r8 - 1]
cmp rax, 0xffffffffffffffff
jne case.0x180003aa3.2
xor bpl, bpl
jmp case.0x180003aa3.2
mov r8, r15
lea rdx, [rsp + 0x50]
mov ecx, 0xe0
call fcn.18004cf30
test al, al
je 0x180003c57
mov eax, 0xa
mov word [rsp + 0x42], ax
jmp 0x180003c2f
mov word [rsp + 0x40], r13w
jmp case.0x180003aa3.2
mov dword [rsp + 0x38], r13d
jmp case.0x180003aa3.2
movsxd rax, dword [rsi]
add rax, rax
mov rax, qword [rdx + rax*8 + 0xad0d8]
mov qword [rsp + 0x48], rax
jmp case.0x180003aa3.2
mov dword [rsp + 0x3c], r13d
mov word [rsp + 0x3e], r9w
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x40], r13
jmp case.0x180003aa3.2
xor edx, edx
lea rcx, [rsp + 0x60]
mov r8d, 0x280
mov bpl, 1
call sub.VCRUNTIME140.dll_memset
jmp 0x180003c2f
mov ecx, r13d
lea rdx, [rsi + 8]
nop dword [rax]
nop dword [rax + rax]
lea eax, [rcx + 1]
inc ecx
mov byte [rdx], al
lea rdx, [rdx + 1]
cmp ecx, 0x20
jl 0x180003ba0
mov eax, r13d
lea rdx, [rsi + 0x28]
nop word [rax + rax]
lea ecx, [rax + 0x41]
inc eax
mov byte [rdx], cl
lea rdx, [rdx + 1]
cmp eax, 0x20
jl 0x180003bc0
jmp 0x180003c41
test bpl, bpl
je 0x180003c02
mov r9d, dword [rsp + 0x38]
lea rax, [rsp + 0x40]
mov r8d, dword [rsp + 0x3c]
lea rdx, [rsp + 0x60]
mov rcx, r14
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteConsoleOutputA]
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_CloseHandle]
movzx eax, word [r12]
lea r9, [rsp + 0x58]
mov word [rsp + 0x30], ax
lea rcx, [rsp + 0x30]
mov eax, dword [rsp + 0x50]
mov r8, rsi
mov edx, 0x78
mov dword [rsp + 0x58], eax
call fcn.180013fd0
mov byte [rsp + 0x48], al
mov r11d, 0x4f
lea r10d, [r11 - 0x44]
lea r9d, [r11 - 0x4d]
lea r8d, [r11 + 1]
lea rdx, [0x180000000]
dec ebx
lea eax, [rbx + 0x51]
cmp eax, edi
ja 0x180003a90
jmp case.0x180003aa3.0
mov byte [rsp + 0x48], r13b
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x2e0]
xor rcx, rsp
call fcn.180092fc0
mov rbx, qword [rsp + 0x340]
add rsp, 0x2f0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x180004070
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r13
push r14
push r15
sub rsp, 0x260
mov rax, qword [0x1800ad828]
xor rax, rsp
mov qword [rsp + 0x250], rax
lea esi, [rdx + 6]
mov r14, r9
mov r15, r8
mov rdi, rcx
cmp edx, esi
jae case.0x1800040e3.14
lea ebx, [rdx - 0x67]
mov r13d, 0xffffffff
movabs rdx, 0x7fffffffffffffff
lea rbp, [0x180000000]
nop dword [rax]
cmp ebx, 0xe
ja case.0x1800040e3.2
mov ecx, dword [rbp + rbx*4 + 0x41bc]
add rcx, rbp
jmp rcx
cmp qword [r15], r13
jae 0x18000416e
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm0
mov qword [rdi + 0x20], rax
mov rax, qword [r15]
mov qword [rdi], rax
mov qword [rdi + 0x10], rdx
jmp case.0x1800040e3.2
mov eax, dword [r14]
mov dword [rdi + 0x20], eax
mov dword [rsp + 0x30], 0
jmp case.0x1800040e3.2
xor r9d, r9d
mov qword [rsp + 0x20], 0
lea rdx, [rdi + 0x108]
xor r8d, r8d
lea ecx, [r9 + 0x45]
call fcn.1800548e0
jmp 0x180004155
mov edx, 0x104
mov qword [rdi], r14
lea rcx, [rsp + 0x40]
mov qword [rdi + 0x100], r15
call qword [sym.imp.KERNEL32.dll_GetSystemWow64DirectoryW]
movabs rdx, 0x7fffffffffffffff
inc ebx
lea eax, [rbx + 0x67]
cmp eax, esi
jb 0x1800040d0
jmp case.0x1800040e3.14
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__errno]
mov dword [rax], 0x16
mov eax, r13d
jmp 0x18000418d
mov eax, dword [r14]
cmp dword [rdi], eax
sete byte [rsp + 0x30]
mov eax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x250]
xor rcx, rsp
call fcn.180092fc0
lea r11, [rsp + 0x260]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop rdi
pop rsi
ret