joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140077410
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
mov rsi, rdx
lea rdx, [0x1400f4cd0]
cmp qword [0x1400f4ce8], 0xf
cmova rdx, qword [0x1400f4cd0]
movabs rbx, 0xcbf29ce484222325
xor ecx, ecx
mov r8, qword [0x1400f4ce0]
test r8, r8
je 0x140077473
movzx eax, byte [rdx + rcx]
xor rbx, rax
movabs r9, 0x100000001b3
imul rbx, r9
inc rcx
cmp rcx, r8
jb 0x140077456
mov r9, rbx
lea r8, [0x1400f4cd0]
lea rdx, [rsp + 0x20]
call fcn.140077b80
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14007749d
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x1400775f3
movabs rax, 0x3ffffffffffffff
cmp qword [0x14014f350], rax
jne 0x1400774be
lea rcx, str.unordered_map_set_too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [0x14014f348]
mov qword [rsp + 0x30], rax
and qword [rsp + 0x38], 0
mov ecx, 0x40
call fcn.140077c70
mov rdi, rax
mov qword [rsp + 0x38], rax
lea rdx, [0x1400f4cd0]
lea rcx, [rax + 0x10]
call fcn.140002f70
and qword [rdi + 0x34], 0
and dword [rdi + 0x30], 0
and dword [rdi + 0x34], 0
and dword [rdi + 0x38], 0
mov r8, qword [0x14014f350]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x14007751d
cvtsi2ss xmm0, rcx
jmp 0x140077532
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x14014f378]
xorps xmm1, xmm1
test rcx, rcx
js 0x140077548
cvtsi2ss xmm1, rcx
jmp 0x14007755d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x14014f340]
jbe 0x140077590
call fcn.1400778a0
mov r9, rbx
lea r8, [rdi + 0x10]
lea rdx, [rsp + 0x30]
call fcn.140077b80
movups xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x20], xmm0
mov r8, qword [0x14014f350]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rcx + 8]
inc r8
mov qword [0x14014f350], r8
mov qword [rdi], rcx
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rcx + 8], rdi
and rbx, qword [0x14014f370]
add rbx, rbx
mov rax, qword [0x14014f358]
mov r8, qword [rax + rbx*8]
cmp r8, qword [0x14014f348]
jne 0x1400775d5
mov qword [rax + rbx*8], rdi
jmp 0x1400775e7
cmp r8, rcx
jne 0x1400775e0
mov qword [rax + rbx*8], rdi
jmp 0x1400775ec
cmp qword [rax + rbx*8 + 8], rdx
jne 0x1400775ec
mov qword [rax + rbx*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
Function at 0x14007760c
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x40
mov r14, r8
mov rsi, rdx
mov rdx, r8
cmp qword [r8 + 0x18], 0xf
jbe 0x140077634
mov rdx, qword [r8]
movabs rbx, 0xcbf29ce484222325
xor ecx, ecx
cmp qword [r8 + 0x10], rcx
jbe 0x140077664
movzx eax, byte [rdx + rcx]
xor rbx, rax
movabs r8, 0x100000001b3
imul rbx, r8
inc rcx
cmp rcx, qword [r14 + 0x10]
jb 0x140077646
mov r9, rbx
mov r8, r14
lea rdx, [rsp + 0x20]
call fcn.140077b80
mov rax, qword [rsp + 0x28]
test rax, rax
je 0x14007768a
mov qword [rsi], rax
mov byte [rsi + 8], 0
jmp 0x140077803
movabs rax, 0x3ffffffffffffff
cmp qword [0x14014f350], rax
jne 0x1400776ab
lea rcx, str.unordered_map_set_too_long
call qword [sym.imp.MSVCP140.dll_void___cdecl_std::_Xlength_error_char_const____ptr64_]
int3
lea rax, [0x14014f348]
mov qword [rsp + 0x30], rax
and qword [rsp + 0x38], 0
mov ecx, 0x40
call fcn.140077c70
mov rdi, rax
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rax + 0x10], xmm0
and qword [rax + 0x20], 0
and qword [rax + 0x28], 0
movups xmm0, xmmword [r14]
movups xmmword [rax + 0x10], xmm0
movups xmm1, xmmword [r14 + 0x10]
movups xmmword [rax + 0x20], xmm1
and qword [r14 + 0x10], 0
mov qword [r14 + 0x18], 0xf
mov byte [r14], 0
and qword [rax + 0x34], 0
and dword [rax + 0x30], 0
and dword [rax + 0x34], 0
and dword [rax + 0x38], 0
mov r8, qword [0x14014f350]
lea rcx, [r8 + 1]
xorps xmm0, xmm0
test rcx, rcx
js 0x14007772d
cvtsi2ss xmm0, rcx
jmp 0x140077742
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm0, rax
addss xmm0, xmm0
mov rcx, qword [0x14014f378]
xorps xmm1, xmm1
test rcx, rcx
js 0x140077758
cvtsi2ss xmm1, rcx
jmp 0x14007776d
mov rax, rcx
shr rax, 1
and ecx, 1
or rax, rcx
cvtsi2ss xmm1, rax
addss xmm1, xmm1
divss xmm0, xmm1
comiss xmm0, dword [0x14014f340]
jbe 0x1400777a0
call fcn.1400778a0
lea r8, [rdi + 0x10]
mov r9, rbx
lea rdx, [rsp + 0x30]
call fcn.140077b80
movups xmm0, xmmword [rax]
movdqu xmmword [rsp + 0x20], xmm0
mov r8, qword [0x14014f350]
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rcx + 8]
inc r8
mov qword [0x14014f350], r8
mov qword [rdi], rcx
mov qword [rdi + 8], rdx
mov qword [rdx], rdi
mov qword [rcx + 8], rdi
and rbx, qword [0x14014f370]
add rbx, rbx
mov rax, qword [0x14014f358]
mov r8, qword [rax + rbx*8]
cmp r8, qword [0x14014f348]
jne 0x1400777e5
mov qword [rax + rbx*8], rdi
jmp 0x1400777f7
cmp r8, rcx
jne 0x1400777f0
mov qword [rax + rbx*8], rdi
jmp 0x1400777fc
cmp qword [rax + rbx*8 + 8], rdx
jne 0x1400777fc
mov qword [rax + rbx*8 + 8], rdi
mov qword [rsi], rdi
mov byte [rsi + 8], 1
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
add rsp, 0x40
pop r14
ret
Function at 0x1400789f8
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140078a42
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140078a42
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140078a42
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140078a42
cmp dword [rcx + 0x84], 0xe
jbe 0x140078a42
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140078a44
xor al, al
add rsp, 0x28
ret

Function at 0x140078c30
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rbx, rdx
lea r8, [rsp + 0x60]
mov edi, ecx
mov edx, 0x20000001
lea rcx, str._x_sys_default_locale
mov r9d, 2
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoEx]
test eax, eax
jne 0x140078c6a
xor r9d, r9d
mov dword [rsp + 0x60], r9d
jmp 0x140078c6f
mov r9d, dword [rsp + 0x60]
and qword [rsp + 0x30], 0
mov r8d, edi
and dword [rsp + 0x28], 0
xor edx, edx
mov ecx, 0x1300
mov qword [rsp + 0x20], rbx
call qword [sym.imp.KERNEL32.dll_FormatMessageA]
mov edx, eax
test eax, eax
je 0x140078cb8
mov r8, qword [rbx]
dec r8
add r8, rdx
movzx ecx, byte [r8]
lea rax, [0x14007ed50]
cmp byte [rcx + rax], 0
je 0x140078cb8
dec r8
sub rdx, 1
jne 0x140078c9e
mov rbx, qword [rsp + 0x50]
mov rax, rdx
add rsp, 0x40
pop rdi
ret

Function at 0x14007947c
Capabilities:
Check if file exists
Get file attributes

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rdx, rcx
mov ecx, 0x105
call fcn.140078d48
mov ebx, eax
test eax, eax
jne 0x1400794ac
and dword [rsp + 0x38], eax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x3c], eax
jmp 0x14007950f
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140079506
test al, 0x10
je 0x140079506
bt eax, 0xa
jae 0x1400794ff
mov r9d, 0x2000000
lea rcx, [rsp + 0x38]
mov r8d, 0x80
mov rdx, rdi
call fcn.140079520
mov rcx, qword [rsp + 0x38]
mov edi, eax
cmp rcx, 0xffffffffffffffff
je 0x1400794fb
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test eax, eax
jne 0x1400794fb
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_abort]
int3
test edi, edi
jne 0x140079506
and dword [rsp + 0x3c], 0
jmp 0x14007950b
or dword [rsp + 0x3c], 0xffffffff
mov dword [rsp + 0x38], ebx
mov rax, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x180003590
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 0x1800035ed
lea rbx, [0x1800ef500]
movzx r8d, byte [r9]
lea r9, [r9 + 1]
dec r10
cmp r8b, 0x23
jne 0x1800035d4
cmp r10, 2
jb 0x1800035d4
cmp byte [r9], r8b
jne 0x1800035d4
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 0x1800035b0
not eax
mov rbx, qword [rsp + 8]
ret
movzx r8d, byte [rcx]
inc r9
test r8b, r8b
je 0x18000362f
lea rbx, [0x1800ef500]
cmp r8b, 0x23
jne 0x180003613
cmp byte [r9], r8b
jne 0x180003613
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 0x180003600
mov rbx, qword [rsp + 8]
not eax
ret

Function at 0x180003770
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rsi
sub rsp, 0x20
mov rsi, r8
mov rbx, rcx
test rcx, rcx
jne 0x18000379f
mov r8d, 0x823
lea rdx, str.C:Users_adminDocumentsonevade_fivemdrugdrug.cpp
lea rcx, str.filename__mode
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
test rsi, rsi
je 0x1800037ab
mov qword [rsi], 0
lea rdx, [0x1800eecd8]
mov rcx, rbx
call fcn.180003640
mov rbx, rax
test rax, rax
jne 0x1800037cd
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop rsi
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 0x180003876
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fseek]
test eax, eax
jne 0x180003876
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_ftell]
movsxd rdi, eax
cmp edi, 0xffffffff
je 0x180003876
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 0x180003876
cmp rdi, 0xffffffffffffffff
je 0x180003876
mov rcx, rdi
call fcn.180006e30
mov rbp, rax
test rax, rax
je 0x180003876
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 0x180003863
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
mov rcx, rbp
call fcn.180006ee0
jmp 0x18000387f
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fclose]
test rsi, rsi
je 0x180003871
mov qword [rsi], rdi
mov rax, rbp
jmp 0x180003881
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]
add rsp, 0x20
pop rsi
ret
Function at 0x180006380
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r14
sub rsp, 0x20
mov eax, dword [rcx + 0x100]
mov r14, rcx
movsxd rbx, edx
mov edi, ebx
mov esi, ebx
mov ebp, ebx
shr edi, 0x18
mov edx, ebx
shr esi, 0x10
mov r8d, ebx
shr ebp, 8
mov r9d, ebx
shr edx, 8
shr r8d, 0x10
movzx r10d, bl
shr r9d, 0x18
test eax, eax
jg 0x1800063f9
mov r8d, 0x78b
lea rdx, str.C:Users_adminDocumentsonevade_fivemdrugdrug.h
lea rcx, str.Size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [r14 + 0x100]
movzx r10d, bl
movzx edx, bpl
movzx r8d, sil
movzx r9d, dil
movsxd rcx, eax
mov rax, qword [r14 + 0x108]
mov edi, dword [rax + rcx*4 - 4]
not edi
movzx eax, r10b
movzx ecx, dil
lea r10, [0x1800ef500]
xor rcx, rax
shr edi, 8
movzx eax, dl
xor edi, dword [r10 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, r8b
xor edi, dword [r10 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
movzx eax, r9b
xor edi, dword [r10 + rcx*4]
movzx ecx, dil
xor rcx, rax
shr edi, 8
xor edi, dword [r10 + rcx*4]
mov rcx, qword [r14]
not edi
cmp dword [rcx + 0x4054], edi
jne 0x180006473
mov r8, rbx
mov edx, 4
mov ecx, edi
call fcn.18001eb90
mov rbx, qword [rsp + 0x50]
mov eax, edi
mov rbp, qword [rsp + 0x58]
add rsp, 0x20
pop r14
pop rdi
pop rsi
ret
Function at 0x180006490
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov eax, dword [rcx + 0x100]
mov rdi, rdx
mov rbx, rcx
test eax, eax
jg 0x1800064ca
mov r8d, 0x78b
lea rdx, str.C:Users_adminDocumentsonevade_fivemdrugdrug.h
lea rcx, str.Size___0
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__wassert]
mov eax, dword [rbx + 0x100]
movss xmm2, dword [rbx + 0x120]
lea r9, [0x1800ef500]
movss xmm0, dword [rdi]
movss xmm3, dword [rbx + 0x124]
subss xmm0, xmm2
movss xmm1, dword [rdi + 4]
movsxd rcx, eax
subss xmm1, xmm3
mov rax, qword [rbx + 0x108]
movss dword [rsp + 0x20], xmm0
movss xmm0, dword [rdi + 8]
mov r8d, dword [rax + rcx*4 - 4]
subss xmm0, xmm2
movzx eax, byte [rsp + 0x20]
not r8d
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x21]
movss dword [rsp + 0x24], xmm1
movss xmm1, dword [rdi + 0xc]
xor r8d, dword [r9 + rcx*4]
subss xmm1, xmm3
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x22]
movss dword [rsp + 0x28], xmm0
movss dword [rsp + 0x2c], xmm1
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x23]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x24]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x25]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x26]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x27]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x28]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x29]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2a]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2b]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2c]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
mov rbx, qword [rsp + 0x40]
xor rcx, rax
movzx eax, byte [rsp + 0x2d]
shr r8d, 8
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
movzx eax, byte [rsp + 0x2e]
xor r8d, dword [r9 + rcx*4]
movzx ecx, r8b
xor rcx, rax
shr r8d, 8
xor r8d, dword [r9 + rcx*4]
movzx ecx, byte [rsp + 0x2f]
movzx edx, r8b
shr r8d, 8
xor rdx, rcx
xor r8d, dword [r9 + rdx*4]
not r8d
mov eax, r8d
add rsp, 0x30
pop rdi
ret
Function at 0x180016920
Capabilities:
Hash data with crc32

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x18010f070]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, qword [0x18011f030]
mov edi, ecx
cmp byte [rbx + 0x4d01], 0
jne 0x180016981
cmp byte [rbx + 0x4d02], 0
jne 0x180016981
movsx r9d, word [rbx + 0x5e58]
lea r8, str.Tooltip__02d
mov edx, reloc.WS2_32.dll_recv
lea rcx, [rsp + 0x20]
call fcn.180003340
test dil, 2
je 0x180016aaf
jmp 0x180016a0a
movss xmm1, dword [rbx + 0x39c4]
lea r8, str.Tooltip__02d
movaps xmm0, xmm1
lea rcx, [rsp + 0x20]
mulss xmm0, dword [0x1800fa974]
xor eax, eax
mulss xmm1, dword [0x1800fa964]
addss xmm0, dword [rbx + 0xe48]
lea edx, [rax + 0x10]
addss xmm1, dword [rbx + 0xe4c]
mov qword [rbx + 0x49e0], rax
mov dword [rbx + 0x49cc], 1
movss dword [rbx + 0x49d8], xmm0
movss dword [rbx + 0x49dc], xmm1
movss xmm0, dword [rbx + 0x3a20]
mulss xmm0, dword [0x1800fa8a0]
or dword [rbx + 0x49c8], 0x41
movss dword [rbx + 0x4a28], xmm0
movsx r9d, word [rbx + 0x5e58]
call fcn.180003340
movzx r9d, byte [rsp + 0x20]
lea r8, [rsp + 0x21]
mov r10d, 0xffffffff
mov ecx, r10d
test r9b, r9b
je 0x180016a60
lea r11, [0x1800ef500]
nop word [rax + rax]
cmp r9b, 0x23
jne 0x180016a43
cmp byte [r8], r9b
jne 0x180016a43
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 0x180016a30
not ecx
call fcn.18000aeb0
test rax, rax
je 0x180016aaf
cmp byte [rax + 0xbe], 0
je 0x180016aaf
mov byte [rax + 0xc3], 1
lea r8, str.Tooltip__02d
mov byte [rax + 0xc5], 1
lea rcx, [rsp + 0x20]
mov byte [rax + 0xe4], 1
mov edx, reloc.WS2_32.dll_recv
inc word [rbx + 0x5e58]
movsx r9d, word [rbx + 0x5e58]
call fcn.180003340
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8d, 0x2030347
call fcn.18000df80
mov al, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1800d5ca0
mov rbx, qword [rsp + 0x50]
add rsp, 0x40
pop rdi
ret
Function at 0x18001d1c0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx + 0x5fb0], 0
mov rsi, r8
mov rbp, rdx
mov rbx, rcx
je 0x18001d243
xor edx, edx
add rcx, 0x5fb8
call fcn.18001f1d0
mov r8, rsi
lea rcx, [rbx + 0x5fb8]
mov rdx, rbp
call fcn.180003fe0
mov eax, dword [rbx + 0x5fb8]
xor edx, edx
mov r9, qword [rbx + 0x5fb0]
test eax, eax
lea ecx, [rax - 1]
mov rax, qword [rbx + 0x5fc0]
cmove ecx, edx
test rax, rax
movsxd r8, ecx
mov edx, 1
lea rcx, [0x18011f038]
cmovne rcx, rax
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
jmp 0x18001d24f
add rcx, 0x5fb8
call fcn.180003fe0
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret

Function at 0x18001d6e0
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 8
movzx r9d, byte [rcx]
lea r8, [rcx + 1]
mov r10, qword [0x18011f030]
mov r11d, 0xffffffff
mov eax, r11d
test r9b, r9b
je 0x18001d743
mov qword [rsp], rbx
lea rbx, [0x1800ef500]
nop dword [rax]
cmp r9b, 0x23
jne 0x18001d723
cmp byte [r8], r9b
jne 0x18001d723
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 0x18001d710
mov rbx, qword [rsp]
movsxd rcx, dword [r10 + 0x5f20]
not eax
mov r8, qword [r10 + 0x5f28]
lea rdx, [rcx + rcx*8]
lea rcx, [r8 + rdx*8]
cmp r8, rcx
je 0x18001d76f
cmp dword [r8 + 8], eax
je 0x18001d776
add r8, 0x48
cmp r8, rcx
jne 0x18001d760
xor eax, eax
add rsp, 8
ret
mov rax, r8
add rsp, 8
ret
Function at 0x18004dd50
Capabilities:
Enumerate processes

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x160
mov rax, qword [0x18010f070]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov rdi, rcx
xor esi, esi
xor edx, edx
lea ecx, [rsi + 2]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
xor edx, edx
lea rcx, [rsp + 0x24]
mov r8d, Ordinal_301
mov rbx, rax
call sub.VCRUNTIME140.dll_memset
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x130
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32First]
test eax, eax
je 0x18004ddff
nop dword [rax]
nop word [rax + rax]
lea rax, [rsp + 0x4c]
mov r8, rdi
sub r8, rax
nop dword [rax + rax]
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x18004dde3
inc rax
test ecx, ecx
jne 0x18004ddd0
test edx, edx
je 0x18004ddfb
lea rdx, [rsp + 0x20]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Process32Next]
test eax, eax
jne 0x18004ddc0
jmp 0x18004ddff
mov esi, dword [rsp + 0x28]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, esi
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.1800d5ca0
lea r11, [rsp + 0x160]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret

Function at 0x18004de30
Capabilities:
Enumerate process modules

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x270
mov rax, qword [0x18010f070]
xor rax, rsp
mov qword [rsp + 0x260], rax
mov edx, dword [0x18011f2b4]
xor edi, edi
lea ecx, [rdi + 0x18]
call qword [sym.imp.KERNEL32.dll_CreateToolhelp32Snapshot]
mov rbx, rax
cmp rax, 0xffffffffffffffff
je 0x18004ded0
lea rdx, [rsp + 0x20]
mov dword [rsp + 0x20], 0x238
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_Module32First]
test eax, eax
je 0x18004ded0
nop dword [rax]
nop word [rax + rax]
mov r8, qword [0x18011f260]
lea rax, [rsp + 0x50]
sub r8, rax
nop
movzx edx, byte [rax]
movzx ecx, byte [rax + r8]
sub edx, ecx
jne 0x18004deb3
inc rax
test ecx, ecx
jne 0x18004dea0
test edx, edx
je 0x18004decb
lea rdx, [rsp + 0x20]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_Module32Next]
test eax, eax
jne 0x18004de90
jmp 0x18004ded0
mov rdi, qword [rsp + 0x38]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rax, rdi
mov rcx, qword [rsp + 0x260]
xor rcx, rsp
call fcn.1800d5ca0
mov rbx, qword [rsp + 0x280]
add rsp, 0x270
pop rdi
ret
Function at 0x18004e690
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0xd], 0
je 0x18004e6b3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax + 0x73]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0xc
jb 0x18004e6a0
mov byte [rcx + 0xd], 0
mov rax, rcx
ret

Function at 0x18004e6c0
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x1d], 0
je 0x18004e6e3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax + 0x73]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0x1c
jb 0x18004e6d0
mov byte [rcx + 0x1d], 0
mov rax, rcx
ret

Function at 0x180050e80
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x168
mov rax, qword [0x18010f070]
xor rax, rsp
mov qword [rsp + 0x150], rax
lea rax, [rsp + 0x40]
mov dword [rsp + 0x40], 0x2000
mov qword [rsp + 0x30], rax
mov rcx, 0xffffffff80000002
lea rax, [rsp + 0x50]
mov r9d, 1
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], 0
call qword [sym.imp.ADVAPI32.dll_RegGetValueA]
lea rax, [rsp + 0x50]
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.1800d5ca0
add rsp, 0x168
ret

Function at 0x180051020
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 0x10], 0
je 0x180051043
xor eax, eax
nop dword [rax + rax]
lea edx, [rax + 0x73]
xor byte [rax + rcx], dl
inc rax
cmp rax, 0xf
jb 0x180051030
mov byte [rcx + 0x10], 0
mov rax, rcx
ret
Function at 0x180051080
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xc0
mov rax, qword [0x18010f070]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov rsi, r8
mov r15, rdx
mov rdi, rcx
mov qword [rbp - 0x51], rcx
mov qword [rbp - 1], r8
xor ebx, ebx
mov dword [rbp - 0x59], ebx
mov qword [rcx], rbx
mov qword [rcx + 0x10], rbx
mov qword [rcx + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rcx], bl
mov dword [rbp - 0x59], 1
call fcn.180081ab0
mov r14, rax
test rax, rax
je 0x180051243
lea rdx, [rbp - 0x21]
mov rcx, rsi
call fcn.18006a3a0
mov rdx, rax
lea rcx, [rbp - 0x41]
call fcn.18004d7b0
nop
lea r9d, [rbx + 5]
lea r8, str.data
mov rcx, rax
call fcn.180074400
movups xmm0, xmmword [rax]
movups xmmword [rbp + 7], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x17], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], bl
mov dword [rbp - 0x59], 5
mov rdx, qword [rbp - 0x29]
cmp rdx, 0x10
jb 0x180051173
inc rdx
mov rcx, qword [rbp - 0x41]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005116e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18005116e
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800d5f5c
mov r8, r15
mov edx, 0x2712
mov rcx, r14
call fcn.180084860
mov dword [rbp - 1], 0x1701111e
mov word [rbp + 3], 0x100
lea eax, [rbx + 0x73]
xor byte [rbp + rbx - 1], al
inc rbx
cmp rbx, 4
jb 0x180051190
mov byte [rbp + 4], 0
lea r8, [rbp - 1]
mov edx, 0x2722
mov rcx, r14
call fcn.180084860
lea r8, [rbp + 7]
cmp qword [rbp + 0x1f], 0x10
cmovae r8, qword [rbp + 7]
mov edx, 0x271f
mov rcx, r14
call fcn.180084860
lea r8, [0x180051050]
mov edx, 0x4e2b
mov rcx, r14
call fcn.180084860
mov r8, rdi
mov edx, 0x2711
mov rcx, r14
call fcn.180084860
mov rcx, r14
call fcn.180081b70
mov rcx, r14
call fcn.180081a90
mov rdx, qword [rbp + 0x1f]
cmp rdx, 0x10
jb 0x180051243
inc rdx
mov rcx, qword [rbp + 7]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18005123d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x18005123d
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.1800d5f5c
nop
mov rcx, rsi
call fcn.18006d1c0
lea rcx, [rsi + 8]
movzx edx, byte [rsi]
call fcn.18006ca80
nop
mov rax, rdi
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800d5ca0
mov rbx, qword [rsp + 0x108]
add rsp, 0xc0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret

Function at 0x180051280
Capabilities:
Encode data using xor

Disassembly:
cmp byte [rcx + 5], 0
je 0x1800512a3
xor eax, eax
nop dword [rax + rax]
lea edx, [rax + 0x73]
xor byte [rax + rcx], dl
inc rax
cmp rax, 4
jb 0x180051290
mov byte [rcx + 5], 0
mov rax, rcx
ret