joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140001160
Capabilities:
Check mutex on windows

Disassembly:
push rbx
sub rsp, 0xb0
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x20], 0
mov rax, qword [rsp + 0x20]
nop dword [rax]
mov rax, qword [rsp + 0x20]
inc rax
mov qword [rsp + 0x20], rax
mov rax, qword [rsp + 0x20]
cmp rax, 0x5f5e0ff
jb 0x140001190
mov rcx, qword [rsp + 0x20]
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_malloc]
mov rbx, rax
test rax, rax
je 0x14000121a
mov r8, qword [rsp + 0x20]
xor edx, edx
mov rcx, rax
call sub.VCRUNTIME140.dll_memset
mov rcx, rbx
call qword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
lea r8, str.SimpleInstallerInstance
mov edx, 1
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateMutexA]
call qword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x14000121a
lea edx, [rax - 0x4f]
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_K32GetPerformanceInfo]
cmp dword [rsp + 0x90], 0x12c
jbe 0x14000121a
lea rax, section..text
call rax
xor eax, eax
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.140001250
add rsp, 0xb0
pop rbx
ret

Function at 0x140001b2c
Capabilities:
Parse pe header

Disassembly:
sub rsp, 0x28
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x140001b76
mov ecx, 0x5a4d
cmp word [rax], cx
jne 0x140001b76
movsxd rcx, dword [rax + 0x3c]
add rcx, rax
cmp dword [rcx], 0x4550
jne 0x140001b76
mov eax, 0x20b
cmp word [rcx + 0x18], ax
jne 0x140001b76
cmp dword [rcx + 0x84], 0xe
jbe 0x140001b76
cmp dword [rcx + 0xf8], 0
setne al
jmp 0x140001b78
xor al, al
add rsp, 0x28
ret
Function at 0x1400015a0
Capabilities:
Check if file exists

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x240
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov rbx, rcx
mov rcx, qword [rcx + 0x180]
xor edi, edi
test rcx, rcx
je 0x1400015dd
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov qword [rbx + 0x180], rdi
lea rcx, [rsp + 0x22]
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x20], di
call fcn.14017b0d0
lea rdx, [rsp + 0x20]
mov r8d, 0x104
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
lea rcx, [rsp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
lea rdx, str.driverhelper64.dll
lea rcx, [rsp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathAppendW]
lea rcx, [rsp + 0x20]
call qword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x140001684
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rbx + 0x180], rax
test rax, rax
je 0x140001684
lea rdx, [0x1401fdfa8]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov qword [rbx + 0x188], rax
test rax, rax
je 0x140001684
mov r8, qword [rbx + 0x180]
xor r9d, r9d
mov rdx, rax
lea ecx, [r9 + 3]
call qword [sym.imp.USER32.dll_SetWindowsHookExW]
mov qword [rbx + 0x190], rax
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.140179510
mov rbx, qword [rsp + 0x258]
add rsp, 0x240
pop rdi
ret

Function at 0x1400018c0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov edi, r8d
mov rsi, rdx
mov rbp, rcx
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
jne 0x1400018f3
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
mov rcx, rax
mov qword [rsp + 0x30], rbx
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x140001939
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_SizeofResource]
mov ecx, eax
add rcx, rbx
and edi, 0xf
jbe 0x140001934
nop
cmp rbx, rcx
jae 0x140001939
movzx eax, word [rbx]
lea rbx, [rbx + rax*2]
add rbx, 2
dec edi
jne 0x140001920
cmp rbx, rcx
jb 0x14000193d
xor eax, eax
jmp 0x140001949
xor eax, eax
cmp word [rbx], ax
cmove rbx, rax
mov rax, rbx
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x1400020e0
Capabilities:
Extract resource via kernel32 functions

Disassembly:
movzx edx, dx
jmp method.CDialog.virtual_712
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbp, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rcx + 0xe0], rdx
test rdx, 0xffffffffffff0000
jne 0x140015593
cmp dword [rcx + 0xd8], 0
jne 0x140015593
movzx eax, dx
mov dword [rcx + 0xd8], eax
call fcn.140023038
mov r8d, 5
mov rdx, rdi
mov rbx, qword [rax + 0x18]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rcx, rbx
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov r9, rbx
mov r8, rbp
mov rdx, rax
mov rcx, rsi
mov rdi, rax
call fcn.1400158f0
mov rcx, rdi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x140002120
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rbp - 8], rax
mov rsi, rcx
mov eax, 0x33
lea rcx, [rbp - 0x28]
xor ebx, ebx
mov dword [rbp - 0x24], 0x63006d
mov dword [rbp - 0x20], 0x6c0074
mov dword [rbp - 0x12], VarBstrFromDisp
mov dword [rbp - 0x16], 0x6c0064
mov dword [rbp - 0x28], 0x6f0043
mov dword [rbp - 0x1a], 0x2e0032
mov word [rbp - 0x1c], ax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
je 0x1400021df
lea rdx, [rbp - 0x40]
mov rcx, rax
mov dword [rbp - 0x3f], 0x4374696e
mov dword [rbp - 0x2f], 0x784573
mov dword [rbp - 0x33], 0x6c6f7274
mov dword [rbp - 0x38], 0x6f436e6f
mov word [rbp - 0x3b], 0x6d6f
mov byte [rbp - 0x39], 0x6d
mov byte [rbp - 0x40], 0x49
mov byte [rbp - 0x34], 0x6e
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400021d6
mov rcx, rsi
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140179510
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x140002210
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov r15, qword [rbp + 0x50]
mov eax, 0x65
lea rcx, [rbp - 0x28]
mov r14, r8
mov rsi, rdx
xor ebx, ebx
mov dword [rbp - 0x1e], 0x2e0076
mov dword [rbp - 0x24], 0x640077
mov dword [rbp - 0x28], 0x65004e
mov dword [rbp - 0x16], VarBstrFromDisp
mov dword [rbp - 0x1a], 0x6c0064
mov word [rbp - 0x20], ax
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
je 0x140002310
lea rdx, [rbp - 0x50]
mov rcx, rax
mov dword [rbp - 0x42], 0x756c5072
mov word [rbp - 0x3e], 0x4167
mov word [rbp - 0x38], 0x7961
mov word [rbp - 0x4c], 0x6574
mov dword [rbp - 0x34], 0x65636976
mov word [rbp - 0x3b], 0x5064
mov word [rbp - 0x46], 0x7265
mov word [rbp - 0x36], 0x6544
mov word [rbp - 0x49], 0x6972
mov byte [rbp - 0x4a], 0x44
mov dword [rbp - 0x50], 0x61647055
mov word [rbp - 0x30], 0x5773
mov word [rbp - 0x44], 0x6f46
mov byte [rbp - 0x3c], 0x6e
mov byte [rbp - 0x47], 0x76
mov byte [rbp - 0x39], 0x6c
mov byte [rbp - 0x2e], bl
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x140002307
lea r9d, [rbx + 1]
mov r8, r14
mov rdx, rsi
xor ecx, ecx
mov qword [rsp + 0x20], r15
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140179510
mov rbx, qword [rsp + 0xb0]
add rsp, 0x80
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret

Function at 0x140002340
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
mov rbp, rsp
sub rsp, 0x60
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rbp - 0x10], rax
mov rsi, rcx
mov eax, 0x2e
lea rcx, [rbp - 0x28]
xor ebx, ebx
mov dword [rbp - 0x1a], 0x6c0064
mov dword [rbp - 0x20], 0x320033
mov dword [rbp - 0x24], 0x720065
mov dword [rbp - 0x16], VarBstrFromDisp
mov word [rbp - 0x1c], ax
mov dword [rbp - 0x28], 0x730055
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
je 0x1400023f9
lea rdx, [rbp - 0x40]
mov rcx, rax
mov dword [rbp - 0x3d], 0x576b6f6f
mov dword [rbp - 0x32], 0x456b6f6f
mov word [rbp - 0x2e], 0x78
mov word [rbp - 0x34], 0x4873
mov dword [rbp - 0x39], 0x6f646e69
mov word [rbp - 0x40], 0x6e55
mov byte [rbp - 0x3e], 0x68
mov byte [rbp - 0x35], 0x77
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400023f0
mov rcx, rsi
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
mov rcx, qword [rbp - 0x10]
xor rcx, rsp
call fcn.140179510
lea r11, [rsp + 0x60]
mov rbx, qword [r11 + 0x18]
mov rsi, qword [r11 + 0x20]
mov rdi, qword [r11 + 0x28]
mov rsp, r11
pop rbp
ret
Function at 0x140002420
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r14
mov rbp, rsp
sub rsp, 0x50
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rbp - 8], rax
mov rsi, rcx
mov eax, 0x2e
lea rcx, [rbp - 0x20]
mov r14d, edx
xor ebx, ebx
mov dword [rbp - 0x12], 0x6c0064
mov dword [rbp - 0x18], 0x320033
mov dword [rbp - 0x1c], 0x720065
mov dword [rbp - 0xe], VarBstrFromDisp
mov word [rbp - 0x14], ax
mov dword [rbp - 0x20], 0x730055
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rdi, rax
test rax, rax
je 0x1400024d4
lea rdx, [rbp - 0x30]
mov rcx, rax
mov dword [rbp - 0x27], 0x576567
mov dword [rbp - 0x2c], 0x7373654d
mov word [rbp - 0x2f], 0x736f
mov byte [rbp - 0x2d], 0x74
mov byte [rbp - 0x28], 0x61
mov byte [rbp - 0x30], 0x50
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400024cb
xor r9d, r9d
xor r8d, r8d
mov edx, r14d
mov rcx, rsi
call rax
mov ebx, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, ebx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.140179510
lea r11, [rsp + 0x50]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r14
pop rdi
pop rbp
ret

Function at 0x140015554
Capabilities:
Extract resource via kernel32 functions

Disassembly:
movzx edx, dx
jmp method.CDialog.virtual_712
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbp, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rcx + 0xe0], rdx
test rdx, 0xffffffffffff0000
jne 0x140015593
cmp dword [rcx + 0xd8], 0
jne 0x140015593
movzx eax, dx
mov dword [rcx + 0xd8], eax
call fcn.140023038
mov r8d, 5
mov rdx, rdi
mov rbx, qword [rax + 0x18]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rcx, rbx
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov r9, rbx
mov r8, rbp
mov rdx, rax
mov rcx, rsi
mov rdi, rax
call fcn.1400158f0
mov rcx, rdi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x1400155f0
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
mov r14, r8
mov rbx, rdx
mov r15, rcx
xor edi, edi
call fcn.140023038
lea r8d, [rdi + 5]
mov rbp, qword [rax + 0x18]
mov rdx, rbx
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindResourceW]
mov rcx, rbp
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rsi, rax
test rax, rax
je 0x14001564c
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
mov r9, rbp
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140015684
mov rcx, rsi
mov ebx, eax
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
mov eax, ebx
mov rbx, qword [rsp + 0x40]
add rsp, 0x20
pop r15
pop r14
pop rdi
ret
Function at 0x1400161dc
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], r14
push r15
sub rsp, 0x40
mov rdi, r9
mov rsi, r8
mov r14, rdx
mov r15, rcx
and qword [rax - 0x10], 0
and qword [rax - 0x18], 0
xor ebx, ebx
mov eax, dword [0x14023f210]
test eax, eax
je 0x14001622e
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14023f210]
test eax, eax
jne 0x140016237
call fcn.1400101d8
test eax, eax
je 0x140016253
lea rdx, [rsp + 0x30]
mov rcx, qword [0x140237178]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x14001625b
xor eax, eax
jmp 0x1400162b3
mov rax, qword [rsp + 0x70]
mov qword [rsp + 0x20], rax
mov r9, rdi
mov r8, rsi
mov rdx, r14
mov rcx, r15
call qword [sym.imp.USER32.dll_CreateDialogIndirectParamW]
mov rsi, rax
mov qword [rsp + 0x38], rax
xor ebx, ebx
test rax, rax
sete bl
test ebx, ebx
je 0x140016295
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x140016297
xor edi, edi
mov rdx, qword [rsp + 0x30]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400162b0
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rsi
mov rbx, qword [rsp + 0x50]
mov rsi, qword [rsp + 0x58]
mov rdi, qword [rsp + 0x60]
mov r14, qword [rsp + 0x68]
add rsp, 0x40
pop r15
ret

Function at 0x140017990
Capabilities:
Query or enumerate registry value
Read .ini file

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x40
cmp qword [rcx + 0xb0], 0
mov edi, r9d
mov rbx, r8
mov rax, rdx
je 0x140017a0a
xor r8d, r8d
call fcn.140017c54
mov rsi, rax
test rax, rax
jne 0x1400179c6
mov eax, edi
jmp 0x140017a20
lea rax, [rsp + 0x50]
lea r9, [rsp + 0x34]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x30]
mov rdx, rbx
mov rcx, rsi
mov dword [rsp + 0x50], 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov rcx, rsi
mov ebx, eax
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
cmove edi, dword [rsp + 0x30]
jmp 0x1400179c2
mov r9, qword [rcx + 0xd8]
mov r8d, edi
mov rdx, rbx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
Function at 0x14001847c
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x30
cmp qword [rcx], 0
mov rdi, r8
mov rsi, rdx
mov rbx, rcx
je 0x1400184df
lea rcx, str.Advapi32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x1400184f3
lea rdx, str.RegDeleteKeyTransactedW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x1400184f3
mov rcx, qword [rbx]
and qword [rsp + 0x28], 0
xor r9d, r9d
mov qword [rsp + 0x20], rcx
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call rax
jmp 0x1400184f8
cmp dword [rcx + 8], 0
je 0x1400184f3
mov rdx, r8
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyW]
jmp 0x1400184f8
mov eax, 1
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
add rsp, 0x30
pop rdi
ret

Function at 0x14001ab00
Capabilities:
Get common file path

Disassembly:
mov qword [rsp + 0x10], rbx
push rdi
sub rsp, 0x240
mov rax, qword [0x14023d380]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov rdi, rcx
mov rcx, qword [0x140242700]
test rcx, rcx
jne 0x14001ab65
lea rcx, str.kernel32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
test rax, rax
je 0x14001ab86
lea rdx, str.SetDefaultDllDirectories
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
mov rbx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov qword [0x140242700], rax
jmp 0x14001ab6e
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov rbx, rax
test rbx, rbx
je 0x14001ab86
xor edx, edx
mov r8d, 0x800
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_LoadLibraryExW]
jmp 0x14001abe8
mov ebx, 0x105
lea rcx, [rsp + 0x20]
mov edx, ebx
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
jne 0x14001aba0
xor eax, eax
jmp 0x14001abe8
lea rcx, [rsp + 0x20]
call fcn.14017a580
cmp word [rsp + rax*2 + 0x1e], 0x5c
je 0x14001abca
lea r8, [0x1401a4cc0]
lea rcx, [rsp + 0x20]
mov rdx, rbx
call fcn.14017a4f8
test eax, eax
jne 0x14001ab9c
lea rcx, [rsp + 0x20]
mov r8, rdi
mov rdx, rbx
call fcn.14017a4f8
test eax, eax
jne 0x14001ab9c
lea rcx, [rsp + 0x20]
call fcn.1400212a8
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.140179510
mov rbx, qword [rsp + 0x258]
add rsp, 0x240
pop rdi
ret
Function at 0x14001b758
Capabilities:
Extract resource via kernel32 functions

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, 0x20
xor edi, edi
xor ebx, ebx
mov rsi, rdx
mov r14, rcx
test rdx, rdx
je 0x14001b7c0
call fcn.140023038
mov r8d, 0xf0
mov rdx, rsi
mov rbp, qword [rax + 0x18]
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_FindResourceW]
test rax, rax
je 0x14001b7c0
mov rdx, rax
mov rcx, rbp
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rbx, rax
test rax, rax
je 0x14001b7e2
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
mov rdx, rdi
mov rcx, r14
call fcn.1400a4e2c
mov esi, eax
test rdi, rdi
je 0x14001b7e0
test rbx, rbx
je 0x14001b7e0
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov eax, esi
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
mov rdi, qword [rsp + 0x48]
add rsp, 0x20
pop r14
ret

Function at 0x14001d224
Capabilities:
Get graphical window text

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov rbp, rcx
mov rcx, qword [rcx + 0x40]
mov rbx, r8
call fcn.140024c4c
mov rdi, rax
test rax, rax
je 0x14001d2a0
mov rcx, rax
call qword [sym.imp.USER32.dll_GetDlgCtrlID]
mov esi, eax
test rbx, rbx
je 0x14001d29b
cmp dword [rbx], 0x40
jb 0x14001d29b
mov rcx, qword [rbp + 0x40]
or dword [rbx + 4], 1
or qword [rbx + 0x30], 0xffffffffffffffff
mov qword [rbx + 8], rcx
xor r9d, r9d
xor r8d, r8d
mov edx, 0x87
mov rcx, rdi
mov qword [rbx + 0x10], rdi
call qword [sym.imp.USER32.dll_SendMessageW]
bt rax, 0xd
jb 0x14001d29b
or dword [rbx + 4], 0x80000002
mov rax, rsi
jmp 0x14001d2a4
or rax, 0xffffffffffffffff
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x140020f9c
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], r14
push r15
sub rsp, 0x70
mov edi, r9d
mov rsi, r8
mov r14, rdx
mov r15d, ecx
and qword [rax - 0x10], 0
and qword [rax - 0x18], 0
xor ebx, ebx
mov eax, dword [0x14023f210]
test eax, eax
je 0x140020fee
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14023f210]
test eax, eax
jne 0x140020ff7
call fcn.1400101d8
test eax, eax
je 0x140021013
lea rdx, [rsp + 0x60]
mov rcx, qword [0x140237178]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x14002101e
xor eax, eax
jmp 0x1400210cc
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x58], rax
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0xc8]
mov qword [rsp + 0x48], rax
mov rax, qword [rsp + 0xc0]
mov qword [rsp + 0x40], rax
mov eax, dword [rsp + 0xb8]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0xb0]
mov dword [rsp + 0x30], eax
mov eax, dword [rsp + 0xa8]
mov dword [rsp + 0x28], eax
mov eax, dword [rsp + 0xa0]
mov dword [rsp + 0x20], eax
mov r9d, edi
mov r8, rsi
mov rdx, r14
mov ecx, r15d
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov rsi, rax
mov qword [rsp + 0x68], rax
xor ebx, ebx
test rax, rax
sete bl
test ebx, ebx
je 0x1400210ae
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x1400210b0
xor edi, edi
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400210c9
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov rax, rsi
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov r14, qword [r11 + 0x28]
mov rsp, r11
pop r15
ret
Function at 0x1400210e8
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push r14
sub rsp, 0x30
mov rdi, r8
mov rsi, rdx
mov r14, rcx
and dword [rax - 0x18], 0
and qword [rax + 0x20], 0
xor ebx, ebx
mov eax, dword [0x14023f210]
test eax, eax
je 0x140021132
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14023f210]
test eax, eax
jne 0x14002113b
call fcn.1400101d8
test eax, eax
je 0x140021157
lea rdx, [rsp + 0x58]
mov rcx, qword [0x140237178]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x14002115f
xor eax, eax
jmp 0x1400211a6
mov r8, rdi
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.USER32.dll_GetClassInfoExW]
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test eax, eax
sete bl
test ebx, ebx
je 0x140021189
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14002118b
xor esi, esi
mov rdx, qword [rsp + 0x58]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400211a4
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, edi
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x48]
mov rdi, qword [rsp + 0x50]
add rsp, 0x30
pop r14
ret

Function at 0x1400211bc
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 [0x1402426f8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14023f210]
test eax, eax
je 0x140021207
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14023f210]
test eax, eax
jne 0x140021210
call fcn.1400101d8
test eax, eax
je 0x14002122c
lea rdx, [rsp + 0x48]
mov rcx, qword [0x140237178]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140021234
xor eax, eax
jmp 0x140021291
test rbx, rbx
jne 0x140021254
lea rcx, str.InitCommonControlsEx
call fcn.14000fea0
mov rbx, rax
test rax, rax
je 0x14002125f
mov qword [0x1402426f8], 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 0x140021274
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x140021276
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x14002128f
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