joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400288d0
Capabilities:
Enumerate processes

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x258
lea rbp, [rsp + 0x80]
vmovaps xmmword [rbp + 0x1c0], xmm6
mov rsi, rdx
mov dword [rbp - 0x78], 0x238
sub rsp, 0x20
mov ecx, 0xf
xor edx, edx
call sub.KERNEL32.dll_CreateToolhelp32Snapshot
add rsp, 0x20
mov rdi, rax
sub rsp, 0x20
lea rdx, [rbp - 0x78]
mov rcx, rax
call sub.KERNEL32.dll_Process32FirstW
add rsp, 0x20
lea r14, [rbp - 0x4c]
movabs r12, 0x100000000
vxorps xmm6, xmm6, xmm6
mov r13, qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
nop word cs:[rax + rax]
cmp qword [rsi + 0x18], 0x10
mov r15, rsi
jb 0x14002895d
mov r15, qword [rsi]
sub rsp, 0x20
mov rcx, r14
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add rsp, 0x20
mov rcx, rax
shl rcx, 0x20
add rcx, r12
sar rcx, 0x1f
mov rax, rcx
add rax, 0xf
and rax, 0xfffffffffffffff0
call fcn.14011c0b0
sub rsp, rax
mov rbx, rsp
mov byte [rbx], 0
sub rsp, 0x40
vmovups xmmword [rsp + 0x30], xmm6
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rbx
mov ecx, 3
xor edx, edx
mov r8, r14
mov r9d, 0xffffffff
call r13
add rsp, 0x40
test eax, eax
mov ecx, 0
cmovne rcx, rbx
sub rsp, 0x20
mov rdx, r15
call sub.api_ms_win_crt_string_l1_1_0.dll_strcmp
add rsp, 0x20
sub rsp, 0x20
test eax, eax
je 0x140028a0e
mov rcx, rdi
lea rdx, [rbp - 0x78]
call sub.KERNEL32.dll_Process32NextW
add rsp, 0x20
test eax, eax
jne 0x140028950
sub rsp, 0x20
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rsp, 0x20
xor edi, edi
jmp 0x140028a1e
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
add rsp, 0x20
mov edi, dword [rbp - 0x70]
mov rax, qword [rsi + 0x18]
cmp rax, 0x10
jb 0x140028a60
mov rcx, qword [rsi]
lea rdx, [rax + 1]
cmp rdx, 0x1000
jb 0x140028a53
mov r8, qword [rcx - 8]
add rcx, 0xfffffffffffffff8
sub rcx, r8
cmp rcx, 0x20
jae 0x140028a91
add rax, 0x28
mov rdx, rax
mov rcx, r8
sub rsp, 0x20
call fcn.14011bed4
add rsp, 0x20
mov qword [rsi + 0x10], 0
mov qword [rsi + 0x18], 0xf
mov byte [rsi], 0
mov eax, edi
vmovaps xmm6, xmmword [rbp + 0x1c0]
lea rsp, [rbp + 0x1d8]
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
sub rsp, 0x20
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
Function at 0x14002a980
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov rax, qword [0x14021fc40]
xor rax, rsp
mov qword [rsp + 0x80], rax
cmp edx, 0xffffffff
je 0x14002aaad
mov esi, edx
mov rdi, rcx
mov rax, qword [rcx + 0x40]
cmp qword [rax], 0
je 0x14002a9dd
mov rax, qword [rdi + 0x58]
mov ecx, dword [rax]
test ecx, ecx
jle 0x14002a9dd
dec ecx
mov dword [rax], ecx
mov rax, qword [rdi + 0x40]
mov rcx, qword [rax]
lea rdx, [rcx + 1]
mov qword [rax], rdx
mov byte [rcx], sil
jmp 0x14002aaf2
cmp qword [rdi + 0x80], 0
je 0x14002aab1
mov rax, qword [rdi + 0x18]
lea rcx, [rdi + 0x70]
cmp qword [rax], rcx
jne 0x14002aa17
mov ecx, dword [rdi + 0x90]
mov rdx, qword [rdi + 0x88]
mov qword [rax], rdx
mov rax, qword [rdi + 0x38]
mov qword [rax], rdx
sub ecx, edx
mov rax, qword [rdi + 0x50]
mov dword [rax], ecx
mov rcx, qword [rdi + 0x68]
test rcx, rcx
je 0x14002aab8
mov byte [rsp + 0x5f], sil
lea rax, [rsp + 0x80]
lea r9, [rsp + 0x60]
lea rdx, [rdi + 0x74]
mov r10, qword [rcx]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x38], r8
mov qword [rsp + 0x30], rax
lea r14, [rsp + 0x60]
mov qword [rsp + 0x28], r14
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea rbx, [rsp + 0x5f]
mov r8, rbx
call qword [r10 + 0x38]
mov ebp, 0xffffffff
cmp eax, 2
jae 0x14002aad1
mov r15, qword [rsp + 0x48]
sub r15, r14
je 0x14002aa9d
mov r9, qword [rdi + 0x80]
mov edx, 1
mov rcx, r14
mov r8, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp r15, rax
jne 0x14002aaf0
mov byte [rdi + 0x71], 1
cmp qword [rsp + 0x50], rbx
mov eax, 0xffffffff
jmp 0x14002aaeb
xor esi, esi
jmp 0x14002aaf2
mov esi, 0xffffffff
jmp 0x14002aaf2
mov rdx, qword [rdi + 0x80]
movsx ecx, sil
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
cmp eax, 0xffffffff
cmove esi, eax
jmp 0x14002aaf2
cmp eax, 3
jne 0x14002aaf0
mov rdx, qword [rdi + 0x80]
movsx ecx, byte [rsp + 0x5f]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fputc]
cmp eax, 0xffffffff
cmove esi, eax
mov ebp, esi
mov esi, ebp
mov rcx, qword [rsp + 0x80]
xor rcx, rsp
call fcn.14011bef0
mov eax, esi
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
Function at 0x14002af60
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
test r8, r8
jle 0x14002af9b
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
cmp qword [rcx + 0x68], 0
je 0x14002afa2
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsgetn_char____ptr64__long_long___int64_____ptr64]
xor esi, esi
jmp 0x14002b099
mov rax, qword [rbx + 0x38]
mov rdx, qword [rax]
test rdx, rdx
je 0x14002aff5
mov rax, qword [rbx + 0x50]
movsxd r15, dword [rax]
test r15, r15
je 0x14002aff5
cmp r15, rsi
cmovae r15, rsi
mov rcx, rdi
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
add rdi, r15
mov r14, rsi
sub r14, r15
mov rax, qword [rbx + 0x50]
sub dword [rax], r15d
mov rax, qword [rbx + 0x38]
movsxd rcx, r15d
add qword [rax], rcx
cmp qword [rbx + 0x80], 0
jne 0x14002b006
jmp 0x14002b096
mov r14, rsi
cmp qword [rbx + 0x80], 0
je 0x14002b096
mov rax, qword [rbx + 0x18]
lea rcx, [rbx + 0x70]
cmp qword [rax], rcx
jne 0x14002b032
mov ecx, dword [rbx + 0x90]
mov rdx, qword [rbx + 0x88]
mov qword [rax], rdx
mov rax, qword [rbx + 0x38]
mov qword [rax], rdx
sub ecx, edx
mov rax, qword [rbx + 0x50]
mov dword [rax], ecx
mov r15, qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
nop dword [rax]
cmp r14, 0x1000
jb 0x14002b071
mov r9, qword [rbx + 0x80]
mov edx, 1
mov r8d, 0xfff
mov rcx, rdi
call r15
add rdi, rax
sub r14, rax
cmp rax, 0xfff
je 0x14002b040
jmp 0x14002b096
test r14, r14
je 0x14002b093
mov r9, qword [rbx + 0x80]
mov edx, 1
mov rcx, rdi
mov r8, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
sub r14, rax
jmp 0x14002b096
xor r14d, r14d
sub rsi, r14
mov rax, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret

Function at 0x14002b0b0
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
cmp qword [rcx + 0x68], 0
je 0x14002b0e6
mov rcx, rbx
mov rdx, rdi
mov r8, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
jmp qword [sym.imp.MSVCP140.dll_protected_virtual:_long_long___int64____cdecl_std::basic_streambuf_char__struct_std::char_traits_char__::xsputn_char_const____ptr64__long_long___int64_____ptr64]
mov rax, qword [rbx + 0x40]
mov rcx, qword [rax]
test rcx, rcx
je 0x14002b133
test rsi, rsi
jle 0x14002b133
mov rax, qword [rbx + 0x58]
mov r15d, dword [rax]
test r15d, r15d
jle 0x14002b133
cmp r15, rsi
cmovae r15, rsi
mov rdx, rdi
mov r8, r15
call sub.VCRUNTIME140.dll_memcpy
add rdi, r15
mov r14, rsi
sub r14, r15
mov rax, qword [rbx + 0x58]
sub dword [rax], r15d
mov rax, qword [rbx + 0x40]
add qword [rax], r15
test r14, r14
jg 0x14002b13b
jmp 0x14002b15b
mov r14, rsi
test r14, r14
jle 0x14002b15b
mov r9, qword [rbx + 0x80]
test r9, r9
je 0x14002b15b
mov edx, 1
mov rcx, rdi
mov r8, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
sub r14, rax
sub rsi, r14
mov rax, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
Function at 0x14002b550
Capabilities:
Write file on windows

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x60
mov rax, qword [0x14021fc40]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov dil, 1
cmp qword [rcx + 0x68], 0
je 0x14002b5fa
mov rsi, rcx
cmp byte [rcx + 0x71], 0
je 0x14002b5fa
mov rax, qword [rsi]
mov rcx, rsi
mov edx, 0xffffffff
call qword [rax + 0x18]
cmp eax, 0xffffffff
je 0x14002b5f8
mov rcx, qword [rsi + 0x68]
lea r9, [rsp + 0x50]
lea rdx, [rsi + 0x74]
mov rax, qword [rcx]
lea r8, [rsp + 0x28]
mov qword [rsp + 0x20], r8
lea rdi, [rsp + 0x30]
mov r8, rdi
call qword [rax + 0x40]
cmp eax, 3
je 0x14002b611
cmp eax, 1
je 0x14002b5c7
test eax, eax
jne 0x14002b5f8
mov byte [rsi + 0x71], 0
mov rbx, qword [rsp + 0x28]
sub rbx, rdi
je 0x14002b5ee
mov r9, qword [rsi + 0x80]
mov edx, 1
mov rcx, rdi
mov r8, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp rbx, rax
jne 0x14002b5f8
cmp byte [rsi + 0x71], 0
sete dil
jmp 0x14002b5fa
xor edi, edi
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.14011bef0
mov eax, edi
add rsp, 0x60
pop rbx
pop rdi
pop rsi
ret
mov byte [rsi + 0x71], 0
mov dil, 1
jmp 0x14002b5fa

Function at 0x14003f7e0
Capabilities:
Hash data with crc32

Disassembly:
not r8d
test rdx, rdx
je 0x14003f841
dec rdx
add rcx, 2
lea r9, [0x1401260e0]
mov r10d, r8d
jmp 0x14003f821
mov eax, r10d
shr eax, 8
movzx r10d, r10b
xor r10d, r11d
xor eax, dword [r9 + r10*4]
inc rcx
mov r10d, eax
add rdx, 0xffffffffffffffff
jae 0x14003f8a0
movzx r11d, byte [rcx - 2]
cmp r11d, 0x23
jne 0x14003f800
cmp rdx, 2
jb 0x14003f800
cmp byte [rcx - 1], 0x23
jne 0x14003f800
cmp byte [rcx], 0x23
cmove r10d, r8d
jmp 0x14003f800
movzx r9d, byte [rcx]
test r9b, r9b
je 0x14003f8a3
add rcx, 2
lea rdx, [0x1401260e0]
mov r10d, r8d
jmp 0x14003f883
movzx r9d, r9b
mov eax, r10d
shr eax, 8
movzx r10d, r10b
xor r10d, r9d
xor eax, dword [rdx + r10*4]
inc rcx
mov r9d, r11d
mov r10d, eax
test r11b, r11b
je 0x14003f8a0
movzx r11d, byte [rcx - 1]
cmp r9b, 0x23
jne 0x14003f860
cmp r11b, 0x23
jne 0x14003f860
cmp byte [rcx], 0x23
cmove r10d, r8d
mov r11b, 0x23
jmp 0x14003f860
not eax
ret
mov eax, r8d
not eax
ret
Function at 0x14003fab0
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov ebx, r9d
mov rsi, r8
test r8, r8
je 0x14003fad0
mov qword [rsi], 0
call fcn.14003f8b0
test rax, rax
je 0x14003fb0b
mov rdi, rax
mov rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
cmp eax, 0xffffffff
je 0x14003fb02
mov ebp, eax
mov rcx, rdi
xor edx, edx
mov r8d, 2
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
je 0x14003fb20
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
xor r14d, r14d
mov rax, r14
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
cmp eax, 0xffffffff
je 0x14003fb02
mov r14d, eax
xor r15d, r15d
mov rcx, rdi
mov edx, ebp
xor r8d, r8d
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
neg eax
sbb r15d, r15d
or r15d, r14d
cmp r15d, 0xffffffff
je 0x14003fb02
movsxd r15, r15d
movsxd r12, ebx
lea rcx, [r15 + r12]
mov rax, qword [0x140221790]
test rax, rax
je 0x14003fb6c
inc dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
call qword [0x1402034d8]
test rax, rax
je 0x14003fb02
mov r14, rax
mov edx, 1
mov rcx, rax
mov r8, r15
mov r9, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fread]
cmp rax, r15
jne 0x14003fbc8
test ebx, ebx
jle 0x14003fbae
mov rcx, r14
add rcx, r15
xor edx, edx
mov r8, r12
call sub.VCRUNTIME140.dll_memset
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rsi, rsi
je 0x14003fb0e
mov qword [rsi], r15
jmp 0x14003fb0e
mov rcx, rdi
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rax, qword [0x140221790]
test rax, rax
je 0x14003fbe3
dec dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
mov rcx, r14
call qword [0x1402034e0]
jmp 0x14003fb0b
Function at 0x140046da0
Capabilities:
Hash data with crc32

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov r9, r8
mov r8, rdx
mov rax, qword [rcx + 0xf8]
movsxd rdx, dword [rcx + 0xf0]
mov eax, dword [rax + rdx*4 - 4]
not eax
test r9, r9
je 0x140046e2e
mov rdx, r9
sub rdx, r8
je 0x140046e2e
mov rdx, r8
not rdx
add rdx, r9
lea r10, [r8 + 2]
lea r11, [0x1401260e0]
mov edi, eax
jmp 0x140046e0e
mov esi, edi
shr esi, 8
movzx edi, dil
xor edi, ebx
xor esi, dword [r11 + rdi*4]
inc r10
mov edi, esi
add rdx, 0xffffffffffffffff
jae 0x140046e8b
movzx ebx, byte [r10 - 2]
cmp ebx, 0x23
jne 0x140046df0
cmp rdx, 2
jb 0x140046df0
cmp byte [r10 - 1], 0x23
jne 0x140046df0
cmp byte [r10], 0x23
cmove edi, eax
jmp 0x140046df0
movzx r11d, byte [r8]
test r11b, r11b
je 0x140046e89
lea rdx, [r8 + 2]
lea r10, [0x1401260e0]
mov edi, eax
jmp 0x140046e70
movzx r11d, r11b
mov esi, edi
shr esi, 8
movzx edi, dil
xor edi, r11d
xor esi, dword [r10 + rdi*4]
inc rdx
mov r11d, ebx
mov edi, esi
test bl, bl
je 0x140046e8b
movzx ebx, byte [rdx - 1]
cmp r11b, 0x23
jne 0x140046e50
cmp bl, 0x23
jne 0x140046e50
cmp byte [rdx], 0x23
cmove edi, eax
mov bl, 0x23
jmp 0x140046e50
mov esi, eax
not esi
mov rax, qword [rcx]
cmp dword [rax + 0x3f40], esi
jne 0x140046ea4
mov ecx, esi
mov edx, 0xb
call fcn.1400475b0
mov eax, esi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret
Function at 0x140056990
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x30
mov edi, r9d
mov ebx, r8d
mov rsi, rdx
mov r14, rcx
mov rax, qword [0x140221790]
mov rcx, qword [rax + 0x3ef8]
mov byte [rcx + 0xb8], 1
mov rax, qword [rax + 0x3ef8]
mov rcx, qword [rax + 0xf8]
movsxd rdx, dword [rax + 0xf0]
mov ebp, dword [rcx + rdx*4 - 4]
movzx r9d, byte [r14]
test r9b, r9b
je 0x140056a31
not ebp
lea rcx, [r14 + 2]
lea rdx, [0x1401260e0]
mov r8d, ebp
jmp 0x140056a0e
movzx r9d, r9b
movzx r11d, r8b
shr r8d, 8
xor r11d, r9d
xor r8d, dword [rdx + r11*4]
inc rcx
mov r9d, r10d
test r10b, r10b
je 0x140056a2b
movzx r10d, byte [rcx - 1]
cmp r9b, 0x23
jne 0x1400569f0
cmp r10b, 0x23
jne 0x1400569f0
cmp byte [rcx], 0x23
cmove r8d, ebp
mov r10b, 0x23
jmp 0x1400569f0
not r8d
mov ebp, r8d
mov rax, qword [rax]
cmp dword [rax + 0x3f40], ebp
jne 0x140056a4e
mov ecx, ebp
mov edx, 0xb
mov r8, r14
xor r9d, r9d
call fcn.1400475b0
mov dword [rsp + 0x20], edi
mov rcx, r14
mov edx, ebp
mov r8, rsi
mov r9d, ebx
call fcn.140056580
nop
add rsp, 0x30
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret

Function at 0x140057980
Capabilities:
Hash data with crc32

Disassembly:
movzx r9d, byte [rcx]
test r9b, r9b
je 0x1400579dd
add rcx, 2
mov edx, 0xffffffff
lea r8, [0x1401260e0]
mov eax, 0xffffffff
jmp 0x1400579bd
movzx r9d, r9b
movzx r11d, al
shr eax, 8
xor r11d, r9d
xor eax, dword [r8 + r11*4]
inc rcx
mov r9d, r10d
test r10b, r10b
je 0x1400579d9
movzx r10d, byte [rcx - 1]
cmp r9b, 0x23
jne 0x1400579a0
cmp r10b, 0x23
jne 0x1400579a0
cmp byte [rcx], 0x23
cmove eax, edx
mov r10b, 0x23
jmp 0x1400579a0
not eax
jmp 0x1400579df
xor eax, eax
mov rdx, qword [0x140221790]
mov rcx, qword [rdx + 0x3ee0]
movsxd r8, dword [rdx + 0x3ed8]
test r8, r8
je 0x140057a37
mov rdx, rcx
mov r10, r8
mov r9, r8
jmp 0x140057a18
mov r10, r9
test r9, r9
je 0x140057a3d
shr r9, 1
mov r11, r9
shl r11, 4
cmp dword [rdx + r11], eax
jae 0x140057a10
not r9
add r9, r10
add rdx, r11
add rdx, 0x10
jmp 0x140057a10
xor r8d, r8d
mov rdx, rcx
shl r8, 4
add rcx, r8
cmp rdx, rcx
je 0x140057a52
cmp dword [rdx], eax
jne 0x140057a52
mov rax, qword [rdx + 8]
ret
xor eax, eax
ret
Function at 0x1400594c0
Capabilities:
Hash data with crc32

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov r8, rcx
mov rax, qword [0x140221790]
mov rbx, qword [rax + 0x3ef8]
mov rcx, qword [rbx + 0xf8]
movsxd rax, dword [rbx + 0xf0]
mov esi, dword [rcx + rax*4 - 4]
movzx r10d, byte [r8]
test r10b, r10b
je 0x140059551
not esi
lea rcx, [r8 + 2]
lea rdx, [0x1401260e0]
mov r9d, esi
jmp 0x14005952e
movzx r10d, r10b
movzx edi, r9b
shr r9d, 8
xor edi, r10d
xor r9d, dword [rdx + rdi*4]
inc rcx
mov r10d, r11d
test r11b, r11b
je 0x14005954b
movzx r11d, byte [rcx - 1]
cmp r10b, 0x23
jne 0x140059510
cmp r11b, 0x23
jne 0x140059510
cmp byte [rcx], 0x23
cmove r9d, esi
mov r11b, 0x23
jmp 0x140059510
not r9d
mov esi, r9d
mov rcx, qword [rbx]
cmp dword [rcx + 0x3f40], esi
jne 0x140059571
mov ecx, esi
mov edx, 0xb
xor r9d, r9d
call fcn.1400475b0
mov eax, dword [rbx + 0xf0]
cmp eax, dword [rbx + 0xf4]
jne 0x140059629
lea ebp, [rax + 1]
test eax, eax
je 0x140059591
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x140059596
mov ecx, 8
cmp ecx, ebp
cmovg ebp, ecx
cmp eax, ebp
jge 0x140059629
movsxd rcx, ebp
shl rcx, 2
mov rax, qword [0x140221790]
test rax, rax
je 0x1400595bc
inc dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
call qword [0x1402034d8]
mov rdi, rax
mov rdx, qword [rbx + 0xf8]
test rdx, rdx
je 0x140059616
movsxd r8, dword [rbx + 0xf0]
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0xf8]
test rcx, rcx
je 0x140059609
mov rax, qword [0x140221790]
test rax, rax
je 0x140059609
dec dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
call qword [0x1402034e0]
mov qword [rbx + 0xf8], rdi
mov dword [rbx + 0xf4], ebp
mov eax, dword [rbx + 0xf0]
mov rcx, qword [rbx + 0xf8]
cdqe
mov dword [rcx + rax*4], esi
inc dword [rbx + 0xf0]
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret
Function at 0x140059650
Capabilities:
Hash data with crc32

Disassembly:
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov rax, qword [0x140221790]
mov rbx, qword [rax + 0x3ef8]
mov r9d, ecx
shr r9d, 8
mov r8d, ecx
shr r8d, 0x10
mov edx, ecx
shr edx, 0x18
mov r10, qword [rbx + 0xf8]
movsxd rax, dword [rbx + 0xf0]
mov r10d, dword [r10 + rax*4 - 4]
not r10d
mov r11d, r10d
shr r11d, 8
xor r10d, ecx
movzx r10d, r10b
lea rdi, [0x1401260e0]
xor r11d, dword [rdi + r10*4]
mov r10d, r11d
shr r10d, 8
xor r11d, r9d
movzx r9d, r11b
xor r10d, dword [rdi + r9*4]
mov esi, r10d
shr esi, 8
xor r10d, r8d
movzx r8d, r10b
xor esi, dword [rdi + r8*4]
movzx r8d, sil
shr esi, 8
xor r8d, edx
xor esi, dword [rdi + r8*4]
mov rdx, qword [rbx]
not esi
cmp dword [rdx + 0x3f40], esi
jne 0x1400596fe
movsxd r8, ecx
mov ecx, esi
mov edx, 4
xor r9d, r9d
call fcn.1400475b0
mov eax, dword [rbx + 0xf0]
cmp eax, dword [rbx + 0xf4]
jne 0x1400597b6
lea ebp, [rax + 1]
test eax, eax
je 0x14005971e
mov ecx, eax
shr ecx, 0x1f
add ecx, eax
sar ecx, 1
add ecx, eax
jmp 0x140059723
mov ecx, 8
cmp ecx, ebp
cmovg ebp, ecx
cmp eax, ebp
jge 0x1400597b6
movsxd rcx, ebp
shl rcx, 2
mov rax, qword [0x140221790]
test rax, rax
je 0x140059749
inc dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
call qword [0x1402034d8]
mov rdi, rax
mov rdx, qword [rbx + 0xf8]
test rdx, rdx
je 0x1400597a3
movsxd r8, dword [rbx + 0xf0]
shl r8, 2
mov rcx, rdi
call sub.VCRUNTIME140.dll_memcpy
mov rcx, qword [rbx + 0xf8]
test rcx, rcx
je 0x140059796
mov rax, qword [0x140221790]
test rax, rax
je 0x140059796
dec dword [rax + 0xf4]
mov rdx, qword [0x1402217a0]
call qword [0x1402034e0]
mov qword [rbx + 0xf8], rdi
mov dword [rbx + 0xf4], ebp
mov eax, dword [rbx + 0xf0]
mov rcx, qword [rbx + 0xf8]
cdqe
mov dword [rcx + rax*4], esi
inc dword [rbx + 0xf0]
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
ret

Function at 0x140059910
Capabilities:
Hash data with crc32

Disassembly:
push rsi
push rdi
sub rsp, 0x28
mov r8, rcx
mov rax, qword [0x140221790]
mov rax, qword [rax + 0x3ef8]
mov rcx, qword [rax + 0xf8]
movsxd rdx, dword [rax + 0xf0]
mov esi, dword [rcx + rdx*4 - 4]
movzx r10d, byte [r8]
test r10b, r10b
je 0x1400599a1
not esi
lea rcx, [r8 + 2]
lea rdx, [0x1401260e0]
mov r9d, esi
jmp 0x14005997e
movzx r10d, r10b
movzx edi, r9b
shr r9d, 8
xor edi, r10d
xor r9d, dword [rdx + rdi*4]
inc rcx
mov r10d, r11d
test r11b, r11b
je 0x14005999b
movzx r11d, byte [rcx - 1]
cmp r10b, 0x23
jne 0x140059960
cmp r11b, 0x23
jne 0x140059960
cmp byte [rcx], 0x23
cmove r9d, esi
mov r11b, 0x23
jmp 0x140059960
not r9d
mov esi, r9d
mov rax, qword [rax]
cmp dword [rax + 0x3f40], esi
jne 0x1400599bb
mov ecx, esi
mov edx, 0xb
xor r9d, r9d
call fcn.1400475b0
mov eax, esi
add rsp, 0x28
pop rdi
pop rsi
ret
Function at 0x14005b290
Capabilities:
Hash data with crc32

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov esi, edx
mov rax, qword [0x14021fc40]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rbx, qword [0x140221790]
cmp byte [rbx + 0x4a9d], 0
jne 0x14005b2c3
mov edi, ecx
cmp byte [rbx + 0x4a9e], 0
je 0x14005b31e
vbroadcastss xmm0, dword [rbx + 0x389c]
vmovsd xmm1, qword [rbx + 0xe08]
vfmadd231ps xmm1, xmm0, xmmword [0x140126050]
vmovlps qword [rbx + 0x47e0], xmm1
mov qword [rbx + 0x47e8], 0
mov dword [rbx + 0x47d4], 1
vmovss xmm0, dword [rbx + 0x3904]
or byte [rbx + 0x47d0], 0x41
vmulss xmm0, xmm0, dword [0x1401260a0]
vmovss dword [rbx + 0x4830], xmm0
mov edi, 1
movsx r9d, word [rbx + 0x5bc2]
lea r8, str.Tooltip__02d
lea rcx, [rsp + 0x20]
mov edx, 0x10
call fcn.14003f530
test dil, 1
je 0x14005b46e
movzx r9d, byte [rsp + 0x20]
test r9b, r9b
je 0x14005b3ad
mov ecx, 0xffffffff
lea rdx, [rsp + 0x22]
lea r8, [0x1401260e0]
mov eax, 0xffffffff
jmp 0x14005b38d
movzx r9d, r9b
movzx r11d, al
shr eax, 8
xor r11d, r9d
xor eax, dword [r8 + r11*4]
inc rdx
mov r9d, r10d
test r10b, r10b
je 0x14005b3a9
movzx r10d, byte [rdx - 1]
cmp r9b, 0x23
jne 0x14005b370
cmp r10b, 0x23
jne 0x14005b370
cmp byte [rdx], 0x23
cmove eax, ecx
mov r10b, 0x23
jmp 0x14005b370
not eax
jmp 0x14005b3af
xor eax, eax
mov rdx, qword [0x140221790]
mov rcx, qword [rdx + 0x3ee0]
movsxd r8, dword [rdx + 0x3ed8]
test r8, r8
je 0x14005b407
mov rdx, rcx
mov r10, r8
mov r9, r8
jmp 0x14005b3e8
mov r10, r9
test r9, r9
je 0x14005b40d
shr r9, 1
mov r11, r9
shl r11, 4
cmp dword [rdx + r11], eax
jae 0x14005b3e0
not r9
add r9, r10
add rdx, r11
add rdx, 0x10
jmp 0x14005b3e0
xor r8d, r8d
mov rdx, rcx
shl r8, 4
add rcx, r8
cmp rdx, rcx
je 0x14005b46e
cmp dword [rdx], eax
jne 0x14005b46e
mov rax, qword [rdx + 8]
test rax, rax
je 0x14005b46e
cmp byte [rax + 0xb6], 0
je 0x14005b46e
mov byte [rax + 0xbb], 1
mov byte [rax + 0xbd], 1
mov byte [rax + 0xd8], 1
movzx eax, word [rbx + 0x5bc2]
inc eax
mov word [rbx + 0x5bc2], ax
movsx r9d, ax
lea r8, str.Tooltip__02d
lea rcx, [rsp + 0x20]
mov edx, 0x10
call fcn.14003f530
or esi, 0x20c0347
lea rcx, [rsp + 0x20]
xor edx, edx
mov r8d, esi
call fcn.14004f6c0
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14011bef0
mov al, 1
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
Function at 0x14005b4b0
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
mov esi, edx
mov rdi, rcx
mov r14, qword [0x140221790]
mov rax, qword [r14 + 0x3ef8]
mov rcx, qword [rax + 0xf8]
movsxd rdx, dword [rax + 0xf0]
mov ebx, dword [rcx + rdx*4 - 4]
movzx r9d, byte [rdi]
test r9b, r9b
je 0x14005b541
not ebx
lea rcx, [rdi + 2]
lea rdx, [0x1401260e0]
mov r8d, ebx
jmp 0x14005b51e
movzx r9d, r9b
movzx r11d, r8b
shr r8d, 8
xor r11d, r9d
xor r8d, dword [rdx + r11*4]
inc rcx
mov r9d, r10d
test r10b, r10b
je 0x14005b53b
movzx r10d, byte [rcx - 1]
cmp r9b, 0x23
jne 0x14005b500
cmp r10b, 0x23
jne 0x14005b500
cmp byte [rcx], 0x23
cmove r8d, ebx
mov r10b, 0x23
jmp 0x14005b500
not r8d
mov ebx, r8d
mov rax, qword [rax]
cmp dword [rax + 0x3f40], ebx
jne 0x14005b55e
mov ecx, ebx
mov edx, 0xb
mov r8, rdi
xor r9d, r9d
call fcn.1400475b0
test byte [r14 + 0x5ce4], 4
je 0x14005b57a
lea rcx, str._popup__OpenPopup___s_____0x_08X__n
mov rdx, rdi
mov r8d, ebx
call fcn.140040f30
mov ecx, ebx
mov edx, esi
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
jmp fcn.14005b590