joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401cb320
Capabilities:
Query or enumerate registry value

Disassembly:
push rdi
sub rsp, 0x60
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x70], rbx
mov rbx, r8
mov rdi, rcx
test r8, r8
jne 0x1401cb346
xor eax, eax
jmp 0x1401cb482
mov qword [rsp + 0x48], 0
lea rcx, [rsp + 0x40]
call fcn.14003ebf0
mov dword [rsp + 0x80], 0
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
mov r9d, 1
xor r8d, r8d
mov rdx, rdi
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1401cb45e
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x48], rcx
mov dword [rsp + 0x88], 4
lea rax, [rsp + 0x88]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x30]
xor r8d, r8d
mov rdx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1401cb428
cmp dword [rsp + 0x30], 4
jne 0x1401cb428
mov eax, dword [rsp + 0x80]
mov dword [rbx], eax
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb411
mov rcx, qword [rdx]
mov r8, qword [rcx]
call qword [rreloc.OLEAUT32.dll_VariantClear + 8]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1401cb421
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
jmp 0x1401cb482
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb44a
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x1401cb45a
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x1401cb482
mov rdx, qword [rsp + 0x40]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb480
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
xor eax, eax
mov rbx, qword [rsp + 0x70]
add rsp, 0x60
pop rdi
ret
Function at 0x1401cb4b0
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
sub rsp, 0x50
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov ebx, r9d
mov qword [rsp + 0x40], 0
mov rdx, r8
lea rcx, [rsp + 0x38]
call fcn.14003ebf0
mov qword [rsp + 0x30], 0
lea rax, [rsp + 0x30]
mov qword [rsp + 0x20], rax
mov r9d, 2
xor r8d, r8d
lea rdx, str.SOFTWARESRS_LabsAPO
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1401cb5bb
mov rcx, qword [rsp + 0x30]
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x68], ebx
mov dword [rsp + 0x28], 4
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 4
xor r8d, r8d
mov rdx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
je 0x1401cb582
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb56e
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401cb57e
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor eax, eax
jmp 0x1401cb5df
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb5a4
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x1401cb5b4
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
jmp 0x1401cb5df
mov rdx, qword [rsp + 0x38]
add rdx, 0xffffffffffffffe8
or eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x1401cb5dd
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
nop
xor eax, eax
add rsp, 0x50
pop rbx
ret
Function at 0x1401ec130
Capabilities:
Check os version
Set registry value

Disassembly:
push rbx
sub rsp, 0x1e0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1d0], rax
mov ebx, ecx
lea rcx, [rsp + 0xb0]
mov dword [rsp + 0xb0], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0xb4], 6
jae 0x1401ec17c
mov ecx, ebx
call fcn.1401ec370
jmp 0x1401ec34a
mov rax, qword [0x1403375d0]
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x1f0], rsi
mov qword [rcx], rax
mov rax, qword [0x1403375d8]
mov qword [rsp + 0x1f8], rdi
mov qword [rcx + 8], rax
mov rax, qword [0x1403375e0]
xor edi, edi
test ebx, ebx
mov qword [rcx + 0x10], rax
mov rax, qword [0x1403375e8]
mov qword [rcx + 0x18], rax
mov rax, qword [0x1403375f0]
lea esi, [rdi + 1]
mov qword [rcx + 0x20], rax
mov rax, qword [0x1403375f8]
mov qword [rcx + 0x28], rax
mov rax, qword [0x140337600]
mov qword [rcx + 0x30], rax
mov rax, qword [0x140337608]
mov qword [rcx + 0x38], rax
mov eax, dword [0x140337610]
mov dword [rcx + 0x40], eax
mov dword [rsp + 0x64], edi
mov dword [rsp + 0x68], edi
mov dword [rsp + 0x6c], edi
mov dword [rsp + 0x70], edi
je 0x1401ec26a
sub ebx, esi
je 0x1401ec248
sub ebx, esi
je 0x1401ec22f
cmp ebx, esi
je 0x1401ec220
mov edi, 0x80000000
jmp 0x1401ec338
test byte [0x1403375e8], 8
je 0x1401ec216
mov dword [rsp + 0x70], esi
jmp 0x1401ec26a
mov eax, dword [0x1403375e8]
test al, 4
je 0x1401ec216
test sil, al
mov dword [rsp + 0x6c], esi
je 0x1401ec26a
mov dword [rsp + 0x64], esi
jmp 0x1401ec26a
mov eax, dword [0x1403375e8]
test al, 2
je 0x1401ec261
test sil, al
mov dword [rsp + 0x68], esi
je 0x1401ec26a
mov dword [rsp + 0x64], esi
jmp 0x1401ec26a
test sil, al
je 0x1401ec216
mov dword [rsp + 0x64], esi
cmp dword [0x14033762c], edi
mov dword [rsp + 0x60], 0xaeaeaeae
jne 0x1401ec290
lea rdx, [rsp + 0x60]
lea rcx, [0x1403375d0]
call fcn.1401ee900
jmp 0x1401ec338
mov qword [rsp + 0x40], rdi
lea rax, [rsp + 0x50]
lea rdx, str.SoftwareRealtekAEAPO
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rdi
xor r9d, r9d
xor r8d, r8d
mov rcx, 0xffffffff80000002
mov dword [rsp + 0x28], 0x102
mov dword [rsp + 0x20], edi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x1401ec31a
mov rcx, qword [rsp + 0x50]
lea rax, [rsp + 0x60]
lea rdx, str.CapProperties
mov r9d, 3
xor r8d, r8d
mov dword [rsp + 0x28], 0x44
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, qword [rsp + 0x50]
test eax, eax
mov ebx, edi
cmove ebx, esi
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
je 0x1401ec31a
lea rdx, str.WriteRegistry_successful
jmp 0x1401ec321
lea rdx, str.WriteRegistry_failed
or r9d, 0xffffffff
lea rcx, [0x1403375d0]
mov dword [rsp + 0x20], edi
or r8d, r9d
call fcn.1401eed80
mov rsi, qword [rsp + 0x1f0]
mov eax, edi
mov rdi, qword [rsp + 0x1f8]
mov rcx, qword [rsp + 0x1d0]
xor rcx, rsp
call fcn.14022b9b0
add rsp, 0x1e0
pop rbx
ret
Function at 0x1401ec5a0
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
xor ebx, ebx
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jb 0x1401ec670
cmp dword [0x140337620], ebx
lea edi, [rbx + 1]
jne 0x1401ec64a
mov r8d, edi
xor edx, edx
xor ecx, ecx
mov dword [0x140337624], ebx
mov dword [0x140337620], edi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1401ec64a
lea r8d, [rbx + 4]
lea rdx, str.AERTFilters
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1401ec641
mov rcx, rax
mov dword [0x140337624], edi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [0x140337624], ebx
je 0x1401ec767
mov eax, dword [0x1403375e8]
test dil, al
jne 0x1401ec669
test al, 2
je 0x1401ec767
mov eax, edi
jmp 0x1401ec769
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea rcx, str..AndreaFilterRealtek
lea r8d, [r9 + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rsi, rax
je 0x1401ec767
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
mov r9d, 0x34
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ec704
cmp dword [rsp + 0x40], ebx
je 0x1401ec704
cmp dword [rsp + 0x50], ebx
je 0x1401ec704
mov ebx, 1
jmp 0x1401ec75e
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
mov edi, 1
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
lea r8, [rsp + 0x48]
lea r9d, [rdi + 0x33]
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ec75e
cmp dword [rsp + 0x40], ebx
je 0x1401ec75e
cmp dword [rsp + 0x50], ebx
cmovne ebx, edi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1401ec790
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
xor ebx, ebx
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jb 0x1401ec855
cmp dword [0x140337620], ebx
jne 0x1401ec838
mov edi, 1
xor edx, edx
xor ecx, ecx
mov r8d, edi
mov dword [0x140337624], ebx
mov dword [0x140337620], edi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1401ec838
lea r8d, [rbx + 4]
lea rdx, str.AERTFilters
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1401ec82f
mov rcx, rax
mov dword [0x140337624], edi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [0x140337624], ebx
je 0x1401ec8f1
mov eax, dword [0x1403375e8]
shr eax, 2
and eax, 1
jmp 0x1401ec8f3
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea rcx, str..AndreaFilterRealtek
lea r8d, [r9 + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rsi, rax
je 0x1401ec8f1
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
mov r9d, 0x34
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], 3
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ec8e8
cmp dword [rsp + 0x40], ebx
je 0x1401ec8e8
cmp dword [rsp + 0x50], ebx
mov edi, 1
cmovne ebx, edi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1401ec920
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
xor ebx, ebx
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jb 0x1401ec9e5
cmp dword [0x140337620], ebx
jne 0x1401ec9c8
mov edi, 1
xor edx, edx
xor ecx, ecx
mov r8d, edi
mov dword [0x140337624], ebx
mov dword [0x140337620], edi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1401ec9c8
lea r8d, [rbx + 4]
lea rdx, str.AERTFilters
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1401ec9bf
mov rcx, rax
mov dword [0x140337624], edi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [0x140337624], ebx
je 0x1401eca81
mov eax, dword [0x1403375e8]
shr eax, 3
and eax, 1
jmp 0x1401eca83
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea rcx, str..AndreaFilterRealtek
lea r8d, [r9 + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rsi, rax
je 0x1401eca81
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
mov r9d, 0x34
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], 2
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401eca78
cmp dword [rsp + 0x40], ebx
je 0x1401eca78
cmp dword [rsp + 0x50], ebx
mov edi, 1
cmovne ebx, edi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1401ecab0
Capabilities:
Check os version
Create thread
Resume thread

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x160
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov rsi, rcx
lea rcx, [rsp + 0x30]
mov rdi, rdx
mov dword [rsp + 0x30], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x34], 6
jae 0x1401ecaf7
mov eax, 0x80000000
jmp 0x1401eccce
mov qword [rsp + 0x180], rbp
mov qword [rsp + 0x188], r12
xor ebp, ebp
cmp dword [0x14032f314], ebp
mov qword [rsp + 0x190], r13
mov ebx, 0x80000000
lea r13, [0x14032ef30]
lea r12, [0x14032f070]
jne 0x1401ecc83
mov rax, r13
mov qword [rax], rbp
add rax, 0x10
cmp rax, r12
jl 0x1401ecb33
cmp qword [0x140337658], rbp
lea rax, [0x1401eccf0]
mov qword [0x140337660], rbp
mov qword [0x140337618], rax
jne 0x1401ecbe1
lea r9, [0x1403375d0]
lea r8, [0x1401eeb90]
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 4
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
mov qword [0x140337650], rax
jne 0x1401ecb9e
mov dword [0x140337634], 1
jmp 0x1401ecbe1
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
mov dword [0x140337634], ebp
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rcx, qword [0x140337650]
xor edx, edx
mov qword [0x140337658], rax
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov rcx, qword [0x140337650]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
cmp qword [0x140337708], rbp
lea rax, [0x1401ecef0]
mov qword [0x140337710], rbp
mov qword [0x1403376d0], rax
jne 0x1401ecc83
lea r9, [0x140337670]
lea r8, [0x1401eff00]
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 4
call qword [sym.imp.KERNEL32.dll_CreateThread]
test rax, rax
mov qword [0x140337700], rax
jne 0x1401ecc40
mov dword [0x1403376e4], 1
jmp 0x1401ecc83
xor r9d, r9d
xor r8d, r8d
xor ecx, ecx
lea edx, [r9 + 1]
mov dword [0x1403376e4], ebp
call qword [sym.imp.KERNEL32.dll_CreateEventW]
mov rcx, qword [0x140337700]
xor edx, edx
mov qword [0x140337708], rax
call qword [sym.imp.KERNEL32.dll_SetThreadPriority]
mov rcx, qword [0x140337700]
call qword [sym.imp.KERNEL32.dll_ResumeThread]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_Sleep]
mov ecx, ebp
mov rax, r13
cmp qword [rax], rbp
je 0x1401ecc9b
add rax, 0x10
add ecx, 1
cmp rax, r12
jl 0x1401ecc88
jmp 0x1401eccb4
movsxd rax, ecx
mov ebx, ebp
add rax, rax
add dword [0x14032f314], 1
mov qword [r13 + rax*8], rsi
mov qword [r13 + rax*8 + 8], rdi
mov r13, qword [rsp + 0x190]
mov r12, qword [rsp + 0x188]
mov rbp, qword [rsp + 0x180]
mov eax, ebx
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.14022b9b0
add rsp, 0x160
pop rdi
pop rsi
pop rbx
ret
Function at 0x1401ecf60
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
xor ebx, ebx
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jb 0x1401ed022
cmp dword [0x140337620], ebx
jne 0x1401ed008
mov edi, 1
xor edx, edx
xor ecx, ecx
mov r8d, edi
mov dword [0x140337624], ebx
mov dword [0x140337620], edi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1401ed008
lea r8d, [rbx + 4]
lea rdx, str.AERTFilters
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1401ecfff
mov rcx, rax
mov dword [0x140337624], edi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [0x140337624], ebx
je 0x1401ed0ba
mov eax, dword [0x1403375e8]
and eax, 1
jmp 0x1401ed0bc
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea rcx, str..AndreaFilterRealtek
lea r8d, [r9 + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rsi, rax
je 0x1401ed0ba
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
lea r8, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
mov r9d, 0x34
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ed0b1
cmp dword [rsp + 0x40], ebx
je 0x1401ed0b1
cmp dword [rsp + 0x50], ebx
mov edi, 1
cmovne ebx, edi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1401ed0f0
Capabilities:
Check os version

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
xor ebx, ebx
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jb 0x1401ed1b4
cmp dword [0x140337620], ebx
jne 0x1401ed198
mov edi, 1
xor edx, edx
xor ecx, ecx
mov r8d, edi
mov dword [0x140337624], ebx
mov dword [0x140337620], edi
call qword [sym.imp.ADVAPI32.dll_OpenSCManagerW]
test rax, rax
mov rsi, rax
je 0x1401ed198
lea r8d, [rbx + 4]
lea rdx, str.AERTFilters
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_OpenServiceW]
test rax, rax
je 0x1401ed18f
mov rcx, rax
mov dword [0x140337624], edi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
cmp dword [0x140337624], ebx
je 0x1401ed24a
mov eax, dword [0x1403375e8]
shr eax, 1
and eax, 1
jmp 0x1401ed24c
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea rcx, str..AndreaFilterRealtek
lea r8d, [r9 + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rsi, rax
je 0x1401ed24a
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
mov edi, 1
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
lea r8, [rsp + 0x48]
lea r9d, [rdi + 0x33]
mov edx, 0x222004
mov rcx, rsi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], edi
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ed241
cmp dword [rsp + 0x40], ebx
je 0x1401ed241
cmp dword [rsp + 0x50], ebx
cmovne ebx, edi
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov eax, ebx
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
lea r11, [rsp + 0x1b0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret
Function at 0x1401ed280
Capabilities:
Check os version

Disassembly:
push rbx
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jae 0x1401ed36e
xor ebx, ebx
lea rcx, str..AndreaFilterRealtek
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea r8d, [rbx + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x1c0], rdi
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rdi, rax
je 0x1401ed362
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
lea r9d, [rbx + 0x34]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
lea r8, [rsp + 0x48]
mov edx, 0x222004
mov rcx, rdi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x48], ebx
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ed359
cmp dword [rsp + 0x40], ebx
je 0x1401ed359
cmp dword [rsp + 0x54], ebx
mov eax, 1
cmovne ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rdi, qword [rsp + 0x1c0]
mov eax, ebx
jmp 0x1401ed381
test byte [0x1403375e8], 1
mov eax, 0
cmovne eax, dword [0x1403375d4]
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
add rsp, 0x1b0
pop rbx
ret

Function at 0x1401ed3a0
Capabilities:
Check os version

Disassembly:
push rbx
sub rsp, 0x1b0
mov rax, qword [0x14031eda0]
xor rax, rsp
mov qword [rsp + 0x1a0], rax
lea rcx, [rsp + 0x80]
mov dword [rsp + 0x80], 0x114
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
cmp dword [rsp + 0x84], 6
jae 0x1401ed49e
xor ebx, ebx
lea rcx, str..AndreaFilterRealtek
xor r9d, r9d
mov qword [rsp + 0x30], rbx
lea r8d, [rbx + 3]
mov edx, 0xc0000000
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x1c8], rdi
mov dword [rsp + 0x20], 3
call qword [sym.imp.KERNEL32.dll_CreateFileW]
cmp rax, 0xffffffffffffffff
mov rdi, rax
je 0x1401ed492
mov qword [rsp + 0x38], rbx
lea rax, [rsp + 0x40]
mov qword [rsp + 0x1c0], rsi
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x48]
lea r9d, [rbx + 0x34]
lea r8, [rsp + 0x48]
mov esi, 1
mov edx, 0x222004
mov rcx, rdi
mov dword [rsp + 0x28], 0x34
mov dword [rsp + 0x40], 0x34
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x48], esi
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
test eax, eax
je 0x1401ed481
cmp dword [rsp + 0x40], ebx
je 0x1401ed481
cmp dword [rsp + 0x54], ebx
cmovne ebx, esi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rsi, qword [rsp + 0x1c0]
mov rdi, qword [rsp + 0x1c8]
mov eax, ebx
jmp 0x1401ed4b1
test byte [0x1403375e8], 2
mov eax, 0
cmovne eax, dword [0x1403375d8]
mov rcx, qword [rsp + 0x1a0]
xor rcx, rsp
call fcn.14022b9b0
add rsp, 0x1b0
pop rbx
ret