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

Disassembly:
push rsi
sub rsp, 0x670
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x660], rax
xor edx, edx
lea rcx, [rsp + 0x460]
mov r8d, 0x200
call fcn.14003f490
xor esi, esi
lea rcx, [rsp + 0x60]
xor edx, edx
mov qword [rsp + 0x58], rsi
mov r8d, 0x200
mov qword [rsp + 0x48], rsi
mov qword [rsp + 0x40], rsi
call fcn.14003f490
xor edx, edx
lea rcx, [rsp + 0x260]
mov r8d, 0x200
call fcn.14003f490
lea edx, [rsi + 0x16]
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
mov r9d, 0x20019
lea rax, [rsp + 0x40]
xor r8d, r8d
mov rcx, 0xffffffff80000002
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14001a111
mov qword [rsp + 0x680], rbx
mov ebx, esi
mov qword [rsp + 0x688], rbp
lea rbp, [0x1400760ac]
mov qword [rsp + 0x690], rdi
nop dword [rax + rax]
mov rcx, qword [rsp + 0x40]
lea rax, [rsp + 0x58]
mov qword [rsp + 0x38], rax
lea r9, [rsp + 0x54]
lea rax, [rsp + 0x50]
mov dword [rsp + 0x54], 0x100
mov qword [rsp + 0x30], rax
lea r8, [rsp + 0x60]
lea rax, [rsp + 0x460]
mov dword [rsp + 0x50], 0x100
mov qword [rsp + 0x28], rax
mov edx, ebx
mov qword [rsp + 0x20], rsi
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x14001a0ee
lea edx, [rax + 0x7f]
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov edx, 0x16
lea rcx, [0x140088710]
mov rdi, rax
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rsp + 0x60]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], rcx
lea r8, str._s_s_s_s
lea rcx, [rsp + 0x260]
mov qword [rsp + 0x20], rbp
mov r9, rax
mov edx, 0x100
call fcn.14000e0c0
lea rax, [rsp + 0x48]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x260]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14001a0e0
lea edx, [rax + 0x16]
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov r9, rax
lea r8, str._s_s_s
lea rax, [rsp + 0x60]
mov edx, 0x80
mov qword [rsp + 0x28], rax
lea rcx, [0x1400898a4]
mov qword [rsp + 0x20], rbp
call fcn.14000e0c0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc ebx
cmp ebx, 0x3e8
jb 0x140019fb0
mov rcx, qword [rsp + 0x40]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rdi, qword [rsp + 0x690]
mov rbp, qword [rsp + 0x688]
mov rbx, qword [rsp + 0x680]
mov rcx, qword [rsp + 0x660]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x670
pop rsi
ret
Function at 0x14001ddb0
Capabilities:
Get file version info

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov r13, qword [rsp + 0xb0]
mov rbp, rcx
xor eax, eax
lea rcx, [rsp + 0x20]
mov qword [rsp + 0x20], rax
mov r12, r9
mov r15, r8
mov r14, rdx
call fcn.140017ad0
mov rcx, rbp
mov dword [rsp + 0x30], eax
call fcn.140009de0
mov rcx, rax
lea rdx, [rsp + 0x30]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov esi, eax
test eax, eax
jne 0x14001de21
lea rcx, [rsp + 0x20]
call fcn.140017ad0
jmp 0x14001dee3
mov qword [rsp + 0x50], rbx
mov rcx, rsi
mov qword [rsp + 0x48], rdi
call fcn.140009a50
mov rbx, rax
test rax, rax
je 0x14001de4a
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.14003f490
jmp 0x14001de4c
xor ebx, ebx
mov rcx, rbp
call fcn.140009de0
mov edx, dword [rsp + 0x30]
mov r9, rbx
mov r8d, esi
mov rcx, rax
call sub.VERSION.dll_GetFileVersionInfoW
mov rdi, qword [rsp + 0x48]
test eax, eax
je 0x14001decc
lea r9, [rsp + 0x34]
mov qword [rsp + 0x28], 0
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1400760ac]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x14001decc
mov rdx, qword [rsp + 0x28]
lea rcx, [rsp + 0x20]
movzx eax, word [rdx + 0x12]
mov dword [r14], eax
movzx eax, word [rdx + 0x10]
mov dword [r15], eax
movzx eax, word [rdx + 0x16]
mov dword [r12], eax
movzx eax, word [rdx + 0x14]
mov dword [r13], eax
call fcn.140017ad0
mov rcx, rbx
call fcn.14003d894
jmp 0x14001dede
mov rcx, rbx
call fcn.14003d894
lea rcx, [rsp + 0x20]
call fcn.140017ad0
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
Function at 0x14001f2f0
Capabilities:
Create directory
Get common file path
Write file on windows

Disassembly:
push rbx
sub rsp, 0x480
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x470], rax
xor edx, edx
mov dword [0x14008e2ec], 1
mov r8d, 0x208
lea rcx, [rsp + 0x260]
call fcn.14003f490
xor edx, edx
lea rcx, [rsp + 0x50]
mov r8d, 0x208
call fcn.14003f490
lea rdx, [rsp + 0x50]
mov ecx, 0x102
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov edx, 0x85
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea r9, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
mov edx, 0x104
lea rcx, [rsp + 0x260]
call fcn.14000e0c0
lea rcx, [rsp + 0x260]
call fcn.14000d510
test eax, eax
jne 0x14001f3c1
xor eax, eax
mov qword [rsp + 0x38], 0x18
lea rdx, [rsp + 0x38]
mov qword [rsp + 0x48], rax
lea rcx, [rsp + 0x260]
mov qword [rsp + 0x40], rax
call qword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov edx, 0xba
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x260]
lea rax, [0x14005c630]
mov edx, 0x104
lea r8, str._s_s_s
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
call fcn.14000e0c0
lea rcx, [rsp + 0x50]
call fcn.14000d510
test eax, eax
jne 0x14001f45a
call fcn.140010700
lea r8, [0x140060a70]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x30]
call fcn.140044fd8
test eax, eax
jne 0x14001f45a
mov r9, qword [rsp + 0x30]
lea r8d, [rax + 1]
mov edx, 0x38d0
lea rcx, [0x14005d1a0]
call fcn.140045e08
mov rcx, qword [rsp + 0x30]
call fcn.1400450b4
mov edx, 0xbc
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov edx, 0xbb
lea rcx, [0x14008da10]
mov rbx, rax
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov ecx, dword [0x14008e35c]
lea r8, [rsp + 0x50]
mov r9, rax
mov qword [rsp + 0x20], rbx
lea rdx, [0x1400898a4]
call fcn.14000d3e0
mov dword [0x14008e2dc], eax
mov rcx, qword [rsp + 0x470]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x480
pop rbx
ret
Function at 0x14001fb00
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x250
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x240], rax
xor r13d, r13d
mov ebp, 1
cmp dword [0x14008e2dc], ebp
mov rsi, rdx
mov rdi, rcx
jne 0x14001fbca
mov rdx, rcx
mov r9d, ebp
mov ecx, 0xf0000
mov r8d, 0x10000
call fcn.14000d950
test eax, eax
je 0x14001fbca
lea rbp, [rdi + 0xffdf]
mov rbx, rdi
cmp rdi, rbp
jae 0x14001fbc5
mov r14d, dword [str._SM_]
movzx r15d, byte [0x1400633b8]
mov r12d, dword [str._SM3_]
cmp dword [rbx], r14d
jne 0x14001fb9c
mov edx, 0x1f
mov rcx, rbx
call fcn.140017d30
test eax, eax
je 0x14001fcb1
cmp dword [rbx], r12d
jne 0x14001fbbc
cmp byte [rbx + 4], r15b
jne 0x14001fbbc
mov edx, 0x18
mov rcx, rbx
call fcn.140017d30
test eax, eax
je 0x14001fcfc
add rbx, 0x10
cmp rbx, rbp
jb 0x14001fb82
mov ebp, 1
xor edx, edx
mov qword [rsp + 0x30], r13
mov r8d, 0x200
lea rcx, [rsp + 0x40]
call fcn.14003f490
lea rax, str.ServicesmssmbiosData
mov edx, 0x100
lea r9, [0x1400898a4]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
lea rcx, [rsp + 0x40]
call fcn.14000e0c0
lea rax, [rsp + 0x30]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x40]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14001fc83
xor edx, edx
mov dword [rsp + 0x38], 0x20000
mov r8d, 0x20000
mov rcx, rdi
call fcn.14003f490
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
lea rdx, str.SMBiosData
xor r9d, r9d
mov qword [rsp + 0x20], rdi
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rsp + 0x30]
test eax, eax
cmove r13d, ebp
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, r13d
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14003da20
mov rbx, qword [rsp + 0x2a0]
add rsp, 0x250
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
movzx eax, word [rbx + 0x16]
xor edx, edx
mov dword [rsi + 4], eax
mov r8d, 0x20000
mov ebx, dword [rbx + 0x18]
mov rcx, rdi
call fcn.14003f490
mov r8d, dword [rsi + 4]
lea rdx, [rdi + 8]
mov ebp, 1
mov ecx, ebx
mov r9d, ebp
call fcn.14000d950
test eax, eax
je 0x14001fbca
movzx eax, byte [rsi + 4]
mov byte [rdi + 4], al
movzx eax, byte [rsi + 5]
mov byte [rdi + 5], al
mov eax, ebp
jmp 0x14001fc86
mov eax, dword [rbx + 0xc]
xor edx, edx
mov dword [rsi + 4], eax
mov r8d, 0x20000
mov rbx, qword [rbx + 0x10]
mov rcx, rdi
call fcn.14003f490
mov r8d, dword [rsi + 4]
lea rdx, [rdi + 8]
mov ebp, 1
mov rcx, rbx
mov r9d, ebp
call fcn.14000d950
test eax, eax
je 0x14001fbca
movzx ecx, byte [rsi + 4]
mov eax, ebp
mov byte [rdi + 4], cl
movzx ecx, byte [rsi + 5]
mov byte [rdi + 5], cl
jmp 0x14001fc86
Function at 0x140027b30
Capabilities:
Get storage device properties

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
push rdi
sub rsp, 0x90
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x88], rax
xor eax, eax
lea r8, [r11 - 0x50]
mov qword [r11 - 0x40], rax
xor edi, edi
mov qword [r11 - 0x60], rdi
mov rbx, rcx
mov rcx, qword [rcx]
mov edx, 0x2d1400
mov dword [rsp + 0x60], eax
lea rax, [r11 - 0x58]
mov qword [r11 - 0x68], rax
lea r9d, [rdi + 0xc]
lea rax, [r11 - 0x40]
mov qword [r11 - 0x4c], rdi
mov dword [rsp + 0x28], 0xc
mov qword [r11 - 0x78], rax
mov dword [rsp + 0x40], edi
mov dword [rsp + 0x48], 7
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp eax, 1
jne 0x140027c10
cmp byte [rsp + 0x60], dil
jne 0x140027c10
mov rcx, qword [rbx]
lea r9d, [rdi + 0xc]
xor eax, eax
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x78], rax
lea r8, [rsp + 0x68]
mov dword [rsp + 0x80], eax
mov edx, 0x2d1400
lea rax, [rsp + 0x40]
mov qword [rsp + 0x6c], rdi
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x78]
mov dword [rsp + 0x28], 0xc
mov qword [rsp + 0x20], rax
mov dword [rsp + 0x68], 8
call qword [sym.imp.KERNEL32.dll_DeviceIoControl]
cmp byte [rsp + 0x80], 1
jne 0x140027c10
lea eax, [rdi + 1]
jmp 0x140027c12
xor eax, eax
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.14003da20
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rdi
ret

Function at 0x140027c40
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x58
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov edx, 0x5d
mov qword [rsp + 0x30], 0
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
mov r9d, 0x20219
lea rax, [rsp + 0x30]
xor r8d, r8d
mov rcx, 0xffffffff80000001
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140027d12
lea edx, [rax + 0x4b]
mov dword [rsp + 0x40], 1
lea rcx, [0x140088710]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], 4
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rsp + 0x3c]
xor r8d, r8d
mov qword [rsp + 0x28], rcx
lea r9, [rsp + 0x40]
lea rcx, [rsp + 0x38]
mov rdx, rax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
je 0x140027cfc
mov rcx, qword [rsp + 0x30]
jmp 0x140027d1c
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x58
ret
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140027d22
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x58
ret
Function at 0x140027d70
Capabilities:
Query or enumerate registry key

Disassembly:
mov r11, rsp
push r14
sub rsp, 0x1d0
mov qword [rsp + 0x40], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rsi
mov qword [r11 + 0x18], rdi
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x1c0], rax
xor ebx, ebx
mov qword [rsp + 0x68], rbx
mov dword [rsp + 0x70], ebx
xor edx, edx
mov r8d, 0x100
lea rcx, [r11 - 0x118]
call fcn.14003f490
lea rdx, [0x140055950]
lea rcx, [rsp + 0x78]
call fcn.14000a680
nop
lea rdx, [0x1400898a4]
lea rcx, [rsp + 0x98]
call fcn.14000a680
nop
lea rdx, str.EnumPCI
lea rcx, [rsp + 0x98]
call fcn.14000a840
lea rcx, [rsp + 0x98]
call fcn.140009de0
mov rdx, rax
lea rax, [rsp + 0x68]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140027ec1
mov edi, ebx
nop word [rax + rax]
mov dword [rsp + 0x70], 0x80
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0x70]
lea r8, [rsp + 0xc0]
mov edx, edi
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x140027eb6
lea r8, [0x1400886d8]
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x48]
call fcn.140015650
nop
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.14000a830
nop
lea rcx, [rsp + 0x48]
call fcn.140002990
inc edi
cmp edi, 0x3e8
jb 0x140027e40
mov rcx, qword [rsp + 0x68]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
movzx esi, bx
lea r14, [0x140000000]
nop dword [rax + rax]
movsx rax, si
mov rdi, qword [r14 + rax*8 + 0x7b110]
lea rcx, [rsp + 0x78]
call fcn.140009de0
mov rdx, rdi
mov rcx, rax
call fcn.14003fa38
test rax, rax
jne 0x140027f3a
inc si
cmp si, 4
jl 0x140027ed0
nop
movsx rax, bx
mov rdi, qword [r14 + rax*8 + 0x7b130]
lea rcx, [rsp + 0x78]
call fcn.140009de0
mov rdx, rdi
mov rcx, rax
call fcn.14003fa38
test rax, rax
jne 0x140027f31
inc bx
cmp bx, 0xb
jl 0x140027f00
jmp 0x140027f55
lea rdx, str._Rst_
jmp 0x140027f41
lea rdx, str._Vmd_
mov r8, 0xffffffffffffffff
lea rcx, [0x14008da38]
call fcn.140016420
nop
lea rcx, [rsp + 0x98]
call fcn.140002990
nop
lea rcx, [rsp + 0x78]
call fcn.140002990
mov rcx, qword [rsp + 0x1c0]
xor rcx, rsp
call fcn.14003da20
lea r11, [rsp + 0x1d0]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop r14
ret
Function at 0x14002cb60
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov edi, r8d
mov qword [rsp + 0x30], 0
mov rsi, rdx
lea rbp, [0x1400907b0]
mov rbx, rcx
xor edx, edx
mov rcx, rbp
mov r8d, 0x200
call fcn.14003f490
lea rax, [rsp + 0x30]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov rdx, rbx
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14002cc23
mov rcx, qword [rsp + 0x30]
lea rax, [rsp + 0x38]
mov qword [rsp + 0x28], rax
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rbp
mov rdx, rsi
mov dword [rsp + 0x38], 0x200
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rsp + 0x30]
mov ebx, eax
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
jne 0x14002cc23
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp word [rbp + rdx*2], 0
jne 0x14002cc10
mov rcx, rbp
call fcn.140014530
test edi, edi
je 0x14002cc67
sub edi, 1
je 0x14002cc3d
cmp edi, 1
je 0x14002cc47
lea rax, [0x140055950]
jmp 0x14002ccc5
cmp word [0x1400907b0], 0
je 0x14002cc4c
mov rax, rbp
jmp 0x14002ccc5
mov edx, 0x86
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
jmp 0x14002ccc5
mov edx, 0x7d
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
mov rcx, rbp
call fcn.14003b3c0
test rax, rax
jne 0x14002ccbe
lea edx, [rax + 0x7c]
lea rcx, [0x14008da10]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
mov rcx, rbp
call fcn.14003b3c0
test rax, rax
lea rax, [0x1400621e0]
je 0x14002ccc5
lea rax, [0x1400621e4]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.14003da20
mov rbx, qword [rsp + 0x80]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
Function at 0x14002ccf0
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x258
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x240], rax
xor edx, edx
mov qword [rsp + 0x30], 0
mov r8d, 0x200
lea rcx, [rsp + 0x40]
call fcn.14003f490
mov edx, 0x1c
mov dword [rsp + 0x38], 0x200
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea r9, [0x1400898a4]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rsp + 0x40]
call fcn.14000e0c0
lea rax, [rsp + 0x30]
mov r9d, 0x20019
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x40]
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x14002ce7e
lea edx, [rax + 0x41]
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
lea rcx, [rsp + 0x38]
xor r9d, r9d
mov qword [rsp + 0x28], rcx
xor r8d, r8d
lea rcx, [rsp + 0x40]
mov rdx, rax
mov qword [rsp + 0x20], rcx
mov rcx, qword [rsp + 0x30]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, qword [rsp + 0x30]
test eax, eax
je 0x14002cdfa
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x258
ret
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea rax, [rsp + 0x40]
mov rdx, 0xffffffffffffffff
nop dword [rax]
inc rdx
cmp word [rax + rdx*2], 0
jne 0x14002ce10
lea rcx, [rsp + 0x40]
call fcn.1400144f0
mov edx, 0x1d
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14003b3c0
test rax, rax
je 0x14002ce7e
mov edx, 0x22
lea rcx, [0x140088710]
call fcn.14000a780
mov rcx, rax
call fcn.140009de0
mov rdx, rax
lea rcx, [0x14008a044]
mov r8, 0xffffffffffffffff
call fcn.140016460
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x258
ret
Function at 0x14002cee0
Capabilities:
Link many functions at runtime

Disassembly:
push rsi
sub rsp, 0x30
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov rax, qword [0x14008eb68]
xor esi, esi
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rdi
test rax, rax
jne 0x14002cf2a
lea rcx, str.nvapi64.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x14008eb68], rax
test rax, rax
je 0x14002cfd3
lea rdx, str.nvapi_QueryInterface
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140086ca8], rax
test rax, rax
je 0x14002cfbf
mov ecx, 0x150e828
call rax
mov rdx, qword [0x140086ca8]
mov ecx, 0xe5ac921f
mov rdi, rax
call rdx
mov rdx, qword [0x140086ca8]
mov ecx, 0xe3640a56
mov rbx, rax
call rdx
mov rdx, qword [0x140086ca8]
mov ecx, 0x2ddfb66e
mov qword [0x140086cb0], rax
call rdx
mov qword [0x140086ca0], rax
test rdi, rdi
je 0x14002cfbf
test rbx, rbx
je 0x14002cfbf
cmp qword [0x140086cb0], rsi
je 0x14002cfbf
call rdi
test eax, eax
jne 0x14002cfbf
xorps xmm0, xmm0
lea rdx, [rsp + 0x20]
lea rcx, [0x140086c90]
movdqu xmmword [0x140086c90], xmm0
call rbx
jmp 0x14002cfd3
mov rcx, qword [0x14008eb68]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x14008eb68], rsi
mov rax, qword [0x14008eb70]
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
test rax, rax
jne 0x14002d006
lea rcx, str.atiadlxx.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x14008eb70], rax
test rax, rax
je 0x14002d0c4
lea rdx, str.ADL_Adapter_AdapterInfo_Get
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x14008eb70]
lea rdx, str.ADL_Adapter_NumberOfAdapters_Get
mov qword [0x14008da30], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x14008eb70]
lea rdx, str.ADL_Main_Control_Create
mov qword [0x14008da28], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x14008eb70]
lea rdx, str.ADL_Main_Control_Destroy
mov qword [0x140086cb8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x14008eb70]
lea rdx, str.ADL_Overdrive5_Temperature_Get
mov qword [0x140086cc0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140086cc8], rax
mov rax, qword [0x140086cb8]
test rax, rax
je 0x14002d0b0
cmp qword [0x140086cc0], rsi
je 0x14002d0b0
mov edx, 1
lea rcx, [0x140016d50]
call rax
test eax, eax
je 0x14002d0c4
mov rcx, qword [0x14008eb70]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x14008eb70], rsi
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x30
pop rsi
ret
Function at 0x14002e740
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov eax, dword [rcx + 7]
mov rbx, rcx
cmp rax, qword [0x14008e398]
jbe 0x14002e7b8
movzx r9d, word [rcx + 0xd]
lea r8, [0x1400630bc]
mov qword [0x14008e398], rax
lea rcx, [0x1400890e4]
mov eax, 0xcccccccd
mul r9d
shr edx, 3
lea eax, [rdx + rdx*4]
mov edx, 0x20
add eax, eax
sub r9d, eax
call fcn.14000e0c0
mov eax, dword [rbx + 7]
cmp eax, 1
jbe 0x14002e7b8
mov r9d, eax
lea r8, [0x1400630c4]
shr r9, 0x14
lea rcx, [0x140089124]
mov edx, 0x20
add rsp, 0x20
pop rbx
jmp fcn.14000e0c0
add rsp, 0x20
pop rbx
ret

Function at 0x14002fa70
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x68
mov rax, qword [0x14007b658]
xor rax, rsp
mov qword [rsp + 0x58], rax
movdqa xmm0, xmmword [0x1400644c0]
xor eax, eax
mov qword [rsp + 0x38], rax
mov rcx, 0xffffffffffffffff
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x20]
movdqu xmmword [rsp + 0x20], xmm0
mov byte [rsp + 0x30], 0
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x14002fac0
xor r8d, r8d
mov r9d, r8d
test ecx, ecx
jle 0x14002fb55
cmp ecx, 0x40
jb 0x14002fb55
mov edx, ecx
and edx, 0x8000003f
jge 0x14002faed
dec edx
or edx, 0xffffffc0
inc edx
movdqa xmm2, xmmword [str.1111111111111111_F_4C]
mov eax, ecx
sub eax, edx
movsxd rdx, eax
nop dword [rax]
movdqu xmm0, xmmword [rsp + r8 + 0x20]
add r9d, 0x40
movdqu xmm1, xmmword [rsp + r8 + 0x30]
paddb xmm0, xmm2
movdqu xmmword [rsp + r8 + 0x38], xmm0
movdqu xmm0, xmmword [rsp + r8 + 0x40]
paddb xmm1, xmm2
movdqu xmmword [rsp + r8 + 0x48], xmm1
movdqu xmm1, xmmword [rsp + r8 + 0x50]
paddb xmm0, xmm2
movdqu xmmword [rsp + r8 + 0x58], xmm0
paddb xmm1, xmm2
movdqu xmmword [rsp + r8 + 0x68], xmm1
add r8, 0x40
cmp r8, rdx
jl 0x14002fb00
movsxd rax, r9d
movsxd rdx, ecx
cmp rax, rdx
jge 0x14002fb74
movzx ecx, byte [rsp + rax + 0x20]
add cl, 0x31
mov byte [rsp + rax + 0x38], cl
inc rax
cmp rax, rdx
jl 0x14002fb60
cmp rdx, 0x20
jae 0x14002fbf6
mov qword [rsp + 0x60], rbx
mov byte [rsp + rdx + 0x38], 0
call qword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
xor edx, edx
mov r8d, eax
lea ecx, [rdx + 1]
call qword [sym.imp.KERNEL32.dll_OpenProcess]
mov rbx, rax
test rax, rax
je 0x14002fbdf
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rcx, rax
lea rdx, [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
xor edx, edx
mov qword [0x140086c38], rax
mov rcx, rbx
test rax, rax
jne 0x14002fbd4
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x14002fbd6
call rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rbx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.14003da20
add rsp, 0x68
ret
call fcn.14003dc8c
int3