joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140025178
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 rbx, r8
mov rcx, qword [rcx + 0x40]
call fcn.140058d08
mov rdi, rax
test rax, rax
je 0x1400251f4
mov rcx, rax
call qword [sym.imp.USER32.dll_GetDlgCtrlID]
mov esi, eax
test rbx, rbx
je 0x1400251ef
cmp dword [rbx], 0x40
jb 0x1400251ef
mov rcx, qword [rbp + 0x40]
xor r9d, r9d
or dword [rbx + 4], 1
xor r8d, r8d
or qword [rbx + 0x30], 0xffffffffffffffff
mov edx, 0x87
mov qword [rbx + 8], rcx
mov rcx, rdi
mov qword [rbx + 0x10], rdi
call qword [sym.imp.USER32.dll_SendMessageA]
bt rax, 0xd
jb 0x1400251ef
or dword [rbx + 4], 0x80000002
mov rax, rsi
jmp 0x1400251f8
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 0x140029c5c
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 [0x14039ab18]
test eax, eax
je 0x140029cae
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x140029cb7
call fcn.14001e78c
test eax, eax
je 0x140029cd3
lea rdx, [rsp + 0x60]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x140029cde
xor eax, eax
jmp 0x140029d8c
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_CreateWindowExA]
mov rsi, rax
mov qword [rsp + 0x68], rax
xor ebx, ebx
test rsi, rsi
sete bl
test ebx, ebx
je 0x140029d6e
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x140029d70
xor edi, edi
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140029d89
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 0x140029da8
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 [0x14039ab18]
test eax, eax
je 0x140029df2
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x140029dfb
call fcn.14001e78c
test eax, eax
je 0x140029e17
lea rdx, [rsp + 0x58]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x140029e1f
xor eax, eax
jmp 0x140029e66
mov r8, rdi
mov rdx, rsi
mov rcx, r14
call qword [sym.imp.USER32.dll_GetClassInfoExA]
mov edi, eax
mov dword [rsp + 0x20], eax
xor ebx, ebx
test edi, edi
sete bl
test ebx, ebx
je 0x140029e49
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x140029e4b
xor esi, esi
mov rdx, qword [rsp + 0x58]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140029e64
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 0x140029e7c
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 [0x14039def8]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x140029ec7
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x140029ed0
call fcn.14001e78c
test eax, eax
je 0x140029eec
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x140029ef4
xor eax, eax
jmp 0x140029f59
test rbx, rbx
jne 0x140029f14
lea rcx, str.InitCommonControlsEx
call fcn.140029bc8
mov rbx, rax
test rax, rax
je 0x140029f27
mov qword [0x14039def8], rax
mov rcx, rbx
call fcn.1401d8170
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 0x140029f3c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x140029f3e
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140029f57
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 0x14002a0b0
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 rdi, rcx
xor r14d, r14d
mov word [rax - 0x18], r14w
mov qword [rax + 0x10], r14
mov ebx, r14d
mov eax, dword [0x14039ab18]
test eax, eax
je 0x14002a0f8
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x14002a101
call fcn.14001e78c
test eax, eax
je 0x14002a11d
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne ebx, ecx
test ebx, ebx
jne 0x14002a127
movzx eax, r14w
jmp 0x14002a16f
mov rcx, rdi
call qword [sym.imp.USER32.dll_RegisterClassA]
movzx ebx, ax
mov word [rsp + 0x20], ax
mov edi, r14d
test bx, bx
sete dil
test edi, edi
je 0x14002a150
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14002a153
mov esi, r14d
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test edi, edi
je 0x14002a16c
mov ecx, esi
call qword [sym.imp.KERNEL32.dll_SetLastError]
movzx eax, bx
mov rbx, qword [rsp + 0x40]
mov rsi, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x58]
add rsp, 0x30
pop r14
ret

Function at 0x14002a574
Capabilities:
Get graphical window text

Disassembly:
push rsi
push rdi
push r14
sub rsp, 0x30
mov qword [rsp + 0x20], 0xfffffffffffffffe
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x60], rbp
movsxd rbp, r8d
mov rsi, rdx
mov rdi, rcx
cmp qword [rcx + 0xd0], 0
jne 0x14002a5b5
mov r8d, ebp
mov rcx, qword [rcx + 0x40]
call qword [sym.imp.USER32.dll_GetWindowTextA]
jmp 0x14002a692
call fcn.14001eb34
mov r14, rax
test rax, rax
jne 0x14002a5cd
mov ecx, 0x80004005
call fcn.140002d30
int3
mov rax, qword [rax]
mov rbx, qword [rax + 0x18]
mov rcx, rbx
call fcn.1401d8170
mov rcx, r14
call rbx
add rax, 0x18
mov qword [rsp + 0x50], rax
mov rdi, qword [rdi + 0xd0]
mov rax, qword [rdi]
mov rbx, qword [rax + 0x118]
mov rcx, rbx
call fcn.1401d8170
lea rdx, [rsp + 0x50]
mov rcx, rdi
call rbx
mov rdx, rbp
or rbx, 0xffffffffffffffff
mov r9, rbx
mov r8, qword [rsp + 0x50]
mov rcx, rsi
call fcn.1401ec37c
test eax, eax
je 0x14002a64e
cmp eax, 0xc
je 0x14002a648
cmp eax, 0x16
je 0x14002a642
cmp eax, 0x22
je 0x14002a642
cmp eax, 0x50
je 0x14002a64e
call fcn.140020148
int3
call fcn.140020148
int3
call fcn.14002016c
int3
test rsi, rsi
jne 0x14002a657
xor ebp, ebp
jmp 0x14002a662
mov rcx, rsi
call fcn.1401dbdb0
mov rbp, rax
mov rsi, qword [rsp + 0x50]
mov ecx, ebx
lock xadd dword [rsi - 8], ecx
add ecx, ebx
test ecx, ecx
jg 0x14002a690
mov rdi, qword [rsi - 0x18]
mov rax, qword [rdi]
mov rbx, qword [rax + 8]
mov rcx, rbx
call fcn.1401d8170
lea rdx, [rsi - 0x18]
mov rcx, rdi
call rbx
mov eax, ebp
mov rbx, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x60]
add rsp, 0x30
pop r14
pop rdi
pop rsi
ret
Function at 0x1400395a4
Capabilities:
Print debug messages

Disassembly:
sub rsp, 0x28
cmp qword [rcx + 8], 0
jne 0x140038c52
xor eax, eax
add rsp, 0x28
ret
call fcn.140038c64
mov rcx, rax
add rsp, 0x28
jmp 0x1400395a4
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 [0x14039dfe0]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x1400395ef
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x1400395f8
call fcn.14001e78c
test eax, eax
je 0x140039614
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x14003961c
xor eax, eax
jmp 0x140039681
test rbx, rbx
jne 0x14003963c
lea rcx, str.ImageList_Destroy
call fcn.140029bc8
mov rbx, rax
test rax, rax
je 0x14003964f
mov qword [0x14039dfe0], rax
mov rcx, rbx
call fcn.1401d8170
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 0x140039664
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x140039666
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x14003967f
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 0x140039698
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 [0x14039dfe8]
and qword [rax - 0x28], rsi
xor edi, edi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x1400396f5
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x1400396fe
call fcn.14001e78c
test eax, eax
je 0x14003971a
lea rdx, [rsp + 0x40]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne edi, ecx
test edi, edi
jne 0x140039725
xor eax, eax
jmp 0x1400397b8
test rbx, rbx
jne 0x140039745
lea rcx, str.ImageList_LoadImageA
call fcn.140029bc8
mov rbx, rax
test rax, rax
je 0x140039784
mov qword [0x14039dfe8], rax
mov rcx, rbx
call fcn.1401d8170
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 0x14003979a
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x14003979c
xor edi, edi
mov rdx, qword [rsp + 0x40]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x1400397b5
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 0x140040268
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 [0x14039e220]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x1400402b3
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x1400402bc
call fcn.14001e78c
test eax, eax
je 0x1400402d8
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1400402e0
xor eax, eax
jmp 0x140040345
test rbx, rbx
jne 0x140040300
lea rcx, str.PageSetupDlgA
call fcn.1400401d4
mov rbx, rax
test rax, rax
je 0x140040313
mov qword [0x14039e220], rax
mov rcx, rbx
call fcn.1401d8170
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 0x140040328
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14004032a
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140040343
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 0x14004035c
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 [0x14039e218]
and qword [rax + 0x10], rdi
xor esi, esi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x1400403a7
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x1400403b0
call fcn.14001e78c
test eax, eax
je 0x1400403cc
lea rdx, [rsp + 0x48]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne esi, ecx
test esi, esi
jne 0x1400403d4
xor eax, eax
jmp 0x140040439
test rbx, rbx
jne 0x1400403f4
lea rcx, str.PrintDlgA
call fcn.1400401d4
mov rbx, rax
test rax, rax
je 0x140040407
mov qword [0x14039e218], rax
mov rcx, rbx
call fcn.1401d8170
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 0x14004041c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov esi, eax
jmp 0x14004041e
xor esi, esi
mov rdx, qword [rsp + 0x48]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140040437
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 0x140046f94
Capabilities:
Extract resource via kernel32 functions

Disassembly:
mov edx, 0x8c
jmp 0x140046f94
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x20
mov r15, rdx
mov r14, rcx
call fcn.14002d058
mov r8d, 0xf1
mov rdx, r15
mov rbx, qword [rax + 0x18]
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_FindResourceA]
xor r12d, r12d
test rax, rax
jne 0x140046fda
xor eax, eax
jmp 0x1400470b2
mov rdx, rax
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_LoadResource]
mov rdi, rax
test rax, rax
je 0x140046fd3
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbx, rax
test rax, rax
je 0x140046fd3
movzx ecx, word [rax + 6]
mov eax, 4
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400066a0
mov rbp, rax
mov r9d, r12d
cmp r12w, word [rbx + 6]
jae 0x14004704c
mov rdx, rax
lea r8, [rbx + 8]
movzx ecx, word [r8]
inc r9d
mov dword [rdx], ecx
lea r8, [r8 + 2]
movzx eax, word [rbx + 6]
lea rdx, [rdx + 4]
cmp r9d, eax
jl 0x140047032
movzx r8d, word [rbx + 6]
mov rdx, rbp
mov rcx, r14
call fcn.1400478f4
mov rcx, rbp
mov esi, eax
call fcn.140014f10
test esi, esi
je 0x1400470a7
movzx ecx, word [rbx + 4]
movzx eax, word [rbx + 2]
mov dword [rsp + 0x60], eax
add eax, 7
mov dword [rsp + 0x68], eax
lea eax, [rcx + 7]
mov dword [rsp + 0x64], ecx
mov r8, qword [rsp + 0x60]
mov rcx, r14
mov dword [rsp + 0x6c], eax
mov rdx, qword [rsp + 0x68]
call fcn.140047b14
mov rdx, r15
mov rcx, r14
call fcn.140046f18
mov esi, eax
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FreeResource]
mov eax, esi
mov rbx, qword [rsp + 0x50]
mov rbp, qword [rsp + 0x58]
add rsp, 0x20
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret

Function at 0x14004fa48
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 0x14004fac2
xor r8d, r8d
call fcn.14004fd14
mov rsi, rax
test rax, rax
jne 0x14004fa7e
mov eax, edi
jmp 0x14004fad8
lea rax, [rsp + 0x50]
mov dword [rsp + 0x50], 4
mov qword [rsp + 0x28], rax
lea r9, [rsp + 0x34]
lea rax, [rsp + 0x30]
xor r8d, r8d
mov rdx, rbx
mov qword [rsp + 0x20], rax
mov rcx, rsi
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExA]
mov rcx, rsi
mov ebx, eax
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
test ebx, ebx
cmove edi, dword [rsp + 0x30]
jmp 0x14004fa7a
mov r9, qword [rcx + 0xd8]
mov r8d, edi
mov rcx, rax
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov rbx, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
Function at 0x140050fa8
Capabilities:
Delete registry key

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x30
cmp qword [rcx], 0
mov rsi, r8
mov rbp, rdx
mov rbx, rcx
je 0x14005101b
lea rcx, str.Advapi32.dll
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x14005102f
lea rdx, str.RegDeleteKeyTransactedA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test rax, rax
je 0x14005102f
mov rcx, rax
call fcn.1401d8170
mov rcx, qword [rbx]
xor r9d, r9d
and qword [rsp + 0x28], 0
xor r8d, r8d
mov qword [rsp + 0x20], rcx
mov rdx, rsi
mov rcx, rbp
call rdi
jmp 0x140051034
cmp dword [rcx + 8], 0
je 0x14005102f
mov rdx, rsi
mov rcx, rbp
call qword [sym.imp.ADVAPI32.dll_RegDeleteKeyA]
jmp 0x140051034
mov eax, 1
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x50]
add rsp, 0x30
pop rdi
ret

Function at 0x140052c54
Capabilities:
Delete file

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

Function at 0x140053020
Capabilities:
Move file

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

Function at 0x1400533b0
Capabilities:
Delete file

Disassembly:
push rbx
sub rsp, 0x20
mov rax, rdx
mov rbx, rcx
test rdx, rdx
je 0x1400533ce
mov rdx, rcx
mov rcx, rax
call fcn.140052c54
jmp 0x1400533d4
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
test eax, eax
jne 0x1400533e8
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov rdx, rbx
call fcn.140076938
add rsp, 0x20
pop rbx
ret
Function at 0x1400533f0
Capabilities:
Move file

Disassembly:
push rbx
sub rsp, 0x20
mov rax, r8
mov rbx, rcx
test r8, r8
je 0x140053411
mov r8, rdx
mov rdx, rcx
mov rcx, rax
call fcn.140053020
jmp 0x140053417
call qword [sym.imp.KERNEL32.dll_MoveFileA]
test eax, eax
jne 0x14005342b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
mov rdx, rbx
call fcn.140076938
add rsp, 0x20
pop rbx
ret

Function at 0x140053940
Capabilities:
Print debug messages

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
movzx r14d, r8w
mov r15, rdx
mov r12, rcx
or r13d, 0xffffffff
movzx esi, r13w
mov word [rax - 0x38], r13w
mov rbx, qword [0x14039e2b8]
and qword [rax + 0x20], 0
xor edi, edi
mov eax, dword [0x14039ab18]
test eax, eax
je 0x14005399e
lea rcx, str.IsolationAware_function_called_after_IsolationAwareCleanup_n
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov eax, dword [0x14039ab18]
test eax, eax
jne 0x1400539a7
call fcn.14001e78c
test eax, eax
je 0x1400539c3
lea rdx, [rsp + 0x78]
mov rcx, qword [0x1402bd008]
call qword [sym.imp.KERNEL32.dll_ActivateActCtx]
mov ecx, 1
test eax, eax
cmovne edi, ecx
test edi, edi
jne 0x1400539cd
movzx eax, r13w
jmp 0x140053a3e
test rbx, rbx
jne 0x1400539ed
lea rcx, str.GetFileTitleA
call fcn.1400401d4
mov rbx, rax
test rax, rax
je 0x140053a09
mov qword [0x14039e2b8], rax
mov rcx, rbx
call fcn.1401d8170
movzx r8d, r14w
mov rdx, r15
mov rcx, r12
call rbx
movzx esi, ax
mov word [rsp + 0x20], ax
xor ebx, ebx
cmp si, r13w
sete bl
test ebx, ebx
je 0x140053a20
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edi, eax
jmp 0x140053a22
xor edi, edi
mov rdx, qword [rsp + 0x78]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_DeactivateActCtx]
test ebx, ebx
je 0x140053a3b
mov ecx, edi
call qword [sym.imp.KERNEL32.dll_SetLastError]
movzx eax, si
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
ret