joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14007c398
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 [0x1402c7918]
and qword [rax + 8], rbx
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x14007c3e4
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x14007c3ed
call fcn.140024088
test eax, eax
je 0x14007c409
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x14007c414
xor eax, eax
jmp 0x14007c4a3
test r14, r14
jne 0x14007c431
lea rcx, str.CreatePropertySheetPageW
call fcn.14007c6b0
test rax, rax
je 0x14007c46e
mov qword [0x1402c7918], rax
mov eax, dword [rdi + 4]
mov ecx, 0x4000
test ecx, eax
jne 0x14007c452
cmp dword [rdi], 0x60
jb 0x14007c452
or eax, ecx
mov dword [rdi + 4], eax
mov rax, qword [0x1402ba130]
mov qword [rdi + 0x58], rax
mov rbx, qword [0x1402c7918]
mov rcx, rbx
call fcn.1401c4b2c
mov rcx, rdi
call rbx
mov rbx, rax
mov qword [rsp + 0x20], rax
xor edi, edi
test rbx, rbx
sete dil
test edi, edi
je 0x14007c485
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14007c487
xor esi, esi
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test edi, edi
je 0x14007c4a0
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 0x14007c4bc
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 [0x1402c7920]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x14007c507
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x14007c510
call fcn.140024088
test eax, eax
je 0x14007c52c
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x14007c534
xor eax, eax
jmp 0x14007c599
test rbx, rbx
jne 0x14007c554
lea rcx, str.DestroyPropertySheetPage
call fcn.14007c6b0
mov rbx, rax
test rax, rax
je 0x14007c567
mov qword [0x1402c7920], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x14007c57c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14007c57e
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x14007c597
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 0x14007c5b0
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 [0x1402c7928]
and qword [rax + 0x10], 0
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x14007c5ff
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x14007c608
call fcn.140024088
test eax, eax
je 0x14007c624
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x14007c62e
or rax, 0xffffffffffffffff
jmp 0x14007c698
test rbx, rbx
jne 0x14007c64e
lea rcx, str.PropertySheetW
call fcn.14007c6b0
mov rbx, rax
test rax, rax
je 0x14007c663
mov qword [0x1402c7928], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x14007c67a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14007c67c
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x14007c695
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 0x1400832e0
Capabilities:
Print debug messages

Disassembly:
sub rsp, 0x28
cmp qword [rcx + 8], 0
jne 0x1400829ca
xor eax, eax
add rsp, 0x28
ret
call fcn.1400829dc
mov rcx, rax
add rsp, 0x28
jmp 0x1400832e0
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 [0x1402c7958]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x14008332b
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x140083334
call fcn.140024088
test eax, eax
je 0x140083350
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140083358
xor eax, eax
jmp 0x1400833bd
test rbx, rbx
jne 0x140083378
lea rcx, str.ImageList_Destroy
call fcn.14002d9d0
mov rbx, rax
test rax, rax
je 0x14008338b
mov qword [0x1402c7958], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1400833a0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1400833a2
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400833bb
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 0x1400833d4
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 [0x1402c7960]
and qword [rax - 0x28], rsi
xor edi, edi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x140083431
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x14008343a
call fcn.140024088
test eax, eax
je 0x140083456
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne edi, ecx
test edi, edi
jne 0x140083461
xor eax, eax
jmp 0x1400834f4
test rbx, rbx
jne 0x140083481
lea rcx, str.ImageList_LoadImageW
call fcn.14002d9d0
mov rbx, rax
test rax, rax
je 0x1400834c0
mov qword [0x1402c7960], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1400834d6
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x1400834d8
xor edi, edi
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400834f1
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 0x1401295ec
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 [0x1402c9ac0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x140129637
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x140129640
call fcn.140024088
test eax, eax
je 0x14012965c
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140129664
xor eax, eax
jmp 0x1401296c9
test rbx, rbx
jne 0x140129684
lea rcx, str.GetOpenFileNameW
call fcn.140077020
mov rbx, rax
test rax, rax
je 0x140129697
mov qword [0x1402c9ac0], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1401296ac
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401296ae
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1401296c7
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 0x1401296e0
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 [0x1402c9ac8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x14012972b
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x140129734
call fcn.140024088
test eax, eax
je 0x140129750
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140129758
xor eax, eax
jmp 0x1401297bd
test rbx, rbx
jne 0x140129778
lea rcx, str.GetSaveFileNameW
call fcn.140077020
mov rbx, rax
test rax, rax
je 0x14012978b
mov qword [0x1402c9ac8], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1401297a0
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401297a2
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1401297bb
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 0x1401aed28
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 [0x1402cb870]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x1401aed73
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x1401aed7c
call fcn.140024088
test eax, eax
je 0x1401aed98
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1401aeda0
xor eax, eax
jmp 0x1401aee05
test rbx, rbx
jne 0x1401aedc0
lea rcx, str.ChooseColorW
call fcn.140077020
mov rbx, rax
test rax, rax
je 0x1401aedd3
mov qword [0x1402cb870], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1401aede8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401aedea
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1401aee03
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 0x1401c418c
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 [0x1402cbee8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x1402c2290]
test eax, eax
je 0x1401c41d7
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x1402c2290]
test eax, eax
jne 0x1401c41e0
call fcn.140024088
test eax, eax
je 0x1401c41fc
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402ba130]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1401c4204
xor eax, eax
jmp 0x1401c4269
test rbx, rbx
jne 0x1401c4224
lea rcx, str.PrintDlgW
call fcn.140077020
mov rbx, rax
test rax, rax
je 0x1401c4237
mov qword [0x1402cbee8], rax
mov rcx, rbx
call fcn.1401c4b2c
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 0x1401c424c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x1401c424e
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1401c4267
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 0x1401e25ec
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov qword [rax + 8], rcx
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x20
test rcx, rcx
jne 0x1401e2452
call fcn.1401c8f64
mov dword [rax], 0x16
call fcn.1401c8e0c
mov eax, 0xffff
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop rbp
ret
mov eax, dword [rcx + 0x14]
shr eax, 0xd
test al, 1
je 0x1401e2434
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
shr ecx, 0xc
test cl, 1
jne 0x1401e2434
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
mov rax, qword [rbp + 0x20]
shr ecx, 1
test cl, 1
je 0x1401e2484
lock or dword [rax + 0x14], 0x10
jmp 0x1401e2434
lock or dword [rax + 0x14], 1
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
test ecx, 0x4c0
jne 0x1401e24a1
mov rcx, qword [rbp + 0x20]
call fcn.1401e93a0
mov rax, qword [rbp + 0x20]
cmp dword [rax + 0x10], 1
jne 0x1401e24b6
mov rcx, qword [rax]
mov sil, 1
mov r14b, byte [rcx]
jmp 0x1401e24bc
xor sil, sil
xor r14b, r14b
mov rcx, qword [rax + 8]
mov qword [rax], rcx
mov rbx, qword [rbp + 0x20]
mov rcx, rbx
call fcn.1401d62f4
mov rdx, qword [rbp + 0x20]
mov ecx, eax
mov r8d, dword [rdx + 0x20]
mov rdx, qword [rdx + 8]
call fcn.1401e1cd8
mov dword [rbx + 0x10], eax
mov rax, qword [rbp + 0x20]
mov edx, dword [rax + 0x10]
lea ecx, [rdx + 1]
cmp ecx, 2
ja 0x1401e250f
neg edx
sbb ecx, ecx
and ecx, 8
add ecx, 8
lock or dword [rax + 0x14], ecx
mov rax, qword [rbp + 0x20]
and dword [rax + 0x10], 0
jmp 0x1401e2434
mov ecx, dword [rax + 0x14]
test cl, 6
jne 0x1401e257b
mov rcx, qword [rbp + 0x20]
call fcn.1401d62f4
cmp eax, 0xffffffff
je 0x1401e2562
mov rcx, qword [rbp + 0x20]
call fcn.1401d62f4
cmp eax, 0xfffffffe
je 0x1401e2562
mov rbx, qword [rbp + 0x20]
mov rcx, rbx
call fcn.1401d62f4
movsxd rdi, eax
lea r15, [0x1402cca40]
mov rcx, rbx
sar rdi, 6
call fcn.1401d62f4
and eax, 0x3f
shl rax, 6
add rax, qword [r15 + rdi*8]
jmp 0x1401e2569
lea rax, [0x1402bbbd0]
mov al, byte [rax + 0x38]
and al, 0x82
cmp al, 0x82
jne 0x1401e257b
mov rax, qword [rbp + 0x20]
lock or dword [rax + 0x14], 0x20
mov rax, qword [rbp + 0x20]
cmp dword [rax + 0x20], 0x200
jne 0x1401e25b1
mov ecx, dword [rax + 0x14]
shr ecx, 6
test cl, 1
je 0x1401e25ad
mov rax, qword [rbp + 0x20]
mov ecx, dword [rax + 0x14]
shr ecx, 8
test cl, 1
jne 0x1401e25ad
mov rax, qword [rbp + 0x20]
mov dword [rax + 0x20], 0x1000
mov rax, qword [rbp + 0x20]
mov rcx, qword [rax]
test sil, sil
je 0x1401e25cf
movzx edx, byte [rcx]
dec dword [rax + 0x10]
shl dx, 8
movzx ecx, r14b
or dx, cx
inc qword [rax]
jmp 0x1401e25da
movzx edx, word [rcx]
add dword [rax + 0x10], 0xfffffffe
add qword [rax], 2
movzx eax, dx
jmp 0x1401e2439
jmp 0x1401e2400
Function at 0x1401f3080
Capabilities:
Create pipe

Disassembly:
push rbx
sub rsp, 0x40
mov rax, qword [rsp + 0x90]
mov r10d, r9d
mov r9d, dword [rsp + 0x70]
mov r11d, r8d
mov qword [rsp + 0x38], rax
mov rcx, rdx
mov eax, dword [rsp + 0x88]
mov r8d, r10d
mov dword [rsp + 0x30], eax
mov edx, r11d
mov eax, dword [rsp + 0x80]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
add rsp, 0x40
pop rbx
ret

Function at 0x1401f3100
Capabilities:
Create process on windows

Disassembly:
push rbx
sub rsp, 0x50
mov rax, qword [rsp + 0xb0]
mov r10, r9
mov r9, qword [rsp + 0x80]
mov r11, r8
mov qword [rsp + 0x48], rax
mov rcx, rdx
mov rax, qword [rsp + 0xa8]
mov r8, r10
mov qword [rsp + 0x40], rax
mov rdx, r11
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x30], rax
mov eax, dword [rsp + 0x90]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0x88]
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateProcessW]
add rsp, 0x50
pop rbx
ret

Function at 0x1401f3180
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x30
mov rax, qword [rsp + 0x70]
mov r10, r9
mov r9, qword [rsp + 0x60]
mov r11, r8
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov eax, dword [rsp + 0x68]
mov r8, r10
mov rdx, r11
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
add rsp, 0x30
pop rbx
ret

Function at 0x1401f3b50
Capabilities:
Create thread

Disassembly:
push rbx
sub rsp, 0x30
mov rax, qword [rsp + 0x70]
mov r10, r9
mov r9, qword [rsp + 0x60]
mov r11d, r8d
mov qword [rsp + 0x28], rax
mov rcx, rdx
mov eax, dword [rsp + 0x68]
mov r8, r10
mov edx, r11d
mov dword [rsp + 0x20], eax
call fcn.1401cb384
add rsp, 0x30
pop rbx
ret

Function at 0x1401f3f30
Capabilities:
Create process on windows

Disassembly:
push rbx
sub rsp, 0x30
mov eax, dword [rsp + 0x70]
mov r10, r9
mov r9, qword [rsp + 0x60]
mov r11, r8
mov dword [rsp + 0x28], eax
mov rcx, rdx
mov rax, qword [rsp + 0x68]
mov r8, r10
mov rdx, r11
mov qword [rsp + 0x20], rax
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
add rsp, 0x30
pop rbx
ret

Function at 0x1401f4050
Capabilities:
Get session user name

Disassembly:
sub rsp, 0x28
mov rax, r8
mov ecx, edx
mov rdx, rax
mov r8, r9
call sub.Secur32.dll_GetUserNameExW
movzx eax, al
add rsp, 0x28
ret

Function at 0x1401f42c0
Capabilities:
Query or enumerate registry key

Disassembly:
sub rsp, 0x48
xor ecx, ecx
mov rax, r9
mov r9, qword [rsp + 0x70]
mov r10d, r8d
mov qword [rsp + 0x38], rcx
mov r11, rdx
mov qword [rsp + 0x30], rcx
mov r8, rax
mov qword [rsp + 0x28], rcx
mov edx, r10d
mov qword [rsp + 0x20], rcx
mov rcx, r11
call qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
add rsp, 0x48
ret
Function at 0x1401f45a0
Capabilities:
Modify service

Disassembly:
push rbx
sub rsp, 0x60
mov rax, qword [rsp + 0xc8]
mov r10d, r9d
mov r9d, dword [rsp + 0x90]
mov r11d, r8d
mov qword [rsp + 0x50], rax
mov rcx, rdx
mov rax, qword [rsp + 0xc0]
mov r8d, r10d
mov qword [rsp + 0x48], rax
mov edx, r11d
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x38], rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xa0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_ChangeServiceConfigW]
add rsp, 0x60
pop rbx
ret

Function at 0x1401f4670
Capabilities:
Create process on windows

Disassembly:
push rbx
sub rsp, 0x60
mov rax, qword [rsp + 0xc8]
mov r10, r9
mov r9, qword [rsp + 0x90]
mov r11, r8
mov qword [rsp + 0x50], rax
mov rcx, rdx
mov rax, qword [rsp + 0xc0]
mov r8, r10
mov qword [rsp + 0x48], rax
mov rdx, r11
mov rax, qword [rsp + 0xb8]
mov qword [rsp + 0x40], rax
mov rax, qword [rsp + 0xb0]
mov qword [rsp + 0x38], rax
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x28], eax
mov rax, qword [rsp + 0x98]
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_CreateProcessAsUserW]
add rsp, 0x60
pop rbx
ret
Function at 0x140001754
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x14000179e
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x14000179e
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x14000179e
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x14000179e
cmp dword [rcx + 0x84], 0xe
jbe 0x14000179e
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x1400017a0
xor al, al
add rsp, 0x28
ret

Function at 0x140005edc
Capabilities:
Parse pe header

Disassembly:
xor r8d, r8d
xor edx, edx
jmp 0x140005cd8
Function at 0x140008f9c
Capabilities:
Query environment variable

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
call qword [sym.imp.KERNEL32.dll_GetEnvironmentStringsW]
xor esi, esi
mov rbx, rax
test rax, rax
jne 0x140008fcc
xor eax, eax
jmp 0x14000908f
mov rbp, rbx
cmp word [rax], si
je 0x140008ff1
or rax, 0xffffffffffffffff
inc rax
cmp word [rbp + rax*2], si
jne 0x140008fd8
lea rbp, [rbp + rax*2]
add rbp, 2
cmp word [rbp], si
jne 0x140008fd4
mov qword [rsp + 0x38], rsi
sub rbp, rbx
mov qword [rsp + 0x30], rsi
add rbp, 2
sar rbp, 1
mov r8, rbx
mov r9d, ebp
mov dword [rsp + 0x28], esi
xor edx, edx
mov qword [rsp + 0x20], rsi
xor ecx, ecx
call fcn.140008ebc
movsxd r14, eax
test eax, eax
jne 0x14000902f
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
jmp 0x140008fc5
mov rcx, r14
call fcn.140009e78
mov rdi, rax
test rax, rax
jne 0x140009048
xor ecx, ecx
call fcn.14000751c
jmp 0x140009024
mov qword [rsp + 0x38], rsi
mov r9d, ebp
mov qword [rsp + 0x30], rsi
mov r8, rbx
mov dword [rsp + 0x28], r14d
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rdi
call fcn.140008ebc
test eax, eax
jne 0x140009079
mov rcx, rdi
call fcn.14000751c
jmp 0x140009083
xor ecx, ecx
call fcn.14000751c
mov rsi, rdi
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeEnvironmentStringsW]
mov rax, rsi
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