joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14021b1e0
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push rdi
push rsi
push rbp
push rbx
push rax
xor eax, eax
mov qword [rsp], rax
mov r10, rdx
mov r11d, dword [rsp + 0x60]
mov edx, 0x55555556
mov eax, edx
imul r9d
mov eax, edx
shr eax, 0x1f
add eax, edx
lea eax, [rax + rax*2]
mov edx, r9d
sub edx, eax
sub r9d, edx
add r9d, r8d
xor eax, eax
xor ebx, ebx
lea rsi, [0x1408c84e0]
mov qword [rsp], rsi
cmp r8d, r9d
jge 0x14021b31f
movzx edi, r11b
test edi, edi
je 0x14021b25e
cmp ebx, 0x4c
jne 0x14021b25b
lea ebx, [rax + 1]
cdqe
mov word [rcx + rax*2], reloc.WS2_32.dll_listen
mov eax, ebx
lea ebx, [rax + 1]
cdqe
mov word [rcx + rax*2], 0xa
xor eax, eax
mov ebp, eax
mov eax, ebx
mov ebx, ebp
add ebx, 4
movsxd rbp, r8d
movzx r14d, byte [r10 + rbp]
and r14d, 0xfc
sar r14d, 2
movsxd r14, r14d
movzx r14d, byte [r14 + rsi]
movsxd r15, eax
mov word [rcx + r15*2], r14w
movzx ebp, byte [r10 + rbp]
and ebp, 3
shl ebp, 4
lea r14d, [r8 + 1]
movsxd r14, r14d
movzx r15d, byte [r10 + r14]
and r15d, 0xf0
sar r15d, 4
or ebp, r15d
movsxd rbp, ebp
movzx ebp, byte [rsi + rbp]
lea r15d, [rax + 1]
movsxd r15, r15d
mov word [rcx + r15*2], bp
movzx ebp, byte [r10 + r14]
and ebp, 0xf
shl ebp, 2
lea r14d, [r8 + 2]
movsxd r14, r14d
movzx r15d, byte [r10 + r14]
and r15d, 0xc0
sar r15d, 6
or ebp, r15d
movsxd rbp, ebp
movzx ebp, byte [rsi + rbp]
lea r15d, [rax + 2]
movsxd r15, r15d
mov word [rcx + r15*2], bp
movzx ebp, byte [r10 + r14]
and ebp, 0x3f
movsxd rbp, ebp
movzx ebp, byte [rsi + rbp]
lea r14d, [rax + 3]
movsxd r14, r14d
mov word [rcx + r14*2], bp
add eax, 4
add r8d, 3
cmp r8d, r9d
jl 0x14021b232
mov r8d, r9d
movzx edi, r11b
test edi, edi
je 0x14021b355
test edx, edx
je 0x14021b355
cmp ebx, 0x4c
jne 0x14021b355
mov r9d, eax
lea eax, [r9 + 1]
movsxd r9, r9d
mov word [rcx + r9*2], reloc.WS2_32.dll_listen
mov r9d, eax
lea eax, [r9 + 1]
movsxd r9, r9d
mov word [rcx + r9*2], 0xa
cmp edx, 1
je 0x14021b3e3
cmp edx, 2
jne 0x14021b43f
movsxd rdx, r8d
movzx edx, byte [r10 + rdx]
and edx, 0xfc
sar edx, 2
movsxd rdx, edx
movzx edx, byte [rdx + rsi]
movsxd r9, eax
mov word [rcx + r9*2], dx
movsxd rdx, r8d
movzx edx, byte [r10 + rdx]
and edx, 3
shl edx, 4
inc r8d
movsxd r8, r8d
movzx r9d, byte [r10 + r8]
and r9d, 0xf0
sar r9d, 4
or edx, r9d
movsxd rdx, edx
movzx edx, byte [rdx + rsi]
lea r9d, [rax + 1]
movsxd r9, r9d
mov word [rcx + r9*2], dx
movzx r10d, byte [r10 + r8]
and r10d, 0xf
shl r10d, 2
movsxd rdx, r10d
movzx edx, byte [rdx + rsi]
lea r8d, [rax + 2]
movsxd r8, r8d
mov word [rcx + r8*2], dx
jmp 0x14021b430
movsxd rdx, r8d
movzx edx, byte [r10 + rdx]
and edx, 0xfc
sar edx, 2
movsxd rdx, edx
movzx edx, byte [rdx + rsi]
movsxd r9, eax
mov word [rcx + r9*2], dx
movsxd rdx, r8d
movzx edx, byte [r10 + rdx]
and edx, 3
shl edx, 4
movsxd rdx, edx
movzx edx, byte [rdx + rsi]
lea r8d, [rax + 1]
movsxd r8, r8d
mov word [rcx + r8*2], dx
lea edx, [rax + 2]
movsxd rdx, edx
mov word [rcx + rdx*2], 0x3d
lea edx, [rax + 3]
movsxd rdx, edx
mov word [rcx + rdx*2], 0x3d
add eax, 4
xor ecx, ecx
mov qword [rsp], rcx
add rsp, 8
pop rbx
pop rbp
pop rsi
pop rdi
pop r14
pop r15
ret
Function at 0x140230010
Capabilities:
Hash data using murmur3

Disassembly:
push rdi
push rsi
push rbp
push rbx
sub rsp, 0x28
mov rbx, rcx
mov esi, dword [rbx + 0x1c]
mov edi, esi
and edi, 3
cmp esi, 4
jb 0x140230046
mov eax, dword [rbx]
rol eax, 1
mov ecx, dword [rbx + 4]
rol ecx, 7
add eax, ecx
mov ecx, dword [rbx + 8]
rol ecx, 0xc
add eax, ecx
mov ecx, dword [rbx + 0xc]
rol ecx, 0x12
add eax, ecx
jmp 0x14023005c
lea rbp, [0x140632e60]
cmp qword [rbp - 8], 0
jne 0x1402300cd
mov eax, dword [rbp]
add eax, 0x165667b1
lea eax, [rax + rsi*4]
test edi, edi
je 0x1402300a3
imul ecx, dword [rbx + 0x10], 0xc2b2ae3d
add eax, ecx
rol eax, 0x11
imul eax, eax, 0x27d4eb2f
cmp edi, 1
jbe 0x1402300a3
imul ecx, dword [rbx + 0x14], 0xc2b2ae3d
add ecx, eax
rol ecx, 0x11
imul eax, ecx, 0x27d4eb2f
cmp edi, 2
jbe 0x1402300a3
imul ecx, dword [rbx + 0x18], 0xc2b2ae3d
add ecx, eax
rol ecx, 0x11
imul eax, ecx, 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, 0x28
pop rbx
pop rbp
pop rsi
pop rdi
ret
call fcn.1400016e9
jmp 0x140230054

Function at 0x1402ca030
Capabilities:
Copy file

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x98
lea rbp, [rsp + 0xd0]
xorps xmm4, xmm4
movaps xmmword [rbp - 0x50], xmm4
xor eax, eax
mov qword [rbp - 0x40], rax
mov rbx, r8
mov rsi, r9
mov rdi, qword [rbp + 0x30]
mov qword [rbp - 0x40], rdi
test rdx, rdx
je 0x1402ca071
add rdx, 0xc
jmp 0x1402ca073
xor edx, edx
mov qword [rbp - 0x48], rdx
mov r14, rdx
test rcx, rcx
je 0x1402ca088
add rcx, 0xc
mov r15, rcx
jmp 0x1402ca08b
xor r15d, r15d
mov qword [rbp - 0x50], r15
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov qword [rsp + 0x20], rdi
mov edi, dword [rbp + 0x38]
mov dword [rsp + 0x28], edi
mov rcx, r15
mov qword [rbp - 0x58], rcx
mov rdx, r14
mov qword [rbp - 0x60], rdx
mov r8, rbx
mov qword [rbp - 0x68], r8
mov r9, rsi
mov qword [rbp - 0x70], r9
lea rcx, [rbp - 0x98]
call fcn.14000c190
mov rcx, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
mov r8, qword [rbp - 0x68]
mov r9, qword [rbp - 0x70]
call sub.KERNEL32.dll_CopyFileExW
mov ebx, eax
lea rcx, [rbp - 0x98]
call fcn.14000c1e0
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x50], rax
mov qword [rbp - 0x48], rax
mov qword [rbp - 0x40], rax
test ebx, ebx
setne bl
movzx ebx, bl
call fcn.1400046fb
mov dword [rax + 0x108], esi
movzx eax, bl
add rsp, 0x98
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x1402ca5a0
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 0x1402ca5cc
add rcx, 0xc
mov rbx, rcx
jmp 0x1402ca5ce
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.14000c190
mov rcx, qword [rbp - 0x48]
call sub.KERNEL32.dll_DeleteFileW
mov ebx, eax
lea rcx, [rbp - 0x70]
call fcn.14000c1e0
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.1400046fb
mov dword [rax + 0x108], 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 0x1402cadf0
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.14000c190
mov ecx, dword [rbp - 0x44]
mov rdx, qword [rbp - 0x4c]
call sub.KERNEL32.dll_GetCurrentDirectoryW
mov ebx, eax
lea rcx, [rbp - 0x78]
call fcn.14000c1e0
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x40], rax
call fcn.1400046fb
mov dword [rax + 0x108], 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 0x1402cbbc0
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, [0x14062a430]
call fcn.14057a6e0
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.14000c190
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.14000c1e0
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 0x1402cbd10
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.1402a4c40
mov rcx, qword [rbp - 0x48]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x50], rcx
lea rcx, [rbp - 0x78]
call fcn.14000c190
mov rcx, qword [rbp - 0x50]
call sub.KERNEL32.dll_ResumeThread
mov ebx, eax
lea rcx, [rbp - 0x78]
call fcn.14000c1e0
nop
cmp byte [rbp - 0x40], 0
je 0x1402cbd81
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1402a4c80
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 0x1402cc1c0
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.14000c190
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.14000c1e0
call sub.KERNEL32.dll_GetLastError
mov esi, eax
xor eax, eax
mov qword [rbp - 0x40], rax
call fcn.1400046fb
mov dword [rax + 0x108], 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 0x1402cd4b0
Capabilities:
Encrypt data using dpapi

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
mov ebx, edx
mov esi, r8d
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1402a4c40
mov rcx, qword [rbp - 0x48]
mov rdi, qword [rcx + 8]
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, rdi
mov qword [rbp - 0x58], rcx
mov edx, ebx
mov dword [rbp - 0x4c], edx
mov r8d, esi
mov dword [rbp - 0x50], r8d
lea rcx, [rbp - 0x80]
call fcn.14000c190
mov rcx, qword [rbp - 0x58]
mov edx, dword [rbp - 0x4c]
mov r8d, dword [rbp - 0x50]
call sub.CRYPT32.dll_CryptProtectMemory
mov ebx, eax
lea rcx, [rbp - 0x80]
call fcn.14000c1e0
call sub.KERNEL32.dll_GetLastError
mov esi, eax
test ebx, ebx
setne bl
movzx ebx, bl
cmp byte [rbp - 0x40], 0
je 0x1402cd551
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1402a4c80
call fcn.1400046fb
mov dword [rax + 0x108], esi
movzx eax, bl
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x1402cd5b0
Capabilities:
Encrypt data using dpapi

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
mov ebx, edx
mov esi, r8d
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1402a4c40
mov rcx, qword [rbp - 0x48]
mov rdi, qword [rcx + 8]
xor ecx, ecx
call sub.KERNEL32.dll_SetLastError
mov rcx, rdi
mov qword [rbp - 0x58], rcx
mov edx, ebx
mov dword [rbp - 0x4c], edx
mov r8d, esi
mov dword [rbp - 0x50], r8d
lea rcx, [rbp - 0x80]
call fcn.14000c190
mov rcx, qword [rbp - 0x58]
mov edx, dword [rbp - 0x4c]
mov r8d, dword [rbp - 0x50]
call sub.CRYPT32.dll_CryptUnprotectMemory
mov ebx, eax
lea rcx, [rbp - 0x80]
call fcn.14000c1e0
call sub.KERNEL32.dll_GetLastError
mov esi, eax
test ebx, ebx
setne bl
movzx ebx, bl
cmp byte [rbp - 0x40], 0
je 0x1402cd651
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1402a4c80
call fcn.1400046fb
mov dword [rax + 0x108], esi
movzx eax, bl
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x1403245b0
Capabilities:
Hash data via bcrypt

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x78
lea rbp, [rsp + 0xb0]
xorps xmm4, xmm4
movaps xmmword [rbp - 0x50], xmm4
xor eax, eax
mov qword [rbp - 0x40], rax
mov rbx, rdx
mov esi, r8d
mov edi, r9d
xorps xmm0, xmm0
movups xmmword [rbp - 0x48], xmm0
mov qword [rbp - 0x48], rcx
lea rdx, [rbp - 0x40]
cmp dword [rcx], ecx
call fcn.1402a4c40
nop
mov rdx, qword [rbx]
mov qword [rbp - 0x50], rdx
mov rcx, qword [rbp - 0x48]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x60], rcx
mov qword [rbp - 0x68], rdx
mov r8d, esi
mov dword [rbp - 0x54], r8d
mov r9d, edi
mov dword [rbp - 0x58], r9d
lea rcx, [rbp - 0x90]
call fcn.14000c190
mov rcx, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x68]
mov r8d, dword [rbp - 0x54]
mov r9d, dword [rbp - 0x58]
call sub.bcrypt.dll_BCryptHashData
mov ebx, eax
lea rcx, [rbp - 0x90]
call fcn.14000c1e0
nop
xor ecx, ecx
mov qword [rbp - 0x50], rcx
cmp byte [rbp - 0x40], 0
je 0x140324663
mov rcx, qword [rbp - 0x48]
cmp byte [rcx], cl
xor edx, edx
call fcn.1402a4c80
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 0x140332710
Capabilities:
Generate random numbers via winapi

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rdi
push rsi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0xa0]
mov r8d, edx
mov dword [rbp - 0x3c], r8d
mov rdx, rcx
mov qword [rbp - 0x48], rdx
xor ecx, ecx
mov qword [rbp - 0x50], rcx
mov r9d, 2
mov dword [rbp - 0x40], r9d
lea rcx, [rbp - 0x78]
call fcn.14000c190
mov r8d, dword [rbp - 0x3c]
mov rdx, qword [rbp - 0x48]
mov rcx, qword [rbp - 0x50]
mov r9d, dword [rbp - 0x40]
call sub.bcrypt.dll_BCryptGenRandom
mov ebx, eax
lea rcx, [rbp - 0x78]
call fcn.14000c1e0
mov ecx, ebx
test ecx, ecx
jne 0x140332786
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call fcn.140324ef0
mov rcx, rax
call fcn.14000c2f0
int3
Function at 0x14054a700
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x38
cmp r8d, 8
jge 0x14054a79d
xor eax, eax
cmp r8d, 4
jl 0x14054a751
add r8d, 0xfffffffc
movsx r10, word [rcx + rax*2]
movsx r9, dx
cmp r10d, r9d
je 0x14054a798
nop dword [rax]
movsx r10, word [rcx + rax*2 + 2]
cmp r10d, r9d
je 0x14054a791
movsx r10, word [rcx + rax*2 + 4]
cmp r10d, r9d
je 0x14054a789
movsx r10, word [rcx + rax*2 + 6]
cmp r10d, r9d
je 0x14054a781
add rax, 4
test r8d, r8d
jle 0x14054a97a
movsx r9, dx
nop
dec r8d
movsx rdx, word [rcx + rax*2]
cmp edx, r9d
je 0x14054a798
inc rax
test r8d, r8d
jg 0x14054a760
jmp 0x14054a97a
add eax, 3
jmp 0x14054a975
add eax, 2
jmp 0x14054a975
inc eax
jmp 0x14054a975
jmp 0x14054a975
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 0x14054a8b6
add rax, 0x10
cmp rax, r10
jbe 0x14054a7c0
mov eax, r8d
test al, 7
je 0x14054a97a
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 0x14054a97a
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 0x14054a96c
mov ecx, 0x20
jmp 0x14054a96f
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 0x14054a95d
mov r8d, 0x20
jmp 0x14054a961
bsf r8d, edx
sub rax, rcx
shr rax, 1
add eax, r8d
jmp 0x14054a975
bsf ecx, eax
shr rdx, 1
lea eax, [rdx + rcx]
add rsp, 0x38
ret
mov eax, 0xffffffff
add rsp, 0x38
ret
Function at 0x140559d40
Capabilities:
Enumerate pe sections

Disassembly:
sub rsp, 0x48
movaps xmmword [rsp + 0x30], xmm6
cmp r9d, 8
jge 0x140559d91
movzx r10d, dx
sub r8d, r10d
movzx eax, r8w
xor edx, edx
test r9d, r9d
jle 0x140559fbb
movsxd r8, edx
movzx r8d, word [rcx + r8*2]
sub r8d, r10d
movzx r8d, r8w
cmp r8d, eax
jle 0x140559d85
inc edx
cmp edx, r9d
jl 0x140559d65
jmp 0x140559fbb
mov eax, edx
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
ret
movzx r10d, dx
movd xmm0, r10d
punpcklwd xmm0, xmm0
pshufd xmm0, xmm0, 0
mov eax, r8d
sub eax, r10d
movzx eax, ax
movd xmm1, eax
punpcklwd xmm1, xmm1
pshufd xmm1, xmm1, 0
mov rax, rcx
add r9d, 0xfffffff8
mov edx, r9d
add rdx, rdx
lea r8, [rax + rdx]
movups xmm2, xmmword [case.0x140540731.104]
movaps xmm3, xmm1
psubw xmm3, xmm2
movups xmm4, xmmword [rax]
psubw xmm4, xmm0
movaps xmm5, xmm4
psubw xmm5, xmm2
movaps xmm6, xmm3
pcmpgtw xmm6, xmm5
pcmpeqw xmm4, xmm1
por xmm4, xmm6
movaps xmmword [rsp + 0x20], xmm4
xorps xmm5, xmm5
pcmpeqw xmm4, xmm5
pmovmskb r10d, xmm4
cmp r10d, 0xffff
jne 0x140559efb
add rax, 0x10
cmp rax, r8
jb 0x140559dd8
movups xmm4, xmmword [r8]
psubw xmm4, xmm0
movaps xmm0, xmm4
psubw xmm0, xmm2
pcmpgtw xmm3, xmm0
pcmpeqw xmm1, xmm4
por xmm1, xmm3
movaps xmmword [rsp + 0x20], xmm1
xorps xmm0, xmm0
pcmpeqw xmm0, xmm1
pmovmskb eax, xmm0
cmp eax, 0xffff
je 0x140559fbb
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
bsf ecx, eax
mov r8d, 0x20
test eax, eax
cmove ecx, r8d
mov eax, ecx
shr rdx, 1
add eax, edx
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
ret
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
bsf r8d, edx
mov r10d, 0x20
test edx, edx
cmove r8d, r10d
sub rax, rcx
shr rax, 1
add eax, r8d
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
ret
mov eax, 0xffffffff
movaps xmm6, xmmword [rsp + 0x30]
add rsp, 0x48
ret
Function at 0x1400111f4
Capabilities:
Terminate process

Disassembly:
jmp 0x140012f00
mov qword [rsp + 8], rcx
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x28
ret

Function at 0x14001127b
Capabilities:
Parse pe header

Disassembly:
jmp 0x140014250
sub rsp, 0x38
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x140014270
xor al, al
jmp 0x1400142f1
mov rax, qword [rsp + 0x20]
movzx eax, word [rax]
cmp eax, 0x5a4d
je 0x140014283
xor al, al
jmp 0x1400142f1
mov rax, qword [rsp + 0x20]
movsxd rax, dword [rax + 0x3c]
mov rcx, qword [rsp + 0x20]
add rcx, rax
mov rax, rcx
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x28]
cmp dword [rax], 0x4550
je 0x1400142ad
xor al, al
jmp 0x1400142f1
mov rax, qword [rsp + 0x28]
movzx eax, word [rax + 0x18]
cmp eax, 0x20b
je 0x1400142c1
xor al, al
jmp 0x1400142f1
mov rax, qword [rsp + 0x28]
cmp dword [rax + 0x84], 0xe
ja 0x1400142d3
xor al, al
jmp 0x1400142f1
mov eax, 8
imul rax, rax, 0xe
mov rcx, qword [rsp + 0x28]
cmp dword [rcx + rax + 0x88], 0
jne 0x1400142ef
xor al, al
jmp 0x1400142f1
mov al, 1
add rsp, 0x38
ret