joyce8/EMBER2024-capa huggingface dataset:
Function at 0x10010db14
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
sub rsp, 0x40
mov rdi, rcx
xor esi, esi
lea rcx, [0x100040d50]
mov r12, rdx
lea ebx, [rsi + 1]
call fcn.10011c52c
and dword [rsp + 0x60], esi
test rdi, rdi
jne 0x10010db94
lea r9d, [rsi + 0x57]
xor ebx, ebx
mov esi, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10010dd47
test byte [rcx + 0x1c], 8
je 0x10010dd47
lea edx, [rdi + 0x67]
lea rax, [0x100040d80]
mov rcx, qword [rcx + 0x10]
lea r8, [0x100004010]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
jmp 0x10010dd47
test r12, r12
jne 0x10010dbd0
lea r9d, [r12 + 0x57]
xor ebx, ebx
mov esi, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10010dd47
test byte [rcx + 0x1c], 8
je 0x10010dd47
lea edx, [rbx + 0x68]
lea rax, [0x1000408e8]
jmp 0x10010db7a
and qword [rsp + 0x30], rsi
and dword [rsp + 0x28], esi
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
mov rcx, rdi
mov dword [rsp + 0x20], 2
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rbp, rax
cmp rax, 0xffffffffffffffff
jne 0x10010dc37
xor ebx, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10010dd33
test byte [rcx + 0x1c], 8
je 0x10010dd33
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [rbp + 0x6a]
jmp 0x10010dd0d
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdx, str.__xml_version_1.0__encoding_UTF_16___
and qword [rsp + 0x20], rax
mov rdi, rdx
lea r9, [rsp + 0x60]
repne scasw ax, word [rdi]
not rcx
sub rcx, rbx
mov rdi, rcx
mov rcx, rbp
add edi, edi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x10010dce1
cmp dword [rsp + 0x60], edi
jne 0x10010dce1
or rcx, 0xffffffffffffffff
xor eax, eax
mov rdi, r12
and qword [rsp + 0x20], rax
repne scasw ax, word [rdi]
lea r9, [rsp + 0x60]
not rcx
mov rdx, r12
sub rcx, rbx
mov rdi, rcx
mov rcx, rbp
add edi, edi
mov r8d, edi
call qword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
je 0x10010dcb3
cmp dword [rsp + 0x60], edi
je 0x10010dd33
xor ebx, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10010dd33
test byte [rcx + 0x1c], 8
je 0x10010dd33
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [rbx + 0x6b]
jmp 0x10010dd0d
xor ebx, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10010dd33
test byte [rcx + 0x1c], 8
je 0x10010dd33
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea edx, [rbx + 0x6a]
mov rcx, qword [0x100176368]
mov r9d, eax
lea rax, [0x10003fe78]
mov rcx, qword [rcx + 0x10]
lea r8, [0x100004010]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
test rbp, rbp
je 0x10010dd47
cmp rbp, 0xffffffffffffffff
je 0x10010dd47
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_CloseHandle]
lea rcx, [0x100040d50]
call fcn.10011c56c
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbp, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
add rsp, 0x40
pop r12
pop rdi
pop rsi
ret
Function at 0x100112c6c
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
push rsi
push rdi
push r12
sub rsp, 0x30
mov r12, rcx
xor ebx, ebx
lea rcx, [0x1000419f0]
lea ebp, [rbx + 1]
call fcn.10011c52c
mov rsi, rbx
mov dword [rsp + 0x50], ebx
cmp r12, rbx
je 0x100112e62
lea r9, [rsp + 0x50]
lea ecx, [rbx + 0x62]
xor r8d, r8d
xor edx, edx
mov word [r12], bx
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
cmp eax, ebx
mov edi, eax
jge 0x100112d13
cmp eax, 0xc0000023
je 0x100112d13
cmp eax, 0x80000005
je 0x100112d13
cmp eax, 0xc0000004
je 0x100112d13
mov ecx, eax
mov ebp, ebx
call fcn.10011c5ac
mov ebx, eax
mov rcx, qword [0x100176368]
lea rdx, [0x100176368]
cmp rcx, rdx
je 0x100112ea6
test byte [rcx + 0x1c], 8
je 0x100112ea6
lea edx, [rsi + 0x18]
lea rax, [0x100041a28]
mov r9d, edi
jmp 0x100112dd7
mov ecx, dword [rsp + 0x50]
call qword [sym.imp.ole32.dll_CoTaskMemAlloc]
mov rsi, rax
cmp rax, rbx
jne 0x100112d61
mov r9d, 0xe
mov ebp, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rdx, [0x100176368]
cmp rcx, rdx
je 0x100112ea6
test byte [rcx + 0x1c], 8
je 0x100112ea6
lea edx, [r9 + 0xb]
lea rax, [0x100041a38]
jmp 0x100112e91
mov r8d, dword [rsp + 0x50]
lea r9, [rsp + 0x50]
mov rdx, rax
mov ecx, 0x62
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
cmp eax, ebx
jge 0x100112df1
mov ecx, eax
mov ebp, ebx
call fcn.10011c5ac
mov ebx, eax
mov rax, qword [0x100176368]
lea rdx, [0x100176368]
cmp rax, rdx
je 0x100112ea6
test byte [rax + 0x1c], 8
je 0x100112ea6
mov r8d, dword [rsp + 0x50]
lea r9, [rsp + 0x50]
mov rdx, rsi
mov ecx, 0x62
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov edx, 0x1a
mov r9d, eax
lea rax, [0x100041a50]
mov rcx, qword [0x100176368]
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000039c0]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
jmp 0x100112ea6
movzx r9d, word [rsi]
mov r8, qword [rsi + 8]
mov edi, 0x104
mov rdx, rdi
mov rcx, r12
shr r9, 1
call fcn.100052448
cmp eax, ebx
jge 0x100112ea6
mov ecx, eax
mov ebp, ebx
call fcn.10011c5d4
mov ebx, eax
mov rax, qword [0x100176368]
lea rdx, [0x100176368]
cmp rax, rdx
je 0x100112ea6
test byte [rax + 0x1c], 8
je 0x100112ea6
movzx r9d, word [rsi]
mov r8, qword [rsi + 8]
mov rdx, rdi
shr r9, 1
mov rcx, r12
call fcn.100052448
mov edx, 0x1b
mov r9d, eax
lea rax, [0x100041ac0]
jmp 0x100112dd0
mov r9d, 0x57
mov ebp, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rdx, [0x100176368]
cmp rcx, rdx
je 0x100112ea6
test byte [rcx + 0x1c], 8
je 0x100112ea6
lea edx, [r9 - 0x41]
lea rax, [0x100041938]
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000039c0]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
mov rcx, rsi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
lea rcx, [0x1000419f0]
call fcn.10011c56c
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, qword [rsp + 0x58]
mov eax, ebp
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r12
pop rdi
pop rsi
ret
Function at 0x100117234
Capabilities:
Get system information on windows
Make suspicious ntquerysysteminformation call

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0x38], rax
xor ebx, ebx
lea rdx, [rsp + 0x20]
xor r9d, r9d
lea r8d, [rbx + 0x14]
lea ecx, [rbx + 0x5a]
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
cmp eax, ebx
jl 0x10011726e
cmp dword [rsp + 0x30], 3
cmovl ebx, dword [rsp + 0x30]
mov eax, ebx
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1001303c0
add rsp, 0x40
pop rbx
ret

Function at 0x10011c7e0
Capabilities:
Access the windows event log

Disassembly:
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x20], r9
push rbx
push rbp
push rsi
push rdi
push r12
sub rsp, 0xa0
mov r12d, ecx
xor ebx, ebx
lea rcx, [0x100043860]
movzx ebp, dx
lea edi, [rbx + 1]
call fcn.10011c52c
lea r8d, [rbx + 0x48]
lea rcx, [rsp + 0x58]
xor edx, edx
mov qword [rsp + 0x50], rbx
call sub.msvcrt.dll_memset
lea rdx, [0x100036da8]
xor ecx, ecx
call qword [sym.imp.ADVAPI32.dll_RegisterEventSourceW]
mov rsi, rax
cmp rax, rbx
jne 0x10011c89b
mov edi, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rdx, qword [0x100176368]
lea rcx, [0x100176368]
cmp rdx, rcx
je 0x10011c9bc
test byte [rdx + 0x1c], 8
je 0x10011c9bc
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x100176368]
lea r8, [0x100003220]
mov rcx, qword [rcx + 0x10]
mov r9d, eax
lea rax, [0x10003fe78]
mov edx, 0xf
mov qword [rsp + 0x20], rax
call fcn.1001062ec
jmp 0x10011c9bc
mov r10d, dword [rsp + 0xe0]
cmp r10d, 0xa
jle 0x10011c8ff
mov r9d, 0x7a
mov edi, ebx
mov ebx, r9d
mov rax, qword [0x100176368]
lea rcx, [0x100176368]
cmp rax, rcx
je 0x10011c9b3
test byte [rax + 0x1c], 8
je 0x10011c9b3
lea rcx, [0x100040f60]
mov dword [rsp + 0x28], r10d
lea edx, [r9 - 0x6a]
mov qword [rsp + 0x20], rcx
mov rcx, qword [rax + 0x10]
lea r8, [0x100003220]
call fcn.10010ce44
jmp 0x10011c9b3
cmp r10d, ebx
lea rcx, [rsp + 0xe8]
jle 0x10011c92b
add rcx, 0xfffffffffffffff8
lea rdx, [rsp + 0x50]
mov r8, r10
add rcx, 8
mov rax, qword [rcx]
mov qword [rdx], rax
add rdx, 8
sub r8, rdi
jne 0x10011c918
mov qword [rsp + 0x40], rbx
lea rax, [rsp + 0x50]
xor r8d, r8d
mov qword [rsp + 0x38], rax
mov dword [rsp + 0x30], ebx
mov word [rsp + 0x28], r10w
mov r9d, r12d
movzx edx, bp
mov rcx, rsi
mov qword [rsp + 0x20], rbx
call qword [sym.imp.ADVAPI32.dll_ReportEventW]
cmp eax, ebx
jne 0x10011c9b3
mov edi, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [0x100176368]
lea rcx, [0x100176368]
cmp rax, rcx
je 0x10011c9b3
test byte [rax + 0x1c], 8
je 0x10011c9b3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x100176368]
lea r8, [0x100003220]
mov rcx, qword [rcx + 0x10]
mov r9d, eax
lea rax, [0x10003fe78]
mov edx, 0x11
mov qword [rsp + 0x20], rax
call fcn.1001062ec
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_DeregisterEventSource]
lea rcx, [0x100043860]
call fcn.10011c56c
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
add rsp, 0xa0
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x10011f948
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x2c0
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0x2b0], rax
xor ebx, ebx
mov rsi, rcx
lea edi, [rbx + 1]
cmp rcx, rbx
jne 0x10011f9b3
lea r9d, [rbx + 0x57]
mov edi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011facd
test byte [rcx + 0x1c], 8
je 0x10011facd
lea edx, [r9 - 0x49]
lea rax, [0x100044520]
jmp 0x10011faa9
lea rcx, [rsp + 0xa0]
mov edx, 0x105
call qword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
cmp eax, ebx
jne 0x10011fa05
mov edi, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011facd
test byte [rcx + 0x1c], 8
je 0x10011facd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0xf
jmp 0x10011fa98
cmp eax, 0x104
jbe 0x10011fa45
mov r9d, 0x7a
mov edi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011facd
test byte [rcx + 0x1c], 8
je 0x10011facd
lea edx, [r9 - 0x6a]
lea rax, [0x100040f60]
jmp 0x10011faa9
lea rdx, [rsp + 0x30]
lea rcx, [rsp + 0xa0]
mov r8d, 0x32
mov word [rsp + 0xa6], bx
call qword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
cmp eax, ebx
jne 0x10011fac0
mov edi, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011facd
test byte [rcx + 0x1c], 8
je 0x10011facd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, 0x11
mov rcx, qword [0x100176368]
mov r9d, eax
lea rax, [0x10003f980]
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002d20]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
jmp 0x10011facd
lea rcx, [rsp + 0x30]
call fcn.10011ca28
mov qword [rsi], rax
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rcx, qword [rsp + 0x2b0]
xor rcx, rsp
call fcn.1001303c0
lea r11, [rsp + 0x2c0]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x10011fd58
Capabilities:
Get disk information

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
push r12
push r13
sub rsp, 0x250
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov rdi, rcx
xor ebx, ebx
lea rcx, [0x1000445e0]
mov r12d, r8d
mov rbp, rdx
lea esi, [rbx + 1]
call fcn.10011c52c
lea rcx, [rsp + 0x32]
xor edx, edx
mov r8d, 0x208
mov word [rsp + 0x30], bx
call sub.msvcrt.dll_memset
cmp rdi, rbx
jne 0x10011fded
lea r9d, [rbx + 0x57]
mov esi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011ffbd
test byte [rcx + 0x1c], 8
je 0x10011ffbd
lea edx, [r9 - 0x41]
lea rax, [0x100041770]
jmp 0x10011ffa8
cmp rbp, rbx
jne 0x10011fe2e
mov r9d, 0x57
mov esi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011ffbd
test byte [rcx + 0x1c], 8
je 0x10011ffbd
lea edx, [r9 - 0x40]
lea rax, [0x1000433e8]
jmp 0x10011ffa8
mov r13d, 0x105
lea r8, [0x10003f300]
lea rcx, [rsp + 0x30]
mov r9, rdi
mov rdx, r13
mov word [rbp], bx
call fcn.100052590
cmp eax, ebx
jge 0x10011feaf
mov ecx, eax
mov esi, ebx
call fcn.10011c5d4
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011ffbd
test byte [rcx + 0x1c], 8
je 0x10011ffbd
lea r8, [0x10003f300]
lea rcx, [rsp + 0x30]
mov r9, rdi
mov rdx, r13
call fcn.100052590
lea rcx, [0x100044620]
mov edx, 0x19
mov qword [rsp + 0x20], rcx
mov r9d, eax
jmp 0x10011ff3b
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x30]
repne scasw ax, word [rdi]
not rcx
sub rcx, rsi
cmp word [rsp + rcx*2 + 0x2e], 0x5c
je 0x10011ff54
lea r8, [0x1000021a0]
lea rcx, [rsp + 0x30]
mov rdx, r13
call fcn.1000524c4
cmp eax, ebx
jge 0x10011ff54
mov ecx, eax
mov esi, ebx
call fcn.10011c5d4
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011ffbd
test byte [rcx + 0x1c], 8
je 0x10011ffbd
lea r8, [0x1000021a0]
lea rcx, [rsp + 0x30]
mov rdx, r13
call fcn.1000524c4
mov edx, 0x1a
mov r9d, eax
lea rax, [0x100044670]
mov qword [rsp + 0x20], rax
mov rcx, qword [0x100176368]
lea r8, [0x100002d20]
mov rcx, qword [rcx + 0x10]
call fcn.1001062ec
jmp 0x10011ffbd
lea rcx, [rsp + 0x30]
mov r8d, r12d
mov rdx, rbp
call qword [sym.imp.KERNEL32.dll_GetVolumeNameForVolumeMountPointW]
cmp eax, ebx
jne 0x10011ffbd
mov esi, ebx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x10011ffbd
test byte [rcx + 0x1c], 8
je 0x10011ffbd
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov rcx, qword [0x100176368]
mov edx, 0x1b
mov r9d, eax
lea rax, [0x1000446b0]
mov rcx, qword [rcx + 0x10]
lea r8, [0x100002d20]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
lea rcx, [0x1000445e0]
call fcn.10011c56c
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, esi
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.1001303c0
mov rbx, qword [rsp + 0x298]
add rsp, 0x250
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x100121ce0
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x40
xor ebx, ebx
mov rbp, r9
mov r12, r8
mov r13, rdx
mov r14, rcx
mov rdi, rbx
mov dword [rax + 0x10], 0x100
mov dword [rax - 0x38], ebx
lea esi, [rbx + 1]
cmp rdx, rbx
je 0x100121e0a
cmp word [rdx], bx
je 0x100121e0a
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov ecx, dword [rsp + 0x78]
call fcn.10011c9e8
mov rdi, rax
cmp rax, rbx
je 0x100121dd9
lea rax, [rsp + 0x78]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov rdx, r13
mov rcx, r14
mov qword [rsp + 0x20], rdi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov r9d, eax
cmp eax, ebx
je 0x100121dac
cmp eax, 0xea
je 0x100121d27
mov esi, ebx
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x100121e4e
test byte [rcx + 0x1c], 8
je 0x100121e4e
mov edx, 0x16
lea rax, [0x100044518]
jmp 0x100121e39
cmp r12, rbx
je 0x100121db8
mov qword [r12], rdi
mov rdi, rbx
cmp rbp, rbx
je 0x100121dc4
mov eax, dword [rsp + 0x78]
mov dword [rbp], eax
mov rcx, qword [rsp + 0x90]
cmp rcx, rbx
je 0x100121e4e
mov eax, dword [rsp + 0x30]
mov dword [rcx], eax
jmp 0x100121e4e
mov r9d, 0xe
mov esi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x100121e4e
test byte [rcx + 0x1c], 8
je 0x100121e4e
lea edx, [r9 + 7]
lea rax, [0x100044b44]
jmp 0x100121e39
mov r9d, 0x57
mov esi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x100121e4e
test byte [rcx + 0x1c], 8
je 0x100121e4e
lea edx, [r9 - 0x43]
lea rax, [0x100044378]
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000029c0]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
mov rcx, rdi
call qword [sym.imp.ole32.dll_CoTaskMemFree]
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r11, [rsp + 0x40]
mov eax, esi
mov rbx, qword [r11 + 0x30]
mov rbp, qword [r11 + 0x40]
mov rsp, r11
pop r14
pop r13
pop r12
pop rdi
pop rsi
ret

Function at 0x100122120
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
xor ebx, ebx
lea edi, [rbx + 1]
cmp rdx, rbx
je 0x100122182
cmp r8, rbx
je 0x100122182
lea r9d, [rbx + 4]
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], r8
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov r9d, eax
cmp eax, ebx
je 0x1001221c6
mov edi, ebx
mov ebx, eax
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x1001221c6
test byte [rcx + 0x1c], 8
je 0x1001221c6
mov edx, 0x24
lea rax, [0x100044518]
jmp 0x1001221b1
mov r9d, 0x57
mov edi, ebx
mov ebx, r9d
mov rcx, qword [0x100176368]
lea rax, [0x100176368]
cmp rcx, rax
je 0x1001221c6
test byte [rcx + 0x1c], 8
je 0x1001221c6
lea edx, [r9 - 0x34]
lea rax, [0x100040ff8]
mov rcx, qword [rcx + 0x10]
lea r8, [0x1000029c0]
mov qword [rsp + 0x20], rax
call fcn.1001062ec
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rbx, qword [rsp + 0x40]
mov eax, edi
add rsp, 0x30
pop rdi
ret
Function at 0x100124310
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x60
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0x58], rax
sub edx, 1
mov rdi, r8
je 0x1001243a7
cmp edx, 1
je 0x100124340
mov ebx, 0xc000000d
jmp 0x1001243cd
and qword [rsp + 0x30], 0
lea r8, [rsp + 0x30]
lea rdx, [0x1000453a8]
call fcn.100124088
mov ebx, eax
test eax, eax
js 0x100124396
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
lea r9, [rsp + 0x40]
xor r8d, r8d
mov edx, 0x23000003
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x38], 0x10
call fcn.1001246e4
mov ebx, eax
test eax, eax
js 0x100124396
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rdi], xmm0
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1001243cd
call fcn.10012786c
jmp 0x1001243cd
xor r9d, r9d
lea rdx, [rsp + 0x40]
lea r8d, [r9 + 0x14]
lea ecx, [r9 + 0x5a]
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov ebx, eax
test eax, eax
js 0x1001243cd
movdqu xmm0, xmmword [rsp + 0x40]
movdqu xmmword [rdi], xmm0
mov eax, ebx
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1001303c0
mov rbx, qword [rsp + 0x78]
add rsp, 0x60
pop rdi
ret
Function at 0x100126ed4
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
xor r10d, r10d
xor r13d, r13d
xor r12d, r12d
cmp dword [rcx], 2
mov r14, r9
mov r15, r8
mov qword [rsp + 0x38], r10
mov rax, rdx
jne 0x100126f15
lea rbp, [rcx + 0x10]
xor esi, esi
lea rbx, [rbp + 0x10]
jmp 0x100126f28
cmp dword [rcx], 6
jne 0x1001270c3
lea rsi, [rcx + 0x10]
xor ebp, ebp
lea rbx, [rsi + 0x10]
cmp dword [rbx], r10d
je 0x100127064
cmp dword [rbx], 6
jne 0x1001270c3
cmp dword [rcx + 8], 0x5c
mov r13d, 0x38
jb 0x1001270c3
mov eax, dword [rcx + 0x40]
add eax, r13d
cmp dword [rcx + 8], eax
jb 0x1001270c3
cmp dword [rcx + 0x38], r10d
jne 0x1001270c3
cmp dword [rcx + 0x48], 5
jne 0x1001270c3
lea rax, [rsp + 0x90]
lea r9, [rsp + 0x38]
xor r8d, r8d
xor edx, edx
add rcx, r13
mov qword [rsp + 0x20], rax
call fcn.1001252bc
mov r10, qword [rsp + 0x38]
mov edi, eax
test eax, eax
js 0x10012709e
cmp dword [rsp + 0x90], 0x2e
jb 0x100126fb6
cmp dword [r10], 3
jne 0x100126fb6
mov eax, dword [r10 + 0x14]
cmp dword [rax + r10], 2
je 0x100126fc0
mov edi, 0xc000000d
jmp 0x10012709e
lea rdx, [rax + r10 + 0x14]
xor eax, eax
or r8, 0xffffffffffffffff
mov rdi, rdx
mov qword [rsp + 0x48], rdx
mov rcx, r8
repne scasw ax, word [rdi]
lea rdi, [r10 + 0x18]
not rcx
lea rdx, [rcx - 1]
mov rcx, r8
repne scasw ax, word [rdi]
add edx, edx
not rcx
mov qword [rsp + 0x40], rdx
lea eax, [rcx + rcx]
mov rcx, qword gs:[0x30]
mov rcx, qword [rcx + 0x60]
lea r8d, [rdx + rax]
xor edx, edx
mov rcx, qword [rcx + 0x30]
mov dword [rsp + 0x30], eax
call qword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov r12, rax
test rax, rax
jne 0x10012702c
mov r10, qword [rsp + 0x38]
mov edi, 0xc0000017
jmp 0x10012709e
mov edi, dword [rsp + 0x40]
mov rdx, qword [rsp + 0x48]
mov rcx, rax
mov r8, rdi
call sub.msvcrt.dll_memcpy
mov rdx, qword [rsp + 0x38]
mov r8d, dword [rsp + 0x30]
lea rcx, [rdi + r12]
add rdx, 0x18
call sub.msvcrt.dll_memcpy
mov r10, qword [rsp + 0x38]
mov rax, qword [rsp + 0x98]
xor edi, edi
test rax, rax
je 0x10012706e
mov qword [rax], rsi
test r15, r15
je 0x100127076
mov qword [r15], rbp
test r14, r14
je 0x10012707e
mov qword [r14], rbx
mov rax, qword [rsp + 0xb8]
test rax, rax
je 0x10012708e
mov dword [rax], r13d
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x10012709e
mov qword [rax], r12
test r10, r10
je 0x1001270c8
mov rax, qword gs:[0x30]
mov r8, qword [rsp + 0x38]
xor edx, edx
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
jmp 0x1001270c8
mov edi, 0xc000000d
mov eax, edi
mov rbx, qword [rsp + 0xa0]
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x100127370
Capabilities:
Get system information on windows
Make suspicious ntquerysysteminformation call

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [0x100175150]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov ebx, 1
lea rdx, [rsp + 0x20]
xor r9d, r9d
lea r8d, [rbx + 0x13]
lea ecx, [rbx + 0x59]
call qword [sym.imp.ntdll.dll_NtQuerySystemInformation]
test eax, eax
js 0x1001273af
xor ebx, ebx
cmp dword [rsp + 0x30], 3
cmovl ebx, dword [rsp + 0x30]
mov eax, ebx
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1001303c0
add rsp, 0x40
pop rbx
ret

Function at 0x100127ae8
Capabilities:
Delete registry key

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x20
and qword [rsp + 0x50], 0
lea r8, [rsp + 0x48]
lea rdx, [rsp + 0x50]
mov rdi, rcx
call fcn.100127e44
test eax, eax
js 0x100127b58
mov eax, dword [rsp + 0x48]
test eax, eax
je 0x100127b58
mov rbx, qword [rsp + 0x50]
mov rsi, rax
mov rdx, qword [rbx]
lea r9, [rsp + 0x58]
mov r8d, 0xf003f
mov rcx, rdi
call fcn.100127ba8
test eax, eax
js 0x100127b4e
mov rcx, qword [rsp + 0x58]
call fcn.100127ae8
test eax, eax
jns 0x100127b4e
mov rcx, qword [rsp + 0x58]
call fcn.10012786c
add rbx, 8
sub rsi, 1
jne 0x100127b1c
cmp qword [rsp + 0x50], 0
je 0x100127b7e
mov rax, qword gs:[0x30]
mov r8, qword [rsp + 0x50]
xor edx, edx
mov rcx, qword [rax + 0x60]
mov rcx, qword [rcx + 0x30]
call qword [sym.imp.ntdll.dll_RtlFreeHeap]
mov rcx, rdi
call qword [sym.imp.ntdll.dll_NtDeleteKey]
mov ebx, eax
test eax, eax
js 0x100127b96
mov rcx, rdi
call qword [sym.imp.ntdll.dll_NtClose]
mov eax, ebx
add rsp, 0x20
pop rdi
pop rsi
pop rbx
ret