joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140044168
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 [0x14048fa28]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x1400441b3
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x1400441bc
call fcn.140016158
test eax, eax
je 0x1400441d8
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1400441e0
xor eax, eax
jmp 0x140044245
test rbx, rbx
jne 0x140044200
lea rcx, str.DestroyPropertySheetPage
call fcn.14004435c
mov rbx, rax
test rax, rax
je 0x140044213
mov qword [0x14048fa28], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x140044228
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14004422a
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140044243
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 0x14004425c
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, 0xffffffffffffffff
mov qword [rax - 0x18], rdi
mov rbx, qword [0x14048fa30]
and qword [rax + 0x10], 0
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x1400442ab
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x1400442b4
call fcn.140016158
test eax, eax
je 0x1400442d0
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1400442da
or rax, 0xffffffffffffffff
jmp 0x140044344
test rbx, rbx
jne 0x1400442fa
lea rcx, str.PropertySheetA
call fcn.14004435c
mov rbx, rax
test rax, rax
je 0x14004430f
mov qword [0x14048fa30], rax
mov rcx, rbx
call fcn.1401d2cd0
mov rcx, r14
call rbx
mov rdi, rax
mov qword [rsp + 0x20], rax
xor ebx, ebx
cmp rdi, 0xffffffffffffffff
sete bl
test ebx, ebx
je 0x140044326
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x140044328
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140044341
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 0x1400459cc
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
cmp qword [rcx], 0
mov rdi, rdx
mov rbx, rcx
je 0x140045a23
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140045a34
lea rdx, str.DeleteFileTransactedA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
test rax, rax
je 0x140045a34
mov rcx, rax
call fcn.1401d2cd0
mov rdx, qword [rbx]
mov rcx, rdi
call rsi
jmp 0x140045a36
cmp dword [rcx + 8], 0
je 0x140045a34
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
jmp 0x140045a36
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret

Function at 0x140045d98
Capabilities:
Move file

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
cmp qword [rcx], 0
mov rsi, r8
mov rbp, rdx
mov rbx, rcx
je 0x140045e0d
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x140045e21
lea rdx, str.MoveFileTransactedA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x140045e21
mov rcx, rax
call fcn.1401d2cd0
mov rcx, qword [rbx]
xor r9d, r9d
mov qword [rsp + 0x28], rcx
xor r8d, r8d
mov rcx, rbp
mov dword [rsp + 0x20], 2
mov rdx, rsi
call rdi
jmp 0x140045e23
cmp dword [rcx + 8], 0
je 0x140045e21
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_MoveFileA]
jmp 0x140045e23
xor eax, eax
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret

Function at 0x140046128
Capabilities:
Delete file

Disassembly:
push rbx
sub rsp, 0x20
mov rax, rdx
mov rbx, rcx
test rdx, rdx
je 0x140046146
mov rdx, rcx
mov rcx, rax
call fcn.1400459cc
jmp 0x14004614c
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x140046160
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov rdx, rbx
call fcn.140044cb4
add rsp, 0x20
pop rbx
ret

Function at 0x140046168
Capabilities:
Move file

Disassembly:
push rbx
sub rsp, 0x20
mov rax, r8
mov rbx, rcx
test r8, r8
je 0x140046189
mov r8, rdx
mov rdx, rcx
mov rcx, rax
call fcn.140045d98
jmp 0x14004618f
call qword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
jne 0x1400461a3
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov rdx, rbx
call fcn.140044cb4
add rsp, 0x20
pop rbx
ret
Function at 0x14004667c
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
movzx r14d, r8w
mov r15, rdx
mov r12, rcx
or r13d, 0xffffffff
movzx esi, r13w
mov word [rax - 0x38], r13w
mov rbx, qword [0x14048fa48]
and qword [rax + 0x20], 0
xor edi, edi
mov eax, dword [0x14048be48]
test eax, eax
je 0x1400466da
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x1400466e3
call fcn.140016158
test eax, eax
je 0x1400466ff
lea rdx, [rsp + 0x78]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne edi, ecx
test edi, edi
jne 0x140046709
movzx eax, r13w
jmp 0x14004677a
test rbx, rbx
jne 0x140046729
lea rcx, str.GetFileTitleA
call fcn.140029e9c
mov rbx, rax
test rax, rax
je 0x140046745
mov qword [0x14048fa48], rax
mov rcx, rbx
call fcn.1401d2cd0
movzx r8d, r14w
mov rdx, r15
mov rcx, r12
call rbx
movzx esi, ax
mov word [rsp + 0x20], ax
xor ebx, ebx
cmp si, r13w
sete bl
test ebx, ebx
je 0x14004675c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x14004675e
xor edi, edi
mov rdx, qword [rsp + 0x78]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140046777
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
movzx eax, si
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret

Function at 0x14004bd98
Capabilities:
Delete file

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rbx, rdx
mov rcx, qword [rdx]
cmp dword [rcx - 0x10], 0
je 0x14004bdca
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x14004bdca
lea rcx, [rdi + 0x120]
mov rdx, rbx
call fcn.140071684
mov eax, 1
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x14004bddc
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rdi, rcx
mov rsi, rdx
mov rcx, qword [rcx + 0x10]
test rcx, rcx
je 0x14004be07
mov r8, rdx
mov rdx, qword [rdi]
call fcn.140027e8c
jmp 0x14004be7f
cmp byte [0x14048fac0], 0
jne 0x14004be4e
lea rcx, str.Advapi32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x14004be3e
lea rdx, str.RegDeleteKeyExA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
mov qword [0x14048fab8], rax
jmp 0x14004be45
mov rbx, qword [0x14048fab8]
mov byte [0x14048fac0], 1
jmp 0x14004be55
mov rbx, qword [0x14048fab8]
test rbx, rbx
je 0x14004be73
mov rcx, rbx
call fcn.1401d2cd0
mov r8d, dword [rdi + 8]
xor r9d, r9d
mov rcx, qword [rdi]
mov rdx, rsi
call rbx
jmp 0x14004be7f
mov rcx, qword [rdi]
mov rdx, rsi
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x1400520c8
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 [0x14048fae0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x140052113
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x14005211c
call fcn.140016158
test eax, eax
je 0x140052138
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140052140
xor eax, eax
jmp 0x1400521a5
test rbx, rbx
jne 0x140052160
lea rcx, str.PrintDlgA
call fcn.140029e9c
mov rbx, rax
test rax, rax
je 0x140052173
mov qword [0x14048fae0], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x140052188
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14005218a
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400521a3
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 0x140061424
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 [0x14048fae8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x14006146f
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x140061478
call fcn.140016158
test eax, eax
je 0x140061494
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x14006149c
xor eax, eax
jmp 0x140061501
test rbx, rbx
jne 0x1400614bc
lea rcx, str.GetOpenFileNameA
call fcn.140029e9c
mov rbx, rax
test rax, rax
je 0x1400614cf
mov qword [0x14048fae8], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x1400614e4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1400614e6
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400614ff
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 0x140061518
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 [0x14048faf0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x140061563
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x14006156c
call fcn.140016158
test eax, eax
je 0x140061588
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140061590
xor eax, eax
jmp 0x1400615f5
test rbx, rbx
jne 0x1400615b0
lea rcx, str.GetSaveFileNameA
call fcn.140029e9c
mov rbx, rax
test rax, rax
je 0x1400615c3
mov qword [0x14048faf0], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x1400615d8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1400615da
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400615f3
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 0x14009db2c
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
push r14
push r15
sub rsp, 0x20
xor ebx, ebx
mov rdi, r8
mov rsi, rdx
mov r15, rcx
test r8, r8
jne 0x14009db5d
call fcn.1400315b0
mov rdi, qword [rax + 0x18]
lea r8, [0x140221118]
mov rdx, rsi
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rbp, rax
test rax, rax
jne 0x14009db7c
xor eax, eax
jmp 0x14009dbc8
mov rdx, rbp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rsi, rax
test rax, rax
je 0x14009db78
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r14, rax
test rax, rax
je 0x14009dbbd
mov rdx, rbp
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov rdx, r14
mov rcx, r15
mov r8d, eax
call fcn.14009dbe4
mov ebx, eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret

Function at 0x1400a0800
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 [0x140490658]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x1400a084b
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x1400a0854
call fcn.140016158
test eax, eax
je 0x1400a0870
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1400a0878
xor eax, eax
jmp 0x1400a08dd
test rbx, rbx
jne 0x1400a0898
lea rcx, str.ImageList_GetImageCount
call fcn.140015b3c
mov rbx, rax
test rax, rax
je 0x1400a08ab
mov qword [0x140490658], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x1400a08c0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1400a08c2
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400a08db
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 0x14012662c
Capabilities:
Delete registry value

Disassembly:
sub rsp, 0x28
mov rcx, qword [rcx + 8]
call qword [sym.imp.ADVAPI32.dll_RegDeleteValueA]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
add rsp, 0x28
ret
Function at 0x1401267fc
Capabilities:
Query or enumerate registry value

Disassembly:
mov r11, rsp
sub rsp, 0x38
mov rcx, qword [rcx + 8]
lea rax, [r11 + 8]
mov qword [r11 - 0x10], rax
lea r9, [r11 + 0x20]
mov qword [r11 - 0x18], r8
xor r8d, r8d
mov dword [rsp + 0x40], 4
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
xor edx, edx
test eax, eax
jne 0x14012683e
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 0x140126ca8
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 0x140126d7a
test rbx, rbx
je 0x140126d80
test r9, r9
je 0x140126d86
and qword [r8], 0
xor r8d, r8d
and dword [r9], 0
mov rcx, qword [rcx + 8]
mov qword [rax - 0x10], r9
lea r9, [rax + 0x10]
and qword [rax - 0x18], 0
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x140126d63
cmp dword [rsp + 0x48], 3
jne 0x140126d63
test eax, eax
jne 0x140126d63
cmp dword [rdi], eax
je 0x140126d63
mov ecx, dword [rdi]
call fcn.14000b6a0
mov qword [rbx], rax
lea r9, [rsp + 0x48]
mov rcx, qword [rbp + 8]
xor r8d, r8d
mov qword [rsp + 0x28], rdi
mov rdx, rsi
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
test eax, eax
jne 0x140126d57
cmp dword [rsp + 0x48], 3
jne 0x140126d57
test eax, eax
jne 0x140126d57
mov eax, 1
jmp 0x140126d65
mov rcx, qword [rbx]
call fcn.14000b698
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.14001e56c
int3
call fcn.14001e56c
int3
call fcn.14001e56c
int3

Function at 0x1401270ac
Capabilities:
Set registry value

Disassembly:
push rbx
sub rsp, 0x30
xor ebx, ebx
cmp dword [rcx + 0x28], ebx
je 0x1401270bd
xor eax, eax
jmp 0x1401270eb
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_RegSetValueExA]
test eax, eax
sete bl
mov eax, ebx
add rsp, 0x30
pop rbx
ret

Function at 0x1401270f4
Capabilities:
Set registry value

Disassembly:
push rbx
sub rsp, 0x30
xor ebx, ebx
cmp dword [rcx + 0x28], ebx
je 0x140127105
xor eax, eax
jmp 0x140127129
mov rcx, qword [rcx + 8]
mov dword [rsp + 0x28], r9d
mov r9d, 3
mov qword [rsp + 0x20], r8
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
sete bl
mov eax, ebx
add rsp, 0x30
pop rbx
ret
Function at 0x140184388
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 [0x140494360]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14048be48]
test eax, eax
je 0x1401843d3
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14048be48]
test eax, eax
jne 0x1401843dc
call fcn.140016158
test eax, eax
je 0x1401843f8
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140484140]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140184400
xor eax, eax
jmp 0x140184465
test rbx, rbx
jne 0x140184420
lea rcx, str.ChooseColorA
call fcn.140029e9c
mov rbx, rax
test rax, rax
je 0x140184433
mov qword [0x140494360], rax
mov rcx, rbx
call fcn.1401d2cd0
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 0x140184448
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14018444a
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140184463
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 0x1401e5564
Capabilities:
Parse pe header

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
mov qword [rax + 0x20], r14
push r15
sub rsp, 0x20
mov esi, r8d
mov ebx, edx
mov r14d, ecx
test r8d, r8d
jne 0x1401e5338
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1401e5338
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x1401e5338
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x1401e5338
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x1401e5338
cmp dword [rcx + 0x84], 0xe
jbe 0x1401e5338
cmp dword [rcx + 0xf8], esi
je 0x1401e5338
mov ecx, r14d
call fcn.1401e5480
mov ecx, 2
call fcn.1401eb7e8
nop
cmp byte [0x140496318], 0
jne 0x1401e5402
mov r15d, 1
mov eax, r15d
xchg dword [0x140496308], eax
test ebx, ebx
jne 0x1401e53ab
mov rdi, qword [0x140485890]
mov edx, edi
and edx, 0x3f
lea ecx, [rbx + 0x40]
sub ecx, edx
xor eax, eax
ror rax, cl
xor rax, rdi
mov rcx, qword [0x140496310]
cmp rcx, rax
je 0x1401e53a2
xor rdi, rcx
mov ecx, edx
ror rdi, cl
mov rcx, rdi
call qword [fcn.140097480]
xor r8d, r8d
xor edx, edx
xor ecx, ecx
call rdi
lea rcx, [0x140496448]
jmp 0x1401e53b7
cmp ebx, r15d
jne 0x1401e53bd
lea rcx, [0x140496460]
call fcn.1401e6018
nop
test ebx, ebx
jne 0x1401e53d4
lea rdx, [0x140200b68]
lea rcx, [0x140200b48]
call fcn.1401e6350
lea rdx, [0x140200b78]
lea rcx, [0x140200b70]
call fcn.1401e6350
movzx eax, byte [0x140496318]
test esi, esi
cmove eax, r15d
mov byte [0x140496318], al
jmp 0x1401e5402
mov ecx, 2
call fcn.1401eb83c
test esi, esi
jne 0x1401e5419
mov ecx, r14d
call fcn.1401e5434
int3
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x40]
mov r14, qword [rsp + 0x48]
add rsp, 0x20
pop r15
ret
xor r8d, r8d
xor edx, edx
jmp 0x1401e52c8