joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14001a850
Capabilities:
Check if file exists
Delete file
Get file attributes
Set file attributes

Disassembly:
mov rax, rsp
push rbp
mov rbp, rsp
sub rsp, 0x70
mov qword [rbp - 0x50], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rbp - 8], rax
mov rdi, rcx
call fcn.140001c60
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x14001a899
mov al, 1
jmp 0x14001aa27
mov rcx, rdi
call fcn.140001c60
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.140001c78
nop
lea rcx, [rbp - 0x28]
call fcn.140001c60
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
cmp eax, 0xffffffff
jne 0x14001a900
lea rcx, [rbp - 0x48]
call fcn.140001fec
nop
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x28]
call fcn.14001b370
test al, al
je 0x14001a8f6
lea rcx, [rbp - 0x48]
call fcn.140001c60
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
mov esi, eax
lea rcx, [rbp - 0x48]
call fcn.140001c70
nop
lea rcx, [rbp - 0x28]
call fcn.140001c70
cmp esi, 0xffffffff
jne 0x14001a915
xor al, al
jmp 0x14001aa27
mov rcx, rdi
call fcn.140001c60
mov rdx, rax
lea rcx, [rbp - 0x28]
call fcn.140001c78
nop
lea rcx, [rbp - 0x28]
call fcn.140001c60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
je 0x14001a946
xor bl, bl
jmp 0x14001a991
lea rcx, [rbp - 0x48]
call fcn.140001fec
nop
lea rdx, [rbp - 0x48]
lea rcx, [rbp - 0x28]
call fcn.14001b370
test al, al
je 0x14001a986
lea rcx, [rbp - 0x48]
call fcn.140001c60
mov rcx, rax
xor edx, edx
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
test eax, eax
je 0x14001a986
lea rcx, [rbp - 0x48]
call fcn.140001c70
xor bl, bl
jmp 0x14001a991
lea rcx, [rbp - 0x48]
call fcn.140001c70
mov bl, 1
lea rcx, [rbp - 0x28]
call fcn.140001c70
test bl, bl
jne 0x14001a90e
mov rcx, rdi
call fcn.140001c60
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x14001a892
lea rcx, [rbp - 0x28]
call fcn.140001fec
nop
lea rdx, [rbp - 0x28]
mov rcx, rdi
call fcn.14001b370
test al, al
je 0x14001a9ef
lea rcx, [rbp - 0x28]
call fcn.140001c60
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x14001a9ef
mov bl, 1
jmp 0x14001aa1b
mov rcx, rdi
call fcn.140001c60
mov rdx, rax
lea rcx, [rbp - 0x48]
call fcn.140001c78
nop
mov edx, esi
lea rcx, [rbp - 0x48]
call fcn.14001a710
nop
lea rcx, [rbp - 0x48]
call fcn.140001c70
xor bl, bl
lea rcx, [rbp - 0x28]
call fcn.140001c70
movzx eax, bl
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1400a08a0
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x14001b0c0
Capabilities:
Get common file path

Disassembly:
jmp 0x14001b0c0
push rbp
sub rsp, 0x480
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x460], rax
mov rbp, rcx
call fcn.140002db8
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x412
call fcn.1400a2390
lea rdx, [rsp + 0x40]
mov ecx, 0x208
call qword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
dec eax
cmp eax, 0x206
jbe 0x14001b115
xor al, al
jmp 0x14001b33d
mov qword [rsp + 0x498], rbx
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x4a0], rsi
mov qword [rsp + 0x4a8], rdi
mov qword [rsp + 0x478], r14
mov qword [rsp + 0x470], r15
xor r15d, r15d
mov word [rsp + 0x450], r15w
call fcn.140001de4
mov rcx, rbp
mov rsi, rax
call fcn.140001ca0
mov rdi, rax
mov r14, qword [rax + 0x18]
cmp rsi, r14
ja 0x14001b1a3
mov rbx, rax
cmp r14, 8
jb 0x14001b176
mov rbx, qword [rax]
mov r8, rsi
mov qword [rax + 0x10], rsi
lea rdx, [rsp + 0x40]
mov rcx, rbx
call fcn.140001ddc
lea rcx, [rbx + rsi*2]
mov word [rsp + 0x20], r15w
lea rdx, [rsp + 0x20]
call fcn.140001dd4
jmp 0x14001b313
mov rcx, rbp
call fcn.140001f74
cmp rsi, rax
ja 0x14001b356
mov rcx, rbp
call fcn.140001f74
mov rcx, rsi
mov rbx, rax
or rcx, 7
mov qword [rsp + 0x38], rcx
cmp rcx, rax
ja 0x14001b208
mov rcx, rbp
call fcn.140001ca0
mov rdx, qword [rax + 0x18]
mov rax, rbx
mov rcx, rdx
shr rcx, 1
sub rax, rcx
cmp rdx, rax
ja 0x14001b208
lea rax, [rcx + rdx]
lea rdx, [rsp + 0x30]
mov qword [rsp + 0x30], rax
lea rcx, [rsp + 0x38]
call fcn.140001d84
mov rbx, qword [rax]
lea rax, [rbx + 1]
movabs rcx, 0x7fffffffffffffff
lea rdx, [rax + rax]
mov r8, 0xffffffffffffffff
cmp rax, rcx
jbe 0x14001b22b
mov rdx, r8
jmp 0x14001b234
cmp rdx, 0x1000
jb 0x14001b25e
lea rcx, [rdx + 0x27]
cmp rcx, rdx
cmovbe rcx, r8
call fcn.1400a08c4
mov rcx, rax
test rax, rax
je 0x14001b35c
add rax, 0x27
and rax, 0xffffffffffffffe0
mov qword [rax - 8], rcx
jmp 0x14001b270
test rdx, rdx
je 0x14001b26d
mov rcx, rdx
call fcn.1400a08c4
jmp 0x14001b270
mov rax, r15
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0x40]
mov qword [rdi + 0x10], rsi
mov r8, rsi
mov qword [rdi + 0x18], rbx
mov rbx, qword [rsp + 0x28]
mov rcx, rbx
call fcn.140001ddc
lea rcx, [rbx + rsi*2]
mov word [rsp + 0x20], r15w
lea rdx, [rsp + 0x20]
call fcn.140001dd4
cmp r14, 8
jb 0x14001b2eb
mov rcx, qword [rdi]
lea rdx, [r14*2 + 2]
cmp rdx, 0x1000
jb 0x14001b2dc
mov r8, qword [rcx - 8]
add rdx, 0x27
sub rcx, r8
lea rax, [rcx - 8]
cmp rax, 0x1f
ja 0x14001b35c
mov rcx, r8
call fcn.1400a0900
mov rax, qword [rsp + 0x28]
mov qword [rdi], rax
jmp 0x14001b313
lea rcx, [rsp + 0x28]
call fcn.140001ca0
mov rcx, rdi
mov rbx, rax
call fcn.140001ca0
mov rdx, rax
mov ecx, 8
call fcn.140001bf0
mov rcx, qword [rbx]
mov qword [rax], rcx
mov r14, qword [rsp + 0x478]
mov al, 1
mov rdi, qword [rsp + 0x4a8]
mov rsi, qword [rsp + 0x4a0]
mov rbx, qword [rsp + 0x498]
mov r15, qword [rsp + 0x470]
mov rcx, qword [rsp + 0x460]
xor rcx, rsp
call fcn.1400a08a0
add rsp, 0x480
pop rbp
ret
call fcn.140001f60
int3
call fcn.1400a4d80
int3
Function at 0x14001c1a0
Capabilities:
Get disk information

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x60
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov r15d, r8d
mov r12, rdx
mov rbp, rcx
xor esi, esi
mov qword [rsp + 0x48], rsi
mov ebx, esi
mov qword [rsp + 0x48], rbx
cmp r8d, 0x3fe
jbe 0x14001c263
lea ecx, [r15 + 2]
mov eax, 2
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400a10cc
mov r12, rax
mov rbx, rax
mov qword [rsp + 0x48], rax
mov rdx, rax
mov ecx, r15d
call qword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
test eax, eax
je 0x14001c238
cmp eax, r15d
ja 0x14001c238
mov ecx, eax
mov word [rbx + rcx*2], si
lea ecx, [rax + 1]
mov word [rbx + rcx*2], si
mov r15d, eax
jmp 0x14001c293
test r12, r12
je 0x14001c245
mov rcx, r12
call fcn.1400a0900
xor al, al
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.1400a08a0
add rsp, 0x60
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, r15
add rax, rax
cmp rax, 0x800
jae 0x14001c345
mov word [rax + rdx], si
lea eax, [r15 + 1]
mov ecx, eax
add rcx, rcx
cmp rcx, 0x800
jae 0x14001c33f
mov word [rcx + rdx], si
mov edi, esi
test r15d, r15d
je 0x14001c32b
mov r14, r12
cmp word [r14], 0
jne 0x14001c31c
cmp esi, edi
je 0x14001c31c
mov eax, esi
lea rdx, [r12 + rax*2]
lea rcx, [rsp + 0x28]
call fcn.140001c78
nop
lea rcx, [rsp + 0x28]
call fcn.140001ca0
mov rsi, rax
mov rcx, rbp
call fcn.140001ca0
mov rdx, rax
call fcn.140002e90
mov rcx, qword [rax]
cmp qword [rdx + 0x10], rcx
mov rdx, qword [rbp + 8]
je 0x14001c303
mov ecx, 0x20
call fcn.140001bf0
mov rdx, rsi
mov rcx, rax
call fcn.140002e18
add qword [rbp + 8], 0x20
jmp 0x14001c30f
mov r8, rsi
mov rcx, rbp
call fcn.140005d80
nop
lea rcx, [rsp + 0x28]
call fcn.140001c70
lea esi, [rdi + 1]
inc edi
add r14, 2
cmp edi, r15d
jb 0x14001c2a1
test rbx, rbx
je 0x14001c338
mov rcx, rbx
call fcn.1400a0900
mov al, 1
jmp 0x14001c247
call fcn.1400a0a10
int3
call fcn.1400a0a10
int3
Function at 0x14002ebd0
Capabilities:
Write file on windows

Disassembly:
test rdx, rdx
je 0x14002ede6
mov r11, rsp
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [r11 - 0x68], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rdi, rdx
mov rsi, rcx
xor bpl, bpl
xor r14d, r14d
mov qword [r11 - 0x60], r14
lea rdx, [rcx + 0x18]
lea rcx, [r11 - 0x60]
call fcn.140001c04
nop
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x14002ec56
cmp rdi, qword [rax]
je 0x14002ec43
add rax, 0x18
cmp rax, rcx
jne 0x14002ec33
jmp 0x14002ec56
lea r8, [rsp + 0x48]
mov rdx, rdi
mov rcx, rsi
call fcn.14002edf0
movzx ebp, al
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x14002ec73
mov rcx, qword [rcx]
test rcx, rcx
je 0x14002ec6e
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
lea rdx, [rsi + 0x18]
lea rcx, [rsp + 0x50]
call fcn.140001c04
nop
mov rbx, qword [rsi]
mov rax, qword [rsi + 8]
cmp rbx, rax
je 0x14002edaa
cmp rdi, qword [rbx]
je 0x14002ecaa
add rbx, 0x18
cmp rbx, rax
jne 0x14002ec97
jmp 0x14002edaa
test bpl, bpl
je 0x14002ed79
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbx + 0x10], eax
xor ecx, ecx
call fcn.1400a7fa4
mov qword [rbx + 8], rax
mov rcx, qword [rbx]
test rcx, rcx
je 0x14002ed79
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x68]
call fcn.1400260a0
nop
lea rcx, [rsp + 0x68]
call fcn.140002da0
test al, al
jne 0x14002ed6f
lea rcx, [rsp + 0x68]
call fcn.140001c60
mov rcx, rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x14002ed6f
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rsp + 0x58], r14d
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x58]
mov r8d, 8
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rsp + 0x68]
call fcn.140001c70
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x14002ed96
mov rcx, qword [rax]
test rcx, rcx
je 0x14002ed91
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x50], r14
mov rcx, rdi
test bpl, bpl
je 0x14002eda2
mov dl, 1
jmp 0x14002eda4
xor edx, edx
call fcn.140025cb0
nop
lea rcx, [rsp + 0x50]
call fcn.140001c2c
nop
lea rcx, [rsp + 0x48]
call fcn.140001c2c
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1400a08a0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x14002ebd9
Capabilities:
Write file on windows

Disassembly:
test rdx, rdx
je 0x14002ede6
mov r11, rsp
push rsi
push rdi
push r14
sub rsp, 0x90
mov qword [r11 - 0x68], 0xfffffffffffffffe
mov qword [r11 + 0x18], rbx
mov qword [r11 + 0x20], rbp
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x88], rax
mov rdi, rdx
mov rsi, rcx
xor bpl, bpl
xor r14d, r14d
mov qword [r11 - 0x60], r14
lea rdx, [rcx + 0x18]
lea rcx, [r11 - 0x60]
call fcn.140001c04
nop
mov rax, qword [rsi]
mov rcx, qword [rsi + 8]
cmp rax, rcx
je 0x14002ec56
cmp rdi, qword [rax]
je 0x14002ec43
add rax, 0x18
cmp rax, rcx
jne 0x14002ec33
jmp 0x14002ec56
lea r8, [rsp + 0x48]
mov rdx, rdi
mov rcx, rsi
call fcn.14002edf0
movzx ebp, al
mov rcx, qword [rsp + 0x48]
test rcx, rcx
je 0x14002ec73
mov rcx, qword [rcx]
test rcx, rcx
je 0x14002ec6e
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x50], r14
lea rdx, [rsi + 0x18]
lea rcx, [rsp + 0x50]
call fcn.140001c04
nop
mov rbx, qword [rsi]
mov rax, qword [rsi + 8]
cmp rbx, rax
je 0x14002edaa
cmp rdi, qword [rbx]
je 0x14002ecaa
add rbx, 0x18
cmp rbx, rax
jne 0x14002ec97
jmp 0x14002edaa
test bpl, bpl
je 0x14002ed79
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbx + 0x10], eax
xor ecx, ecx
call fcn.1400a7fa4
mov qword [rbx + 8], rax
mov rcx, qword [rbx]
test rcx, rcx
je 0x14002ed79
mov qword [rsp + 0x60], rax
lea rdx, [rsp + 0x68]
call fcn.1400260a0
nop
lea rcx, [rsp + 0x68]
call fcn.140002da0
test al, al
jne 0x14002ed6f
lea rcx, [rsp + 0x68]
call fcn.140001c60
mov rcx, rax
mov qword [rsp + 0x30], r14
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbx, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x14002ed6f
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rsp + 0x58], r14d
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x58]
mov r8d, 8
lea rdx, [rsp + 0x60]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
lea rcx, [rsp + 0x68]
call fcn.140001c70
mov rax, qword [rsp + 0x50]
test rax, rax
je 0x14002ed96
mov rcx, qword [rax]
test rcx, rcx
je 0x14002ed91
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov qword [rsp + 0x50], r14
mov rcx, rdi
test bpl, bpl
je 0x14002eda2
mov dl, 1
jmp 0x14002eda4
xor edx, edx
call fcn.140025cb0
nop
lea rcx, [rsp + 0x50]
call fcn.140001c2c
nop
lea rcx, [rsp + 0x48]
call fcn.140001c2c
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1400a08a0
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rsi
ret
Function at 0x1400302b0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rdi
sub rsp, 0x80
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0xa0], rbx
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rdi, rdx
mov r8, rcx
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
je 0x14003044b
mov dword [rsp + 0x50], 0x2d2d4352
mov dword [rsp + 0x54], 0xf7babac9
mov dword [rsp + 0x58], 0x61726f43
mov dword [rsp + 0x5c], 0x776f7242
mov dword [rsp + 0x60], 0x2d756e45
mov dword [rsp + 0x64], 0x61746144
mov dword [rsp + 0x68], 0x37313630
mov dword [rsp + 0x6c], 0x30313032
movdqa xmm2, xmmword [0x1400eeed0]
xor eax, eax
mov ecx, 1
movd xmm3, ecx
lea rcx, [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmm0, xmmword [rcx]
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx], xmm1
add eax, 4
lea rcx, [rcx + 0x10]
cmp eax, 8
jl 0x140030350
mov rax, qword [rdx]
mov qword [rdx + 8], rax
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
xor ebx, ebx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov rdx, qword [r8]
mov rax, qword [r8 + 8]
sub rax, rdx
test rdx, rdx
je 0x140030403
lea r9, [rsp + 0x38]
mov r8d, eax
lea rcx, [rsp + 0x50]
call fcn.1400244b0
mov rbx, qword [rsp + 0x38]
test al, al
je 0x140030403
cmp rbx, qword [rsp + 0x40]
je 0x140030403
mov rdx, rdi
mov ecx, 0xa
call fcn.14003ac60
mov ecx, dword [rsp + 0x40]
sub ecx, ebx
mov rdx, rdi
call fcn.14003ac60
mov r9, qword [rsp + 0x40]
mov r8, rbx
mov rdx, qword [rdi + 8]
mov rcx, rdi
call fcn.1400307a0
nop
test rbx, rbx
je 0x14003044b
mov rdx, qword [rsp + 0x48]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x140030431
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140030469
mov rcx, rbx
call fcn.1400a0900
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], 0
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1400a08a0
mov rbx, qword [rsp + 0xa0]
add rsp, 0x80
pop rdi
ret
call fcn.1400a4d80
int3
Function at 0x140030470
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rax, qword [rcx]
mov r10, rcx
mov rcx, qword [rcx + 8]
mov rdi, r8
mov rbx, rdx
cmp rax, rcx
je 0x140030675
mov rdx, qword [rdx]
sub rcx, rax
cmp rdx, rcx
jae 0x140030675
lea rax, [rdx + 5]
cmp rax, rcx
ja 0x140030675
lea r8, [rdx + 1]
mov qword [rbx], r8
mov rax, qword [r10]
cmp byte [rdx + rax], 2
jne 0x140030675
lea rcx, [r8 + 1]
mov qword [rbx], rcx
lea rdx, [rcx + 1]
mov rax, qword [r10]
movzx r9d, byte [rax + r8]
lea r8, [rdx + 1]
mov qword [rbx], rdx
mov rax, qword [r10]
shl r9d, 0x18
movzx ecx, byte [rcx + rax]
mov qword [rbx], r8
mov rax, qword [r10]
shl ecx, 0x10
or r9d, ecx
movzx ecx, byte [rax + rdx]
lea rdx, [r8 + 1]
mov qword [rbx], rdx
mov r11, qword [r10]
shl ecx, 8
or r9d, ecx
movzx eax, byte [r11 + r8]
or r9d, eax
cmp r9d, 0xa
jne 0x140030675
mov rcx, qword [r10 + 8]
lea rax, [rdx + 5]
sub rcx, r11
cmp rax, rcx
ja 0x140030675
lea r8, [rdx + 1]
mov qword [rbx], r8
mov rax, qword [r10]
cmp byte [rdx + rax], 2
jne 0x140030675
lea rcx, [r8 + 1]
mov qword [rbx], rcx
lea rdx, [rcx + 1]
mov rax, qword [r10]
movzx r11d, byte [rax + r8]
lea r8, [rdx + 1]
mov qword [rbx], rdx
mov rax, qword [r10]
shl r11d, 0x18
movzx ecx, byte [rax + rcx]
mov qword [rbx], r8
mov rax, qword [r10]
shl ecx, 0x10
or r11d, ecx
movzx ecx, byte [rax + rdx]
shl ecx, 8
or r11d, ecx
lea rcx, [r8 + 1]
mov qword [rbx], rcx
mov rdx, qword [r10]
movzx eax, byte [rdx + r8]
or r11d, eax
mov rax, qword [r10 + 8]
sub rax, rcx
mov esi, r11d
sub rax, rdx
cmp rsi, rax
ja 0x140030675
movdqa xmm2, xmmword [0x1400eeed0]
mov ecx, 1
mov dword [rsp + 0x20], 0x2d2d4352
xor eax, eax
mov dword [rsp + 0x24], 0xf7babac9
mov dword [rsp + 0x28], 0x61726f43
movd xmm3, ecx
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x2c], 0x776f7242
mov dword [rsp + 0x30], 0x2d756e45
mov dword [rsp + 0x34], 0x61746144
mov dword [rsp + 0x38], 0x37313630
mov dword [rsp + 0x3c], 0x30313032
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
lea rcx, [rcx + 0x10]
movd xmm1, eax
add eax, 4
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
cmp eax, 8
jl 0x140030610
mov rax, qword [rdi]
mov qword [rdi + 8], rax
mov rcx, qword [rbx]
mov rax, qword [r10]
lea rdx, [rcx + rax]
test rdx, rdx
jne 0x14003065a
xor al, al
add rcx, rsi
mov qword [rbx], rcx
jmp 0x140030677
mov r9, rdi
lea rcx, [rsp + 0x20]
mov r8d, r11d
call fcn.1400249a0
mov rcx, qword [rbx]
add rcx, rsi
mov qword [rbx], rcx
jmp 0x140030677
xor al, al
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1400a08a0
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x14006c5d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1e0]
sub rsp, 0x2e0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x330], rbx
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rbp + 0x1d0], rax
mov rbx, rdx
mov r15, rcx
mov rsi, qword [rdx + 8]
mov rdi, qword [rdx]
cmp rdi, rsi
je 0x14006c634
nop
mov rcx, rdi
call fcn.140001c70
add rdi, 0x20
cmp rdi, rsi
jne 0x14006c620
mov rdi, qword [rbx]
mov qword [rbx + 8], rdi
mov rcx, qword [r15]
test rcx, rcx
je 0x14006c835
lea rdx, str.RegOpenKeyExW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
lea rdx, str.RegEnumKeyExW
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
lea rdx, str.RegCloseKey
mov rcx, qword [r15]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r13, rax
mov qword [rsp + 0x40], rax
test rdi, rdi
je 0x14006c835
test r14, r14
je 0x14006c835
test rax, rax
je 0x14006c835
mov dword [rbp - 0x80], 0x6f0053
mov dword [rbp - 0x7c], 0x740066
mov dword [rbp - 0x78], 0x610077
mov dword [rbp - 0x74], 0x650072
mov dword [rbp - 0x70], 0x4d005c
mov dword [rbp - 0x6c], 0x630069
mov dword [rbp - 0x68], 0x6f0072
mov dword [rbp - 0x64], 0x6f0073
mov dword [rbp - 0x60], 0x740066
mov dword [rbp - 0x5c], 0x43005c
mov dword [rbp - 0x58], 0x460054
mov dword [rbp - 0x54], 0x54005c
mov dword [rbp - 0x50], 0x500049
xor esi, esi
mov word [rbp - 0x4c], si
mov qword [rsp + 0x70], rsi
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp - 0x80]
mov rcx, 0xffffffff80000002
call rdi
test eax, eax
jne 0x14006c835
mov edi, esi
xor edx, edx
mov r8d, 0x208
lea rcx, [rbp - 0x40]
call fcn.1400a2390
mov dword [rsp + 0x78], 0x104
mov qword [rsp + 0x38], rsi
mov qword [rsp + 0x30], rsi
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x20], rsi
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x40]
xor edx, edx
mov rcx, qword [rsp + 0x70]
call r14
test eax, eax
jne 0x14006c82d
lea rcx, [rsp + 0x50]
call fcn.140001ca0
mov rsi, rax
mov rcx, rbx
call fcn.140001ca0
mov r15, rax
call fcn.140002e90
mov r12, rax
xor r13d, r13d
nop word [rax + rax]
lea rdx, [rbp - 0x40]
lea rcx, [rsp + 0x50]
call fcn.140001c78
nop
mov rcx, qword [r12]
mov rdx, qword [rbx + 8]
cmp qword [r15 + 0x10], rcx
je 0x14006c7d9
mov ecx, 0x20
call fcn.140001bf0
mov rdx, rsi
mov rcx, rax
call fcn.140002e18
add qword [rbx + 8], 0x20
jmp 0x14006c7e5
mov r8, rsi
mov rcx, rbx
call fcn.140005d80
nop
lea rcx, [rsp + 0x50]
call fcn.140001c70
inc edi
mov dword [rsp + 0x78], 0x104
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x78]
lea r8, [rbp - 0x40]
mov edx, edi
mov rcx, qword [rsp + 0x70]
call r14
test eax, eax
je 0x14006c7a0
mov r13, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x70]
call r13
mov rcx, qword [rbp + 0x1d0]
xor rcx, rsp
call fcn.1400a08a0
mov rbx, qword [rsp + 0x330]
add rsp, 0x2e0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14006d560
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
mov qword [rbp - 0x21], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x14011c018]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov rsi, rcx
xor edi, edi
mov rcx, qword [rcx]
test rcx, rcx
je 0x14006d712
lea rdx, str.RegOpenKeyExW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
lea rdx, str.RegQueryValueExW
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
lea rdx, str.RegCloseKey
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test r15, r15
je 0x14006d712
test r14, r14
je 0x14006d712
test rax, rax
je 0x14006d712
mov dword [rbp - 9], 0x65004b
mov dword [rbp - 5], 0x620079
mov dword [rbp - 1], 0x61006f
mov dword [rbp + 3], 0x640072
mov dword [rbp + 7], 0x4c0020
mov dword [rbp + 0xb], 0x790061
mov dword [rbp + 0xf], 0x75006f
mov dword [rbp + 0x13], 0x5c0074
mov dword [rbp + 0x17], 0x720050
mov dword [rbp + 0x1b], 0x6c0065
mov dword [rbp + 0x1f], 0x61006f
mov dword [rbp + 0x23], 0x64
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x19], rdi
mov edx, 0x20019
lea rcx, [rbp - 0x29]
call fcn.14008aaf0
mov rcx, rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp - 9]
call r15
test eax, eax
jne 0x14006d6da
xor eax, eax
mov qword [rbp + 0x27], rax
mov qword [rbp + 0x2f], rax
mov dword [rbp + 0x37], eax
mov dword [rbp - 0x11], 0x14
lea rax, [rbp - 0x11]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x27]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x1400ecf98]
mov rcx, qword [rbp - 0x19]
call r14
test eax, eax
jne 0x14006d6d4
xor edx, edx
lea r8d, [rdi + 0x10]
lea rcx, [rbp + 0x27]
call fcn.1400a95e8
mov edi, eax
mov rcx, qword [rbp - 0x19]
call rbx
mov rbx, qword [rbp - 0x29]
test rbx, rbx
je 0x14006d6f0
lea rcx, [rbp - 0x29]
call fcn.14008ac30
mov rbx, qword [rbp - 0x29]
test edi, edi
je 0x14006d700
mov edx, edi
mov rcx, rsi
call fcn.14006d740
mov edi, eax
test rbx, rbx
je 0x14006d70e
lea rcx, [rbp - 0x29]
call fcn.14008ac30
mov eax, edi
jmp 0x14006d714
xor eax, eax
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.1400a08a0
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret