joyce8/EMBER2024-capa huggingface dataset:
Function at 0x180016290
Capabilities:
Create shortcut via ishelllink

Disassembly:
push rbp
push rsi
push rdi
lea rbp, [rsp - 0x3c0]
sub rsp, 0x4c0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x4f0], rbx
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp + 0x3b0], rax
mov rdi, rdx
mov rbx, rcx
lea rcx, [rsp + 0x30]
call fcn.180093600
nop
xor esi, esi
mov qword [rsp + 0x38], rsi
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, [0x18013f960]
xor edx, edx
lea r8d, [rsi + 1]
lea rcx, [0x18013f990]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x180016440
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x180016440
mov qword [rsp + 0x40], rsi
mov rax, qword [rcx]
lea r8, [rsp + 0x40]
lea rdx, [0x18013f980]
call qword [rax]
mov rcx, qword [rsp + 0x40]
test eax, eax
js 0x180016402
test rcx, rcx
je 0x180016402
mov rax, qword [rcx]
xor r8d, r8d
mov rdx, rbx
call qword [rax + 0x28]
mov ebx, eax
test eax, eax
js 0x1800163fb
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
xor edx, edx
mov r8d, 0x3e80001
call qword [rax + 0x98]
mov ebx, eax
test eax, eax
js 0x1800163fb
xor edx, edx
mov r8d, 0x250
lea rcx, [rsp + 0x50]
call fcn.1801023f0
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp + 0x1a0]
call fcn.1801023f0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x50]
mov r8d, 0x104
lea rdx, [rbp + 0x1a0]
call qword [rax + 0x18]
mov ebx, eax
test eax, eax
js 0x1800163fb
mov word [rbp + 0x3a8], si
lea rcx, [rbp + 0x1a0]
mov rax, 0xffffffffffffffff
nop
inc rax
cmp word [rcx + rax*2], si
jne 0x1800163e0
mov r8, rax
lea rdx, [rbp + 0x1a0]
mov rcx, rdi
call fcn.18000c0b0
mov rcx, qword [rsp + 0x40]
jmp 0x180016409
mov rbx, 0xffffffffffffffff
test rcx, rcx
je 0x180016419
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x40], rsi
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x18001642e
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x38], rsi
lea rcx, [rsp + 0x30]
call fcn.180093720
test ebx, ebx
js 0x18001644a
xor eax, eax
jmp 0x18001644f
lea rcx, [rsp + 0x30]
call fcn.180093720
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x3b0]
xor rcx, rsp
call fcn.1800e2d00
mov rbx, qword [rsp + 0x4f0]
add rsp, 0x4c0
pop rdi
pop rsi
pop rbp
ret
Function at 0x180019e00
Capabilities:
Check if file exists
Get file attributes
Query environment variable

Disassembly:
mov rax, rsp
push rdi
sub rsp, 0x470
mov qword [rsp + 0x38], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rsp + 0x460], rax
mov rsi, rdx
mov qword [rsp + 0x40], rdx
xor ebx, ebx
mov dword [rsp + 0x20], ebx
mov qword [rdx + 0x10], rbx
mov qword [rdx + 0x18], 7
mov word [rdx], bx
mov dword [rsp + 0x20], 1
lea rax, str._programfiles_x86__Internet_Exploreriexplore.exe
mov qword [rsp + 0x28], rax
lea rax, str._programfiles_Internet_Exploreriexplore.exe
mov qword [rsp + 0x30], rax
lea rdi, [rsp + 0x28]
xor edx, edx
mov r8d, 0x410
lea rcx, [rsp + 0x50]
call fcn.1801023f0
mov r8d, 0x208
lea rdx, [rsp + 0x50]
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
lea rcx, [rsp + 0x50]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
jne 0x180019eb3
inc ebx
add rdi, 8
cmp ebx, 2
jb 0x180019e70
jmp 0x180019ed8
lea rax, [rsp + 0x50]
mov r8, 0xffffffffffffffff
nop
inc r8
cmp word [rax + r8*2], 0
jne 0x180019ec0
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.18000c0b0
mov rax, rsi
mov rcx, qword [rsp + 0x460]
xor rcx, rsp
call fcn.1800e2d00
lea r11, [rsp + 0x470]
mov rbx, qword [r11 + 0x10]
mov rsi, qword [r11 + 0x20]
mov rsp, r11
pop rdi
ret
Function at 0x18001bbb0
Capabilities:
Create shortcut via ishelllink

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x5d0]
sub rsp, 0x6d0
mov qword [rsp + 0x48], 0xfffffffffffffffe
mov qword [rsp + 0x700], rbx
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp + 0x5c0], rax
mov rsi, r9
mov r14, r8
mov rbx, rdx
lea rcx, [rsp + 0x30]
call fcn.180093600
nop
xor r15d, r15d
mov qword [rsp + 0x38], r15
lea rax, [rsp + 0x38]
mov qword [rsp + 0x20], rax
lea r9, [0x18013f960]
xor edx, edx
lea r8d, [r15 + 1]
lea rcx, [0x18013f990]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x18001bdd8
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x18001bdd8
mov qword [rsp + 0x40], r15
mov rax, qword [rcx]
lea r8, [rsp + 0x40]
lea rdx, [0x18013f980]
call qword [rax]
mov edi, eax
test eax, eax
js 0x18001bd9c
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x18001bdb1
cmp qword [rbx + 0x18], 8
jb 0x18001bc77
mov rbx, qword [rbx]
mov rax, qword [rcx]
xor r8d, r8d
mov rdx, rbx
call qword [rax + 0x28]
mov edi, eax
test eax, eax
js 0x18001bd9c
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
xor edx, edx
mov r8d, 0x3e80001
call qword [rax + 0x98]
mov edi, eax
test eax, eax
js 0x18001bd9c
xor edx, edx
mov r8d, 0x250
lea rcx, [rsp + 0x50]
call fcn.1801023f0
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp + 0x1a0]
call fcn.1801023f0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
mov dword [rsp + 0x20], 2
lea r9, [rsp + 0x50]
mov r8d, 0x104
lea rdx, [rbp + 0x1a0]
call qword [rax + 0x18]
mov edi, eax
test eax, eax
js 0x18001bd9c
mov word [rbp + 0x3a8], r15w
lea rax, [rbp + 0x1a0]
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp word [rax + r8*2], r15w
jne 0x18001bd20
lea rdx, [rbp + 0x1a0]
mov rcx, r14
call fcn.18000c0b0
xor edx, edx
mov r8d, 0x20a
lea rcx, [rbp + 0x3b0]
call fcn.1801023f0
mov rcx, qword [rsp + 0x38]
mov rax, qword [rcx]
mov r8d, 0x104
lea rdx, [rbp + 0x3b0]
call qword [rax + 0x50]
mov edi, eax
test eax, eax
js 0x18001bd9c
mov word [rbp + 0x5b8], r15w
lea rax, [rbp + 0x3b0]
nop word [rax + rax]
inc rbx
cmp word [rax + rbx*2], r15w
jne 0x18001bd80
mov r8, rbx
lea rdx, [rbp + 0x3b0]
mov rcx, rsi
call fcn.18000c0b0
mov rcx, qword [rsp + 0x40]
test rcx, rcx
je 0x18001bdb1
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x40], r15
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x18001bdc6
mov rax, qword [rcx]
call qword [rax + 0x10]
mov qword [rsp + 0x38], r15
lea rcx, [rsp + 0x30]
call fcn.180093720
test edi, edi
js 0x18001bde2
xor eax, eax
jmp 0x18001bde7
lea rcx, [rsp + 0x30]
call fcn.180093720
mov eax, 0xffffffff
mov rcx, qword [rbp + 0x5c0]
xor rcx, rsp
call fcn.1800e2d00
mov rbx, qword [rsp + 0x700]
add rsp, 0x6d0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
Function at 0x180020bd0
Capabilities:
Read file on windows

Disassembly:
mov rax, rsp
push rbp
push rdi
push r12
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0x90
mov qword [rbp - 0x31], 0xfffffffffffffffe
mov qword [rax + 0x18], rbx
mov qword [rax + 0x20], rsi
movaps xmmword [rax - 0x38], xmm6
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp + 0x1f], rax
movzx ebx, r8b
mov r15, rdx
mov rdi, rcx
mov qword [rbp - 0x29], rcx
xor r12d, r12d
mov r14d, r12d
mov dword [rbp - 0x35], r12d
test rdx, rdx
jne 0x180020c41
mov qword [rcx + 0x10], r12
mov qword [rcx + 0x18], 7
mov word [rcx], r12w
mov dword [rbp - 0x35], 1
jmp 0x180020e11
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x11], xmm0
movdqa xmm6, xmmword [0x180163640]
movdqu xmmword [rbp - 0x11], xmm6
mov word [rbp - 0x21], r12w
mov word [rbp - 0x39], r12w
mov r9, r15
mov edx, 2
lea r8d, [rdx - 1]
lea rcx, [rbp - 0x39]
call fcn.180108f04
cmp rax, 1
jne 0x180020de2
movzx ecx, word [rbp - 0x39]
inc rcx
test bl, bl
je 0x180020cf4
mov eax, 2
mul rcx
mov rbx, 0xffffffffffffffff
cmovo rax, rbx
mov rcx, rax
call fcn.1800e33e8
mov rsi, rax
movzx ecx, word [rbp - 0x39]
mov word [rax + rcx*2], r12w
movzx r8d, word [rbp - 0x39]
mov r9, r15
lea edx, [rbx + 3]
mov rcx, rax
call fcn.180108f04
movzx ecx, word [rbp - 0x39]
cmp rax, rcx
jne 0x180020dd5
inc rbx
cmp word [rsi + rbx*2], 0
jne 0x180020cd1
mov r8, rbx
mov rdx, rsi
lea rcx, [rbp - 0x21]
call fcn.18000c0b0
movdqu xmm6, xmmword [rbp - 0x11]
jmp 0x180020dd5
call fcn.1800e33e8
mov rsi, rax
movzx ecx, word [rbp - 0x39]
mov byte [rcx + rax], 0
movzx r8d, word [rbp - 0x39]
mov r9, r15
mov edx, 1
mov rcx, rax
call fcn.180108f04
movzx ecx, word [rbp - 0x39]
cmp rax, rcx
jne 0x180020dd5
xor r9d, r9d
lea r8, [r9 - 1]
mov rdx, rsi
lea rcx, [rbp - 1]
call fcn.18009eb80
mov rbx, rax
mov dword [rbp - 0x35], 2
lea rax, [rbp - 0x21]
cmp rax, rbx
je 0x180020d75
lea rcx, [rbp - 0x21]
call fcn.18000c040
movups xmm0, xmmword [rbx]
movups xmmword [rbp - 0x21], xmm0
movups xmm6, xmmword [rbx + 0x10]
movdqu xmmword [rbp - 0x11], xmm6
mov qword [rbx + 0x10], r12
mov qword [rbx + 0x18], 7
mov word [rbx], r12w
mov r14d, 2
and r14d, 0xfffffffd
mov dword [rbp - 0x35], r14d
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x180020dc3
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180020dbe
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180020e41
call fcn.1800e2d24
movdqa xmm0, xmmword [0x180163640]
movdqu xmmword [rbp + 0xf], xmm0
mov word [rbp - 1], r12w
test rsi, rsi
je 0x180020de2
mov rcx, rsi
call fcn.1800e2d24
movups xmm0, xmmword [rbp - 0x21]
movups xmmword [rdi], xmm0
movups xmmword [rdi + 0x10], xmm6
movdqa xmm0, xmmword [0x180163640]
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r12w
or r14d, 1
mov dword [rbp - 0x35], r14d
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r12w
mov rax, rdi
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1800e2d00
lea r11, [rsp + 0x90]
mov rbx, qword [r11 + 0x40]
mov rsi, qword [r11 + 0x48]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
call fcn.180107ee8
int3
Function at 0x180025500
Capabilities:
Read file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
push rdi
sub rsp, 0x20
mov edi, r8d
mov rbx, r9
mov rsi, rdx
mov rbp, rcx
test rcx, rcx
je 0x18002555d
test rdx, rdx
je 0x18002555d
test rbx, rbx
je 0x18002555d
mov dword [r9], 0
test r8d, r8d
je 0x180025559
call fcn.1801092e0
mov r8d, edi
mov r9, rbp
mov edx, 1
mov rcx, rsi
call fcn.180108f04
cmp eax, edi
jne 0x18002555d
mov dword [rbx], eax
xor eax, eax
jmp 0x180025562
mov eax, 0xffffffff
mov rbx, qword [rsp + 0x30]
mov rbp, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x40]
add rsp, 0x20
pop rdi
ret
Function at 0x18003ce00
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rbx
movzx r10d, byte [rcx + 0x100]
mov r11, rdx
movzx ebx, byte [rcx + 0x101]
test r8d, r8d
je 0x18003ce6d
mov qword [rsp + 0x10], rdi
mov edi, r8d
nop dword [rax]
nop word [rax + rax]
inc r10b
lea r11, [r11 + 1]
movzx r8d, r10b
movzx r9d, byte [r8 + rcx]
add bl, r9b
movzx edx, bl
movzx eax, byte [rdx + rcx]
mov byte [r8 + rcx], al
mov byte [rdx + rcx], r9b
add r9b, byte [r8 + rcx]
movzx eax, r9b
movzx edx, byte [rax + rcx]
xor byte [r11 - 1], dl
sub rdi, 1
jne 0x18003ce30
mov rdi, qword [rsp + 0x10]
mov byte [rcx + 0x101], r10b
mov byte [rcx + 0x100], r10b
pop rbx
ret
Function at 0x180048700
Capabilities:
Write file on windows

Disassembly:
mov rax, rsp
push rbp
mov rbp, rsp
sub rsp, 0x80
mov qword [rbp - 0x40], 0xfffffffffffffffe
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rdi
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp - 8], rax
mov rbx, rdx
call qword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [rbx + 0x10], eax
xor ecx, ecx
call fcn.18010afe8
mov qword [rbx + 8], rax
mov rcx, qword [rbx]
test rcx, rcx
je 0x1800488ab
mov qword [rbp - 0x10], rax
lea rdx, [rbp - 0x38]
call fcn.1800444d0
nop
cmp qword [rbp - 0x28], 0
jne 0x1800487ab
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x1800487a4
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x18004879f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800488d8
call fcn.1800e2d24
xor ebx, ebx
jmp 0x18004889b
lea rcx, [rbp - 0x38]
cmp qword [rbp - 0x20], 8
cmovae rcx, qword [rbp - 0x38]
xor ebx, ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 4
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileW]
mov rdi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x18004885f
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [rbp - 0x18], ebx
mov qword [rsp + 0x20], rbx
lea r9, [rbp - 0x18]
lea r8d, [rbx + 8]
lea rdx, [rbp - 0x10]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
nop
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x18004889b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180048896
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800488d2
jmp 0x180048896
mov rdx, qword [rbp - 0x20]
cmp rdx, 8
jb 0x18004889b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x38]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180048896
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800488cc
call fcn.1800e2d24
mov qword [rbp - 0x28], rbx
mov qword [rbp - 0x20], 7
mov word [rbp - 0x38], bx
mov rcx, qword [rbp - 8]
xor rcx, rsp
call fcn.1800e2d00
lea r11, [rsp + 0x80]
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x20]
mov rsp, r11
pop rbp
ret
call fcn.180107ee8
int3
call fcn.180107ee8
int3
call fcn.180107ee8
int3
Function at 0x180049e30
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rdi
sub rsp, 0x80
mov qword [rsp + 0x30], 0xfffffffffffffffe
mov qword [rsp + 0xa0], rbx
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rsp + 0x70], rax
mov rdi, rdx
mov r8, rcx
mov rax, qword [rcx + 8]
cmp qword [rcx], rax
je 0x180049fcb
mov dword [rsp + 0x50], 0x2d2d4352
mov dword [rsp + 0x54], 0xf7babac9
mov dword [rsp + 0x58], 0x61726f43
mov dword [rsp + 0x5c], 0x776f7242
mov dword [rsp + 0x60], 0x2d756e45
mov dword [rsp + 0x64], 0x61746144
mov dword [rsp + 0x68], 0x37313630
mov dword [rsp + 0x6c], 0x30313032
movdqa xmm2, xmmword [0x180163660]
xor eax, eax
mov ecx, 1
movd xmm3, ecx
lea rcx, [rsp + 0x50]
nop dword [rax]
nop dword [rax + rax]
movd xmm1, eax
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
movdqu xmm0, xmmword [rcx]
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx], xmm1
add eax, 4
lea rcx, [rcx + 0x10]
cmp eax, 8
jl 0x180049ed0
mov rax, qword [rdx]
mov qword [rdx + 8], rax
xor eax, eax
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
xor ebx, ebx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov rdx, qword [r8]
mov rax, qword [r8 + 8]
sub rax, rdx
test rdx, rdx
je 0x180049f83
lea r9, [rsp + 0x38]
mov r8d, eax
lea rcx, [rsp + 0x50]
call fcn.1800556a0
mov rbx, qword [rsp + 0x38]
test al, al
je 0x180049f83
cmp rbx, qword [rsp + 0x40]
je 0x180049f83
mov rdx, rdi
mov ecx, 0xa
call fcn.180054f30
mov ecx, dword [rsp + 0x40]
sub ecx, ebx
mov rdx, rdi
call fcn.180054f30
mov r9, qword [rsp + 0x40]
mov r8, rbx
mov rdx, qword [rdi + 8]
mov rcx, rdi
call fcn.18004a2c0
nop
test rbx, rbx
je 0x180049fcb
mov rdx, qword [rsp + 0x48]
sub rdx, rbx
mov rax, rbx
cmp rdx, 0x1000
jb 0x180049fb1
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180049fe9
mov rcx, rbx
call fcn.1800e2d24
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x38], xmm0
mov qword [rsp + 0x48], 0
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.1800e2d00
mov rbx, qword [rsp + 0xa0]
add rsp, 0x80
pop rdi
ret
call fcn.180107ee8
int3
Function at 0x180049ff0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x50
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rax, qword [rcx]
mov r10, rcx
mov rcx, qword [rcx + 8]
mov rdi, r8
mov rbx, rdx
cmp rax, rcx
je 0x18004a1f5
mov rdx, qword [rdx]
sub rcx, rax
cmp rdx, rcx
jae 0x18004a1f5
lea rax, [rdx + 5]
cmp rax, rcx
ja 0x18004a1f5
lea r8, [rdx + 1]
mov qword [rbx], r8
mov rax, qword [r10]
cmp byte [rdx + rax], 2
jne 0x18004a1f5
lea rcx, [r8 + 1]
mov qword [rbx], rcx
lea rdx, [rcx + 1]
mov rax, qword [r10]
movzx r9d, byte [rax + r8]
lea r8, [rdx + 1]
mov qword [rbx], rdx
mov rax, qword [r10]
shl r9d, 0x18
movzx ecx, byte [rcx + rax]
mov qword [rbx], r8
mov rax, qword [r10]
shl ecx, 0x10
or r9d, ecx
movzx ecx, byte [rax + rdx]
lea rdx, [r8 + 1]
mov qword [rbx], rdx
mov r11, qword [r10]
shl ecx, 8
or r9d, ecx
movzx eax, byte [r11 + r8]
or r9d, eax
cmp r9d, 0xa
jne 0x18004a1f5
mov rcx, qword [r10 + 8]
lea rax, [rdx + 5]
sub rcx, r11
cmp rax, rcx
ja 0x18004a1f5
lea r8, [rdx + 1]
mov qword [rbx], r8
mov rax, qword [r10]
cmp byte [rdx + rax], 2
jne 0x18004a1f5
lea rcx, [r8 + 1]
mov qword [rbx], rcx
lea rdx, [rcx + 1]
mov rax, qword [r10]
movzx r11d, byte [rax + r8]
lea r8, [rdx + 1]
mov qword [rbx], rdx
mov rax, qword [r10]
shl r11d, 0x18
movzx ecx, byte [rax + rcx]
mov qword [rbx], r8
mov rax, qword [r10]
shl ecx, 0x10
or r11d, ecx
movzx ecx, byte [rax + rdx]
shl ecx, 8
or r11d, ecx
lea rcx, [r8 + 1]
mov qword [rbx], rcx
mov rdx, qword [r10]
movzx eax, byte [rdx + r8]
or r11d, eax
mov rax, qword [r10 + 8]
sub rax, rcx
mov esi, r11d
sub rax, rdx
cmp rsi, rax
ja 0x18004a1f5
movdqa xmm2, xmmword [0x180163660]
mov ecx, 1
mov dword [rsp + 0x20], 0x2d2d4352
xor eax, eax
mov dword [rsp + 0x24], 0xf7babac9
mov dword [rsp + 0x28], 0x61726f43
movd xmm3, ecx
lea rcx, [rsp + 0x20]
mov dword [rsp + 0x2c], 0x776f7242
mov dword [rsp + 0x30], 0x2d756e45
mov dword [rsp + 0x34], 0x61746144
mov dword [rsp + 0x38], 0x37313630
mov dword [rsp + 0x3c], 0x30313032
nop word [rax + rax]
movdqu xmm0, xmmword [rcx]
lea rcx, [rcx + 0x10]
movd xmm1, eax
add eax, 4
pshufd xmm1, xmm1, 0
paddd xmm1, xmm2
pslld xmm0, xmm3
paddd xmm1, xmm0
movdqu xmmword [rcx - 0x10], xmm1
cmp eax, 8
jl 0x18004a190
mov rax, qword [rdi]
mov qword [rdi + 8], rax
mov rcx, qword [rbx]
mov rax, qword [r10]
lea rdx, [rcx + rax]
test rdx, rdx
jne 0x18004a1da
xor al, al
add rcx, rsi
mov qword [rbx], rcx
jmp 0x18004a1f7
mov r9, rdi
lea rcx, [rsp + 0x20]
mov r8d, r11d
call fcn.180055b10
mov rcx, qword [rbx]
add rcx, rsi
mov qword [rbx], rcx
jmp 0x18004a1f7
xor al, al
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.1800e2d00
add rsp, 0x50
pop rdi
pop rsi
pop rbx
ret
Function at 0x180086c40
Capabilities:
Contain obfuscated stackstrings

Disassembly:
mov rax, rsp
push rbp
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
mov qword [rbp - 0x21], 0xfffffffffffffffe
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp + 0x3f], rax
mov rsi, rcx
xor edi, edi
mov rcx, qword [rcx]
test rcx, rcx
je 0x180086df2
lea rdx, str.RegOpenKeyExW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
lea rdx, str.RegQueryValueExW
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
lea rdx, [0x18015de70]
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rbx, rax
test r15, r15
je 0x180086df2
test r14, r14
je 0x180086df2
test rax, rax
je 0x180086df2
mov dword [rbp - 9], 0x65004b
mov dword [rbp - 5], 0x620079
mov dword [rbp - 1], 0x61006f
mov dword [rbp + 3], 0x640072
mov dword [rbp + 7], 0x4c0020
mov dword [rbp + 0xb], 0x790061
mov dword [rbp + 0xf], 0x75006f
mov dword [rbp + 0x13], 0x5c0074
mov dword [rbp + 0x17], 0x720050
mov dword [rbp + 0x1b], 0x6c0065
mov dword [rbp + 0x1f], 0x61006f
mov dword [rbp + 0x23], 0x64
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x29], rdi
mov qword [rbp - 0x19], rdi
mov edx, 0x20019
lea rcx, [rbp - 0x29]
call fcn.1800aa870
mov rcx, rax
lea rax, [rbp - 0x19]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp - 9]
call r15
test eax, eax
jne 0x180086dba
xor eax, eax
mov qword [rbp + 0x27], rax
mov qword [rbp + 0x2f], rax
mov dword [rbp + 0x37], eax
mov dword [rbp - 0x11], 0x14
lea rax, [rbp - 0x11]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0x27]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, [0x180157de8]
mov rcx, qword [rbp - 0x19]
call r14
test eax, eax
jne 0x180086db4
xor edx, edx
lea r8d, [rdi + 0x10]
lea rcx, [rbp + 0x27]
call fcn.18010ac4c
mov edi, eax
mov rcx, qword [rbp - 0x19]
call rbx
mov rbx, qword [rbp - 0x29]
test rbx, rbx
je 0x180086dd0
lea rcx, [rbp - 0x29]
call fcn.1800aaa20
mov rbx, qword [rbp - 0x29]
test edi, edi
je 0x180086de0
mov edx, edi
mov rcx, rsi
call fcn.180086e20
mov edi, eax
test rbx, rbx
je 0x180086dee
lea rcx, [rbp - 0x29]
call fcn.1800aaa20
mov eax, edi
jmp 0x180086df4
xor eax, eax
mov rcx, qword [rbp + 0x3f]
xor rcx, rsp
call fcn.1800e2d00
lea r11, [rsp + 0xa0]
mov rbx, qword [r11 + 0x28]
mov rsi, qword [r11 + 0x30]
mov rdi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
Function at 0x180086e20
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x37]
sub rsp, 0xd0
mov qword [rbp - 0x61], 0xfffffffffffffffe
mov qword [rsp + 0x110], rbx
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rbp + 0x27], rax
mov ebx, edx
mov rdi, rcx
mov rcx, qword [rcx]
test rcx, rcx
je 0x18008703e
lea rdx, str.RegOpenKeyExW
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r14, rax
lea rdx, str.RegQueryValueExW
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rsi, rax
lea rdx, [0x18015de70]
mov rcx, qword [rdi]
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov rdi, rax
test r14, r14
je 0x18008703e
test rsi, rsi
je 0x18008703e
test rax, rax
je 0x18008703e
mov dword [rbp - 0x29], 0x65004b
mov dword [rbp - 0x25], 0x620079
mov dword [rbp - 0x21], 0x61006f
mov dword [rbp - 0x1d], 0x640072
mov dword [rbp - 0x19], 0x4c0020
mov dword [rbp - 0x15], 0x790061
mov dword [rbp - 0x11], 0x75006f
mov dword [rbp - 0xd], 0x5c0074
mov dword [rbp - 9], 0x750053
mov dword [rbp - 5], 0x730062
mov dword [rbp - 1], 0x690074
mov dword [rbp + 3], 0x750074
mov dword [rbp + 7], 0x650074
mov dword [rbp + 0xb], 0x73
xor r15d, r15d
mov qword [rbp - 0x69], r15
mov qword [rbp - 0x69], r15
mov qword [rbp - 0x59], r15
mov edx, 0x20019
lea rcx, [rbp - 0x69]
call fcn.1800aa870
mov rcx, rax
lea rax, [rbp - 0x59]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, [rbp - 0x29]
call r14
test eax, eax
je 0x18008702e
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x39], xmm0
movdqa xmm1, xmmword [0x180163640]
movdqu xmmword [rbp - 0x39], xmm1
mov word [rbp - 0x49], r15w
mov r8d, ebx
lea rdx, str._08x
lea rcx, [rbp - 0x49]
call fcn.180094a00
xor eax, eax
mov qword [rbp + 0xf], rax
mov qword [rbp + 0x17], rax
mov dword [rbp + 0x1f], eax
mov dword [rbp - 0x51], 0x14
lea rdx, [rbp - 0x49]
cmp qword [rbp - 0x31], 8
cmovae rdx, qword [rbp - 0x49]
lea rax, [rbp - 0x51]
mov qword [rsp + 0x28], rax
lea rax, [rbp + 0xf]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov rcx, qword [rbp - 0x59]
call rsi
test eax, eax
jne 0x180086fd9
xor edx, edx
lea r8d, [r15 + 0x10]
lea rcx, [rbp + 0xf]
call fcn.18010ac4c
mov ebx, eax
mov rcx, qword [rbp - 0x59]
call rdi
nop
mov rdx, qword [rbp - 0x31]
cmp rdx, 8
jb 0x18008701c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x49]
mov rax, rcx
cmp rdx, 0x1000
jb 0x180087017
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x180087063
call fcn.1800e2d24
movdqa xmm0, xmmword [0x180163640]
movdqu xmmword [rbp - 0x39], xmm0
mov word [rbp - 0x49], r15w
cmp qword [rbp - 0x69], 0
je 0x18008703e
lea rcx, [rbp - 0x69]
call fcn.1800aaa20
mov eax, ebx
mov rcx, qword [rbp + 0x27]
xor rcx, rsp
call fcn.1800e2d00
mov rbx, qword [rsp + 0x110]
add rsp, 0xd0
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret
call fcn.180107ee8
nop
int3
Function at 0x180087070
Capabilities:
Check os version

Disassembly:
sub rsp, 0x158
mov rax, qword [0x1801a8080]
xor rax, rsp
mov qword [rsp + 0x140], rax
xor edx, edx
mov dword [rsp + 0x20], 0x114
mov r8d, 0x110
lea rcx, [rsp + 0x24]
call fcn.1801023f0
lea rcx, [rsp + 0x20]
call qword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x1800870d3
cmp dword [rsp + 0x24], 6
jb 0x1800870d3
mov al, 1
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.1800e2d00
add rsp, 0x158
ret
xor al, al
mov rcx, qword [rsp + 0x140]
xor rcx, rsp
call fcn.1800e2d00
add rsp, 0x158
ret