joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400aac74
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rdi
sub rsp, 0x30
mov rdi, rdx
mov rsi, rcx
and dword [rax - 0x18], 0
and qword [rax + 0x18], 0
xor ebx, ebx
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x50]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rdx, rdi
mov rcx, rsi
call qword [sym.imp.USER32.dll_UnregisterClassW]
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test eax, eax
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x50]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret

Function at 0x1400b2990
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
xor edi, edi
mov dword [rax - 0x18], edi
mov rbx, qword [0x14024b2c8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.GetOpenFileNameW
call fcn.140030144
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b2c8], rax
mov rcx, r14
call rbx
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
Function at 0x1400b2a7c
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
xor edi, edi
mov dword [rax - 0x18], edi
mov rbx, qword [0x14024b2d0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.GetSaveFileNameW
call fcn.140030144
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b2d0], rax
mov rcx, r14
call rbx
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
Function at 0x1400d3514
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r12
push r13
push r14
push r15
sub rsp, 0x50
mov r14d, r9d
mov r15d, r8d
mov r12, rdx
mov r13, rcx
xor esi, esi
mov qword [rax - 0x20], rsi
mov rbx, qword [0x14024b738]
and qword [rax - 0x28], rsi
xor edi, edi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x40]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne edi, ecx
test edi, edi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.ImageList_LoadImageW
call fcn.1400174f8
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b738], rax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0x98]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x20], eax
mov r9d, r14d
mov r8d, r15d
mov rdx, r12
mov rcx, r13
call rbx
mov rsi, rax
mov qword [rsp + 0x48], rax
xor ebx, ebx
test rsi, rsi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor edi, edi
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rsi
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
ret
Function at 0x1400d7ab8
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
test byte [rdx + 4], 1
mov esi, r8d
mov rbx, rdx
mov rbp, rcx
je reloc.OLEAUT32.dll_VarI1FromDec
mov rdi, qword [rdx + 0x10]
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rdx, qword [rdx + 0x10]
mov rcx, qword [rbx + 8]
mov r8d, 5
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rdi, rax
test rax, rax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.1400283f0
mov rcx, qword [rbx + 8]
mov rdx, rdi
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rdi, rax
test rax, rax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.1400283f0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
test rax, rax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.1400283f0
call fcn.140024d98
cmp qword [rax + 0x68], 0
je reloc.OLEAUT32.dll_VarI1FromDec
mov rdx, rdi
mov rcx, rbp
call fcn.1400d7104
mov rdi, rax
mov edx, esi
mov rcx, rdi
call fcn.1400d7db0
mov rcx, qword [rbp + 0xe8]
mov rsi, rax
test rcx, rcx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GlobalFree]
and qword [rbp + 0xe8], 0
test rsi, rsi
je reloc.OLEAUT32.dll_VarI1FromDec
mov rdi, rsi
mov qword [rbp + 0xe8], rsi
or dword [rbx + 4], 1
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov qword [rbx + 0x10], rdi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x1400d7f20
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov rdi, rcx
xor ebx, ebx
mov qword [rax - 0x18], rbx
mov r14, qword [0x14024b7a8]
and qword [rax + 8], rbx
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x40]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test r14, r14
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.CreatePropertySheetPageW
call fcn.1400d821c
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b7a8], rax
mov eax, dword [rdi + 4]
mov ecx, reloc.OLEAUT32.dll_VarI1FromDec
test ecx, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
cmp dword [rdi], 0x60
jb reloc.OLEAUT32.dll_VarI1FromDec
or eax, ecx
mov dword [rdi + 4], eax
mov rax, qword [0x14023c8a0]
mov qword [rdi + 0x58], rax
mov rcx, rdi
call qword [0x14024b7a8]
mov rbx, rax
mov qword [rsp + 0x20], rax
xor edi, edi
test rbx, rbx
sete dil
test edi, edi
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test edi, edi
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rbx
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
Function at 0x1400d8038
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
xor edi, edi
mov dword [rax - 0x18], edi
mov rbx, qword [0x14024b7b0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.DestroyPropertySheetPage
call fcn.1400d821c
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b7b0], rax
mov rcx, r14
call rbx
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
Function at 0x1400d8124
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
or rdi, reloc.OLEAUT32.dll_VarI1FromDec
mov qword [rax - 0x18], rdi
mov rbx, qword [0x14024b7b8]
and qword [rax + 0x10], 0
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
or rax, reloc.OLEAUT32.dll_VarI1FromDec
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.PropertySheetW
call fcn.1400d821c
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024b7b8], rax
mov rcx, r14
call rbx
mov rdi, rax
mov qword [rsp + 0x20], rax
xor ebx, ebx
cmp rdi, reloc.OLEAUT32.dll_VarI1FromDec
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rdi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret

Function at 0x1400ea580
Capabilities:
Delete registry value

Disassembly:
sub rsp, 0x28
mov rcx, qword [rcx + 8]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueW]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
add rsp, 0x28
ret

Function at 0x1400ea6b0
Capabilities:
Query or enumerate registry value

Disassembly:
mov r11, rsp
sub rsp, 0x38
mov rcx, qword [rcx + 8]
lea rax, [r11 + 8]
lea r9, [r11 + 0x20]
mov qword [r11 - 0x10], rax
mov qword [r11 - 0x18], r8
xor r8d, r8d
mov dword [rsp + 0x40], 4
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
xor edx, edx
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, dword [rsp + 0x58]
sub ecx, 4
neg ecx
sbb eax, eax
and eax, 0xd
test eax, eax
sete dl
mov eax, edx
add rsp, 0x38
ret
Function at 0x1400eab00
Capabilities:
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rbp
mov qword [rax + 0x20], rsi
push rdi
sub rsp, 0x30
mov rdi, r9
mov rbx, r8
mov rsi, rdx
mov rbp, rcx
test rdx, rdx
je reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
je reloc.OLEAUT32.dll_VarI1FromDec
test r9, r9
je reloc.OLEAUT32.dll_VarI1FromDec
and qword [r8], 0
and dword [r9], 0
mov rcx, qword [rcx + 8]
mov qword [rax - 0x10], r9
and qword [rax - 0x18], 0
lea r9, [rax + 0x10]
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
cmp dword [rsp + 0x48], 3
jne reloc.OLEAUT32.dll_VarI1FromDec
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
cmp dword [rdi], eax
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, dword [rdi]
call fcn.140004ab0
lea r9, [rsp + 0x48]
xor r8d, r8d
mov qword [rbx], rax
mov rcx, qword [rbp + 8]
mov rdx, rsi
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
cmp dword [rsp + 0x48], 3
jne reloc.OLEAUT32.dll_VarI1FromDec
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
mov eax, 1
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, qword [rbx]
call fcn.140004af4
and qword [rbx], 0
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret
call fcn.140004b20
int3
call fcn.140004b20
int3
call fcn.140004b20
int3

Function at 0x1400eae9c
Capabilities:
Set registry value

Disassembly:
push rbx
sub rsp, 0x30
xor ebx, ebx
cmp dword [rcx + 0x28], ebx
je reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, qword [rcx + 8]
lea rax, [rsp + 0x40]
mov r9d, 4
mov dword [rsp + 0x40], r8d
mov dword [rsp + 0x28], r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
sete bl
mov eax, ebx
add rsp, 0x30
pop rbx
ret

Function at 0x1400eaee4
Capabilities:
Set registry value

Disassembly:
push rbx
sub rsp, 0x30
xor ebx, ebx
cmp dword [rcx + 0x28], ebx
je reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, qword [rcx + 8]
mov dword [rsp + 0x28], r9d
mov qword [rsp + 0x20], r8
mov r9d, 3
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
test eax, eax
sete bl
mov eax, ebx
add rsp, 0x30
pop rbx
ret
Function at 0x14012f000
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
xor edi, edi
mov dword [rax - 0x18], edi
mov rbx, qword [0x14024ce18]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.ChooseColorW
call fcn.140030144
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024ce18], rax
mov rcx, r14
call rbx
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret
Function at 0x14017b6ec
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push r14
sub rsp, 0x30
mov r14, rcx
xor edi, edi
mov dword [rax - 0x18], edi
mov rbx, qword [0x14024e3e0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x140244770]
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x140244770]
test eax, eax
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.140007d54
test eax, eax
je reloc.OLEAUT32.dll_VarI1FromDec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x14023c8a0]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne reloc.OLEAUT32.dll_VarI1FromDec
xor eax, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
test rbx, rbx
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rcx, str.PrintDlgW
call fcn.140030144
mov rbx, rax
test rax, rax
je reloc.OLEAUT32.dll_VarI1FromDec
mov qword [0x14024e3e0], rax
mov rcx, r14
call rbx
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je reloc.OLEAUT32.dll_VarI1FromDec
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret

Function at 0x14017cff0
Capabilities:
Encode data using xor

Disassembly:
mov rax, rcx
neg rcx
test rax, 7
je reloc.OLEAUT32.dll_VarI1FromDec
nop
mov dl, byte [rax]
inc rax
test dl, dl
je reloc.OLEAUT32.dll_VarI1FromDec
test al, 7
jne reloc.OLEAUT32.dll_VarI1FromDec
movabs r8, reloc.OLEAUT32.dll_VarI1FromDec
movabs r11, reloc.OLEAUT32.dll_VarI1FromDec
mov rdx, qword [rax]
mov r9, r8
add rax, 8
add r9, rdx
not rdx
xor rdx, r9
and rdx, r11
je reloc.OLEAUT32.dll_VarI1FromDec
mov rdx, qword [rax - 8]
test dl, dl
je reloc.OLEAUT32.dll_VarI1FromDec
test dh, dh
je reloc.OLEAUT32.dll_VarI1FromDec
shr rdx, 0x10
test dl, dl
je reloc.OLEAUT32.dll_VarI1FromDec
test dh, dh
je reloc.OLEAUT32.dll_VarI1FromDec
shr rdx, 0x10
test dl, dl
je reloc.OLEAUT32.dll_VarI1FromDec
test dh, dh
je reloc.OLEAUT32.dll_VarI1FromDec
shr edx, 0x10
test dl, dl
je reloc.OLEAUT32.dll_VarI1FromDec
test dh, dh
jne reloc.OLEAUT32.dll_VarI1FromDec
lea rax, [rcx + rax - 1]
ret
lea rax, [rcx + rax - 2]
ret
lea rax, [rcx + rax - 3]
ret
lea rax, [rcx + rax - 4]
ret
lea rax, [rcx + rax - 5]
ret
lea rax, [rcx + rax - 6]
ret
lea rax, [rcx + rax - 7]
ret
lea rax, [rcx + rax - 8]
ret

Function at 0x14017e2a4
Capabilities:
Terminate process

Disassembly:
xor r8d, r8d
xor edx, edx
jmp fcn.14017e10c
Function at 0x140190ea8
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
test rcx, rcx
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.14017d454
mov dword [rax], SafeArrayCopy
call fcn.140183c08
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov eax, dword [rcx + 0x18]
test al, 0x83
je reloc.OLEAUT32.dll_VarI1FromDec
test al, 0x40
jne reloc.OLEAUT32.dll_VarI1FromDec
test al, 2
je reloc.OLEAUT32.dll_VarI1FromDec
or eax, 0x20
mov dword [rcx + 0x18], eax
jmp reloc.OLEAUT32.dll_VarI1FromDec
or eax, 1
mov dword [rcx + 0x18], eax
test eax, reloc.OLEAUT32.dll_VarI1FromDec
jne reloc.OLEAUT32.dll_VarI1FromDec
call fcn.14018e264
jmp reloc.OLEAUT32.dll_VarI1FromDec
mov rax, qword [rcx + 0x10]
mov qword [rcx], rax
mov rcx, rdi
call fcn.140181e04
mov r8d, dword [rdi + 0x24]
mov rdx, qword [rdi + 0x10]
mov ecx, eax
call fcn.14018d49c
mov dword [rdi + 8], eax
lea ecx, [rax + 1]
cmp ecx, 2
jbe reloc.OLEAUT32.dll_VarI1FromDec
test byte [rdi + 0x18], 0x82
jne reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, rdi
call fcn.140181e04
cmp eax, reloc.OLEAUT32.dll_VarI1FromDec
je reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, rdi
call fcn.140181e04
cmp eax, reloc.OLEAUT32.dll_VarI1FromDec
je reloc.OLEAUT32.dll_VarI1FromDec
mov rcx, rdi
call fcn.140181e04
mov rcx, rdi
lea rsi, [0x14024f060]
movsxd rbx, eax
sar rbx, 5
call fcn.140181e04
and eax, 0x1f
imul rax, rax, 0x58
add rax, qword [rsi + rbx*8]
jmp reloc.OLEAUT32.dll_VarI1FromDec
lea rax, [0x140242640]
mov al, byte [rax + 8]
and al, 0x82
cmp al, 0x82
jne reloc.OLEAUT32.dll_VarI1FromDec
bts dword [rdi + 0x18], 0xd
cmp dword [rdi + 0x24], 0x200
jne reloc.OLEAUT32.dll_VarI1FromDec
test byte [rdi + 0x18], 8
je reloc.OLEAUT32.dll_VarI1FromDec
test dword [rdi + 0x18], 0x400
jne reloc.OLEAUT32.dll_VarI1FromDec
mov dword [rdi + 0x24], 0x1000
mov rcx, qword [rdi]
add dword [rdi + 8], 0xfffffffe
movzx eax, word [rcx]
add rcx, 2
mov qword [rdi], rcx
jmp reloc.OLEAUT32.dll_VarI1FromDec
neg eax
sbb eax, eax
and eax, 0x10
add eax, 0x10
or dword [rdi + 0x18], eax
and dword [rdi + 8], 0
mov eax, reloc.OLEAUT32.dll_VarI1FromDec
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret