joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1400a45f8
Capabilities:
Read file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x78
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov qword [rsp + 0x38], rdx
mov rbx, rcx
lea rdx, [0x140111c68]
mov dword [rsp + 0x34], r9d
mov rcx, r8
call fcn.1400c5e04
xor ebp, ebp
mov rdi, rax
test rax, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
jne 0x1400a46cf
lea r13d, [rbp + 1]
mov r9, rax
mov r8d, r13d
lea edx, [rbp + 0x16]
lea rcx, [rsp + 0x48]
call fcn.1400f9f24
cmp word [rsp + 0x48], bp
jne 0x1400a46c7
cmp word [rsp + 0x4a], r13w
jne 0x1400a46c7
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.1400fa260
movzx eax, word [rsp + 0x4c]
sub eax, r13d
movsxd rcx, eax
shl rcx, 4
add rcx, 0x16
call fcn.1400f5a10
mov rsi, rax
test rax, rax
je 0x1400a46c7
movzx eax, word [rsp + 0x4c]
sub eax, r13d
cdqe
imul rcx, rax, 0xe
add rcx, 0x14
call fcn.1400f5a10
mov r14, rax
mov rcx, rsi
test rax, rax
jne 0x1400a46ef
call fcn.1400f5a08
mov rcx, rdi
call fcn.1400f5f4c
xor al, al
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.1400eebd0
add rsp, 0x78
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
movzx eax, word [rsp + 0x4c]
mov r9, rdi
sub eax, r13d
mov r8, r13
movsxd rdx, eax
shl rdx, 4
add rdx, 0x16
call fcn.1400f9f24
movups xmm0, xmmword [rsi]
mov r15d, ebp
movups xmmword [r14], xmm0
mov eax, dword [rsi + 0x10]
mov dword [r14 + 0x10], eax
cmp bp, word [rsp + 0x4c]
jae 0x1400a47e7
movsxd rax, r15d
lea r12d, [r15 + r13]
imul rcx, rax, 0xe
mov rbx, rax
add rbx, rbx
movsd xmm0, qword [rsi + rbx*8 + 6]
movsd qword [rcx + r14 + 6], xmm0
mov eax, dword [rsi + rbx*8 + 0xe]
mov dword [rcx + r14 + 0xe], eax
mov word [rcx + r14 + 0x12], r12w
mov eax, dword [rsi + rbx*8 + 0xe]
mov ecx, eax
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x40], rax
call fcn.1400f5a10
mov r13, rax
mov rcx, rdi
test rax, rax
je 0x1400a483e
mov edx, dword [rsi + rbx*8 + 0x12]
xor r8d, r8d
call fcn.1400fa260
mov rdx, qword [rsp + 0x40]
mov r9, rdi
mov r8d, 1
mov rcx, r13
call fcn.1400f9f24
mov eax, dword [rsp + 0x30]
mov r9d, 0x400
mov rcx, qword [rsp + 0x38]
mov edx, 3
mov dword [rsp + 0x28], eax
movzx r8d, r12w
mov qword [rsp + 0x20], r13
call qword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov rcx, r13
mov ebx, eax
call fcn.1400f5a08
test ebx, ebx
je 0x1400a483b
movzx eax, word [rsp + 0x4c]
mov r13d, 1
add r15d, r13d
cmp r15d, eax
jl 0x1400a4729
mov rcx, rdi
call fcn.1400f5f4c
movzx eax, word [rsp + 0x4c]
mov r9d, 0x400
movzx r8d, word [rsp + 0x34]
mov rcx, qword [rsp + 0x38]
imul edx, eax, 0xe
add edx, 6
mov dword [rsp + 0x28], edx
mov edx, 0xe
mov qword [rsp + 0x20], r14
call qword [sym.imp.KERNEL32.dll_UpdateResourceW]
mov rcx, rsi
mov ebx, eax
call fcn.1400f5a08
mov rcx, r14
call fcn.1400f5a08
test ebx, ebx
setne al
jmp 0x1400a46d1
mov rcx, rdi
call fcn.1400f5f4c
mov rcx, rsi
call fcn.1400f5a08
mov rcx, r14
call fcn.1400f5a08
jmp 0x1400a46cf
Function at 0x1400a4b68
Capabilities:
Read file on windows
Write file on windows

Disassembly:
push rbx
push rsi
push rdi
mov eax, 0x2030
call fcn.1400eeb60
sub rsp, rax
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x2020], rax
mov rax, rdx
mov rbx, rcx
mov rcx, rax
lea rdx, [0x140111c68]
mov rsi, r8
call fcn.1400c5e04
test rax, rax
mov rdi, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
je 0x1400a4bba
xor al, al
jmp 0x1400a4bf9
mov ebx, 1
jmp 0x1400a4bd4
mov r9, rsi
lea rcx, [rsp + 0x20]
mov r8, rax
mov rdx, rbx
call fcn.1400f6318
mov r9, rdi
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbx
call fcn.1400f9f24
test rax, rax
jne 0x1400a4bc1
mov rcx, rdi
call fcn.1400f5f4c
mov al, bl
mov rcx, qword [rsp + 0x2020]
xor rcx, rsp
call fcn.1400eebd0
add rsp, 0x2030
pop rdi
pop rsi
pop rbx
ret

Function at 0x1400a4c14
Capabilities:
Read file on windows
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rbp
push rsi
push rdi
push r12
push r14
push r15
mov eax, 0x2030
call fcn.1400eeb60
sub rsp, rax
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x2020], rax
mov rax, rdx
mov rbx, rcx
mov rcx, rax
lea rdx, [0x140117a58]
call fcn.1400c5e04
test rax, rax
mov rdi, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
jne 0x1400a4d3a
xor r15d, r15d
lea r12d, [r15 + 1]
mov r9, rdi
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, r12
call fcn.1400f9f24
mov rbp, rax
cmp rax, 0x20
jbe 0x1400a4d32
xor esi, esi
lea r14d, [rbp - 0x20]
test r14d, r14d
jle 0x1400a4ce2
lea rbx, [rsp + 0x21]
cmp byte [rbx - 1], 0x61
jne 0x1400a4cd7
cmp byte [rbx], 0x73
jne 0x1400a4cd7
movsxd rax, esi
lea rcx, [rsp + 0x22]
add rcx, rax
lea rdx, str.Invoker_
mov r8d, 0x14
call fcn.1400f6be0
test eax, eax
je 0x1400a4cf8
add esi, r12d
add rbx, r12
cmp esi, r14d
jl 0x1400a4cab
add ebp, 0xffffffe0
xor r8d, r8d
add r15d, ebp
mov rcx, rdi
mov edx, r15d
call fcn.1400fa260
jmp 0x1400a4c78
lea edx, [rsi + r15]
xor r8d, r8d
mov rcx, rdi
call fcn.1400fa260
mov r9, rdi
lea rcx, str.requireAdministrator_
mov r8d, 0x15
mov rdx, r12
call fcn.1400f6318
cmp rax, 0x15
mov rcx, rdi
sete bl
call fcn.1400f5f4c
mov al, bl
jmp 0x1400a4d3c
mov rcx, rdi
call fcn.1400f5f4c
xor al, al
mov rcx, qword [rsp + 0x2020]
xor rcx, rsp
call fcn.1400eebd0
lea r11, [rsp + 0x2030]
mov rbx, qword [r11 + 0x40]
mov rbp, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x1400a5314
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x2030
call fcn.1400eeb60
sub rsp, rax
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x2020], rax
lea rdx, [0x140111c68]
call fcn.140069f38
mov rsi, rax
test rax, rax
je 0x1400a5402
xor r14d, r14d
xor r15d, r15d
lea ebx, [r14 + 1]
mov r9, rsi
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov rdx, rbx
call fcn.1400f9f24
mov r12, rax
cmp eax, 0x20
jle 0x1400a53f6
xor ebp, ebp
lea r13d, [rax - 0x20]
test r13d, r13d
jle 0x1400a53d1
lea rdi, [rsp + 0x21]
cmp byte [rdi - 1], 0x72
jne 0x1400a53c7
cmp byte [rdi], 0x65
jne 0x1400a53c7
movsxd rax, ebp
lea rcx, [rsp + 0x22]
add rcx, rax
lea rdx, str.quireAdministrator_
mov r8d, 0x14
call fcn.1400f6be0
test eax, eax
je 0x1400a53f8
add ebp, ebx
add rdi, rbx
cmp ebp, r13d
jl 0x1400a539b
add r14d, 0xffffffe0
xor r8d, r8d
add r14d, r12d
mov rcx, rsi
mov edx, r14d
call fcn.1400fa260
add r15d, ebx
cmp r15d, 0x100
jb 0x1400a536d
xor bl, bl
mov rcx, rsi
call fcn.1400f5f4c
mov al, bl
mov rcx, qword [rsp + 0x2020]
xor rcx, rsp
call fcn.1400eebd0
lea r11, [rsp + 0x2030]
mov rbx, qword [r11 + 0x38]
mov rbp, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret

Function at 0x1400a5434
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x430
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x420], rax
mov rax, rdx
mov rbx, rcx
mov rcx, rax
lea rdx, [0x140111c68]
call fcn.1400c5e04
xor edi, edi
mov rsi, rax
test rax, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
je 0x1400a5486
mov al, 1
jmp 0x1400a54d9
mov r9, rsi
lea rcx, [rsp + 0x20]
mov edx, 1
mov r8d, 0x400
call fcn.1400f9f24
mov rcx, rsi
mov rbx, rax
call fcn.1400f5f4c
lea eax, [rbx - 4]
movsxd rcx, eax
test eax, eax
jle 0x1400a54d7
cmp byte [rsp + rdi + 0x20], 0x55
jne 0x1400a54cf
cmp byte [rsp + rdi + 0x21], 0x50
jne 0x1400a54cf
cmp byte [rsp + rdi + 0x22], 0x58
jne 0x1400a54cf
cmp byte [rsp + rdi + 0x23], 0x30
je 0x1400a5482
inc rdi
cmp rdi, rcx
jl 0x1400a54b3
xor al, al
mov rcx, qword [rsp + 0x420]
xor rcx, rsp
call fcn.1400eebd0
lea r11, [rsp + 0x430]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rsp, r11
pop rdi
ret
Function at 0x1400a59bc
Capabilities:
Read file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x2038
call fcn.1400eeb60
sub rsp, rax
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x2020], rax
mov rax, rdx
mov rbx, rcx
mov rcx, rax
lea rdx, [0x140111c68]
mov r13, r9
mov r12, r8
call fcn.1400c5e04
test rax, rax
mov rsi, rax
sete dl
mov byte [rbx + 0x3038], dl
test dl, dl
jne 0x1400a5b42
xor r15d, r15d
mov r9, rsi
lea rcx, [rsp + 0x20]
mov r8d, 0x2000
mov edx, 1
call fcn.1400f9f24
mov rbp, rax
cmp rax, 0x28
jbe 0x1400a5b3a
xor edi, edi
lea r14, [rax - 0x28]
test r14, r14
je 0x1400a5aef
lea rbx, [rsp + 0x24]
cmp byte [rsp + rdi + 0x20], 0x2a
jne 0x1400a5a86
cmp byte [rsp + rdi + 0x21], 0x2a
jne 0x1400a5a86
lea rcx, [rsp + 0x22]
mov r8d, 0xc
add rcx, rdi
lea rdx, [0x140116510]
call fcn.1400f6be0
test eax, eax
je 0x1400a5b08
cmp word [rbx - 4], 0x2a
jne 0x1400a5aad
cmp word [rbx - 2], 0x2a
jne 0x1400a5aad
mov r8d, 0xc
lea rdx, str.messages
mov rcx, rbx
call fcn.1400f5e54
test eax, eax
je 0x1400a5b08
mov eax, 0xfeff
cmp word [rbx - 4], ax
jne 0x1400a5adf
cmp word [rbx - 2], 0x2a
jne 0x1400a5adf
cmp word [rbx], 0x2a
jne 0x1400a5adf
lea rcx, [rbx + 2]
mov r8d, 0xc
lea rdx, str.messages
call fcn.1400f5e54
test eax, eax
je 0x1400a5b08
inc rdi
add rbx, 2
cmp rdi, r14
jb 0x1400a5a56
add ebp, 0xffffffd8
xor r8d, r8d
add r15d, ebp
mov rcx, rsi
mov edx, r15d
call fcn.1400fa260
jmp 0x1400a5a1d
lea edx, [rdi + r15]
xor r8d, r8d
mov rcx, rsi
call fcn.1400fa260
mov r9, rsi
mov r8, r13
mov edx, 1
mov rcx, r12
call fcn.1400f9f24
mov rcx, rsi
mov rbx, rax
call fcn.1400f5f4c
mov rax, rbx
jmp 0x1400a5b44
mov rcx, rsi
call fcn.1400f5f4c
xor eax, eax
mov rcx, qword [rsp + 0x2020]
xor rcx, rsp
call fcn.1400eebd0
add rsp, 0x2038
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x1400a6f20
Capabilities:
Set registry value

Disassembly:
sub rsp, 0x28
mov r8, qword [0x1401887f0]
lea rdx, [0x1401122c0]
mov rcx, qword [str.SFXDefault]
call fcn.1400a01b4
mov rax, qword [0x1401887f0]
lea rdx, str.PathType
mov rcx, qword [str.SFXDefault]
mov r8d, dword [rax + 0x1000]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.SavePath
mov rcx, qword [str.SFXDefault]
movzx r8d, byte [rax + 0x1004]
call fcn.1400a01cc
mov r8, qword [0x1401887f0]
lea rdx, [0x14010d658]
mov rcx, qword [str.SFXDefault]
add r8, 0x1006
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.Presetup
mov rcx, qword [str.SFXDefault]
add r8, 0x11006
call fcn.1400a01b4
mov rax, qword [0x1401887f0]
lea rdx, str.SetupCode
mov rcx, qword [str.SFXDefault]
movzx r8d, byte [rax + 0x21006]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.SetupCodeAdjust
mov rcx, qword [str.SFXDefault]
mov r8d, dword [rax + 0x21008]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.TempMode
mov rcx, qword [str.SFXDefault]
movzx r8d, byte [rax + 0x2100c]
call fcn.1400a01cc
mov r8, qword [0x1401887f0]
lea rdx, str.TempModeQuestion
mov rcx, qword [str.SFXDefault]
add r8, 0x2100e
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.TempModeTitle
mov rcx, qword [str.SFXDefault]
add r8, 0x2180e
call fcn.1400a01b4
mov rax, qword [0x1401887f0]
lea rdx, str.Silent
mov rcx, qword [str.SFXDefault]
mov r8d, dword [rax + 0x21a10]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.Overwrite
mov rcx, qword [str.SFXDefault]
mov r8d, dword [rax + 0x21a14]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.UpdateFiles
mov rcx, qword [str.SFXDefault]
movzx r8d, byte [rax + 0x21a19]
call fcn.1400a01cc
mov rax, qword [0x1401887f0]
lea rdx, str.FreshFiles
mov rcx, qword [str.SFXDefault]
movzx r8d, byte [rax + 0x21a18]
call fcn.1400a01cc
mov r8, qword [0x1401887f0]
lea rdx, str.DelFiles
mov rcx, qword [str.SFXDefault]
add r8, 0x21a1a
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.Title
mov rcx, qword [str.SFXDefault]
add r8, 0x23a1a
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
add r8, 0x23c1a
mov rcx, qword [str.SFXDefault]
lea rdx, [0x140117e88]
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.LicenseTitle
mov rcx, qword [str.SFXDefault]
add r8, 0xa3c1a
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.LicenseText
mov rcx, qword [str.SFXDefault]
add r8, 0xa3e1a
call fcn.1400a01b4
mov r8, qword [0x1401887f0]
lea rdx, str.ShortcutText
mov rcx, qword [str.SFXDefault]
add r8, 0x123e1a
call fcn.1400a01b4
mov rcx, qword [str.SFXDefault]
lea r8, [0x14015bb02]
lea rdx, str.SFXLogo
call fcn.1400a01b4
mov rcx, qword [str.SFXDefault]
lea r8, [0x14015ab02]
lea rdx, str.SFXIcon
call fcn.1400a01b4
movzx r8d, byte [0x14015cb02]
lea rdx, str.SFXElevate
mov rcx, qword [str.SFXDefault]
call fcn.1400a01cc
mov rcx, qword [str.SFXDefault]
lea r8, [0x140153728]
lea rdx, str.SFXModule
add rsp, 0x28
jmp fcn.1400a01b4
Function at 0x1400a81e0
Capabilities:
Get geographical location

Disassembly:
mov qword [rsp + 0x20], rbx
push rbp
push rsi
push rdi
sub rsp, 0x180
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x170], rax
xor ebp, ebp
mov rdi, r8
cmp qword [0x14013d3f8], rbp
mov rbx, rdx
mov rsi, rcx
jne 0x1400a8253
lea r9d, [rbp + 0x64]
mov ecx, 0x400
lea r8, [rsp + 0xa0]
lea edx, [rbp + 0xf]
call qword [sym.imp.KERNEL32.dll_GetLocaleInfoW]
movzx eax, word [rsp + 0xa0]
mov word [0x140188b18], ax
lea rax, [0x140188b18]
mov qword [0x14013d3f8], rax
mov word [0x140188b1a], bp
mov r8d, 0x32
lea rdx, [rsp + 0x30]
mov rcx, rsi
call fcn.14008df00
lea r9, [0x14013d3e0]
mov dword [rsp + 0x28], edi
lea r8, [rsp + 0x30]
mov word [rbx], bp
xor edx, edx
mov qword [rsp + 0x20], rbx
mov ecx, 0x400
call qword [sym.imp.KERNEL32.dll_GetNumberFormatW]
mov word [rbx + rdi*2 - 2], bp
mov rcx, qword [rsp + 0x170]
xor rcx, rsp
call fcn.1400eebd0
mov rbx, qword [rsp + 0x1b8]
add rsp, 0x180
pop rdi
pop rsi
pop rbp
ret

Function at 0x1400a83d4
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, r8
call qword [sym.imp.USER32.dll_GetDlgItem]
mov rcx, rax
mov rsi, rax
call qword [sym.imp.USER32.dll_GetWindowTextLengthW]
test eax, eax
jle 0x1400a8452
lea edi, [rax + 1]
mov eax, 2
movsxd rcx, edi
mul rcx
mov rcx, 0xffffffffffffffff
cmovo rax, rcx
mov rcx, rax
call fcn.1400eec74
mov rbx, rax
test rax, rax
je 0x1400a8452
mov r8d, edi
mov rdx, rax
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetWindowTextW]
xor r9d, r9d
xor r8d, r8d
mov rdx, rbp
mov rcx, rbx
call fcn.1400a8538
mov rcx, rbx
call fcn.1400eec7c
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x1400aa34c
Capabilities:
Create process on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x80
mov edi, edx
mov rbx, rcx
cmp edx, 0xa9
jne 0x1400aa377
call fcn.1400aa2f4
mov al, 1
jmp 0x1400aa494
cmp edi, 0xaa
jne 0x1400aa3af
mov ecx, 0x4f9
call fcn.140088044
mov r8, rax
mov dword [rsp + 0x28], 1
lea rax, [0x14010d188]
xor r9d, r9d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteW]
jmp 0x1400aa370
call fcn.1400a9bcc
mov rsi, rax
cmp edi, 0xab
jne 0x1400aa3cf
or dword [rbx + 0x118], 0xffffffff
lea rax, [0x14010d188]
jmp 0x1400aa441
lea eax, [rdi - 0x41a]
cmp eax, 0x7f
ja 0x1400aa492
xor edx, edx
lea rcx, [rsp + 0x30]
lea r8d, [rdx + 0x50]
call fcn.1400efdf0
lea r9, [rsp + 0x30]
mov dword [rsp + 0x30], 0x50
xor r8d, r8d
mov dword [rsp + 0x34], 0x20
mov edx, edi
mov rcx, rsi
call qword [sym.imp.USER32.dll_GetMenuItemInfoW]
test eax, eax
je 0x1400aa492
mov rax, qword [rbx + 0xf8]
cmp qword [rsp + 0x60], rax
jae 0x1400aa492
movsxd rax, dword [rsp + 0x60]
imul rcx, rax, 0x1304
mov dword [rbx + 0x118], eax
add rcx, qword [rbx + 0xf0]
call fcn.140079330
mov r8, rax
lea rdx, str.ActivePath
lea rcx, str.InterfaceThemes
call fcn.1400a01b4
mov edx, dword [rbx + 0x1120]
cmp edx, 0xffffffff
je 0x1400aa46e
xor r8d, r8d
mov rcx, rsi
call qword [sym.imp.USER32.dll_CheckMenuItem]
mov r8d, 8
mov edx, edi
mov rcx, rsi
call qword [sym.imp.USER32.dll_CheckMenuItem]
mov rcx, rbx
mov dword [rbx + 0x1120], edi
call fcn.1400a8a48
jmp 0x1400aa370
xor al, al
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x18]
mov rsp, r11
pop rdi
ret

Function at 0x1400ac4e8
Capabilities:
Hide graphical window

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rdi
push rbp
lea rbp, [rsp - 0x57]
sub rsp, 0xb0
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rbp + 0x47], rax
mov rdi, rcx
lea rdx, str.ViewAddress
lea rcx, str.GeneralToolbar
mov r8d, 1
call fcn.14009f660
test eax, eax
je 0x1400ac5ce
mov rbx, qword [0x14016bcd0]
lea r8, [rbp - 0x39]
mov edx, 3
mov rcx, rdi
call fcn.1400ab498
or dword [rbp - 0x31], 4
mov ecx, 0x12
and dword [rbp - 9], 0
mov dword [rbp - 0x39], 0x4c
mov dword [rbp - 0x35], 0x173
mov qword [rbp - 0x11], rbx
mov dword [rbp + 0xf], 3
call qword [sym.imp.USER32.dll_GetSysColor]
mov ecx, 0xf
mov dword [rbp - 0x2d], eax
call qword [sym.imp.USER32.dll_GetSysColor]
mov dword [rbp - 0x29], eax
mov ecx, reloc.SHELL32.dll_SHRestricted
mov eax, dword [rbp - 1]
lea rdx, [rbp + 0x37]
test eax, eax
cmove eax, ecx
mov rcx, rbx
mov dword [rbp - 1], eax
call qword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [rbp + 0x43]
lea r9, [rbp - 0x39]
mov rcx, qword [rdi + 0x10]
or r8, 0xffffffffffffffff
mov edx, 0x40a
mov dword [rbp - 5], eax
call qword [sym.imp.USER32.dll_SendMessageW]
mov edx, 5
mov rcx, rbx
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, qword [rbp + 0x47]
xor rcx, rsp
call fcn.1400eebd0
lea r11, [rsp + 0xb0]
mov rbx, qword [r11 + 0x18]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
Function at 0x1400ad2a4
Capabilities:
Query or enumerate registry value

Disassembly:
mov r8d, 2
lea rdx, [0x1401189a8]
lea rcx, str.GeneralToolbar
jmp fcn.14009f660

Function at 0x1400ad624
Capabilities:
Set registry value

Disassembly:
mov r8d, ecx
lea rdx, [0x1401189a8]
lea rcx, str.GeneralToolbar
jmp fcn.1400a01cc

Function at 0x1400b1d5c
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
cmp dword [0x14019a120], 0
je 0x1400b1d77
or eax, 0xffffffff
jmp 0x1400b1e7b
mov rax, qword [0x140189fd8]
test rax, rax
jg 0x1400b1d97
dec rax
mov qword [0x140189fd8], rax
and qword [0x14019a030], 0
jmp 0x1400b1d6f
mov rbx, qword [0x14019a030]
test rbx, rbx
jg 0x1400b1deb
mov rcx, qword [0x14019a020]
mov ebx, 0x2000
mov edx, ebx
call fcn.1400b1fd4
movsxd rcx, eax
mov qword [0x14019a030], rcx
test eax, eax
je 0x1400b1d8d
cmp rcx, 0xffffffffffffffff
je 0x1400b1e1d
mov rax, qword [0x14019a020]
add qword [0x14019a070], rbx
mov qword [0x14019a028], rax
call fcn.1400b176c
mov rbx, qword [0x14019a030]
mov rax, qword [0x14018a008]
test byte [rax + 0x40], 1
je 0x1400b1e60
cmp byte [0x14019b319], 0
je 0x1400b1e35
test rbx, rbx
je 0x1400b1e60
mov rcx, qword [0x14019a028]
lea r8, [0x14019b320]
mov edx, ebx
call fcn.1400b5398
jmp 0x1400b1e59
lea rdx, [0x14015db52]
lea rcx, [0x14017d200]
call fcn.140063194
jmp 0x1400b1d8d
mov rdi, qword [0x14019a028]
test rbx, rbx
je 0x1400b1e60
call fcn.1400b4e0c
xor byte [rdi], al
movzx ecx, byte [rdi]
call fcn.1400b4f7c
inc rdi
sub rbx, 1
jne 0x1400b1e41
mov rbx, qword [0x14019a030]
mov rax, qword [0x14019a028]
dec rbx
mov qword [0x14019a030], rbx
movzx eax, byte [rax]
inc qword [0x14019a028]
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x1400b4e78
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x40
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x30], rax
mov rbx, rcx
mov rcx, rdx
call fcn.1400b4e2c
movsd xmm0, qword [rbx]
mov eax, dword [rbx + 8]
xor ebx, ebx
movsd qword [rsp + 0x20], xmm0
mov dword [rsp + 0x28], eax
mov ecx, dword [0x14019b180]
and ecx, 0xfffd
or ecx, 2
mov eax, ecx
xor eax, 1
imul eax, ecx
shr eax, 8
movzx ecx, al
movzx eax, byte [rsp + rbx + 0x20]
xor ecx, eax
mov byte [rsp + rbx + 0x20], cl
movzx ecx, cl
call fcn.1400b4f7c
inc rbx
cmp rbx, 0xc
jl 0x1400b4eaf
mov rax, qword [0x14018a008]
movzx ecx, byte [0x14019a09f]
test byte [rax + 0x40], 2
movzx eax, byte [0x14019a097]
cmovne ecx, eax
movzx eax, byte [rsp + 0x2b]
cmp eax, ecx
je 0x1400b4f12
or eax, 0xffffffff
jmp 0x1400b4f62
mov rbx, qword [0x14019a030]
mov rax, qword [0x140189fd8]
mov rdi, qword [0x14019a028]
movsxd rcx, ebx
cmp rcx, rax
cmovg ebx, eax
test ebx, ebx
je 0x1400b4f60
mov ecx, dword [0x14019b180]
and ecx, 0xfffd
or ecx, 2
mov eax, ecx
xor eax, 1
imul eax, ecx
shr eax, 8
xor byte [rdi], al
movzx ecx, byte [rdi]
call fcn.1400b4f7c
inc rdi
sub ebx, 1
jne 0x1400b4f34
xor eax, eax
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.1400eebd0
mov rbx, qword [rsp + 0x60]
add rsp, 0x40
pop rdi
ret
Function at 0x1400b4f7c
Capabilities:
Generate random numbers using the delphi lcg

Disassembly:
mov rdx, qword [0x14019b178]
lea r10, [0x140189bb0]
mov eax, ecx
mov r9d, ecx
xor rdx, rax
mov eax, dword [0x14019b178]
shr eax, 8
movzx r8d, dl
mov edx, dword [r10 + r8*4]
xor edx, eax
movzx eax, dl
add eax, dword [0x14019b17c]
imul ecx, eax, 0x8088405
mov dword [0x14019b178], edx
inc ecx
mov eax, ecx
mov dword [0x14019b17c], ecx
mov ecx, dword [0x14019b180]
shr rax, 0x18
xor rax, qword [0x14019b180]
movzx eax, al
shr ecx, 8
mov eax, dword [r10 + rax*4]
xor eax, ecx
mov dword [0x14019b180], eax
mov eax, r9d
ret
Function at 0x1400b5570
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
push r15
sub rsp, 0x48
mov rax, qword [0x14013f2b0]
xor rax, rsp
mov qword [rsp + 0x38], rax
mov eax, dword [r8 + 0xa0]
mov rsi, r9
mov r14, qword [rsp + 0xa0]
mov rdi, r8
mov ebp, edx
mov r15, rcx
cmp eax, 0xffffffff
je 0x1400b56d6
mov ebx, 4
cmp eax, 0x40
jbe 0x1400b55fc
lea rcx, [r8 + 0x40]
lea rdx, [rsp + 0x20]
call fcn.14008cd90
mov eax, dword [rsp + 0x20]
xor edx, edx
bswap eax
mov dword [rdi], eax
mov r8, rdi
lea rax, [rsp + 0x24]
sub r8, rax
mov ecx, dword [rsp + rdx*4 + 0x24]
lea rax, [r8 + rdx*4]
inc rdx
bswap ecx
mov dword [rsp + rax + 0x28], ecx
cmp rdx, rbx
jl 0x1400b55dc
mov dword [rdi + 0xa0], 0x14
test rsi, rsi
je 0x1400b563b
cmp byte [r14], 0
je 0x1400b563b
movups xmm0, xmmword [rsi]
lea rbx, [rdi + 0x40]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rsi + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rsi + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rsi + 0x30]
movups xmmword [rbx + 0x30], xmm1
movups xmm0, xmmword [rsi + 0x40]
movups xmmword [rbx + 0x40], xmm0
movups xmm1, xmmword [rsi + 0x50]
movups xmmword [rbx + 0x50], xmm1
jmp 0x1400b5692
mov ecx, dword [rdi + 0xa0]
mov r8d, 0x40
sub r8d, ecx
xor edx, edx
add rcx, rdi
call fcn.1400efdf0
mov rax, rdi
movdqa xmm1, xmmword [str.6666666666666666jjjjjjjjjjjjjjjj_]
movdqu xmm0, xmmword [rax]
pxor xmm1, xmm0
movdqu xmmword [rax], xmm1
lea rax, [rax + 0x10]
sub rbx, 1
jne 0x1400b5657
lea rbx, [rdi + 0x40]
mov rcx, rbx
call fcn.14008ceac
mov r8d, 0x40
mov rdx, rdi
mov rcx, rbx
call fcn.14008ced4
test rsi, rsi
je 0x1400b56cf
cmp byte [r14], 0
jne 0x1400b56cf
movups xmm0, xmmword [rbx]
movups xmmword [rsi], xmm0
movups xmm1, xmmword [rbx + 0x10]
movups xmmword [rsi + 0x10], xmm1
movups xmm0, xmmword [rbx + 0x20]
movups xmmword [rsi + 0x20], xmm0
movups xmm1, xmmword [rbx + 0x30]
movups xmmword [rsi + 0x30], xmm1
movups xmm0, xmmword [rbx + 0x40]
movups xmmword [rsi + 0x40], xmm0
movups xmm1, xmmword [rbx + 0x50]
movups xmmword [rsi + 0x50], xmm1
mov byte [r14], 1
or dword [rdi + 0xa0], 0xffffffff
test ebp, ebp
je 0x1400b56e9
mov r8, rbp
lea rcx, [rdi + 0x40]
mov rdx, r15
call fcn.14008ced4
mov rcx, qword [rsp + 0x38]
xor rcx, rsp
call fcn.1400eebd0
add rsp, 0x48
pop r15
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret