joyce8/EMBER2024-capa huggingface dataset:
Function at 0x14016553c
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x50
mov rax, qword [0x1402066f0]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov ebp, r8d
mov r14, rdx
mov r13, rcx
call fcn.14015bc88
xor ebx, ebx
cmp qword [0x1402133b0], rbx
mov rdi, rax
jne 0x14016564f
lea rcx, str.USER32.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
test rax, rax
je 0x140165726
lea rdx, str.MessageBoxW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140165726
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, [0x1401c8608]
mov rcx, rsi
mov qword [0x1402133b0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, [0x1401c85f0]
mov rcx, rsi
mov qword [0x1402133b8], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetUserObjectInformationW
mov rcx, rsi
mov qword [0x1402133c0], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov r11, rax
mov qword [0x1402133d0], rax
test rax, rax
je 0x140165646
lea rdx, str.GetProcessWindowStation
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov qword [0x1402133c8], rax
jmp 0x140165656
mov rax, qword [0x1402133c8]
jmp 0x14016565d
mov rax, qword [0x1402133c8]
mov r11, qword [0x1402133d0]
cmp rax, rdi
je 0x1401656c4
cmp r11, rdi
je 0x1401656c4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov rcx, qword [0x1402133d0]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov r12, rax
test rsi, rsi
je 0x1401656c4
test rax, rax
je 0x1401656c4
call rsi
test rax, rax
je 0x1401656be
lea rcx, [rsp + 0x30]
mov r9d, reloc.OLEAUT32.dll_VariantTimeToDosDateTime
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
lea edx, [r9 - 0xb]
mov rcx, rax
call r12
test eax, eax
je 0x1401656be
test byte [rsp + 0x40], 1
jne 0x1401656c4
bts ebp, 0x15
jmp 0x140165704
mov rcx, qword [0x1402133b8]
cmp rcx, rdi
je 0x140165704
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x140165704
call rax
mov rbx, rax
test rax, rax
je 0x140165704
mov rcx, qword [0x1402133c0]
cmp rcx, rdi
je 0x140165704
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x140165704
mov rcx, rbx
call rax
mov rbx, rax
mov rcx, qword [0x1402133b0]
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x140165726
mov r9d, ebp
mov r8, r14
mov rdx, r13
mov rcx, rbx
call rax
jmp 0x140165728
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140152920
add rsp, 0x50
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x140027980
Capabilities:
Write file on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x60
mov rbx, r9
mov r14, r8
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x58], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rcx, [rsp + 0x40]
mov qword [rcx + 0x10], rax
movaps xmm0, xmmword [0x1401af9e0]
movaps xmmword [rcx], xmm0
lea rdx, str.GROUP:
call fcn.14015f450
test rdi, rdi
je 0x140027b25
mov rcx, rdi
call fcn.1401473f0
lea r15, [rsp + 0x40]
mov rcx, r15
mov rdx, rdi
mov r8, rax
call fcn.1400d8530
lea rdx, str.__NAME:
mov r8d, 8
mov rcx, r15
call fcn.1400d8530
test r14, r14
je 0x140027b25
mov rcx, r14
call fcn.1401473f0
lea rdi, [rsp + 0x40]
mov rcx, rdi
mov rdx, r14
mov r8, rax
call fcn.1400d8530
lea rdx, str.__DURATION:
mov r8d, SafeArrayDestroy
mov rcx, rdi
call fcn.1400d8530
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x140027aa0
sub rdx, qword [rbx]
lea rbx, [rsp + 0x28]
mov rcx, rbx
call fcn.140078480
movzx r8d, byte [rbx + 0x17]
test r8b, r8b
jns 0x140027a6e
mov r8, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
lea rcx, [rsp + 0x40]
mov rdx, rbx
call fcn.1400d8530
cmp byte [rsp + 0x3f], 0
jns 0x140027a8c
mov rcx, qword [rsp + 0x28]
call fcn.140124dec
lea rdx, str.__us_
lea rcx, [rsp + 0x40]
mov r8d, 5
jmp 0x140027ab2
lea rdx, str.unknown_unfinished
lea rcx, [rsp + 0x40]
mov r8d, 0x12
call fcn.1400d8530
lea rdx, [0x1401b4860]
mov r8d, 2
mov rcx, rdi
call fcn.1400d8530
movzx r8d, byte [rsp + 0x57]
test r8b, r8b
jns 0x140027ae1
mov r8d, dword [rsp + 0x48]
mov rdi, qword [rsp + 0x40]
mov rcx, qword [rsi + 8]
mov qword [rsp + 0x20], 0
mov rdx, rdi
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_WriteFile]
cmp byte [rsp + 0x57], 0
jns 0x140027b0b
mov rcx, qword [rsp + 0x40]
call fcn.140124dec
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.140125960
nop
add rsp, 0x60
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude_string:2862:_assertion___s___nullptr_failed:_string::append_received_nullptr_n
call fcn.140160550
int3
Function at 0x14002aec0
Capabilities:
Check if file exists
Delete directory
Delete file

Disassembly:
mov rcx, rdx
test r8b, r8b
je fcn.140081d00
jmp fcn.140081fa0

Function at 0x14002aef0
Capabilities:
Move file

Disassembly:
mov rcx, rdx
mov rdx, r8
jmp fcn.14017ee30
Function at 0x140035e80
Capabilities:
Get session user name

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x240
mov rsi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x238], rax
lea rdi, [rsp + 0x2c]
mov dword [rdi], 0x101
lea rbx, [rsp + 0x30]
mov r8d, 0x202
mov rcx, rbx
mov dl, 0xaa
call fcn.1401288f0
mov rcx, rbx
mov rdx, rdi
call qword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov edi, eax
test eax, eax
je 0x140035ede
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1400780e0
test edi, edi
setne bl
mov rcx, qword [rsp + 0x238]
xor rcx, rsp
call fcn.140125960
mov eax, ebx
add rsp, 0x240
pop rbx
pop rdi
pop rsi
ret

Function at 0x140035f00
Capabilities:
Get session user name

Disassembly:
mov edx, 2
jmp 0x140035f10
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x30
mov edi, edx
mov rsi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x24]
mov dword [r8], 0
mov ecx, edx
xor edx, edx
call sub.Secur32.dll_GetUserNameExW
test al, al
je 0x140035fc0
lea r14, [rsp + 0x24]
mov r15d, dword [r14]
inc r15d
mov dword [r14], r15d
add r15, r15
mov rcx, r15
call fcn.140124e2c
mov rbx, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.1401288f0
mov ecx, edi
mov rdx, rbx
mov r8, r14
call sub.Secur32.dll_GetUserNameExW
test al, al
setne dil
je 0x140035fb9
test rbx, rbx
je 0x140035fd5
mov rcx, rsi
mov rdx, rbx
call fcn.1400780e0
mov rcx, rbx
call fcn.140124e34
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.140125960
mov eax, edi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
test rbx, rbx
jne 0x140035f96
jmp 0x140035fd1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
je 0x140035f48
xor edi, edi
jmp 0x140035f9e
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude_string:2719:_assertion___s___nullptr_failed:_string::assign_received_nullptr_n
call fcn.140160550
int3

Function at 0x140035f10
Capabilities:
Get session user name

Disassembly:
mov edx, 2
jmp 0x140035f10
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x30
mov edi, edx
mov rsi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x28], rax
lea r8, [rsp + 0x24]
mov dword [r8], 0
mov ecx, edx
xor edx, edx
call sub.Secur32.dll_GetUserNameExW
test al, al
je 0x140035fc0
lea r14, [rsp + 0x24]
mov r15d, dword [r14]
inc r15d
mov dword [r14], r15d
add r15, r15
mov rcx, r15
call fcn.140124e2c
mov rbx, rax
mov rcx, rax
xor edx, edx
mov r8, r15
call fcn.1401288f0
mov ecx, edi
mov rdx, rbx
mov r8, r14
call sub.Secur32.dll_GetUserNameExW
test al, al
setne dil
je 0x140035fb9
test rbx, rbx
je 0x140035fd5
mov rcx, rsi
mov rdx, rbx
call fcn.1400780e0
mov rcx, rbx
call fcn.140124e34
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.140125960
mov eax, edi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
test rbx, rbx
jne 0x140035f96
jmp 0x140035fd1
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xea
je 0x140035f48
xor edi, edi
jmp 0x140035f9e
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude_string:2719:_assertion___s___nullptr_failed:_string::assign_received_nullptr_n
call fcn.140160550
int3
Function at 0x140037170
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rdi, rdx
mov rsi, rcx
mov r12, qword [rcx + 0x10]
cmp r12, qword [rcx + 0x18]
je 0x1400371b6
mov r14, r12
test r14, r14
je 0x1400372b8
mov rax, qword [rdi]
mov qword [r14], rax
add qword [rsi + 0x10], 8
add rsp, 0x20
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov r15, qword [rsi]
mov rbx, qword [rsi + 8]
mov rax, rbx
sub rax, r15
jbe 0x140037218
sar rax, 3
lea rcx, [rax + 1]
shr rcx, 0x3f
add rax, rcx
inc rax
sar rax, 1
mov r13, rax
neg r13
shl rax, 3
mov r14, rbx
sub r14, rax
mov r15, r12
sub r15, rbx
je 0x140037204
mov rcx, r14
mov rdx, rbx
mov r8, r15
call fcn.140128240
mov r12, qword [rsi + 8]
add r14, r15
mov qword [rsi + 0x10], r14
lea rax, [r12 + r13*8]
mov qword [rsi + 8], rax
jmp 0x140037192
mov rax, r12
sub rax, r15
sar rax, 2
cmp r12, r15
mov r13d, 1
cmovne r13, rax
mov rax, r13
shr rax, 0x3d
jne 0x1400372de
lea rcx, [r13*8]
call fcn.140124db0
mov rcx, r13
and rcx, 0xfffffffffffffffc
lea rcx, [rax + rcx*2]
mov rdx, r12
mov r14, rcx
sub rdx, rbx
je 0x14003727e
lea r14, [rdx + rcx]
xor r8d, r8d
mov r9, rcx
add r9, r8
je 0x1400372b8
mov r10, qword [rbx + r8]
mov qword [r9], r10
add r8, 8
cmp rdx, r8
jne 0x140037266
lea rdx, [rax + r13*8]
mov qword [rsi], rax
mov qword [rsi + 8], rcx
mov qword [rsi + 0x10], r14
mov qword [rsi + 0x18], rdx
cmp r12, rbx
je 0x14003729e
add r12, 0xfffffffffffffff8
jne 0x140037291
jmp 0x1400372cb
test r15, r15
je 0x140037192
mov rcx, r15
call fcn.140124dec
mov r14, qword [rsi + 0x10]
jmp 0x140037192
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:40:_assertion___location___nullptr_failed:_null_pointer_given_to_construct_at_n
call fcn.140160550
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h:66:_assertion___loc___nullptr_failed:_null_pointer_given_to_destroy_at_n
call fcn.140160550
call fcn.14015f670
int3

Function at 0x140037550
Capabilities:
Check if file exists

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
cmp qword [rcx], rdx
je 0x1400375ac
mov rsi, rdx
mov rdi, rcx
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [rdi]
inc rax
cmp rax, 2
jb 0x14003758a
call fcn.1400ed550
mov rcx, qword [rdi]
call fcn.1400d9c80
mov qword [rdi], 0
lea rax, [rsi + 1]
cmp rax, 2
jb 0x14003759c
mov qword [rdi], rsi
call fcn.1400ed550
mov ecx, ebx
add rsp, 0x20
pop rbx
pop rdi
pop rsi
jmp qword [sym.imp.KERNEL32.dll_SetLastError]
nop
add rsp, 0x20
pop rbx
pop rdi
pop rsi
ret
Function at 0x14003c2b0
Capabilities:
Query or enumerate registry key

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x298
movaps xmmword [rsp + 0x280], xmm6
mov rbx, rdx
mov rdi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x278], rax
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0x60], r15
xor eax, eax
mov qword [rsp + 0x68], rax
mov esi, dword [rcx + 8]
mov r9d, esi
or r9d, 0x2001f
mov rcx, qword [rcx]
lea rdx, [rsp + 0x70]
mov qword [rdx], rax
mov qword [rsp + 0x20], rdx
mov rdx, rbx
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
je 0x14003c356
mov ebp, eax
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.140125960
mov eax, ebp
movaps xmm6, xmmword [rsp + 0x280]
add rsp, 0x298
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsp + 0x40], rbx
lea rbx, [rsp + 0x70]
mov r12, qword [rbx]
lea r14, [rsp + 0x58]
mov qword [r14], r12
and esi, 0x300
mov dword [r14 + 8], esi
lea r13, [rsp + 0x50]
mov qword [r13], r15
lea r15, [rsp + 0x4c]
mov dword [r15], 0x100
mov r8d, 0x200
mov rcx, rbx
mov dl, 0xaa
call fcn.1401288f0
xorps xmm6, xmm6
mov rsi, qword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
mov qword [rsp + 0x38], r13
movups xmmword [rsp + 0x20], xmm6
mov qword [rsp + 0x30], 0
mov rcx, r12
xor edx, edx
mov r8, rbx
mov r9, r15
call rsi
test eax, eax
jne 0x14003c3e6
mov rcx, r14
mov rdx, rbx
call fcn.14003c2b0
test eax, eax
jne 0x14003c414
mov dword [rsp + 0x4c], 0x100
mov r12, qword [rsp + 0x58]
jmp 0x14003c3a4
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14003c3ff
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov qword [rsp + 0x58], 0
mov dword [rsp + 0x60], 0
mov rcx, rdi
mov rdx, qword [rsp + 0x40]
call fcn.14003ca90
mov ebp, eax
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x14003c328
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x14003c328
Function at 0x14003ca90
Capabilities:
Delete registry key

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
mov rsi, rdx
mov rdi, rcx
mov rbx, qword [rcx + 0x10]
test rbx, rbx
je 0x14003cb2b
mov rdi, qword [rdi]
cmp qword [rbx], 0
je 0x14003cb0c
lea rcx, str.Advapi32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x14003caff
lea rdx, str.RegDeleteKeyTransactedW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x14003caff
mov rcx, qword [rbx]
mov qword [rsp + 0x20], rcx
mov qword [rsp + 0x28], 0
mov rcx, rdi
mov rdx, rsi
xor r8d, r8d
xor r9d, r9d
call qword [0x1401d0260]
jmp 0x14003cb04
mov eax, 1
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
cmp dword [rbx + 8], 0
je 0x14003caff
mov rcx, rdi
mov rdx, rsi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
jmp qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
mov rcx, qword [rdi]
jmp 0x14003cb15
cmp byte [0x1401f2aa8], 0
jne 0x14003cb64
lea rcx, str.Advapi32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x14003cb5d
lea rdx, [0x1401ba3f6]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [0x1401f2aa0], rax
mov byte [0x1401f2aa8], 1
mov rax, qword [0x1401f2aa0]
test rax, rax
je 0x14003cb26
mov r8d, dword [rdi + 8]
mov rcx, qword [rdi]
mov r10, qword [0x1401d0260]
mov rdx, rsi
xor r9d, r9d
add rsp, 0x30
pop rbx
pop rdi
pop rsi
jmp r10
Function at 0x140042be0
Capabilities:
Create process on windows

Disassembly:
mov rcx, rdx
jmp 0x140185360
push rsi
push rdi
push rbx
sub rsp, 0xa0
mov rsi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x98], rax
movaps xmm0, xmmword [0x1401af9e0]
lea rdi, [rsp + 0x50]
movaps xmmword [rdi + 0x30], xmm0
movaps xmmword [rdi + 0x20], xmm0
movaps xmmword [rdi + 0x10], xmm0
movaps xmmword [rdi], xmm0
lea rdx, str.UnpinShortcutFromTaskbar
lea r8, str.....operadesktopchrome_importschromeinstallerutil_taskbar_util.cc
lea rbx, [rsp + 0x30]
mov rcx, rbx
mov r9d, 0x8a
call fcn.1400ed530
mov rcx, rdi
mov rdx, rbx
xor r8d, r8d
call fcn.1400e1a50
call fcn.14007a040
cmp eax, 0xd
jl 0x140185463
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x30]
mov qword [rdi], rax
mov rcx, rdi
call fcn.140099fa0
cmp qword [rdi], 0
je 0x140185463
cmp byte [rsi + 0x17], 0
mov rcx, rsi
jns 0x140185403
mov rcx, qword [rsi]
call qword [sym.imp.SHELL32.dll_ILCreateFromPathW]
mov rbx, rax
mov rcx, qword [rsp + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
mov rdx, rbx
xor r8d, r8d
mov r9d, 4
call qword [0x1401d0260]
mov edi, eax
test rbx, rbx
je 0x14018543d
mov rcx, rbx
call qword [sym.imp.SHELL32.dll_ILFree]
mov rcx, qword [rsp + 0x30]
test rcx, rcx
je 0x14018545d
mov qword [rsp + 0x30], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x1401d0260]
mov bl, 1
test edi, edi
jns 0x140185499
cmp byte [rsi + 0x17], 0
jns 0x14018546c
mov rsi, qword [rsi]
mov dword [rsp + 0x28], 0
mov qword [rsp + 0x20], 0
lea rdx, str.taskbarunpin
xor ecx, ecx
mov r8, rsi
xor r9d, r9d
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
cmp rax, 0x21
setge bl
lea rcx, [rsp + 0x50]
call fcn.1400e1ad0
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.140125960
mov eax, ebx
add rsp, 0xa0
pop rbx
pop rdi
pop rsi
ret
Function at 0x140046290
Capabilities:
Compare security identifiers

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x80
mov rsi, rdx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x78], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x60]
mov qword [rdi], rax
mov rcx, rdi
call fcn.140044ff0
mov rdi, qword [rdi]
test rdi, rdi
je 0x140046344
lea rbx, [rsp + 0x68]
mov qword [rbx], 0
xor eax, eax
lea rcx, [rsp + 0x70]
mov dword [rcx], eax
mov word [rcx + 4], 0x500
mov qword [rsp + 0x50], rbx
mov dword [rsp + 0x48], eax
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], eax
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], eax
mov dword [rsp + 0x20], eax
mov dl, 1
mov r8d, 0x12
xor r9d, r9d
call qword [sym.imp.ADVAPI32.dll_AllocateAndInitializeSid]
mov rbx, qword [rbx]
test eax, eax
je 0x14004634b
test rbx, rbx
je 0x140046359
mov rdx, qword [rdi]
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_EqualSid]
cmp eax, 1
sete byte [rsi]
mov byte [rsi + 1], 1
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_FreeSid]
jmp 0x14004635e
mov word [rsi], 0
jmp 0x140046367
test rbx, rbx
je 0x140046359
mov rcx, rbx
call qword [sym.imp.ADVAPI32.dll_FreeSid]
mov word [rsi], 0
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x78]
xor rcx, rsp
call fcn.140125960
mov rax, rsi
add rsp, 0x80
pop rbx
pop rdi
pop rsi
ret

Function at 0x140046390
Capabilities:
Compare security identifiers

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x58
mov edi, r9d
mov rbx, r8
mov rsi, rdx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x50], rax
movabs rax, 0xaaaaaaaaaaaaaaaa
lea r14, [rsp + 0x48]
mov qword [r14], rax
mov rcx, r14
call fcn.140044ff0
cmp qword [r14], 0
je 0x140046440
mov qword [rsp + 0x40], 0
cmp byte [rbx + 0x17], 0
jns 0x1400463e3
mov rbx, qword [rbx]
xorps xmm0, xmm0
movups xmmword [rsp + 0x30], xmm0
movups xmmword [rsp + 0x20], xmm0
lea r9, [rsp + 0x40]
mov rcx, rbx
mov edx, edi
mov r8d, 1
call qword [sym.imp.ADVAPI32.dll_GetNamedSecurityInfoW]
test eax, eax
je 0x140046447
mov rdi, qword [rsp + 0x48]
xor eax, eax
xor ecx, ecx
mov byte [rsi], al
mov byte [rsi + 1], cl
test rdi, rdi
je 0x140046426
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LocalFree]
mov rcx, qword [rsp + 0x50]
xor rcx, rsp
call fcn.140125960
mov rax, rsi
add rsp, 0x58
pop rbx
pop rdi
pop rsi
pop r14
ret
mov word [rsi], 0
jmp 0x140046426
mov rdx, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
mov rcx, qword [rdi]
call qword [sym.imp.ADVAPI32.dll_EqualSid]
cmp eax, 1
sete al
mov cl, 1
jmp 0x140046413
Function at 0x14004a540
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x78
mov rsi, rdx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x70], rax
lea r8, [rsp + 0x38]
mov qword [r8], 0
lea rdx, [0x140046dd0]
mov ecx, 6
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
cmp eax, 1
jne 0x14004a6e9
lea rdi, [rsp + 0x38]
mov rcx, qword [rdi]
lea r8, [0x1401baef0]
mov edx, 0x86
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rbx, rax
mov qword [rdi], 0
lea rdx, [0x140046dd0]
mov ecx, 6
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
cmp eax, 1
jne 0x14004a6ec
lea rdi, [rsp + 0x38]
mov rcx, qword [rdi]
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov r14, rax
mov qword [rdi], 0
lea rdx, [0x140046dd0]
mov ecx, 6
mov r8, rdi
call qword [sym.imp.KERNEL32.dll_GetModuleHandleExW]
cmp eax, 1
jne 0x14004a6ef
mov rcx, qword [rsp + 0x38]
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_SizeofResource]
lea rcx, [0x1401b4b50]
mov qword [rsp + 0x60], rcx
mov qword [rsp + 0x68], 1
mov ecx, eax
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x30], rcx
test r14, r14
jne 0x14004a642
test eax, eax
jne 0x14004a6c3
lea rdx, [rsp + 0x28]
mov rcx, rdi
call fcn.1400894c0
movzx eax, byte [rsp + 0x4f]
test al, al
jns 0x14004a662
mov rax, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rax
test rax, rax
js 0x14004a6d6
je 0x14004a678
test rdi, rdi
je 0x14004a6c3
mov dword [rsp + 0x20], 0
lea rdx, [rsp + 0x50]
lea r8, [rsp + 0x60]
mov rcx, rsi
mov r9d, 1
call fcn.14007ea60
cmp byte [rsp + 0x4f], 0
jns 0x14004a6a9
mov rcx, qword [rsp + 0x38]
call fcn.140124dec
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140125960
mov rax, rsi
add rsp, 0x78
pop rbx
pop rdi
pop rsi
pop r14
ret
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude_string_view:316:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
call fcn.140160550
lea rcx, [0x1401b4107]
lea rdx, str....._third_partylibc_srcinclude_string_view:314:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
call fcn.140160550
int3
int3
int3
Function at 0x14004a9e0
Capabilities:
Create process on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x160
movaps xmmword [rsp + 0x150], xmm6
mov rbx, r8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1401df038]
xor rax, rsp
mov qword [rsp + 0x148], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe0], xmm0
movups xmmword [rsp + 0x130], xmm0
movups xmmword [rsp + 0x120], xmm0
movups xmmword [rsp + 0x110], xmm0
movups xmmword [rsp + 0x100], xmm0
movups xmmword [rsp + 0xf0], xmm0
mov qword [rsp + 0x140], 0
movabs rax, 0x4000000070
mov qword [rsp + 0xd8], rax
lea rax, str.runas
mov qword [rsp + 0xe8], rax
movabs r15, 0xaaaaaaaaaaaaaaaa
mov qword [rsp + 0xd0], r15
movaps xmm6, xmmword [0x1401af9e0]
movaps xmmword [rsp + 0xc0], xmm6
lea r14, [rsp + 0x60]
mov rcx, r8
mov rdx, r14
call fcn.140096660
cmp byte [r14 + 0x17], 0
js 0x14004aae1
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0xd0], rax
movups xmm0, xmmword [rsp + 0x60]
movaps xmmword [rsp + 0xc0], xmm0
lea rcx, [rsp + 0x60]
call fcn.1400ee050
cmp byte [rsp + 0xd7], 0
js 0x14004aafa
lea rax, [rsp + 0xc0]
jmp 0x14004ab02
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
lea rcx, [rsp + 0xc0]
call fcn.1400d91e0
jmp 0x14004aac3
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0xf0], rax
lea r14, [rsp + 0xa0]
mov qword [r14 + 0x10], r15
movaps xmmword [r14], xmm6
mov rcx, rbx
mov rdx, r14
call fcn.140097940
cmp byte [r14 + 0x17], 0
jns 0x14004ab34
mov r14, qword [rsp + 0xa0]
lea rbx, [rsp + 0xd8]
mov qword [rbx + 0x20], r14
mov dword [rbx + 0x30], 5
lea r14, [rsp + 0x60]
movaps xmmword [r14 + 0x30], xmm6
movaps xmmword [r14 + 0x20], xmm6
movaps xmmword [r14 + 0x10], xmm6
movaps xmmword [r14], xmm6
lea rdx, str.RunElevatedProcess
lea r8, str.....operadesktopwindowsos_operationsos_operations_impl.cc
lea r15, [rsp + 0x40]
mov rcx, r15
mov r9d, 0x17d
call fcn.1400ed530
mov rcx, r14
mov rdx, r15
xor r8d, r8d
call fcn.1400e1a50
mov rcx, rbx
call qword [sym.imp.SHELL32.dll_ShellExecuteExW]
test eax, eax
je 0x14004ac2f
mov rdx, qword [rsp + 0x140]
lea rbx, [rsp + 0x30]
mov rcx, rbx
call fcn.14007f5b0
mov rax, qword [rdi]
mov rax, qword [rax + 0xc0]
mov rcx, rdi
mov rdx, rsi
mov r8, rbx
call qword [0x1401d0260]
lea rcx, [rsp + 0x60]
call fcn.1400e1ad0
cmp byte [rsp + 0xb7], 0
jns 0x14004abee
mov rcx, qword [rsp + 0xa0]
call fcn.140124dec
cmp byte [rsp + 0xd7], 0
jns 0x14004ac05
mov rcx, qword [rsp + 0xc0]
call fcn.140124dec
mov rcx, qword [rsp + 0x148]
xor rcx, rsp
call fcn.140125960
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x150]
add rsp, 0x160
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
lea rbx, [rsp + 0x20]
mov rcx, rbx
xor edx, edx
jmp 0x14004abaf