joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400a8074
Capabilities:
Delete registry value

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x450
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x440], rax
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
call fcn.1400a6be0
test al, al
jne 0x1400a80fa
mov r9d, 0x200
lea r8, [rsp + 0x40]
mov rdx, rsi
mov rcx, rbx
call fcn.1400a8d48
test al, al
je 0x1400a80fa
lea rax, [rsp + 0x30]
mov r9d, 0x20006
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea rdx, [rsp + 0x40]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x1400a80fa
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
mov rcx, qword [rsp + 0x30]
call fcn.1400a6a9c
mov rcx, qword [rsp + 0x440]
xor rcx, rsp
call fcn.140101680
add rsp, 0x450
pop rdi
pop rsi
pop rbx
ret

Function at 0x1400a8118
Capabilities:
Delete registry value

Disassembly:
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp fcn.1400a8074

Function at 0x1400a83e8
Capabilities:
Query or enumerate registry value

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
push rdi
sub rsp, 0x40
lea rax, [r11 - 0x10]
mov rdi, r9
mov qword [r11 - 0x28], rax
mov rbp, r8
mov rbx, rdx
mov rsi, rcx
call fcn.1400a6fbc
test al, al
je 0x1400a8420
mov rax, qword [rsp + 0x38]
jmp 0x1400a8483
mov rdx, rbx
mov rcx, rsi
call fcn.1400a8dac
mov dword [rsp + 0x30], 8
mov rsi, rax
test rax, rax
je 0x1400a8480
lea rax, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
lea rax, [rsp + 0x38]
mov rdx, rbp
mov rcx, rsi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
mov rcx, rsi
sete bl
call fcn.1400a6a9c
test bl, bl
je 0x1400a8480
cmp dword [rsp + 0x30], 0
je 0x1400a8480
mov rdi, qword [rsp + 0x38]
mov rax, rdi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
mov r9, r8
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a83e8

Function at 0x1400a8498
Capabilities:
Query or enumerate registry value

Disassembly:
mov r11, rsp
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
push rdi
sub rsp, 0x40
lea rax, [r11 - 0x10]
mov rdi, r9
mov qword [r11 - 0x28], rax
mov rbp, r8
mov rbx, rdx
mov rsi, rcx
call fcn.1400a6fbc
test al, al
je 0x1400a8420
mov rax, qword [rsp + 0x38]
jmp 0x1400a8483
mov rdx, rbx
mov rcx, rsi
call fcn.1400a8dac
mov dword [rsp + 0x30], 8
mov rsi, rax
test rax, rax
je 0x1400a8480
lea rax, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
lea rax, [rsp + 0x38]
mov rdx, rbp
mov rcx, rsi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
mov rcx, rsi
sete bl
call fcn.1400a6a9c
test bl, bl
je 0x1400a8480
cmp dword [rsp + 0x30], 0
je 0x1400a8480
mov rdi, qword [rsp + 0x38]
mov rax, rdi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
mov r9, r8
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a83e8
Function at 0x1400a856c
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x858
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x840], rax
mov r12d, dword [rsp + 0x8c8]
mov rdi, r9
mov rsi, qword [rsp + 0x8c0]
lea r9, [rsp + 0x40]
mov ebx, r12d
mov qword [rsp + 0x20], 0x400
mov r13, r8
mov r15, rdx
mov rbp, rcx
call fcn.1400a7334
test al, al
jne 0x1400a85f0
mov r8d, ebx
mov rcx, rdi
test rsi, rsi
je 0x1400a85dd
mov rdx, rsi
call fcn.140120d20
jmp 0x1400a85e4
xor edx, edx
call fcn.140120b70
cmp byte [0x1401901f9], 0
sete al
jmp 0x1400a862e
lea rcx, [rsp + 0x40]
call fcn.1400a7054
mov r8, rbx
test rax, rax
jne 0x1400a861f
mov rcx, rdi
test rsi, rsi
je 0x1400a8614
mov rdx, rsi
call fcn.140120d20
jmp 0x1400a861b
xor edx, edx
call fcn.140120b70
xor ebx, ebx
jmp 0x1400a862c
mov rdx, rdi
mov rcx, rax
call fcn.1400969a8
mov ebx, eax
mov al, 1
test al, al
je 0x1400a8636
mov eax, ebx
jmp 0x1400a86a5
mov rdx, r15
mov rcx, rbp
call fcn.1400a8dac
mov dword [rsp + 0x30], r12d
mov rbp, rax
test rax, rax
je 0x1400a8687
lea rax, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
mov rdx, r13
mov qword [rsp + 0x20], rdi
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, rbp
mov ebx, eax
call fcn.1400a6a9c
test ebx, ebx
jne 0x1400a8687
mov eax, dword [rsp + 0x30]
test eax, eax
jne 0x1400a86a5
mov r8, r12
mov rcx, rdi
test rsi, rsi
je 0x1400a869c
mov rdx, rsi
call fcn.140120d20
jmp 0x1400a86a3
xor edx, edx
call fcn.140120b70
xor eax, eax
mov rcx, qword [rsp + 0x840]
xor rcx, rsp
call fcn.140101680
add rsp, 0x858
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret

Function at 0x1400a86cc
Capabilities:
Query or enumerate registry value

Disassembly:
mov r9d, r8d
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp fcn.1400a84b0
Function at 0x1400a8710
Capabilities:
Query or enumerate registry value

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x858
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x840], rax
mov r14, qword [rsp + 0x8c0]
mov rbx, r9
mov esi, dword [rsp + 0x8c8]
lea r9, [rsp + 0x40]
mov r12, r8
mov qword [rsp + 0x20], 0x400
mov rbp, rdx
mov rdi, rcx
call fcn.1400a7334
xor r13d, r13d
test al, al
jne 0x1400a8785
mov r8d, esi
mov rdx, r14
mov rcx, rbx
call fcn.140096ef0
cmp byte [0x1401901f9], r13b
sete al
jmp 0x1400a87a6
lea rcx, [rsp + 0x40]
call fcn.1400a7054
test rax, rax
mov r8, rsi
mov rcx, rbx
cmove rax, r14
mov rdx, rax
call fcn.140096ef0
mov al, 1
test al, al
je 0x1400a87b1
mov al, 1
jmp 0x1400a8834
mov rdx, rbp
mov rcx, rdi
call fcn.1400a8dac
mov rbp, rax
mov dil, r13b
test rax, rax
je 0x1400a8823
lea ecx, [rsi + rsi]
xor r8d, r8d
lea rax, [rsp + 0x30]
mov dword [rsp + 0x30], ecx
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
mov rcx, rbp
mov qword [rsp + 0x20], rbx
mov rdx, r12
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
mov rcx, rbp
sete dil
call fcn.1400a6a9c
test dil, dil
je 0x1400a8823
mov ecx, dword [rsp + 0x30]
shr ecx, 1
test esi, esi
jne 0x1400a8814
mov word [rbx], r13w
jmp 0x1400a8831
lea eax, [rsi - 1]
cmp ecx, eax
cmovb eax, ecx
mov word [rbx + rax*2], r13w
jmp 0x1400a8831
mov r8, rsi
mov rdx, r14
mov rcx, rbx
call fcn.140096ef0
mov al, dil
mov rcx, qword [rsp + 0x840]
xor rcx, rsp
call fcn.140101680
add rsp, 0x858
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret

Function at 0x1400a8884
Capabilities:
Query or enumerate registry value

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
sub rsp, 0x850
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x840], rax
mov rbp, rdx
mov qword [rsp + 0x20], 0x400
mov r8, rdx
lea r9, [rsp + 0x40]
mov rdx, rcx
mov rbx, rcx
mov rsi, 0xffffffff80000001
mov rcx, rsi
call fcn.1400a7334
xor edi, edi
test al, al
mov eax, edi
jne 0x1400a88e3
cmp byte [0x1401901f9], dil
sete r8b
jmp 0x1400a8938
mov rcx, qword [0x1401e1cc8]
mov r8d, 1
jmp 0x1400a891d
mov rdx, qword [rcx]
lea r10, [rsp + 0x40]
sub r10, rdx
movzx r9d, word [rdx]
movzx r11d, word [rdx + r10]
sub r9d, r11d
jne 0x1400a8914
add rdx, 2
test r11d, r11d
jne 0x1400a88fd
test r9d, r9d
je 0x1400a8924
mov rcx, qword [rcx + 0x18]
test rcx, rcx
jne 0x1400a88f2
jmp 0x1400a8938
mov rdx, qword [rcx + 8]
or rax, 0xffffffffffffffff
inc rax
cmp word [rdx + rax*2], di
jne 0x1400a892c
add eax, r8d
test r8b, r8b
jne 0x1400a898b
mov rdx, rbx
mov rcx, rsi
call fcn.1400a8dac
mov rsi, rax
test rax, rax
je 0x1400a8986
lea rax, [rsp + 0x30]
xor r9d, r9d
mov qword [rsp + 0x28], rax
xor r8d, r8d
mov rdx, rbp
mov qword [rsp + 0x20], rdi
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, rsi
mov ebx, eax
call fcn.1400a6a9c
mov ecx, dword [rsp + 0x30]
test ebx, ebx
cmovne ecx, edi
mov edi, ecx
mov eax, edi
shr rax, 1
mov rcx, qword [rsp + 0x840]
xor rcx, rsp
call fcn.140101680
mov rbx, qword [rsp + 0x880]
add rsp, 0x850
pop rdi
pop rsi
pop rbp
ret
Function at 0x1400a9070
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x20], r9
push rdi
sub rsp, 0x40
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
call fcn.1400a7620
test al, al
je 0x1400a909a
xor eax, eax
jmp 0x1400a90eb
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a90e5
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 8
mov r9d, 0xb
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a90e9
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov r9, r8
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a9070

Function at 0x1400a90fc
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x20], r9
push rdi
sub rsp, 0x40
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
call fcn.1400a7620
test al, al
je 0x1400a909a
xor eax, eax
jmp 0x1400a90eb
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a90e5
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], 8
mov r9d, 0xb
mov qword [rsp + 0x20], rax
xor r8d, r8d
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a90e9
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov r9, r8
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a9070

Function at 0x1400a9114
Capabilities:
Set registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x40
mov rbx, r9
mov rbp, r8
mov rdi, rdx
mov rsi, rcx
call fcn.1400a74ec
xor r14d, r14d
test al, al
je 0x1400a9149
xor eax, eax
jmp 0x1400a91a6
lea r8, [rsp + 0x30]
mov rdx, rdi
mov rcx, rsi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a91a0
or rcx, 0xffffffffffffffff
inc rcx
cmp word [rbx + rcx*2], r14w
jne 0x1400a9165
lea eax, [rcx*2 + 2]
mov r9d, 1
mov dword [rsp + 0x28], eax
xor r8d, r8d
mov rdx, rbp
mov qword [rsp + 0x20], rbx
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a91a4
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret
Function at 0x1400a91c4
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov dword [rsp + 0x20], r9d
push rdi
sub rsp, 0x40
mov r9d, r9d
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
call fcn.1400a7620
test al, al
je 0x1400a91f1
xor eax, eax
jmp 0x1400a923f
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a9239
mov r9d, 4
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a923d
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov r9d, r8d
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a91c4

Function at 0x1400a9250
Capabilities:
Set registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rbp
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x40
mov r14, qword [rsp + 0x70]
mov rsi, r9
mov qword [rax - 0x28], r14
mov rbp, r8
mov rbx, rdx
mov rdi, rcx
call fcn.1400a755c
test al, al
je 0x1400a928b
xor eax, eax
jmp 0x1400a92d4
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a92ce
mov dword [rsp + 0x28], r14d
mov r9d, 3
xor r8d, r8d
mov qword [rsp + 0x20], rsi
mov rdx, rbp
mov rcx, rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a92d2
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x68]
add rsp, 0x40
pop r14
ret

Function at 0x1400a92f0
Capabilities:
Set registry value

Disassembly:
mov r9, r8
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp fcn.1400a9114

Function at 0x1400a9308
Capabilities:
Set registry value

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov dword [rsp + 0x20], r9d
push rdi
sub rsp, 0x40
mov r9d, r9d
mov rsi, r8
mov rbx, rdx
mov rdi, rcx
call fcn.1400a7620
test al, al
je 0x1400a91f1
xor eax, eax
jmp 0x1400a923f
lea r8, [rsp + 0x30]
mov rdx, rbx
mov rcx, rdi
call fcn.1400a7b58
mov rdi, rax
test rax, rax
je 0x1400a9239
mov r9d, 4
lea rax, [rsp + 0x68]
mov dword [rsp + 0x28], r9d
xor r8d, r8d
mov rdx, rsi
mov qword [rsp + 0x20], rax
mov rcx, rdi
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov rcx, rdi
mov ebx, eax
call fcn.1400a6a9c
jmp 0x1400a923d
mov ebx, dword [rsp + 0x30]
mov eax, ebx
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x40
pop rdi
ret
mov r9d, r8d
mov r8, rdx
mov rdx, rcx
mov rcx, 0xffffffff80000001
jmp 0x1400a91c4
Function at 0x1400abd54
Capabilities:
Create process on windows
Query environment variable

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r14
push r15
lea rbp, [rax - 0x4278]
mov eax, 0x4360
call fcn.140101610
sub rsp, rax
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rbp + 0x4250], rax
mov rsi, rcx
call fcn.140080460
xor ebx, ebx
mov rdi, rax
test rax, rax
je 0x1400abf9c
lea r14, [0x1401423c8]
mov r15d, 0xc8
mov dword [rsp + 0x28], r15d
lea r9, [rsp + 0x30]
mov r8, r14
mov qword [rsp + 0x20], r14
mov rdx, rax
mov rcx, 0xffffffff80000000
call fcn.1400a8710
cmp word [rsp + 0x30], bx
je 0x1400abf9c
mov r8d, r15d
lea rdx, str._shellprintcommand
lea rcx, [rsp + 0x30]
call fcn.140096ec8
lea r9, [rbp + 0x250]
mov dword [rsp + 0x28], 0x800
mov r8, r14
mov qword [rsp + 0x20], r14
lea rdx, [rsp + 0x30]
mov rcx, 0xffffffff80000000
call fcn.1400a8710
cmp word [rbp + 0x250], bx
jne 0x1400abebf
mov r9, rdi
lea r8, str.SoftwareClasses_s
mov edx, r15d
lea rcx, [rbp + 0xc0]
call fcn.140002910
mov rdi, 0xffffffff80000002
mov dword [rsp + 0x28], r15d
mov rcx, rdi
mov qword [rsp + 0x20], r14
lea r9, [rsp + 0x30]
mov r8, r14
lea rdx, [rbp + 0xc0]
call fcn.1400a8710
cmp word [rsp + 0x30], bx
je 0x1400abf9c
lea r9, [rsp + 0x30]
mov edx, r15d
lea r8, str.SoftwareClasses_s_shellprintcommand
lea rcx, [rbp + 0xc0]
call fcn.140002910
lea r9, [rbp + 0x250]
mov dword [rsp + 0x28], 0x800
mov r8, r14
mov qword [rsp + 0x20], r14
lea rdx, [rbp + 0xc0]
mov rcx, rdi
call fcn.1400a8710
cmp word [rbp + 0x250], bx
je 0x1400abf9c
mov r14d, 0x1000
lea rdx, [rbp + 0x2250]
mov r8d, r14d
lea rcx, [rbp + 0x250]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
dec eax
cmp eax, 0xffe
ja 0x1400abf9c
lea rdx, [0x140157fe4]
lea rcx, [rbp + 0x2250]
call fcn.140121f44
test rax, rax
je 0x1400abf9c
lea rcx, [rbp + 0x2250]
mov dil, bl
cmp rax, rcx
jbe 0x1400abf24
cmp word [rax - 2], 0x22
mov ecx, 1
movzx edi, bl
cmove edi, ecx
mov r8, r14
mov word [rax], bx
mov rdx, rsi
lea rcx, [rbp + 0x2250]
call fcn.140096ec8
test dil, dil
je 0x1400abf54
mov r8, r14
lea rdx, [0x140157a5c]
lea rcx, [rbp + 0x2250]
call fcn.140096ec8
mov r8d, 0x800
lea rdx, [rbp + 0x1250]
lea rcx, [rbp + 0x2250]
call fcn.14009662c
mov r9, rax
mov dword [rsp + 0x28], 8
lea r8, [rbp + 0x1250]
mov qword [rsp + 0x20], rbx
lea rdx, str.open
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp rax, 0x20
seta al
jmp 0x1400abf9e
xor al, al
mov rcx, qword [rbp + 0x4250]
xor rcx, rsp
call fcn.140101680
lea r11, [rsp + 0x4360]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x1400abfcc
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x30
mov rbx, rcx
mov dword [rsp + 0x28], 8
and qword [rsp + 0x20], 0
lea rdx, str.print
mov r8, rcx
xor r9d, r9d
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp rax, 0x20
seta dil
test dil, dil
jne 0x1400ac02a
mov rcx, rbx
call fcn.1400abd54
test al, al
jne 0x1400ac02a
mov ecx, 0x557
call fcn.140090e20
mov rcx, rax
mov rdx, rbx
call fcn.1400d63e4
mov al, dil
mov rbx, qword [rsp + 0x40]
add rsp, 0x30
pop rdi
ret

Function at 0x1400ac7c4
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x20], r9
push rbp
push rbx
push rsi
push rdi
push r14
lea rbp, [rsp - 0xa740]
mov eax, 0xa840
call fcn.140101610
sub rsp, rax
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rbp + 0xa730], rax
mov rbx, r8
lea r14, [rbp + 0xa788]
mov edi, edx
mov rsi, rcx
call fcn.140002908
mov r9, rbx
mov qword [rsp + 0x28], r14
mov ebx, 0x1800
lea rdx, [rbp + 0x1730]
xor r14d, r14d
mov r8d, ebx
mov rcx, qword [rax]
or rcx, 1
mov qword [rsp + 0x20], r14
call fcn.140126ae0
mov word [rbp + 0x472e], r14w
test edi, edi
je 0x1400ac8a3
sub edi, 1
je 0x1400ac880
cmp edi, 1
jne 0x1400ac8e4
mov r8d, ebx
lea rdx, [rsp + 0x30]
lea rcx, [rbp + 0x1730]
call fcn.140099cbc
lea rax, [rsp + 0x30]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x1400ac870
lea rcx, [rsp + 0x30]
jmp 0x1400ac8d7
lea rax, [rbp + 0x1730]
or r8, 0xffffffffffffffff
inc r8
cmp word [rax + r8*2], r14w
jne 0x1400ac88b
mov edx, 2
lea rcx, [rbp + 0x1730]
jmp 0x1400ac8dc
mov r8d, 0x6000
lea rdx, [rbp + 0x4730]
lea rcx, [rbp + 0x1730]
call fcn.140099d40
lea rax, [rbp + 0x4730]
or r8, 0xffffffffffffffff
inc r8
cmp byte [rax + r8], r14b
jne 0x1400ac8c7
lea rcx, [rbp + 0x4730]
mov edx, 1
mov r9, rsi
call fcn.140128494
mov rcx, qword [rbp + 0xa730]
xor rcx, rsp
call fcn.140101680
add rsp, 0xa840
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
Function at 0x1400ad878
Capabilities:
Read file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x458
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x440], rax
mov r14, rdx
mov r15d, r9d
mov rbx, rcx
lea rdx, [0x140147320]
mov rcx, r8
call fcn.1400d0e50
xor ebp, ebp
mov rdi, rax
test rax, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
jne 0x1400ad9a7
mov rcx, rax
call fcn.14012c93c
cmp eax, 0x42
jne 0x1400ad99f
mov rcx, rdi
call fcn.14012c93c
cmp eax, 0x4d
jne 0x1400ad99f
xor r8d, r8d
lea edx, [rbp + 2]
mov rcx, rdi
call fcn.14012b8d4
lea ebx, [rbp + 1]
mov r9, rdi
mov r8d, ebx
lea edx, [rbp + 4]
lea rcx, [rsp + 0x30]
call fcn.14012b598
mov eax, dword [rsp + 0x30]
add eax, 0xfffffff2
mov ecx, eax
mov dword [rsp + 0x30], eax
call fcn.14012708c
mov rsi, rax
mov rcx, rdi
test rax, rax
je 0x1400ad9a2
xor r8d, r8d
lea edx, [rbp + 0xe]
call fcn.14012b8d4
mov r8d, dword [rsp + 0x30]
mov r9, rdi
mov edx, ebx
mov rcx, rsi
call fcn.14012b598
mov ecx, dword [rsp + 0x30]
cmp rax, rcx
je 0x1400ad9c9
mov ecx, 0x686
call fcn.140090e20
mov r8, rax
lea r9, str.BMP__PNG
mov edx, 0x200
lea rcx, [rsp + 0x40]
call fcn.140002910
lea ecx, [rbp + 0x66]
call fcn.140090e20
mov rcx, qword [0x14019b6f0]
lea r9d, [rbp + 0x10]
mov r8, rax
lea rdx, [rsp + 0x40]
call fcn.1400d19e0
mov rcx, rsi
call fcn.140127084
mov rcx, rdi
call fcn.1401280c8
xor al, al
mov rcx, qword [rsp + 0x440]
xor rcx, rsp
call fcn.140101680
add rsp, 0x458
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rcx, rdi
call fcn.1401280c8
mov r10d, dword [rsp + 0x30]
mov r9d, 0x400
mov dword [rsp + 0x28], r10d
mov edx, 2
movzx r8d, r15w
mov rcx, r14
mov qword [rsp + 0x20], rsi
call qword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov rcx, rsi
mov ebx, eax
call fcn.140127084
test ebx, ebx
setne al
jmp 0x1400ad9a9
Function at 0x1400ada0c
Capabilities:
Read file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rax, qword [0x140192630]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x38], rdx
mov rbx, rcx
lea rdx, [0x140147320]
mov dword [rsp + 0x34], r9d
mov rcx, r8
call fcn.1400d0e50
xor ebp, ebp
mov rdi, rax
test rax, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
jne 0x1400adae3
lea r13d, [rbp + 1]
mov r9, rax
mov r8d, r13d
lea edx, [rbp + 0x16]
lea rcx, [rsp + 0x48]
call fcn.14012b598
cmp word [rsp + 0x48], bp
jne 0x1400adadb
cmp word [rsp + 0x4a], r13w
jne 0x1400adadb
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.14012b8d4
movzx eax, word [rsp + 0x4c]
sub eax, r13d
movsxd rcx, eax
shl rcx, 4
add rcx, 0x16
call fcn.14012708c
mov rsi, rax
test rax, rax
je 0x1400adadb
movzx eax, word [rsp + 0x4c]
sub eax, r13d
cdqe
imul rcx, rax, 0xe
add rcx, 0x14
call fcn.14012708c
mov r14, rax
mov rcx, rsi
test rax, rax
jne 0x1400adb03
call fcn.140127084
mov rcx, rdi
call fcn.1401280c8
xor al, al
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140101680
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx eax, word [rsp + 0x4c]
mov r9, rdi
sub eax, r13d
mov r8, r13
movsxd rdx, eax
shl rdx, 4
add rdx, 0x16
call fcn.14012b598
movups xmm0, xmmword [rsi]
mov r15d, ebp
movups xmmword [r14], xmm0
mov eax, dword [rsi + 0x10]
mov dword [r14 + 0x10], eax
cmp bp, word [rsp + 0x4c]
jae 0x1400adbfb
movsxd rax, r15d
lea r12d, [r15 + r13]
imul rcx, rax, 0xe
mov rbx, rax
add rbx, rbx
movsd xmm0, qword [rsi + rbx*8 + 6]
movsd qword [rcx + r14 + 6], xmm0
mov eax, dword [rsi + rbx*8 + 0xe]
mov dword [rcx + r14 + 0xe], eax
mov word [rcx + r14 + 0x12], r12w
mov eax, dword [rsi + rbx*8 + 0xe]
mov ecx, eax
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x40], rax
call fcn.14012708c
mov r13, rax
mov rcx, rdi
test rax, rax
je 0x1400adc52
mov edx, dword [rsi + rbx*8 + 0x12]
xor r8d, r8d
call fcn.14012b8d4
mov rdx, qword [rsp + 0x40]
mov r9, rdi
mov r8d, 1
mov rcx, r13
call fcn.14012b598
mov eax, dword [rsp + 0x30]
mov r9d, 0x400
mov rcx, qword [rsp + 0x38]
mov edx, 3
mov dword [rsp + 0x28], eax
movzx r8d, r12w
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov rcx, r13
mov ebx, eax
call fcn.140127084
test ebx, ebx
je 0x1400adc4f
movzx eax, word [rsp + 0x4c]
mov r13d, 1
add r15d, r13d
cmp r15d, eax
jl 0x1400adb3d
mov rcx, rdi
call fcn.1401280c8
movzx eax, word [rsp + 0x4c]
mov r9d, 0x400
movzx r8d, word [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
imul edx, eax, 0xe
add edx, 6
mov dword [rsp + 0x28], edx
mov edx, 0xe
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov rcx, rsi
mov ebx, eax
call fcn.140127084
mov rcx, r14
call fcn.140127084
test ebx, ebx
setne al
jmp 0x1400adae5
mov rcx, rdi
call fcn.1401280c8
mov rcx, rsi
call fcn.140127084
mov rcx, r14
call fcn.140127084
jmp 0x1400adae3