joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140007c60
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x290
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rsp + 0x280], rax
cmp qword [0x1400d5778], 0
jne 0x140007df7
xor edi, edi
mov dword [rsp + 0x30], edi
lea rcx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
xor edx, edx
mov r8d, 0x208
lea rcx, [rsp + 0x70]
call fcn.140070390
mov dword [rsp + 0x20], 0x4fa3
lea r9, str.nView_Shared_Static_Memory
lea r8, str._s__d
mov edx, 0x208
lea rcx, [rsp + 0x70]
call fcn.140007050
lea rax, [rsp + 0x30]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9d, 0x9110
call fcn.140007120
mov rsi, rax
test rax, rax
je 0x140007e7d
mov ebx, dword [rsp + 0x60]
mov rax, qword [0x1400d5758]
test rax, rax
jne 0x140007d5a
mov ebp, 0x80000000
nop
cmp rbx, rbp
jae 0x140007e05
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rdi
xor r9d, r9d
xor r8d, r8d
mov edx, 0xf001f
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_MapViewOfFileEx]
mov qword [0x1400d5758], rax
mov ecx, dword [rsp + 0x60]
add rbx, rcx
test rax, rax
je 0x140007d20
cmp dword [rsp + 0x30], edi
jne 0x140007d70
xor edx, edx
mov r8d, 0x9110
mov rcx, rax
call fcn.140070390
mov qword [0x1400d5778], rsi
cmp qword [0x1400d57a0], rdi
jne 0x140007ded
call fcn.140007300
mov qword [0x1400d57a0], rax
test rax, rax
je 0x140007ded
mov rcx, qword [0x1400d5758]
mov eax, 1
lock xadd dword [rcx + 0x6c], eax
test eax, eax
jne 0x140007ded
lea rcx, str.WM_TWINVIEW_MESSAGE
call qword [sym.imp.USER32.dll_RegisterWindowMessageW]
mov rcx, qword [0x1400d5758]
mov dword [rcx + 0x28], eax
mov ecx, 8
call fcn.14006b070
mov qword [rsp + 0x30], rax
test rax, rax
je 0x140007ddc
mov rcx, rax
call fcn.14006b010
mov rdi, rax
sub rdi, qword [0x1400d5750]
mov rax, qword [0x1400d5758]
mov qword [rax], rdi
cmp qword [0x1400d5778], 0
je 0x140007e52
cmp qword [0x1400d57a0], 0
je 0x140007e52
mov al, 1
jmp 0x140007e54
test rax, rax
jne 0x140007d5a
call fcn.1400588c0
mov rcx, rax
lea rax, str.Failed_to_map_shared_memory.
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x1fb
lea r9, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewSharedDataMemoryManager.cpp
lea r8, str.ShareStaticMemoryWithProcess
mov edx, 2
call fcn.140058e40
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x1400d5778], rdi
xor al, al
mov rcx, qword [rsp + 0x280]
xor rcx, rsp
call fcn.14006ed70
lea r11, [rsp + 0x290]
mov rbx, qword [r11 + 0x10]
mov rbp, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
call fcn.1400588c0
mov rcx, rax
lea rax, str.Failed_to_create_shared_memory.
mov qword [rsp + 0x28], rax
mov dword [rsp + 0x20], 0x20b
lea r9, str.D:uworkspace_nViewBranchBuilder_sw_nview_v200_nViewSharedDataMemoryManager.cpp
lea r8, str.ShareStaticMemoryWithProcess
mov edx, 2
call fcn.140058e40
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x1400d5778], rsi
jmp 0x140007e52
Function at 0x140008100
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
sub rsp, 0x130
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rsp + 0x120], rax
lea rax, [rsp + 0x40]
xor ebx, ebx
mov r9d, 0x20119
mov qword [rsp + 0x40], rbx
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.SoftwareNVIDIA_CorporationGlobalNVTweak
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400081bc
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x34]
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x38]
lea rax, [rsp + 0x30]
mov dword [rsp + 0x34], 4
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, str.EventLogging
mov dword [rsp + 0x38], 4
mov dword [rsp + 0x30], ebx
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400081b1
mov ebx, dword [rsp + 0x30]
cmp ebx, 4
ja 0x1400081b1
call fcn.1400588c0
mov ecx, 3
cmp ebx, ecx
cmovl ecx, ebx
mov dword [rax + 0x4000], ecx
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov r9, qword [0x1400d57b0]
lea r8, str.Instance_d
mov edx, 0x64
lea rcx, [rsp + 0x50]
call fcn.140004b70
call fcn.1400588c0
mov rcx, rax
lea rdx, [rsp + 0x50]
call fcn.1400592e0
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.14006ed70
add rsp, 0x130
pop rbx
ret

Function at 0x140009c30
Capabilities:
Delete registry key

Disassembly:
push rbp
push rsi
push rdi
push r14
sub rsp, 0x68
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rsp + 0x50], rax
mov rsi, r9
mov rdi, r8
mov r14, rdx
mov rbp, rcx
call qword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
cmp byte [rdi + 0x24], 0
je 0x140009d5c
mov qword [rsp + 0x60], rbx
lea r8, [rsp + 0x30]
xor ebx, ebx
mov r9d, 0xf003f
mov qword [rsp + 0x28], rbx
mov rdx, r14
mov rcx, rbp
mov dword [rsp + 0x20], ebx
call fcn.1400597a0
test eax, eax
jne 0x140009d57
movzx r8d, byte [rdi + 0x24]
lea rdx, str.GridCount
mov rcx, qword [rsp + 0x30]
call fcn.140059dc0
mov r8d, dword [rsi + 8]
lea rdx, str.rcMonitorX
sub r8d, dword [rsi]
mov rcx, qword [rsp + 0x30]
call fcn.140059dc0
mov r8d, dword [rsi + 0xc]
lea rdx, str.rcMonitorY
sub r8d, dword [rsi + 4]
mov rcx, qword [rsp + 0x30]
call fcn.140059dc0
cmp byte [rdi + 0x24], bl
jbe 0x140009d4c
nop
mov ecx, ebx
lea r8, [0x1400b9780]
mov edx, ebx
mov r9d, ebx
add rdx, rdx
movzx eax, word [rdi + rdx*8 + 0x28]
mov word [rsp + 0x38], ax
movzx eax, word [rdi + rdx*8 + 0x2c]
mov word [rsp + 0x3a], ax
lea rax, [rcx + 3]
add rax, rax
lea rcx, [rsp + 0x40]
movzx eax, word [rdi + rax*8]
mov word [rsp + 0x3c], ax
movzx eax, word [rdi + rdx*8 + 0x34]
mov edx, 0xa
mov word [rsp + 0x3e], ax
call fcn.140007050
mov r8, qword [rsp + 0x38]
lea rdx, [rsp + 0x40]
mov rcx, qword [rsp + 0x30]
call fcn.140059e00
movzx eax, byte [rdi + 0x24]
inc ebx
cmp ebx, eax
jb 0x140009ce0
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.14006ed70
add rsp, 0x68
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x140011e80
Capabilities:
Query or enumerate registry key

Disassembly:
mov qword [rsp + 0x20], rbp
push rsi
sub rsp, 0x2a0
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rsp + 0x290], rax
xor ebp, ebp
lea rax, str.SoftwareNVIDIA_CorporationGlobal_nViewProcessManager
test dl, dl
mov qword [rsp + 0x68], rbp
mov rsi, rcx
lea rdx, [rsp + 0x68]
lea rcx, str.SoftwareNVIDIA_CorporationGlobal_nViewProcessManager2
mov r8d, 0xf003f
cmove rcx, rax
lea r9d, [rbp + 1]
call fcn.140059800
mov rcx, qword [rsp + 0x68]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x58], rbp
xor r9d, r9d
mov qword [rsp + 0x50], rbp
xor r8d, r8d
mov qword [rsp + 0x48], rbp
xor edx, edx
mov qword [rsp + 0x40], rbp
mov qword [rsp + 0x38], rbp
mov qword [rsp + 0x30], rbp
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x70], ebp
call qword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
mov eax, dword [rsp + 0x70]
test eax, eax
je 0x1400120e8
mov rcx, qword [rsi + 8]
movabs r10, 0x193d4bb7e327a977
mov r9, qword [rsi]
mov r8, rcx
sub r8, r9
mov qword [rsp + 0x2b8], rbx
sar r8, 3
mov rdx, rax
imul r8, r10
mov qword [rsp + 0x2c0], rdi
cmp rax, r8
jae 0x140011f76
imul rbx, rdx, 0x238
mov rdx, rcx
mov r8, rsi
add rbx, r9
mov rcx, rbx
call fcn.1400123e0
mov qword [rsi + 8], rbx
jmp 0x140011fd9
jbe 0x140011fd9
mov rax, qword [rsi + 0x10]
sub rax, r9
sar rax, 3
imul rax, r10
cmp rdx, rax
jbe 0x140011f96
mov rcx, rsi
call fcn.140012110
jmp 0x140011fd9
sub rdx, r8
je 0x140011fd5
lea rax, [rcx + 0x228]
mov dword [rcx], ebp
add rcx, 0x238
mov qword [rax - 8], rbp
mov qword [rax], 7
mov word [rax - 0x18], bp
mov word [rax - 0x224], bp
mov dword [rax - 0x1c], ebp
mov qword [rax + 8], rbp
lea rax, [rax + 0x238]
sub rdx, 1
jne 0x140011fa2
mov qword [rsi + 8], rcx
xor edx, edx
lea rcx, [rsp + 0x80]
mov r8d, 0x208
mov edi, ebp
call fcn.140070390
mov rcx, qword [rsp + 0x68]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x38], rbp
lea r8, [rsp + 0x80]
mov qword [rsp + 0x30], rbp
xor edx, edx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rbp
mov dword [rsp + 0x60], 0x104
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x1400120cb
nop
mov rcx, qword [rsp + 0x68]
lea rax, [rsp + 0x78]
mov r9d, 0xf003f
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov qword [rsp + 0x78], rbp
lea rdx, [rsp + 0x80]
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14001208b
mov rcx, qword [rsi]
mov rdx, qword [rsp + 0x78]
mov eax, edi
imul rbx, rax, 0x238
add rcx, rbx
call fcn.14005c200
lea rcx, [rsp + 0x80]
call fcn.140085510
mov rcx, qword [rsi]
mov dword [rbx + rcx], eax
mov rcx, qword [rsp + 0x68]
lea r9, [rsp + 0x60]
mov qword [rsp + 0x38], rbp
lea r8, [rsp + 0x80]
mov qword [rsp + 0x30], rbp
inc edi
mov qword [rsp + 0x28], rbp
mov edx, edi
mov qword [rsp + 0x20], rbp
mov dword [rsp + 0x60], 0x104
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
je 0x140012030
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdi, qword [rsp + 0x2c0]
mov al, 1
mov rbx, qword [rsp + 0x2b8]
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.14006ed70
mov rbp, qword [rsp + 0x2c8]
add rsp, 0x2a0
pop rsi
ret
Function at 0x140012bf0
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rbx, rcx
lea rdx, [rsp + 0x50]
xor edi, edi
lea rcx, str.SoftwareNVIDIA_CorporationGlobal_nView
xor r9d, r9d
mov qword [rsp + 0x50], rdi
mov r8d, 0xf003f
call fcn.140059800
test eax, eax
jne 0x140012de7
mov rcx, qword [rsp + 0x50]
lea rdx, str.Tweak
call qword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
mov rcx, qword [rsp + 0x50]
lea r8, [rsp + 0x48]
mov r9d, 0xf003f
mov qword [rsp + 0x28], rdi
lea rdx, str.Tweak
mov qword [rsp + 0x48], rdi
mov dword [rsp + 0x20], edi
call fcn.1400597a0
test eax, eax
jne 0x140012ddc
mov r8d, dword [rbx + 8]
lea rdx, str.OpenOnMonGridId
mov rcx, qword [rsp + 0x48]
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.DetectPhyMon
mov rcx, qword [rsp + 0x48]
shr r8d, 4
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.EdgeSnap
mov rcx, qword [rsp + 0x48]
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.PinSnappedWindows
mov rcx, qword [rsp + 0x48]
shr r8d, 1
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.ModKeysForMaxClick
mov rcx, qword [rsp + 0x48]
shr r8d, 2
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.SystemMenu
mov rcx, qword [rsp + 0x48]
shr r8d, 7
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.TransparentDrag
mov rcx, qword [rsp + 0x48]
shr r8d, 8
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.BlockSpanning
mov rcx, qword [rsp + 0x48]
shr r8d, 9
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.BlockSpanningChild
mov rcx, qword [rsp + 0x48]
shr r8d, 0xa
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.CenterDialog
mov rcx, qword [rsp + 0x48]
shr r8d, 0xb
and r8d, 1
call fcn.140059dc0
mov r8d, dword [rbx + 4]
lea rdx, str.PixelSnap
mov rcx, qword [rsp + 0x48]
call fcn.140059dc0
mov r8d, dword [rbx + 8]
lea rdx, str.OpenOnMonGridId
mov rcx, qword [rsp + 0x48]
call fcn.140059dc0
mov r8d, dword [rbx + 0xc]
lea rdx, str.OpenDialogOnMonGridId
mov rcx, qword [rsp + 0x48]
call fcn.140059dc0
mov r8d, dword [rbx]
lea rdx, str.ButtonBar
mov rcx, qword [rsp + 0x48]
shr r8d, 0xc
and r8d, 1
call fcn.140059dc0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret

Function at 0x140012e10
Capabilities:
Delete registry value

Disassembly:
sub rsp, 0x28
xor r9d, r9d
mov qword [rsp + 0x38], 0
mov r8d, 0xf003f
lea rdx, [rsp + 0x38]
lea rcx, str.SoftwareNVIDIA_CorporationGlobal_nView
call fcn.140059800
test eax, eax
jne 0x140012e8b
mov rcx, qword [rsp + 0x38]
mov qword [rsp + 0x20], rbx
call fcn.140059990
mov rbx, rax
test rax, rax
je 0x140012e7b
lea rdx, str.GridSendTo
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
lea rdx, str.GridMax
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rbx, qword [rsp + 0x20]
add rsp, 0x28
ret
Function at 0x140012fc0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
cmp qword [0x1400d5750], 0
movzx esi, dl
mov rbx, rcx
je 0x1400130e0
mov rax, qword [0x1400d5758]
test byte [rax + 0x60], 4
jne 0x1400130e0
test rcx, rcx
je 0x1400130e0
call qword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x1400130e0
mov rcx, rbx
call qword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x1400130e0
call fcn.140019940
mov rdi, rax
test rax, rax
je 0x1400130e0
mov rcx, rbx
call fcn.140019ed0
test al, al
je 0x1400130e0
mov rdx, rbx
mov rcx, rdi
call fcn.1400196a0
test rax, rax
jne 0x1400130e0
mov dword [rsp + 0x50], eax
lea r9, [rsp + 0x50]
mov rax, qword [0x1400d5758]
mov r8, rbx
mov edx, 0x10
mov rcx, qword [rax]
add rcx, qword [0x1400d5750]
call fcn.14006b310
cmp dword [rsp + 0x50], 0
jne 0x1400130e0
mov rax, qword [0x1400d5758]
mov r9d, 1
mov r8, rbx
mov rcx, qword [rax]
lea edx, [r9 + 0xf]
add rcx, qword [0x1400d5750]
call fcn.14006b5e0
xor sil, 1
xor r9d, r9d
mov r8b, 1
mov byte [rsp + 0x20], sil
mov rdx, rbx
mov rcx, rdi
call fcn.14001abc0
test al, al
jne 0x1400130f2
mov rax, qword [0x1400d5758]
xor r9d, r9d
mov r8, rbx
mov rcx, qword [rax]
lea edx, [r9 + 0x10]
add rcx, qword [0x1400d5750]
call fcn.14006b5e0
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
mov qword [rsp + 0x28], 0
lea r8, [0x140013920]
mov r9, rbx
mov dword [rsp + 0x20], 0
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret
Function at 0x140014fe0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x80]
sub rsp, 0x180
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rbp + 0x70], rax
movzx esi, r8b
mov r14, rdx
mov rbx, rcx
mov rax, qword [0x1400d5758]
test byte [rax + 0x60], 8
jne 0x140015199
call fcn.140019ed0
test al, al
je 0x140015199
call fcn.140019940
mov rdi, rax
test rax, rax
je 0x1400151a1
xor edx, edx
mov r8d, 0xc0
lea rcx, [rsp + 0x40]
call fcn.140070390
xorps xmm0, xmm0
movdqa xmmword [rbp], xmm0
mov ecx, 0x38
call fcn.14006ec1c
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rax + 0x10], rax
mov word [rax + 0x18], 0x101
mov qword [rbp], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x10], xmm0
movups xmmword [rbp + 0x20], xmm0
movups xmmword [rbp + 0x30], xmm0
movups xmmword [rbp + 0x40], xmm0
mov qword [rbp + 0x50], rax
mov byte [rsp + 0x28], 1
mov byte [rsp + 0x20], al
xor r9d, r9d
lea r8, [rsp + 0x40]
mov rdx, rbx
mov rcx, rdi
call fcn.1400197d0
test al, al
je 0x14001514e
xor r15d, r15d
mov rcx, qword [rbp + 0x28]
test rcx, rcx
je 0x1400150df
mov dword [rsp + 0x30], r15d
lea rdx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
cmp dword [rsp + 0x30], 0x103
je 0x14001513f
mov qword [rbp + 0x28], r15
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x60], xmm0
lea rdx, [rbp + 0x60]
mov rcx, rbx
call qword [sym.imp.USER32.dll_GetWindowRect]
test sil, sil
jne 0x140015104
mov eax, dword [rbp + 0x68]
sub eax, dword [rbp + 0x60]
cmp eax, dword [rbp - 4]
je 0x14001514e
mov rcx, rbx
call fcn.140013130
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], r15d
mov r9, rbx
lea r8, [0x1400149e0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rbp + 0x28], rax
lea r8, [rsp + 0x40]
mov rdx, rbx
mov rcx, rdi
call fcn.14001a360
nop
lea rdx, [rbp]
lea rcx, [rbp]
call fcn.140012e90
jmp 0x1400151a1
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rbx
call fcn.140014b50
mov rcx, rbx
call fcn.14001a1d0
xor r8d, r8d
xor edx, edx
mov rcx, r14
call qword [sym.imp.USER32.dll_InvalidateRect]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x14001518a
xor r8d, r8d
xor edx, edx
call qword [sym.imp.USER32.dll_InvalidateRect]
nop
lea rdx, [rbp]
lea rcx, [rbp]
call fcn.140012e90
jmp 0x1400151a1
mov rcx, rbx
call fcn.140013130
mov rcx, qword [rbp + 0x70]
xor rcx, rsp
call fcn.14006ed70
mov rbx, qword [rsp + 0x1c0]
add rsp, 0x180
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x140015890
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
movzx ebx, dl
mov rdi, rcx
call fcn.140019940
test rax, rax
je 0x140015905
mov rdx, rdi
mov rcx, rax
call fcn.1400196a0
test rax, rax
je 0x1400158d9
mov r8d, ebx
xor r9d, r9d
mov edx, 0x465
mov rcx, rax
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
jmp qword [sym.imp.USER32.dll_PostMessageW]
test bl, bl
lea rax, [0x140015850]
lea r8, [0x140015810]
mov r9, rdi
cmovne r8, rax
xor eax, eax
mov qword [rsp + 0x28], rax
xor edx, edx
xor ecx, ecx
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret

Function at 0x140015980
Capabilities:
Get graphical window text

Disassembly:
sub rsp, 0x248
mov rax, qword [0x1400cd548]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov r8d, 0x104
lea rdx, [rsp + 0x20]
call qword [sym.imp.USER32.dll_GetWindowTextW]
lea rdx, [0x14009df10]
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x1400159cb
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rdx, [0x14009df18]
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_lstrcmpW]
test eax, eax
jne 0x1400159ec
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.14006ed70
add rsp, 0x248
ret
Function at 0x140015a10
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x30
mov rbx, rdx
cmp r9d, 1
jne 0x140015aa3
mov rax, qword [0x1400d5758]
xor r9d, r9d
mov r8, rdx
mov rcx, qword [rax]
lea edx, [r9 + 0x10]
add rcx, qword [0x1400d5750]
call fcn.14006b5e0
call fcn.140019940
test rax, rax
je 0x140015bf0
mov rdx, rbx
mov rcx, rax
call fcn.1400196a0
test rax, rax
je 0x140015a7e
xor r9d, r9d
mov edx, 0x465
mov rcx, rax
lea r8d, [r9 + 1]
call qword [sym.imp.USER32.dll_PostMessageW]
mov al, 1
add rsp, 0x30
pop rbx
ret
mov qword [rsp + 0x28], rax
lea r8, [0x140015850]
mov r9, rbx
mov dword [rsp + 0x20], eax
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov al, 1
add rsp, 0x30
pop rbx
ret
cmp r9d, 4
jne 0x140015ac2
cmp qword [rsp + 0x60], 0
mov rcx, rbx
setne dl
call fcn.140015890
mov al, 1
add rsp, 0x30
pop rbx
ret
cmp r8d, 0x8001
jne 0x140015b08
call fcn.140019940
test rax, rax
je 0x140015bf0
mov rdx, rbx
mov rcx, rax
call fcn.1400196a0
test rax, rax
je 0x140015bf0
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
lea edx, [r9 + 0x10]
call qword [sym.imp.USER32.dll_PostMessageW]
mov al, 1
add rsp, 0x30
pop rbx
ret
mov rax, qword [0x1400d5758]
test dword [rax + 0x50], 0x1000
je 0x140015bf0
lea eax, [r8 - 0x8002]
cmp eax, 1
jbe 0x140015be6
cmp r8d, 3
jne 0x140015b59
xor eax, eax
lea r8, [0x140015910]
mov qword [rsp + 0x28], rax
mov r9, rbx
xor edx, edx
mov dword [rsp + 0x20], eax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov al, 1
add rsp, 0x30
pop rbx
ret
cmp r8d, 0xa
jne 0x140015b99
call fcn.140019940
test rax, rax
je 0x140015bf0
mov rdx, rbx
mov rcx, rax
call fcn.1400196a0
test rax, rax
je 0x140015bf0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x466
mov rcx, rax
call qword [sym.imp.USER32.dll_PostMessageW]
mov al, 1
add rsp, 0x30
pop rbx
ret
cmp r8d, 0xb
jne 0x140015bd5
call fcn.140019940
test rax, rax
je 0x140015bf0
mov rdx, rbx
mov rcx, rax
call fcn.1400196a0
test rax, rax
je 0x140015bf0
xor r9d, r9d
xor r8d, r8d
mov edx, 0x467
mov rcx, rax
call qword [sym.imp.USER32.dll_PostMessageW]
mov al, 1
add rsp, 0x30
pop rbx
ret
cmp r8d, 0x800b
je 0x140015be6
xor al, al
add rsp, 0x30
pop rbx
ret
xor edx, edx
mov rcx, rbx
call fcn.140015890
mov al, 1
add rsp, 0x30
pop rbx
ret
Function at 0x14001e6a0
Capabilities:
Delete registry key

Disassembly:
sub rsp, 0x28
call fcn.14001f840
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, 0xf003f
lea rcx, str.SoftwareNVIDIA_CorporationGlobal_nView
call fcn.140059800
test eax, eax
jne 0x14001e71a
mov rcx, qword [rsp + 0x30]
lea rdx, str.DesktopManagement
call qword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
mov rax, qword [0x1400d5758]
mov rcx, qword [rax + 0x18]
add rcx, qword [0x1400d5750]
call fcn.140054ce0
mov rcx, qword [0x1400d5758]
mov rdx, qword [rsp + 0x30]
add rcx, 8
call fcn.140052df0
mov rcx, qword [0x1400d5758]
mov rdx, qword [rsp + 0x30]
add rcx, 0x10
call fcn.1400526c0
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
add rsp, 0x28
ret

Function at 0x14001e730
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x20
mov rbx, qword [rcx]
mov rdi, rcx
call fcn.140052910
mov edx, eax
mov rcx, rdi
call qword [rbx + 0x28]
call fcn.140057780
call fcn.140052910
mov ecx, eax
call fcn.140052a80
call fcn.14001f840
xor r9d, r9d
lea rdx, [rsp + 0x30]
mov r8d, 0xf003f
lea rcx, str.SoftwareNVIDIA_CorporationGlobal_nView
call fcn.140059800
test eax, eax
jne 0x14001e7d4
mov rcx, qword [rsp + 0x30]
lea rdx, str.DesktopManagement
call qword [sym.imp.SHLWAPI.dll_SHDeleteKeyW]
mov rax, qword [0x1400d5758]
mov rcx, qword [rax + 0x18]
add rcx, qword [0x1400d5750]
call fcn.140054ce0
mov rcx, qword [0x1400d5758]
mov rdx, qword [rsp + 0x30]
add rcx, 8
call fcn.140052df0
mov rcx, qword [0x1400d5758]
mov rdx, qword [rsp + 0x30]
add rcx, 0x10
call fcn.1400526c0
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
xor ecx, ecx
mov rbx, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
jmp fcn.14004a9b0
Function at 0x1400211d0
Capabilities:
Enumerate gui resources

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x40
xor ebx, ebx
cmp qword [0x1400cf0d8], rbx
je 0x1400211f3
lea eax, [rbx + 1]
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov ecx, 0x88
call fcn.14006ec1c
mov qword [rsp + 0x50], rax
test rax, rax
je 0x140021211
mov rcx, rax
call fcn.1400203d0
jmp 0x140021214
mov rax, rbx
mov qword [0x1400cf0d8], rax
test rax, rax
je 0x1400213a7
call fcn.140018310
mov rdi, qword [0x1400cf0d8]
cmp qword [rdi + 0x18], 0
jne 0x140021393
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 3
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x18], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0xa
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x20], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0xb
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x28], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0x8000
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x30], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0x8001
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x38], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0x8002
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x40], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0x8003
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x48], rax
mov dword [rsp + 0x30], 2
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], ebx
lea r9, [0x140021c30]
xor r8d, r8d
mov edx, 0x800b
mov ecx, edx
call qword [sym.imp.USER32.dll_SetWinEventHook]
mov qword [rdi + 0x50], rax
xor edx, edx
lea rcx, [0x140021420]
call qword [sym.imp.USER32.dll_EnumWindows]
mov ebx, 1
mov eax, ebx
mov rbx, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret