joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400f6630
Capabilities:
Set current directory

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x90
mov rdi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x88], rax
movaps xmm0, xmmword [0x1402af0f0]
lea rsi, [rsp + 0x40]
movaps xmmword [rsi + 0x30], xmm0
movaps xmmword [rsi + 0x20], xmm0
movaps xmmword [rsi + 0x10], xmm0
movaps xmmword [rsi], xmm0
lea rdx, [0x1402c1102]
lea r8, str....._base_files_file_util_win.cc
lea rbx, [rsp + 0x20]
mov rcx, rbx
mov r9d, 0x437
call fcn.14018d210
mov rcx, rsi
mov rdx, rbx
xor r8d, r8d
call fcn.140182070
cmp byte [rdi + 0x17], 0
jns 0x1400f66a2
mov rdi, qword [rdi]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_SetCurrentDirectoryW]
test eax, eax
setne bl
mov rcx, rsi
call fcn.1401822b0
mov rcx, qword [rsp + 0x88]
xor rcx, rsp
call fcn.1401ad700
mov eax, ebx
add rsp, 0x90
pop rbx
pop rdi
pop rsi
ret
Function at 0x1400f6be0
Capabilities:
Check if file exists
Delete directory
Delete file
Set file attributes

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x578
mov byte [rsp + 0x37], r8b
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x570], rax
lea r14, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov r8d, 0x2c8
mov rcx, r14
mov dl, 0xaa
call fcn.1401af840
mov qword [rsp + 0x20], rsi
xor ebp, ebp
mov rcx, r14
mov rdx, rdi
xor r8d, r8d
mov r9d, 3
call fcn.1400f7100
movabs rax, 0xaaaaaaaaaaaaaaaa
lea rdi, [rsp + 0x40]
mov qword [rdi + 0x10], rax
movaps xmm0, xmmword [0x1402af0f0]
movaps xmmword [rdi], xmm0
mov rcx, r14
mov rdx, rdi
call fcn.1400f7310
movzx eax, byte [rdi + 0x17]
test al, al
js 0x1400f6c78
and eax, 0x7f
jmp 0x1400f6c7d
mov rax, qword [rsp + 0x48]
test rax, rax
je 0x1400f6d54
lea r14, [rsp + 0x58]
lea r15, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
mov r12, qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rbx, qword [sym.imp.KERNEL32.dll_GetLastError]
xor r13d, r13d
mov r8d, 0x250
mov rcx, r14
mov dl, 0xaa
call fcn.1401af840
mov rcx, r15
mov rdx, r14
call fcn.1400f72c0
mov edx, dword [rsp + 0x58]
test dl, 1
jne 0x1400f6d98
mov rcx, r14
call fcn.1400f7010
test al, al
jne 0x1400f6de8
cmp byte [rsp + 0x57], 0
mov rcx, rdi
jns 0x1400f6ceb
mov rcx, qword [rsp + 0x40]
call r12
test eax, eax
jne 0x1400f6d91
call rbx
mov ebp, eax
and eax, 0xfffffffe
cmp eax, 2
mov eax, 0
cmove ebp, eax
test r13d, r13d
cmovne ebp, r13d
mov rcx, r14
call fcn.1400b2720
mov rcx, r15
mov rdx, r14
call fcn.1400f7310
mov rcx, rdi
mov rdx, r14
call fcn.14018d730
mov rcx, r14
call fcn.14018d6b0
movzx eax, byte [rsp + 0x57]
test al, al
js 0x1400f6d43
and eax, 0x7f
jmp 0x1400f6d48
mov rax, qword [rsp + 0x48]
mov r13d, ebp
test rax, rax
jne 0x1400f6ca4
lea rcx, [rsp + 0x40]
call fcn.14018d6b0
lea rcx, [rsp + reloc.SHELL32.dll_IsUserAnAdmin]
call fcn.1400f7250
mov rcx, qword [rsp + 0x570]
xor rcx, rsp
call fcn.1401ad700
mov eax, ebp
add rsp, 0x578
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor ebp, ebp
jmp 0x1400f6d08
cmp byte [rsp + 0x37], 0
je 0x1400f6dc0
cmp byte [rsp + 0x57], 0
js 0x1400f6dad
lea rcx, [rsp + 0x40]
jmp 0x1400f6db2
mov rcx, qword [rsp + 0x40]
and edx, 0xfffffffe
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
jmp 0x1400f6ccc
lea rcx, [rsp + 0x58]
call fcn.1400f7010
test al, al
jne 0x1400f6dd4
mov edx, dword [rsp + 0x58]
jmp 0x1400f6d9f
lea rcx, [rsp + 0x58]
call fcn.1400f7010
test al, al
je 0x1400f6cdc
jmp 0x1400f6d91
xor ebp, ebp
cmp byte [rsp + 0x37], 0
je 0x1400f6d08
lea rcx, [rsp + 0x40]
mov qword [rsp + 0x38], rcx
mov rdx, rsi
mov r8b, 1
call fcn.1400f6be0
mov ebp, eax
test eax, eax
jne 0x1400f6d08
cmp byte [rsp + 0x57], 0
jns 0x1400f6e25
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x38], rax
mov rcx, qword [rsp + 0x38]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
mov ebp, 0
test eax, eax
jne 0x1400f6d08
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
and ecx, 0xfffffffe
xor ebp, ebp
cmp ecx, 2
cmovne ebp, eax
jmp 0x1400f6d08
Function at 0x1400f7d20
Capabilities:
Get file version info

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa8
mov rbx, rdx
mov rsi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0xa0], rax
movaps xmm0, xmmword [0x1402af0f0]
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.CreateFileVersionInfoWin
lea r8, str....._base_file_version_info_win.cc
lea r14, [rsp + 0x30]
mov rcx, r14
mov r9d, 0x4d
call fcn.14018d210
mov rcx, rdi
mov rdx, r14
xor r8d, r8d
call fcn.140182070
mov dword [rsp + 0x2c], 0xaaaaaaaa
cmp byte [rbx + 0x17], 0
jns 0x1400f7da6
mov rbx, qword [rbx]
lea rdx, [rsp + 0x2c]
mov rcx, rbx
call sub.VERSION.dll_GetFileVersionInfoSizeW
test eax, eax
je 0x1400f7f20
mov ebp, eax
mov r14d, eax
mov rcx, r14
call fcn.1401abf00
mov rdi, rax
lea r15, [rax + r14]
xor eax, eax
mov rcx, rdi
add rcx, rax
je 0x1400f7f73
mov byte [rcx], 0
inc rax
cmp r14, rax
jne 0x1400f7dd1
mov edx, dword [rsp + 0x2c]
mov rcx, rbx
mov r8d, ebp
mov r9, rdi
call sub.VERSION.dll_GetFileVersionInfoW
test eax, eax
je 0x1400f7f33
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea r9, [rsp + 0x9c]
mov dword [r9], 0xaaaaaaaa
lea rdx, str.VarFileInfoTranslation
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400f7f33
mov r13, qword [rsp + 0x30]
test r13, r13
je 0x1400f7f33
mov ecx, 0x38
call fcn.1401abf00
mov rbx, rax
movzx r12d, word [r13]
movzx ebp, word [r13 + 2]
lea rax, fcn.1400f8040
mov qword [rbx], rax
mov qword [rbx + 8], rdi
mov qword [rbx + 0x10], r15
mov qword [rbx + 0x18], r15
movabs r14, 0xfffffffc00000000
mov rax, rdi
and rax, r14
cmp rax, qword [0x1402eadc8]
jne 0x1400f7e90
mov rcx, rdi
call fcn.14016a870
mov qword [rbx + 0x20], rdi
mov word [rbx + 0x28], r12w
mov word [rbx + 0x2a], bp
lea r8, [rsp + 0x30]
mov qword [r8], 0
lea r9, [rsp + 0x9c]
mov dword [r9], 0xaaaaaaaa
lea rdx, [0x1402c1372]
mov rcx, rdi
call sub.VERSION.dll_VerQueryValueW
test eax, eax
je 0x1400f7f9f
mov rdi, qword [rsp + 0x30]
and r14, rdi
cmp r14, qword [0x1402eadc8]
jne 0x1400f7ee8
mov rcx, rdi
call fcn.14016a870
mov qword [rbx + 0x30], rdi
mov qword [rsi], rbx
lea rcx, [rsp + 0x50]
call fcn.1401822b0
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1401ad700
mov rax, rsi
add rsp, 0xa8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov qword [rsi], 0
jmp 0x1400f7eef
mov rcx, rdi
call fcn.1401abf3c
jmp 0x1400f7eef
mov qword [rsi], 0
test rdi, rdi
je 0x1400f7eef
dec r15
cmp r15, r14
jae 0x1400f7f29
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.1401f6bb0
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.1401f6bb0
int3
Function at 0x1400f9380
Capabilities:
Read file on windows

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0xe8
movaps xmmword [rsp + 0xd0], xmm6
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0xc8], rax
test rcx, rcx
je 0x1400f9530
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
xor edx, edx
xor r8d, r8d
call fcn.1401cce74
movaps xmm6, xmmword [0x1402af0f0]
lea r14, [rsp + 0x80]
movaps xmmword [r14 + 0x30], xmm6
movaps xmmword [r14 + 0x20], xmm6
movaps xmmword [r14 + 0x10], xmm6
movaps xmmword [r14], xmm6
lea rdx, str.ReadStreamToSpanWithMaxSize
lea r8, str....._base_files_file_util.cc
lea r15, [rsp + 0x40]
mov rcx, r15
mov r9d, 0x48
call fcn.14018d210
mov rcx, r14
mov rdx, r15
xor r8d, r8d
call fcn.140182070
xorps xmm0, xmm0
movaps xmmword [r15 + 0x20], xmm0
movaps xmmword [r15 + 0x10], xmm0
movaps xmmword [r15], xmm0
mov dword [r15 + 0x30], 0
mov rcx, rbx
call fcn.1401c346c
mov ecx, eax
call fcn.1401c3f2c
lea rdx, [rsp + 0x40]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetFileInformationByHandle]
test eax, eax
je 0x1400f9534
mov eax, dword [rsp + 0x60]
mov ecx, dword [rsp + 0x64]
shl rax, 0x20
or rax, rcx
test rax, rax
mov r14d, 0xffff
cmovg r14, rax
cmp r14, rdi
cmovae r14, rdi
inc r14
lea rcx, [rsp + 0x30]
movaps xmmword [rcx], xmm6
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
mov r8, r14
call qword [0x14031b008]
xor r12d, r12d
mov rcx, qword [rsp + 0x38]
add rcx, r12
mov edx, 1
mov r8, r14
mov r9, rbx
call fcn.1401ccafc
test rax, rax
je 0x1400f94d3
mov r15, rax
mov rax, rdi
sub rax, r12
cmp rax, r15
jb 0x1400f953f
add r15, r12
mov rcx, rbx
call fcn.1401cc2d0
test eax, eax
je 0x1400f9543
mov r12, r15
mov rcx, rbx
call fcn.1401cc2fc
test eax, eax
sete bl
mov rdi, r12
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
lea rcx, [rsp + 0x20]
mov r8, rdi
call qword [0x14031b008]
lea rcx, [rsp + 0x80]
call fcn.1401822b0
mov rcx, qword [rsp + 0xc8]
xor rcx, rsp
call fcn.1401ad700
mov eax, ebx
movaps xmm6, xmmword [rsp + 0xd0]
add rsp, 0xe8
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
xor ebx, ebx
jmp 0x1400f9505
mov r14d, 0xffff
jmp 0x1400f9471
xor ebx, ebx
jmp 0x1400f94e3
test r12, r12
mov eax, 0x10000
cmove r14, rax
lea r8, [r15 + r14]
mov rdx, qword [rsi]
mov rax, qword [rsi + 8]
lea r12, [rsp + 0x20]
mov rcx, r12
call qword [0x14031b008]
movups xmm0, xmmword [r12]
movaps xmmword [rsp + 0x30], xmm0
mov r12, r15
jmp 0x1400f9496
Function at 0x1400ff730
Capabilities:
Delete file
Get common file path

Disassembly:
push rsi
sub rsp, 0x20
mov rsi, rcx
call fcn.1400ff7f0
mov eax, dword [rsi]
mov dword [0x1402f9980], eax
test al, 1
jne 0x1400ff751
mov al, 1
add rsp, 0x20
pop rsi
ret
mov rcx, qword [0x1403035e0]
test rcx, rcx
jne 0x1400ff76b
mov rcx, qword [0x1403035b8]
test rcx, rcx
je 0x1400ff78f
jmp 0x1400ff7b1
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [0x1403035e0], 0
mov rcx, qword [0x1403035b8]
test rcx, rcx
jne 0x1400ff7b1
and byte [0x1402f9980], 0xfe
mov ecx, 0x18
call fcn.1401abf00
mov rcx, rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov qword [rax + 0x10], 0
mov qword [0x1403035b8], rax
mov rdx, qword [rsi + 8]
call fcn.1400bccd0
cmp dword [rsi + 0x14], 0
jne 0x1400ff7d6
mov rcx, qword [0x1403035b8]
cmp byte [rcx + 0x17], 0
jns 0x1400ff7d0
mov rcx, qword [rcx]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
add rsp, 0x20
pop rsi
jmp fcn.140226f10
Function at 0x140102b90
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x28
mov ebx, r8d
mov rdi, rdx
mov rsi, rcx
xor eax, eax
mov qword [rcx], rax
mov r14, qword [rdx]
mov qword [rdx], rax
lea r15, [r14 + 1]
cmp r15, 2
jb 0x140102bbf
call fcn.14018d230
cmp qword [rsi], r14
je 0x140102bee
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov rax, qword [rsi]
inc rax
cmp rax, 2
jae 0x140102c2a
cmp r15, 2
jb 0x140102be6
mov qword [rsi], r14
call fcn.14018d230
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea rcx, [rsi + 8]
call fcn.14018d420
lea rcx, [rsi + 0x20]
call fcn.140197170
mov dword [rsi + 0x24], 0
mov byte [rsi + 0x28], 0
mov byte [rsi + 0x29], bl
mov rax, qword [rdi]
inc rax
cmp rax, 2
jae 0x140102c40
mov rax, rsi
add rsp, 0x28
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
call fcn.14018d230
mov rcx, qword [rsi]
call fcn.14017db10
mov qword [rsi], 0
jmp 0x140102bd8
call fcn.14018d230
mov rcx, qword [rdi]
call fcn.14017db10
mov qword [rdi], 0
jmp 0x140102c1a

Function at 0x140104ac0
Capabilities:
Accept command line arguments

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x50
movaps xmmword [rsp + 0x40], xmm6
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov rdi, qword [0x1403036e0]
test rdi, rdi
jne 0x140104b73
mov ecx, 0x50
call fcn.1401abf00
mov rsi, rax
xorps xmm6, xmm6
movups xmmword [rax], xmm6
mov byte [rax + 0x10], 0
mov ecx, 0x18
call fcn.1401abf00
mov qword [rsi + 0x18], rax
lea rcx, [rax + 0x18]
mov qword [rsi + 0x28], rcx
test rax, rax
je 0x140104b95
movups xmmword [rax], xmm6
mov qword [rax + 0x10], 0
mov qword [rsi + 0x20], rcx
mov rax, rsi
add rax, 0x38
movups xmmword [rsi + 0x38], xmm6
mov qword [rsi + 0x30], rax
mov qword [rsi + 0x48], 1
mov qword [0x1403036e0], rsi
call qword [sym.imp.KERNEL32.dll_GetCommandLineW]
mov qword [rsp + 0x28], rax
test rax, rax
je 0x140104bc1
mov rcx, rax
call fcn.1401cfa44
lea rdx, [rsp + 0x28]
mov qword [rdx + 8], rax
mov rcx, rsi
call fcn.140104bf0
test rdi, rdi
sete bl
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1401ad700
mov eax, ebx
movaps xmm6, xmmword [rsp + 0x40]
add rsp, 0x50
pop rbx
pop rdi
pop rsi
ret
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.1401f6bb0
lea rax, str.null_pointer_passed_to_non_null_argument_of_char_traits_..._::length
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude_string_view
lea r9, str.__s___nullptr
mov r8d, 0x109
call fcn.1401f6bb0
int3
Function at 0x140104bf0
Capabilities:
Accept command line arguments

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x80
movaps xmmword [rsp + 0x70], xmm6
mov rbx, rdx
mov rsi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x68], rax
movups xmm0, xmmword [rdx]
lea rdx, [rsp + 0x50]
movaps xmmword [rdx], xmm0
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov r8d, 3
call fcn.1400f1720
movups xmm0, xmmword [rdi]
movups xmmword [rbx], xmm0
cmp qword [rbx + 8], 0
je 0x140104d84
movups xmm0, xmmword [rbx]
movups xmmword [rsi], xmm0
mov dword [rsp + 0x4c], 0
lea rcx, [0x1402c1b78]
xor edx, edx
mov r8d, 0x800
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
mov rdi, rax
test rax, rax
je 0x140104dbb
lea rdx, [0x1402c1bc8]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140104da9
mov rcx, qword [rbx]
lea rdx, [rsp + 0x4c]
call qword [0x14031b008]
mov r14, rax
movsxd r12, dword [rsp + 0x4c]
xorps xmm6, xmm6
movaps xmmword [rsp + 0x30], xmm6
mov qword [rsp + 0x40], 0
test r12, r12
je 0x140104db1
test r12d, r12d
js 0x140104e26
shl r12, 3
lea r15, [r12 + r12*2]
mov rcx, r15
call fcn.1401abf00
mov rbx, rax
mov qword [rsp + 0x30], rax
add r15, rax
mov qword [rsp + 0x40], r15
xor r13d, r13d
xor r15d, r15d
mov rcx, rbx
add rcx, r13
je 0x140104dce
mov rdx, qword [r14 + r15]
call fcn.1401e8e60
add r15, 8
add r13, 0x18
cmp r12, r15
jne 0x140104cf2
mov r15, rbx
add r15, r13
mov qword [rsp + 0x38], r15
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.1401046f0
movups xmmword [rsi], xmm6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_LocalFree]
test rdi, rdi
je 0x140104d46
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test rbx, rbx
je 0x140104d84
cmp r15, rbx
je 0x140104d7c
add r15, 0xffffffffffffffe8
jmp 0x140104d6a
mov rcx, qword [r15]
call fcn.1401abf3c
lea rax, [r15 - 0x18]
cmp r15, rbx
mov r15, rax
je 0x140104d7c
test r15, r15
je 0x140104dfa
cmp byte [r15 + 0x17], 0
jns 0x140104d5e
jmp 0x140104d56
mov rcx, rbx
call fcn.1401abf3c
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1401ad700
movaps xmm6, xmmword [rsp + 0x70]
add rsp, 0x80
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
xor r14d, r14d
jmp 0x140104ca4
xor r15d, r15d
xor ebx, ebx
jmp 0x140104d1f
mov rcx, qword [rbx]
lea rdx, [rsp + 0x4c]
call qword [sym.imp.SHELL32.dll_CommandLineToArgvW]
jmp 0x140104ca1
lea rax, str.null_pointer_given_to_construct_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__location___nullptr
mov r8d, 0x28
call fcn.1401f6bb0
lea rax, str.null_pointer_given_to_destroy_at
mov qword [rsp + 0x20], rax
lea rcx, str._s:_d:_assertion__s_failed:__s_n
lea rdx, str....._third_partylibc_srcinclude__memoryconstruct_at.h
lea r9, str.__loc___nullptr
mov r8d, 0x44
call fcn.1401f6bb0
lea rcx, [rsp + 0x30]
call fcn.1401e8ff0
int3

Function at 0x14010d1c0
Capabilities:
Hash data with crc32

Disassembly:
sub rsp, 0x28
test rdx, rdx
jne 0x14010d1da
test r8d, r8d
jne 0x14010d1d3
call fcn.140138370
xor eax, eax
add rsp, 0x28
ret
mov r8d, r8d
add rsp, 0x28
jmp fcn.140192c80
Function at 0x14010e450
Capabilities:
Get session user name

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x250
mov rsi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x248], rax
lea rdi, [rsp + 0x40]
mov r8d, 0x200
mov rcx, rdi
mov dl, 0xaa
call fcn.1401af840
lea rbx, [rsp + 0x3c]
mov dword [rbx], 0x100
mov rcx, rdi
mov rdx, rbx
call qword [sym.imp.ADVAPI32.dll_GetUserNameW]
test eax, eax
setne al
mov ecx, dword [rbx]
test rcx, rcx
setne bl
and bl, al
je 0x14010e5b2
mov r8b, byte [rsi + 0x17]
test r8b, r8b
js 0x14010e58d
mov rdx, rsi
cmp ecx, 0xa
jbe 0x14010e542
movzx edx, r8b
mov eax, r8d
cmp rdx, rcx
cmova rcx, rdx
mov r9d, 0xa
mov edx, 0xa
cmp rcx, 0xb
jb 0x14010e4fe
mov rdx, rcx
and rdx, 0xfffffffffffffffc
add rdx, 4
or rcx, 3
cmp rcx, 0xb
cmove rcx, rdx
mov rdx, rcx
test r8b, r8b
js 0x14010e5bf
cmp rdx, r9
je 0x14010e517
mov rcx, rsi
call fcn.1400d1060
mov al, byte [rsi + 0x17]
mov rdx, rsi
test al, al
jns 0x14010e542
mov rax, qword [rsi + 0x10]
mov rcx, rax
btr rcx, 0x3f
cmp rcx, 1
je 0x14010e5d7
shr rax, 0x38
mov rdx, rsi
test al, al
jns 0x14010e542
mov rdx, qword [rsi]
mov word [rdx], 0x2e
cmp byte [rsi + 0x17], 0
jns 0x14010e5b9
mov qword [rsi + 8], 1
mov word [rdx + 2], 0
mov r8d, dword [rsp + 0x3c]
dec r8d
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.1400d92c0
mov rcx, qword [rsp + 0x248]
xor rcx, rsp
call fcn.1401ad700
mov eax, ebx
add rsp, 0x250
pop rbx
pop rdi
pop rsi
ret
mov rax, qword [rsi + 0x10]
mov rdx, rax
btr rdx, 0x3f
dec rdx
shr rax, 0x38
cmp rdx, rcx
jae 0x14010e517
mov rdx, qword [rsi + 8]
jmp 0x14010e4cc
call fcn.1402298b0
jmp 0x14010e570
mov byte [rsi + 0x17], 1
jmp 0x14010e555
mov rax, qword [rsi + 0x10]
mov r9, rax
btr r9, 0x3f
dec r9
shr rax, 0x38
jmp 0x14010e507
mov r9, qword [rsi + 8]
mov r8d, 2
sub r8, rcx
xor edi, edi
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r9
mov qword [rsp + 0x20], rdi
mov rcx, rsi
xor edx, edx
call fcn.140169d60
mov qword [rsi + 8], rdi
mov al, byte [rsi + 0x17]
jmp 0x14010e538
Function at 0x140116df0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x88
movaps xmmword [rsp + 0x70], xmm6
mov ebx, edx
mov rsi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x68], rax
cmp edx, 0x921
jle 0x140116e3a
cmp ebx, 0x922
je 0x140116e5c
cmp ebx, 0xdf0
jne 0x140116e77
lea rdi, [0x1402c5bc0]
jmp 0x140116e63
cmp ebx, 0x692
je 0x140116e53
cmp ebx, 0x7da
jne 0x140116e77
lea rdi, [0x1402c5ba0]
jmp 0x140116e63
lea rdi, [0x1402c5b90]
jmp 0x140116e63
lea rdi, [0x1402c5bb0]
call fcn.140109150
mov rax, qword [rax + 8]
mov rax, qword [rax + 0x10]
movsxd rax, dword [rax + 8]
mov ebx, dword [rdi + rax*4]
mov dword [rsp + 0x3c], ebx
mov rcx, qword [0x140303880]
test rcx, rcx
je 0x140116f32
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov rdx, rsi
mov r8d, ebx
call qword [0x14031b008]
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.1401ad700
mov rax, rsi
movaps xmm6, xmmword [rsp + 0x70]
add rsp, 0x88
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
lea rcx, [rsp + 0x3c]
call fcn.1401696d0
lea rcx, [rsp + 0x30]
call fcn.1401696d0
lea rcx, [rsp + 0x2c]
call fcn.1401696d0
xorps xmm6, xmm6
movaps xmmword [rsp + 0x50], xmm6
movaps xmmword [rsp + 0x40], xmm6
cmp byte [rdi + 0x2f], 0
js 0x140116efb
add rdi, 0x18
jmp 0x140116eff
mov rdi, qword [rdi + 0x18]
lea rbx, [rsp + 0x40]
mov r8d, 0x10
mov rcx, rbx
mov rdx, rdi
call fcn.140185e90
mov rcx, rbx
call fcn.1401696d0
call fcn.1402298b0
movups xmmword [rsi], xmm6
mov qword [rsi + 0x10], 0
jmp 0x140116e9e
call fcn.14022d6e0
mov rdi, rax
mov rax, qword [rax + 0x30]
mov qword [rsp + 0x30], rax
movsxd r12, ebx
mov rcx, r12
sar rcx, 0x3f
add r12, rax
adc rcx, 0
mov eax, ecx
and eax, 1
neg rax
xor rcx, rax
jne 0x14011704b
test rax, rax
js 0x14011704b
mov rax, r12
shr rax, 0x20
jne 0x14011704b
mov dword [rsp + 0x2c], r12d
mov r14, qword [0x1402fa688]
mov eax, r12d
shr eax, 4
inc eax
movzx edx, ax
mov r8d, 6
mov rcx, r14
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
je 0x140116ec4
mov r15, rax
mov rcx, r14
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x140116ec4
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
test rax, rax
je 0x140116ec4
mov rbx, rax
mov rcx, r14
mov rdx, r15
call qword [sym.imp.KERNEL32.dll_SizeofResource]
test eax, eax
setne cl
and r12d, 0xf
je 0x140117019
test eax, eax
je 0x140117019
mov ecx, eax
mov rax, rbx
add rax, rcx
dec r12d
movzx ecx, word [rbx]
lea rbx, [rbx + rcx*2]
add rbx, 2
cmp rbx, rax
setb cl
add r12d, 0xffffffff
jae 0x140117019
cmp rbx, rax
jb 0x140116ffd
test cl, cl
je 0x140116ec4
movzx r8d, word [rbx]
test r8, r8
je 0x140116ec4
test rbx, rbx
je 0x140116ec4
add rbx, 2
mov rcx, rsi
mov rdx, rbx
call fcn.1401f6ee0
jmp 0x140116e9e
int3
Function at 0x14011daf0
Capabilities:
Check if file exists

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x60
mov rdi, rdx
mov rsi, rcx
mov rax, qword [0x1402ea038]
xor rax, rsp
mov qword [rsp + 0x58], rax
mov byte [rcx], 0
mov qword [rcx + 8], 0
movabs r14, 0xaaaaaaaaaaaaaaaa
lea rbx, [rsp + 0x40]
mov qword [rbx], r14
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov rcx, rax
mov edx, 0x28
mov r8, rbx
call qword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x14011dbf1
mov r15, qword [rsp + 0x40]
cmp qword [rsi + 8], r15
je 0x14011db8b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov rax, qword [rsi + 8]
inc rax
cmp rax, 2
jae 0x14011dc32
lea rax, [r15 + 1]
cmp rax, 2
jb 0x14011db83
mov qword [rsi + 8], r15
call fcn.14018d230
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
lea r8, [rsp + 0x38]
mov qword [r8], r14
xor ecx, ecx
mov rdx, rdi
call qword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
test eax, eax
je 0x14011dc0d
lea r8, [rsp + 0x48]
mov dword [r8], 1
mov rax, qword [rsp + 0x38]
mov qword [r8 + 4], rax
mov dword [r8 + 0xc], 2
lea rax, [rsp + 0x34]
mov dword [rax], 0xaaaaaaaa
lea rdx, [rsi + 0x10]
mov rcx, qword [rsi + 8]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
xor edx, edx
mov r9d, 0x10
call qword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
test eax, eax
je 0x14011dc0d
mov byte [rsi], 1
mov rcx, qword [rsp + 0x58]
xor rcx, rsp
call fcn.1401ad700
mov rax, rsi
add rsp, 0x60
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret
mov rax, qword [rsi + 8]
inc rax
cmp rax, 2
jb 0x14011dbf1
call fcn.14018d230
mov rcx, qword [rsi + 8]
call fcn.14017db10
mov qword [rsi + 8], 0
jmp 0x14011dbf1
call fcn.14018d230
mov rcx, qword [rsi + 8]
call fcn.14017db10
mov qword [rsi + 8], 0
jmp 0x14011db70