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

Disassembly:
push rsi
sub rsp, 0x670
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x660], rax
xor edx, edx
lea rcx, [rsp + 0x460]
mov r8d, 0x200
call fcn.14003fc80
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.14003fc80
xor edx, edx
lea rcx, [rsp + 0x260]
mov r8d, 0x200
call fcn.14003fc80
lea edx, [rsi + 0x16]
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
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 0x14001a571
mov qword [rsp + 0x680], rbx
mov ebx, esi
mov qword [rsp + 0x688], rbp
lea rbp, [0x1400770bc]
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 0x14001a54e
lea edx, [rax + 0x7f]
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov edx, 0x16
lea rcx, [0x140089728]
mov rdi, rax
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
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.14000e3d0
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 0x14001a540
lea edx, [rax + 0x16]
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov r9, rax
lea r8, str._s_s_s
lea rax, [rsp + 0x60]
mov edx, 0x80
mov qword [rsp + 0x28], rax
lea rcx, [0x14008a8b4]
mov qword [rsp + 0x20], rbp
call fcn.14000e3d0
mov rcx, qword [rsp + 0x48]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
inc ebx
cmp ebx, 0x3e8
jb 0x14001a410
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.14003e210
add rsp, 0x670
pop rsi
ret
Function at 0x14001e1c0
Capabilities:
Get file version info

Disassembly:
push rbp
push rsi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rax, qword [0x14007c668]
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.140017f20
mov rcx, rbp
mov dword [rsp + 0x30], eax
call fcn.140009eb0
mov rcx, rax
lea rdx, [rsp + 0x30]
call sub.VERSION.dll_GetFileVersionInfoSizeW
mov esi, eax
test eax, eax
jne 0x14001e231
lea rcx, [rsp + 0x20]
call fcn.140017f20
jmp 0x14001e2f3
mov qword [rsp + 0x50], rbx
mov rcx, rsi
mov qword [rsp + 0x48], rdi
call fcn.140009b20
mov rbx, rax
test rax, rax
je 0x14001e25a
mov r8, rsi
xor edx, edx
mov rcx, rax
call fcn.14003fc80
jmp 0x14001e25c
xor ebx, ebx
mov rcx, rbp
call fcn.140009eb0
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 0x14001e2dc
lea r9, [rsp + 0x34]
mov qword [rsp + 0x28], 0
lea r8, [rsp + 0x28]
mov rcx, rbx
lea rdx, [0x1400770bc]
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x14001e2dc
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.140017f20
mov rcx, rbx
call fcn.14003e084
jmp 0x14001e2ee
mov rcx, rbx
call fcn.14003e084
lea rcx, [rsp + 0x20]
call fcn.140017f20
mov rbx, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rsi
pop rbp
ret
Function at 0x14001f700
Capabilities:
Create directory
Get common file path
Write file on windows

Disassembly:
push rbx
sub rsp, 0x480
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x470], rax
xor edx, edx
mov dword [0x14008f30c], 1
mov r8d, 0x208
lea rcx, [rsp + 0x260]
call fcn.14003fc80
xor edx, edx
lea rcx, [rsp + 0x50]
mov r8d, 0x208
call fcn.14003fc80
lea rdx, [rsp + 0x50]
mov ecx, 0x102
call qword [sym.imp.KERNEL32.dll_GetTempPathW]
mov edx, 0x85
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
lea r9, [rsp + 0x50]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
mov edx, 0x104
lea rcx, [rsp + 0x260]
call fcn.14000e3d0
lea rcx, [rsp + 0x260]
call fcn.14000d7a0
test eax, eax
jne 0x14001f7d1
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, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x260]
lea rax, [0x14005c620]
mov edx, 0x104
lea r8, str._s_s_s
mov qword [rsp + 0x20], rax
lea rcx, [rsp + 0x50]
call fcn.14000e3d0
lea rcx, [rsp + 0x50]
call fcn.14000d7a0
test eax, eax
jne 0x14001f86a
call fcn.140010a10
lea r8, [0x140060a60]
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x30]
call fcn.1400457c8
test eax, eax
jne 0x14001f86a
mov r9, qword [rsp + 0x30]
lea r8d, [rax + 1]
mov edx, 0x38d0
lea rcx, [0x14005d190]
call fcn.1400465f8
mov rcx, qword [rsp + 0x30]
call fcn.1400458a4
mov edx, 0xbc
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov edx, 0xbb
lea rcx, [0x14008ea28]
mov rbx, rax
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov ecx, dword [0x14008f380]
lea r8, [rsp + 0x50]
mov r9, rax
mov qword [rsp + 0x20], rbx
lea rdx, [0x14008a8b4]
call fcn.14000d670
mov dword [0x14008f2fc], eax
mov rcx, qword [rsp + 0x470]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x480
pop rbx
ret
Function at 0x14001ff10
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 [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x240], rax
xor r13d, r13d
mov ebp, 1
cmp dword [0x14008f2fc], ebp
mov rsi, rdx
mov rdi, rcx
jne 0x14001ffda
mov rdx, rcx
mov r9d, ebp
mov ecx, 0xf0000
mov r8d, 0x10000
call fcn.14000dc60
test eax, eax
je 0x14001ffda
lea rbp, [rdi + 0xffdf]
mov rbx, rdi
cmp rdi, rbp
jae 0x14001ffd5
mov r14d, dword [str._SM_]
movzx r15d, byte [0x140063440]
mov r12d, dword [str._SM3_]
cmp dword [rbx], r14d
jne 0x14001ffac
mov edx, 0x1f
mov rcx, rbx
call fcn.140018180
test eax, eax
je 0x1400200c1
cmp dword [rbx], r12d
jne 0x14001ffcc
cmp byte [rbx + 4], r15b
jne 0x14001ffcc
mov edx, 0x18
mov rcx, rbx
call fcn.140018180
test eax, eax
je 0x14002010c
add rbx, 0x10
cmp rbx, rbp
jb 0x14001ff92
mov ebp, 1
xor edx, edx
mov qword [rsp + 0x30], r13
mov r8d, 0x200
lea rcx, [rsp + 0x40]
call fcn.14003fc80
lea rax, str.ServicesmssmbiosData
mov edx, 0x100
lea r9, [0x14008a8b4]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
lea rcx, [rsp + 0x40]
call fcn.14000e3d0
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 0x140020093
xor edx, edx
mov dword [rsp + 0x38], 0x20000
mov r8d, 0x20000
mov rcx, rdi
call fcn.14003fc80
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.14003e210
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.14003fc80
mov r8d, dword [rsi + 4]
lea rdx, [rdi + 8]
mov ebp, 1
mov ecx, ebx
mov r9d, ebp
call fcn.14000dc60
test eax, eax
je 0x14001ffda
movzx eax, byte [rsi + 4]
mov byte [rdi + 4], al
movzx eax, byte [rsi + 5]
mov byte [rdi + 5], al
mov eax, ebp
jmp 0x140020096
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.14003fc80
mov r8d, dword [rsi + 4]
lea rdx, [rdi + 8]
mov ebp, 1
mov rcx, rbx
mov r9d, ebp
call fcn.14000dc60
test eax, eax
je 0x14001ffda
movzx ecx, byte [rsi + 4]
mov eax, ebp
mov byte [rdi + 4], cl
movzx ecx, byte [rsi + 5]
mov byte [rdi + 5], cl
jmp 0x140020096
Function at 0x140027f50
Capabilities:
Get storage device properties

Disassembly:
mov r11, rsp
mov qword [r11 + 0x10], rbx
push rdi
sub rsp, 0x90
mov rax, qword [0x14007c668]
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 byte [rsp + 0x60], dil
jne 0x14002802b
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 0x14002802b
lea eax, [rdi + 1]
jmp 0x14002802d
xor eax, eax
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.14003e210
mov rbx, qword [rsp + 0xa8]
add rsp, 0x90
pop rdi
ret

Function at 0x140028050
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x58
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov edx, 0x5d
mov qword [rsp + 0x30], 0
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
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 0x140028122
lea edx, [rax + 0x4b]
mov dword [rsp + 0x40], 1
lea rcx, [0x140089728]
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x3c], 4
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
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 0x14002810c
mov rcx, qword [rsp + 0x30]
jmp 0x14002812c
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x58
ret
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x140028132
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x58
ret
Function at 0x140028180
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 [0x14007c668]
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.14003fc80
lea rdx, [0x140055950]
lea rcx, [rsp + 0x78]
call fcn.14000a750
nop
lea rdx, [0x14008a8b4]
lea rcx, [rsp + 0x98]
call fcn.14000a750
nop
lea rdx, str.EnumPCI
lea rcx, [rsp + 0x98]
call fcn.14000a910
lea rcx, [rsp + 0x98]
call fcn.140009eb0
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 0x1400282d1
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 0x1400282c6
lea r8, [0x1400896f0]
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x48]
call fcn.1400159e0
nop
mov rdx, rax
lea rcx, [rsp + 0x78]
call fcn.14000a900
nop
lea rcx, [rsp + 0x48]
call fcn.140002990
inc edi
cmp edi, 0x3e8
jb 0x140028250
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 + 0x7c120]
lea rcx, [rsp + 0x78]
call fcn.140009eb0
mov rdx, rdi
mov rcx, rax
call fcn.140040228
test rax, rax
jne 0x14002834a
inc si
cmp si, 4
jl 0x1400282e0
nop
movsx rax, bx
mov rdi, qword [r14 + rax*8 + 0x7c140]
lea rcx, [rsp + 0x78]
call fcn.140009eb0
mov rdx, rdi
mov rcx, rax
call fcn.140040228
test rax, rax
jne 0x140028341
inc bx
cmp bx, 0xb
jl 0x140028310
jmp 0x140028365
lea rdx, str._Rst_
jmp 0x140028351
lea rdx, str._Vmd_
mov r8, 0xffffffffffffffff
lea rcx, [0x14008ea50]
call fcn.1400167b0
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.14003e210
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 0x14002cf80
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov edi, r8d
mov qword [rsp + 0x30], 0
mov rsi, rdx
lea rbp, [0x140093c50]
mov rbx, rcx
xor edx, edx
mov rcx, rbp
mov r8d, 0x200
call fcn.14003fc80
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 0x14002d043
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 0x14002d043
mov rdx, 0xffffffffffffffff
nop
inc rdx
cmp word [rbp + rdx*2], 0
jne 0x14002d030
mov rcx, rbp
call fcn.1400148c0
test edi, edi
je 0x14002d087
sub edi, 1
je 0x14002d05d
cmp edi, 1
je 0x14002d067
lea rax, [0x140055950]
jmp 0x14002d0e5
cmp word [0x140093c50], 0
je 0x14002d06c
mov rax, rbp
jmp 0x14002d0e5
mov edx, 0x86
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
jmp 0x14002d0e5
mov edx, 0x7d
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov rdx, rax
mov rcx, rbp
call fcn.14003bb80
test rax, rax
jne 0x14002d0de
lea edx, [rax + 0x7c]
lea rcx, [0x14008ea28]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov rdx, rax
mov rcx, rbp
call fcn.14003bb80
test rax, rax
lea rax, [0x140062210]
je 0x14002d0e5
lea rax, [0x140062214]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.14003e210
mov rbx, qword [rsp + 0x80]
add rsp, 0x50
pop rdi
pop rsi
pop rbp
ret
Function at 0x14002d110
Capabilities:
Query or enumerate registry value

Disassembly:
sub rsp, 0x258
mov rax, qword [0x14007c668]
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.14003fc80
mov edx, 0x1c
mov dword [rsp + 0x38], 0x200
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
lea r9, [0x14008a8b4]
mov qword [rsp + 0x20], rax
lea r8, [0x1400573a0]
mov edx, 0x100
lea rcx, [rsp + 0x40]
call fcn.14000e3d0
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 0x14002d29e
lea edx, [rax + 0x41]
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
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 0x14002d21a
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14003e210
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 0x14002d230
lea rcx, [rsp + 0x40]
call fcn.140014880
mov edx, 0x1d
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov rdx, rax
lea rcx, [rsp + 0x40]
call fcn.14003bb80
test rax, rax
je 0x14002d29e
mov edx, 0x22
lea rcx, [0x140089728]
call fcn.14000a850
mov rcx, rax
call fcn.140009eb0
mov rdx, rax
lea rcx, [0x14008b054]
mov r8, 0xffffffffffffffff
call fcn.1400167f0
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x258
ret
Function at 0x14002d300
Capabilities:
Link many functions at runtime

Disassembly:
push rsi
sub rsp, 0x30
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x28], rax
mov rax, qword [0x140092010]
xor esi, esi
mov qword [rsp + 0x40], rbx
mov qword [rsp + 0x48], rdi
test rax, rax
jne 0x14002d34a
lea rcx, str.nvapi64.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140092010], rax
test rax, rax
je 0x14002d3f3
lea rdx, str.nvapi_QueryInterface
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140087cc0], rax
test rax, rax
je 0x14002d3df
mov ecx, 0x150e828
call rax
mov rdx, qword [0x140087cc0]
mov ecx, 0xe5ac921f
mov rdi, rax
call rdx
mov rdx, qword [0x140087cc0]
mov ecx, 0xe3640a56
mov rbx, rax
call rdx
mov rdx, qword [0x140087cc0]
mov ecx, 0x2ddfb66e
mov qword [0x140087cc8], rax
call rdx
mov qword [0x140087cb8], rax
test rdi, rdi
je 0x14002d3df
test rbx, rbx
je 0x14002d3df
cmp qword [0x140087cc8], rsi
je 0x14002d3df
call rdi
test eax, eax
jne 0x14002d3df
xorps xmm0, xmm0
lea rdx, [rsp + 0x20]
lea rcx, [0x140087ca8]
movdqu xmmword [0x140087ca8], xmm0
call rbx
jmp 0x14002d3f3
mov rcx, qword [0x140092010]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140092010], rsi
mov rax, qword [0x140092018]
mov rdi, qword [rsp + 0x48]
mov rbx, qword [rsp + 0x40]
test rax, rax
jne 0x14002d426
lea rcx, str.atiadlxx.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [0x140092018], rax
test rax, rax
je 0x14002d4e4
lea rdx, str.ADL_Adapter_AdapterInfo_Get
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140092018]
lea rdx, str.ADL_Adapter_NumberOfAdapters_Get
mov qword [0x14008ea48], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140092018]
lea rdx, str.ADL_Main_Control_Create
mov qword [0x14008ea40], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140092018]
lea rdx, str.ADL_Main_Control_Destroy
mov qword [0x140087cd0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, qword [0x140092018]
lea rdx, str.ADL_Overdrive5_Temperature_Get
mov qword [0x140087cd8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x140087ce0], rax
mov rax, qword [0x140087cd0]
test rax, rax
je 0x14002d4d0
cmp qword [0x140087cd8], rsi
je 0x14002d4d0
mov edx, 1
lea rcx, [0x1400170e0]
call rax
test eax, eax
je 0x14002d4e4
mov rcx, qword [0x140092018]
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [0x140092018], rsi
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.14003e210
add rsp, 0x30
pop rsi
ret
Function at 0x14002eca0
Capabilities:
Parse credit card information

Disassembly:
push rbx
sub rsp, 0x20
mov eax, dword [rcx + 7]
mov rbx, rcx
cmp rax, qword [0x14008f3b8]
jbe 0x14002ed18
movzx r9d, word [rcx + 0xd]
lea r8, [0x14006312c]
mov qword [0x14008f3b8], rax
lea rcx, [0x14008a0f4]
mov eax, 0xcccccccd
mul r9d
shr edx, 3
lea eax, [rdx + rdx*4]
mov edx, 0x20
add eax, eax
sub r9d, eax
call fcn.14000e3d0
mov eax, dword [rbx + 7]
cmp eax, 1
jbe 0x14002ed18
mov r9d, eax
lea r8, [0x140063134]
shr r9, 0x14
lea rcx, [0x14008a134]
mov edx, 0x20
add rsp, 0x20
pop rbx
jmp fcn.14000e3d0
add rsp, 0x20
pop rbx
ret

Function at 0x14002ffd0
Capabilities:
Terminate process

Disassembly:
sub rsp, 0x68
mov rax, qword [0x14007c668]
xor rax, rsp
mov qword [rsp + 0x58], rax
movdqa xmm0, xmmword [0x140064540]
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 0x140030020
xor r8d, r8d
mov r9d, r8d
test ecx, ecx
jle 0x1400300b5
cmp ecx, 0x40
jb 0x1400300b5
mov edx, ecx
and edx, 0x8000003f
jge 0x14003004d
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 0x140030060
movsxd rax, r9d
movsxd rdx, ecx
cmp rax, rdx
jge 0x1400300d4
movzx ecx, byte [rsp + rax + 0x20]
add cl, 0x31
mov byte [rsp + rax + 0x38], cl
inc rax
cmp rax, rdx
jl 0x1400300c0
cmp rdx, 0x20
jae 0x140030156
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 0x14003013f
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 [0x140087c50], rax
mov rcx, rbx
test rax, rax
jne 0x140030134
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x140030136
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.14003e210
add rsp, 0x68
ret
call fcn.14003e47c
int3