joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140006c98
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0xb0
and qword [rsp + 0x20], 0
and dword [rsp + 0x28], 0
and dword [rsp + 0x2c], 0
mov rdi, rcx
mov ebp, edx
mov esi, 3
lea rcx, [rsp + 0x20]
mov edx, esi
mov rbx, r8
call fcn.140001190
and qword [rsp + 0x30], 0
and dword [rsp + 0x38], 0
and dword [rsp + 0x3c], 0
lea rcx, [rsp + 0x30]
mov edx, esi
call fcn.140001190
mov esi, 0x70
lea rcx, [rsp + 0x40]
mov r8, rsi
xor edx, edx
call sub.msvcrt.dll_memset
mov qword [rsp + 0x68], rbx
lea ebx, [rsi - 0x6f]
test bl, bpl
mov dword [rsp + 0x40], esi
mov dword [rsp + 0x44], 0x740
mov dword [rsp + 0x70], ebx
je 0x140006d32
and dword [rsp + 0x70], 0
mov dword [rsp + 0x44], 0x8740
lea rax, str.runas
test bpl, 2
lea rdx, [rsp + 0x20]
cmove rax, qword [rsp + 0x50]
mov rcx, rdi
mov qword [rsp + 0x50], rax
call fcn.140006624
lea rcx, [rsp + 0x30]
mov rdx, rax
call fcn.1400013d4
cmp dword [rsp + 0x28], 0
jne 0x140006d7a
mov rcx, qword [rsp + 0x30]
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, qword [rsp + 0x20]
jmp 0x140006dd1
mov rdi, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x30]
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], rsi
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x140006dc4
bt ebp, 0x10
jb 0x140006db4
mov rcx, qword [rsp + 0xa8]
or edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov rcx, qword [rsp + 0xa8]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
jmp 0x140006dc6
xor ebx, ebx
mov rcx, rsi
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, rdi
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
lea r11, [rsp + 0xb0]
mov eax, ebx
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x14000723c
Capabilities:
Create process on windows
Get disk information
Self delete
Set file attributes
Write and execute a file
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rdi
sub rsp, 0x70
mov rdi, rcx
mov rcx, qword [rcx]
cmp word [rcx + 2], 0x3a
jne 0x140007462
cmp word [rcx + 4], 0x5c
je 0x14000726e
cmp word [rcx + 4], 0x2f
jne 0x140007462
movzx eax, word [rcx]
and word [rsp + 0x8e], 0
lea rcx, [rsp + 0x88]
mov word [rsp + 0x88], ax
mov word [rsp + 0x8a], 0x3a
mov word [rsp + 0x8c], 0x5c
call qword [sym.imp.KERNEL32.dll_GetDriveTypeW]
cmp eax, 3
jne 0x14000745f
lea rdx, str.7ZSfx_03x.cmd
lea rcx, [rsp + 0x50]
call fcn.140005d28
and qword [rsp + 0x30], 0
mov rcx, qword [rsp + 0x50]
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rbp, rax
je 0x140007455
and qword [rsp + 0x40], 0
and dword [rsp + 0x48], 0
and dword [rsp + 0x4c], 0
lea rcx, [rsp + 0x40]
mov edx, 3
call fcn.140001190
lea rdx, str.:Repeat_r_n
lea rcx, [rsp + 0x40]
call fcn.1400013d4
lea rdx, str.del__
lea rcx, [rsp + 0x40]
call fcn.140002d94
lea rcx, [rsp + 0x40]
mov rdx, rdi
call fcn.140001440
lea rdx, [0x14001edb0]
lea rcx, [rsp + 0x40]
call fcn.140002d94
lea rdx, str.if_exist__
lea rcx, [rsp + 0x40]
call fcn.140002d94
lea rcx, [rsp + 0x40]
mov rdx, rdi
call fcn.140001440
lea rdx, str.__goto_Repeat_r_n
lea rcx, [rsp + 0x40]
call fcn.140002d94
lea rdx, str.del__
lea rcx, [rsp + 0x40]
call fcn.140002d94
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x40]
call fcn.140001440
lea rdx, [0x14001edb0]
lea rcx, [rsp + 0x40]
call fcn.140002d94
mov ebx, dword [rsp + 0x48]
lea rdx, [rsp + 0x40]
lea rcx, [rsp + 0x60]
mov r8d, 1
call fcn.140003308
and qword [rsp + 0x20], 0
lea r9, [rsp + 0x80]
mov rdx, qword [rax]
mov r8d, ebx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, qword [rsp + 0x60]
mov ebx, eax
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
je 0x140007441
mov eax, dword [rsp + 0x48]
cmp dword [rsp + 0x80], eax
jne 0x140007441
mov rcx, qword [rdi]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
and dword [rsp + 0x28], 0
mov r8, qword [rsp + 0x50]
and qword [rsp + 0x20], 0
lea rdx, str.open
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
jmp 0x14000744b
mov rcx, qword [rsp + 0x50]
call fcn.140003bb8
mov rcx, qword [rsp + 0x40]
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, qword [rsp + 0x50]
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
mov rcx, qword [rdi]
call sub.msvcrt.dll_void___cdecl_operator_delete_void____ptr64_
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x20]
mov rbp, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x14000c29c
Capabilities:
Get common file path
Get file system object information

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x510
mov rdi, rcx
mov rcx, qword [rcx + 8]
mov edx, 0x4b6
call qword [sym.imp.USER32.dll_GetDlgItem]
lea rdx, [rsp + 0x30]
mov rcx, rax
call fcn.1400021cc
mov r11d, dword [rsp + 0x3c]
mov ebx, 1
sub r11d, dword [rsp + 0x34]
mov r8d, ebx
mov edx, 0x4b6
add r11d, 2
mov rcx, rdi
mov dword [rdi + 0x80], r11d
call fcn.140009fa0
mov r8d, ebx
mov ebx, 0x4b7
mov rcx, rdi
mov edx, ebx
call fcn.140009fa0
lea rcx, [rsp + 0x40]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
lea r8, [rsp + 0x250]
lea rcx, [rsp + 0x40]
mov r9d, 0x2b8
xor edx, edx
mov dword [rsp + 0x20], 0x103
call qword [sym.imp.SHELL32.dll_SHGetFileInfoW]
mov r11, qword [rsp + 0x250]
mov rcx, qword [rdi + 8]
mov edx, ebx
mov qword [rdi + 0x70], r11
call qword [sym.imp.USER32.dll_GetDlgItem]
lea r8, [0x14000a86c]
mov edx, 0xfffffffc
mov rcx, rax
call qword [sym.imp.USER32.dll_SetWindowLongPtrW]
mov rcx, rdi
mov qword [rdi + 0x78], rax
call fcn.14000be1c
mov rcx, rdi
mov ebx, eax
call fcn.14000ad2c
mov eax, ebx
mov rbx, qword [rsp + 0x520]
add rsp, 0x510
pop rdi
ret
Function at 0x14000cd80
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x20], r9
mov qword [rsp + 8], rcx
push rsi
push r14
push r15
sub rsp, 0x20
mov r10d, dword [r9]
xor r15d, r15d
mov esi, r8d
and r10d, 7
cmp rdx, 5
mov r14, rcx
mov r11, r15
jae 0x14000cdb8
xor eax, eax
add rsp, 0x20
pop r15
pop r14
pop rsi
ret
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x10], rdi
mov qword [rsp + 8], r12
add esi, 5
mov qword [rsp], r13
mov r13d, dword [rsp + 0x60]
or r12, 0xffffffffffffffff
lea rdi, [rcx + rdx - 4]
lea r9, [0x140000000]
nop
nop
lea r8, [r11 + r14]
cmp r8, rdi
jae 0x14000ce13
nop
nop
movzx eax, byte [r8]
and al, 0xfe
cmp al, 0xe8
je 0x14000ce13
add r8, 1
cmp r8, rdi
jb 0x14000ce00
mov r11, r8
sub r11, r14
cmp r8, rdi
jae 0x14000cf61
mov rax, r11
sub rax, r12
cmp rax, 3
jbe 0x14000ce52
mov r10d, r15d
movzx eax, byte [r8 + 4]
mov r12, r11
test al, al
je 0x14000ce9a
cmp al, 0xff
je 0x14000ce9a
and r10d, 3
add r10d, r10d
or r10d, 1
add r11, 1
jmp 0x14000cdf0
lea ecx, [rax - 1]
shl r10d, cl
and r10d, 7
je 0x14000ce31
movzx eax, byte [r10 + r9 + 0x1f2e0]
mov rcx, r8
sub rcx, rax
cmp byte [r10 + r9 + 0x1f2d8], r15b
movzx eax, byte [rcx + 4]
je 0x14000ce83
test al, al
je 0x14000ce83
cmp al, 0xff
jne 0x14000ce31
and r10d, 3
mov r12, r11
add r10d, r10d
or r10d, 1
add r11, 1
jmp 0x14000cdf0
movzx r9d, al
movzx eax, byte [r8 + 3]
movsxd rbp, r10d
shl r9d, 8
lea r14, [0x140000000]
or r9d, eax
movzx eax, byte [r8 + 2]
shl r9d, 8
or r9d, eax
movzx eax, byte [r8 + 1]
shl r9d, 8
or r9d, eax
nop
test r13d, r13d
je 0x14000cedd
lea edx, [r11 + r9]
add edx, esi
jmp 0x14000cee5
mov edx, r9d
sub edx, r11d
sub edx, esi
test r10d, r10d
je 0x14000cf27
movzx ebx, byte [r14 + rbp + 0x1f2e0]
mov ecx, 0x18
mov r9d, edx
shl ebx, 3
sub ecx, ebx
shr r9d, cl
test r9b, r9b
je 0x14000cf0e
cmp r9b, 0xff
jne 0x14000cf27
mov ecx, 0x20
mov r9d, 1
sub ecx, ebx
shl r9d, cl
sub r9d, 1
xor r9d, edx
jmp 0x14000ced0
mov r14, qword [rsp + 0x40]
mov eax, edx
mov byte [r8 + 1], dl
shr eax, 0x18
lea r9, [0x140000000]
and al, 1
sub al, 1
not al
mov byte [r8 + 4], al
mov eax, edx
shr eax, 0x10
mov byte [r8 + 3], al
mov eax, edx
shr eax, 8
add r11, 5
mov byte [r8 + 2], al
jmp 0x14000cdf0
mov r13, qword [rsp]
mov rdi, qword [rsp + 0x10]
mov rbp, qword [rsp + 0x18]
mov rbx, qword [rsp + 0x48]
mov rax, r11
sub rax, r12
mov r12, qword [rsp + 8]
cmp rax, 3
ja 0x14000cf92
lea ecx, [rax - 1]
shl r10d, cl
and r10d, 7
mov r15d, r10d
mov rax, qword [rsp + 0x58]
mov dword [rax], r15d
mov rax, r11
add rsp, 0x20
pop r15
pop r14
pop rsi
ret

Function at 0x140010c34
Capabilities:
Get file size

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rcx, qword [rcx]
mov rdi, rdx
lea rdx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetFileSize]
cmp eax, 0xffffffff
mov ebx, eax
jne 0x140010c64
call qword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x140010c64
xor al, al
jmp 0x140010c77
mov ecx, dword [rsp + 0x40]
mov rax, rbx
mov al, 1
shl rcx, 0x20
add rcx, rbx
mov qword [rdi], rcx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x140010d8c
Capabilities:
Read file on windows

Disassembly:
push rbx
sub rsp, 0x30
mov rcx, qword [rcx]
and dword [rsp + 0x58], 0
and qword [rsp + 0x20], 0
mov rbx, r9
lea r9, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [rsp + 0x58]
test eax, eax
mov dword [rbx], ecx
setne al
add rsp, 0x30
pop rbx
ret
mov eax, dword [0x140023a50]
cmp r8d, eax
cmova r8d, eax
jmp 0x140010d8c

Function at 0x140010dc0
Capabilities:
Read file on windows

Disassembly:
push rbx
sub rsp, 0x30
mov rcx, qword [rcx]
and dword [rsp + 0x58], 0
and qword [rsp + 0x20], 0
mov rbx, r9
lea r9, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReadFile]
mov ecx, dword [rsp + 0x58]
test eax, eax
mov dword [rbx], ecx
setne al
add rsp, 0x30
pop rbx
ret
mov eax, dword [0x140023a50]
cmp r8d, eax
cmova r8d, eax
jmp 0x140010d8c

Function at 0x140010e28
Capabilities:
Write file on windows

Disassembly:
push rbx
sub rsp, 0x30
mov eax, dword [0x140023a50]
mov rcx, qword [rcx]
mov rbx, r9
cmp r8d, eax
lea r9, [rsp + 0x50]
cmova r8d, eax
and dword [rsp + 0x50], 0
and qword [rsp + 0x20], 0
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, dword [rsp + 0x50]
test eax, eax
mov dword [rbx], ecx
setne al
add rsp, 0x30
pop rbx
ret

Function at 0x140010e68
Capabilities:
Clear file content

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
lea r9, [rsp + 0x40]
xor r8d, r8d
mov rdi, rdx
mov rsi, rcx
call fcn.140010c84
xor ebx, ebx
cmp al, bl
jne 0x140010e94
xor al, al
jmp 0x140010ea9
cmp qword [rsp + 0x40], rdi
jne 0x140010e90
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_SetEndOfFile]
cmp eax, ebx
setne al
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x14001b0d0
Capabilities:
Encode data using add xor sub operations
Encode data using xor
Hash data with crc32

Disassembly:
sub rsp, 0x28
lea r10, [0x140023f40]
xor edx, edx
mov r8, r10
mov ecx, edx
mov eax, edx
add edx, 1
shr eax, 1
and ecx, 1
add r8, 4
sub ecx, 1
not ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
sub eax, 1
not eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
sub ecx, 1
not ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
sub eax, 1
not eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
sub ecx, 1
not ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
sub eax, 1
not eax
and eax, 0xedb88320
xor eax, ecx
mov ecx, eax
shr eax, 1
and ecx, 1
sub ecx, 1
not ecx
and ecx, 0xedb88320
xor ecx, eax
mov eax, ecx
shr ecx, 1
and eax, 1
sub eax, 1
not eax
and eax, 0xedb88320
xor eax, ecx
cmp edx, 0x100
mov dword [r8 - 4], eax
jb 0x14001b0e0
mov eax, 0x800
movsxd rcx, edx
cmp edx, eax
jae 0x14001b1d1
sub eax, edx
lea r8, [r10 + rcx*4]
mov r9d, eax
nop
nop
mov edx, dword [r8 - 0x400]
add r8, 4
movzx ecx, dl
shr edx, 8
mov eax, dword [r10 + rcx*4]
xor eax, edx
sub r9, 1
mov dword [r8 - 4], eax
jne 0x14001b1b0
lea rax, [0x14001b3f0]
mov qword [0x140023ee8], rax
call fcn.14001b210
mov rcx, qword [0x140023ee8]
lea rdx, [0x14001b300]
test eax, eax
cmove rcx, rdx
mov qword [0x140023ee8], rcx
add rsp, 0x28
ret
Function at 0x14001b9dc
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 8], rsi
mov qword [rsp + 0x10], rdi
push r12
sub rsp, 0xb0
and dword [rsp + 0x20], 0
lea rcx, [rsp + 0x40]
call qword [sym.imp.KERNEL32.dll_GetStartupInfoW]
nop
mov rax, qword gs:[0x30]
mov rdi, qword [rax + 8]
xor esi, esi
xor eax, eax
lock cmpxchg qword [0x140025f48], rdi
je 0x14001ba35
cmp rax, rdi
jne 0x14001ba28
mov esi, 1
jmp 0x14001ba35
mov ecx, 0x3e8
call qword [sym.imp.KERNEL32.dll_Sleep]
jmp 0x14001ba0f
mov eax, dword [0x140025f40]
cmp eax, 1
jne 0x14001ba4a
lea ecx, [rax + 0x1e]
call sub.msvcrt.dll__amsg_exit
jmp 0x14001baaf
mov eax, dword [0x140025f40]
test eax, eax
jne 0x14001baa5
mov dword [0x140025f40], 1
lea r12, [0x14001d7d0]
lea rdi, [0x14001d7b8]
mov qword [rsp + 0x38], rdi
mov dword [rsp + 0x30], eax
cmp rdi, r12
jae 0x14001ba97
test eax, eax
jne 0x14001ba97
mov rcx, qword [rdi]
test rcx, rcx
je 0x14001ba8c
call rcx
mov dword [rsp + 0x30], eax
add rdi, 8
mov qword [rsp + 0x38], rdi
jmp 0x14001ba75
test eax, eax
je 0x14001baaf
mov eax, 0xff
jmp 0x14001bbf9
mov dword [0x140023f14], 1
mov eax, dword [0x140025f40]
cmp eax, 1
jne 0x14001bad7
lea rdx, [0x14001d7b0]
lea rcx, [0x14001d710]
call sub.msvcrt.dll__initterm
mov dword [0x140025f40], 2
test esi, esi
jne 0x14001bae4
xor eax, eax
xchg qword [0x140025f48], rax
cmp qword [0x140025f50], 0
je 0x14001bb0d
lea rcx, [0x140025f50]
call fcn.14001bde8
test eax, eax
je 0x14001bb0d
xor r8d, r8d
lea edx, [r8 + 2]
xor ecx, ecx
call qword [0x140025f50]
mov rax, qword [sym.imp.msvcrt.dll__acmdln]
mov rdi, qword [rax]
mov qword [rsp + 0x28], rdi
mov esi, dword [rsp + 0x20]
cmp byte [rdi], 0x20
ja 0x14001bb98
cmp byte [rdi], 0
je 0x14001bb2e
test esi, esi
jne 0x14001bb98
cmp byte [rdi], 0
je 0x14001bb42
cmp byte [rdi], 0x20
ja 0x14001bb42
inc rdi
mov qword [rsp + 0x28], rdi
jmp 0x14001bb2e
test byte [rsp + 0x7c], 1
movzx eax, word [rsp + 0x80]
mov r9d, 0xa
cmovne r9d, eax
mov r8, rdi
xor edx, edx
lea rcx, [0x140000000]
call fcn.140009a18
mov dword [0x140023f10], eax
cmp dword [0x140023ef4], 0
jne 0x14001bb81
mov ecx, eax
call qword [sym.imp.msvcrt.dll_exit]
cmp dword [0x140023f14], 0
jne 0x14001bb96
call qword [sym.imp.msvcrt.dll__cexit]
mov eax, dword [0x140023f10]
jmp 0x14001bbf9
cmp byte [rdi], 0x22
jne 0x14001bbaa
xor eax, eax
test esi, esi
sete al
mov esi, eax
mov dword [rsp + 0x20], eax
movzx ecx, byte [rdi]
call qword [sym.imp.msvcrt.dll__ismbblead]
test eax, eax
je 0x14001bbbf
inc rdi
mov qword [rsp + 0x28], rdi
inc rdi
mov qword [rsp + 0x28], rdi
jmp 0x14001bb20
lea r11, [rsp + 0xb0]
mov rsi, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop r12
ret
sub rsp, 0x28
call fcn.14001bedc
add rsp, 0x28
jmp 0x14001b9dc
Function at 0x14000b7d0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
mov r11d, r8d
mov r10, rdx
not r11d
mov r9, rcx
mov eax, r11d
test rdx, rdx
je 0x14000b82d
lea rbx, [0x140066a10]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x14000b814
cmp r10, 2
jb 0x14000b814
cmp byte [r9], r8b
jne 0x14000b814
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
xor rdx, r8
shr eax, 8
xor eax, dword [rbx + rdx*4]
test r10, r10
jne 0x14000b7f0
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x14000b86f
lea rbx, [0x140066a10]
cmp r8b, 0x23
jne 0x14000b853
cmp byte [r9], r8b
jne 0x14000b853
cmp byte [r9 + 1], r8b
cmove eax, r11d
movzx edx, al
movzx ecx, r8b
movzx r8d, byte [r9]
xor rdx, rcx
shr eax, 8
inc r9
xor eax, dword [rbx + rdx*4]
test r8b, r8b
jne 0x14000b840
mov rbx, qword [rsp + 8]
not eax
ret

Function at 0x14000ba30
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push r14
sub rsp, 0x20
xor r14d, r14d
mov rsi, r8
test r8, r8
je 0x14000ba4e
mov qword [r8], r14
lea rdx, [0x14006c1b0]
call fcn.14000b880
mov rbx, rax
test rax, rax
jne 0x14000ba73
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
mov qword [rsp + 0x30], rbp
mov rcx, rbx
mov qword [rsp + 0x38], rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
mov ebp, eax
cmp eax, 0xffffffff
je 0x14000bb9f
xor edx, edx
mov r8d, 2
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14000bb9f
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x14000bb9f
xor r8d, r8d
mov edx, ebp
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x14000bb9f
cmp rdi, 0xffffffffffffffff
je 0x14000bb9f
mov rcx, rdi
call fcn.140010f10
mov rbp, rax
test rax, rax
je 0x14000bb9f
mov r9, rbx
mov r8, rdi
mov edx, 1
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
mov rcx, rbx
cmp rax, rdi
je 0x14000bb8c
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov r8, qword [0x14007a460]
test r8, r8
je 0x14000bb81
movsx rdx, word [r8 + 0x60e0]
lea rcx, [r8 + 0x60e4]
mov r9d, dword [r8 + 0x3f68]
lea rcx, [rcx + rdx*8]
cmp dword [rcx], r9d
je 0x14000bb76
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 + 0x60e0], cx
movsx rax, cx
lea rcx, [r8 + 0x60e4]
lea rcx, [rcx + rax*8]
mov dword [rcx], r9d
mov dword [rcx + 4], r14d
inc word [rcx + 6]
inc dword [r8 + 0x60dc]
mov rcx, rbp
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
jmp 0x14000bba8
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rsi, rsi
je 0x14000bb9a
mov qword [rsi], rdi
mov rax, rbp
jmp 0x14000bbaa
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor eax, eax
mov rbp, qword [rsp + 0x30]
mov rdi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret
Function at 0x14001a7b0
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x20
mov r11, rcx
lea rdi, [0x140066a10]
movsxd rcx, dword [rcx + 0x108]
mov r10d, edx
shr r10d, 0x18
mov r8d, edx
shr r8d, 8
mov r9d, edx
mov rax, qword [r11 + 0x110]
shr r9d, 0x10
mov ebx, dword [rax + rcx*4 - 4]
not ebx
movzx eax, dl
movzx ecx, bl
xor rcx, rax
shr ebx, 8
movzx eax, r8b
xor ebx, dword [rdi + rcx*4]
movzx ecx, bl
xor rcx, rax
shr ebx, 8
movzx eax, r9b
xor ebx, dword [rdi + rcx*4]
movzx ecx, bl
xor rcx, rax
shr ebx, 8
xor ebx, dword [rdi + rcx*4]
movzx ecx, bl
xor rcx, r10
shr ebx, 8
xor ebx, dword [rdi + rcx*4]
mov rcx, qword [r11]
not ebx
cmp dword [rcx + 0x405c], ebx
jne 0x14001a844
movsxd r8, edx
mov ecx, ebx
mov edx, 4
call fcn.1400259e0
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret

Function at 0x14001a860
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 0x18
movss xmm0, dword [rcx + 0x128]
lea r10, [0x140066a10]
mov rax, qword [rcx + 0x110]
movss xmm1, dword [rcx + 0x12c]
movss xmm2, dword [rdx]
movss xmm4, dword [rdx + 8]
subss xmm2, xmm0
movss xmm3, dword [rdx + 4]
subss xmm4, xmm0
movss xmm0, dword [rdx + 0xc]
subss xmm3, xmm1
movsxd rcx, dword [rcx + 0x108]
subss xmm0, xmm1
movd r8d, xmm2
movss dword [rsp], xmm2
mov r9d, dword [rax + rcx*4 - 4]
movzx eax, byte [rsp]
not r9d
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
movss dword [rsp + 4], xmm3
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
movss dword [rsp + 8], xmm4
movss dword [rsp + 0xc], xmm0
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 4]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm3
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 8]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm4
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
shr eax, 8
movzx edx, al
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
mov eax, r8d
shr eax, 0x10
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
movzx eax, byte [rsp + 0xc]
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
mov edx, r8d
shr rdx, 0x18
xor rdx, rcx
movd r8d, xmm0
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
xor rcx, rax
shr r9d, 8
mov eax, r8d
shr eax, 8
movzx edx, al
mov eax, r8d
xor r9d, dword [r10 + rcx*4]
movzx ecx, r9b
xor rdx, rcx
shr r9d, 8
shr eax, 0x10
shr r8, 0x18
xor r9d, dword [r10 + rdx*4]
movzx ecx, r9b
shr r9d, 8
movzx edx, al
xor rdx, rcx
xor r9d, dword [r10 + rdx*4]
movzx edx, r9b
shr r9d, 8
xor r8, rdx
xor r9d, dword [r10 + r8*4]
not r9d
mov eax, r9d
add rsp, 0x18
ret
Function at 0x14001eb30
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x140079040]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, qword [0x14007a460]
mov edi, ecx
cmp byte [rbx + 0x4d3d], 0
jne 0x14001eb91
cmp byte [rbx + 0x4d3e], 0
jne 0x14001eb91
movsx r9d, word [rbx + 0x5ea8]
lea r8, str.Tooltip__02d
mov edx, 0x10
lea rcx, [rsp + 0x20]
call fcn.14000b5b0
test dil, 2
je 0x14001ecbf
jmp 0x14001ec1c
movss xmm1, dword [rbx + 0x39c4]
lea r8, str.Tooltip__02d
movsx r9d, word [rbx + 0x5ea8]
lea rcx, [rsp + 0x20]
movaps xmm0, xmm1
xor eax, eax
mulss xmm0, dword [0x14006d30c]
mov edx, 0x10
mulss xmm1, dword [0x14006d304]
addss xmm0, dword [rbx + 0xf8]
addss xmm1, dword [rbx + 0xfc]
mov qword [rbx + 0x4a30], rax
mov dword [rbx + 0x4a1c], 1
movss dword [rbx + 0x4a28], xmm0
movss dword [rbx + 0x4a2c], xmm1
movss xmm0, dword [rbx + 0x3a20]
mulss xmm0, dword [0x14006d270]
or dword [rbx + 0x4a18], 0x41
movss dword [rbx + 0x4a78], xmm0
call fcn.14000b5b0
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x14001ec70
lea r11, [0x140066a10]
nop dword [rax]
cmp r9b, 0x23
jne 0x14001ec53
cmp byte [r8], r9b
jne 0x14001ec53
cmp byte [r8 + 1], r9b
cmove ecx, r10d
movzx edx, cl
movzx eax, r9b
movzx r9d, byte [r8]
xor rdx, rax
shr ecx, 8
inc r8
xor ecx, dword [r11 + rdx*4]
test r9b, r9b
jne 0x14001ec40
not ecx
call fcn.1400146a0
test rax, rax
je 0x14001ecbf
cmp byte [rax + 0xca], 0
je 0x14001ecbf
mov byte [rax + 0xcf], 1
lea r8, str.Tooltip__02d
mov byte [rax + 0xd2], 1
lea rcx, [rsp + 0x20]
mov byte [rax + 0xec], 1
mov edx, 0x10
inc word [rbx + 0x5ea8]
movsx r9d, word [rbx + 0x5ea8]
call fcn.14000b5b0
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x2030347
call fcn.1400173e0
mov al, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.140061d50
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret