joyce8/EMBER2024-capa huggingface dataset:
Function at 0x1401741b0
Capabilities:
Create thread

Disassembly:
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r12, r8
mov rbx, rdx
mov r14, rcx
mov rdx, qword [rcx]
mov rdi, rbx
sub rdi, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 4
movabs r9, 0xfffffffffffffff
cmp rax, r9
je 0x1401743ac
lea r8, [rax + 1]
mov qword [rsp + 0xa8], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 4
mov rdx, rcx
shr rdx, 1
mov rax, r9
sub rax, rdx
cmp rcx, rax
jbe 0x1401742ee
mov rsi, r9
mov qword [rsp + 0x98], r9
mov rcx, rsi
shl rcx, 4
call fcn.140004180
mov r15, rax
mov qword [rsp + 0x38], rax
and rdi, 0xfffffffffffffff0
lea r13, [rdi + rax]
lea rdi, [r13 + 0x10]
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x90], rdi
mov ecx, 0x30
call fcn.140347330
movups xmm0, xmmword [r12]
movups xmmword [rax], xmm0
movups xmm1, xmmword [r12 + 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [r12 + 0x20]
movups xmmword [rax + 0x20], xmm0
mov qword [rsp + 0x40], rax
lea r12, [r13 + 8]
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140174490]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [r13], rax
test rax, rax
je 0x140174399
mov qword [rsp + 0x90], r13
mov rcx, qword [r14 + 8]
mov rax, qword [r14]
mov rdx, r15
cmp rbx, rcx
jne 0x140174312
cmp rax, rcx
je 0x140174370
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rcx
jne 0x1401742d0
jmp 0x140174370
lea rax, [rdx + rcx]
mov rsi, r8
cmp rax, r8
cmovae rsi, rax
mov qword [rsp + 0x98], rsi
cmp rsi, r9
ja 0x1401743b2
jmp 0x140174227
cmp rax, rbx
je 0x14017433d
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rbx
jne 0x140174320
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x90], r15
cmp rbx, rcx
je 0x140174370
sub rdi, rbx
nop dword [rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rbx]
movups xmmword [rbx], xmm0
movups xmmword [rdi + rbx], xmm1
add rbx, 0x10
cmp rbx, rcx
jne 0x140174350
nop word [rax + rax]
mov r9, rsi
mov r8, qword [rsp + 0xa8]
mov rdx, r15
mov rcx, r14
call fcn.1401743c0
mov rax, r13
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [r12], 0
mov ecx, 6
call fcn.140345b54
nop
call fcn.140014330
int3
call fcn.140003f70
int3
Function at 0x140174700
Capabilities:
Hash data using sha512

Disassembly:
mov qword [rsp + 0x18], rbx
push rdi
sub rsp, 0x70
mov rax, qword [0x1404f1628]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rdi, rdx
mov rbx, rcx
test rcx, rcx
je 0x1401747f3
lea rax, [rdx - 1]
cmp rax, 0x3f
ja 0x1401747da
xorps xmm0, xmm0
mov byte [rsp + 0x20], dil
xor edx, edx
mov word [rsp + 0x21], 0x100
mov r8d, 0xf0
mov byte [rsp + 0x23], 1
movups xmmword [rsp + 0x32], xmm0
mov dword [rsp + 0x24], 0
movups xmmword [rsp + 0x42], xmm0
mov word [rsp + 0x30], 0
call fcn.14034a050
movaps xmm0, xmmword [0x14045b210]
mov rax, qword [rsp + 0x20]
movups xmmword [rbx], xmm0
movaps xmm1, xmmword [0x14045b220]
movups xmmword [rbx + 0x10], xmm1
movaps xmm0, xmmword [0x14045b230]
movups xmmword [rbx + 0x20], xmm0
movaps xmm1, xmmword [0x14045b240]
movups xmmword [rbx + 0x30], xmm1
xor qword [rbx], rax
mov rax, qword [rsp + 0x30]
xor qword [rbx + 0x10], rax
mov rax, qword [rsp + 0x38]
xor qword [rbx + 0x18], rax
mov rax, qword [rsp + 0x40]
xor qword [rbx + 0x20], rax
mov rax, qword [rsp + 0x48]
xor qword [rbx + 0x28], rax
xor qword [rbx + 8], 0
movzx eax, dil
mov dword [rbx + 0xe4], eax
xor eax, eax
jmp 0x1401747f8
cmp byte [rcx + 0xe8], 0
je 0x1401747eb
mov qword [rcx + 0x58], 0xffffffffffffffff
mov qword [rcx + 0x50], 0xffffffffffffffff
mov eax, 0xffffffff
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140347310
mov rbx, qword [rsp + 0x90]
add rsp, 0x70
pop rdi
ret
Function at 0x140178d50
Capabilities:
Decrypt data using aes via x86 extensions
Encrypt data using aes via x86 extensions

Disassembly:
sub rsp, 0x28
mov rax, qword [rcx + 0xab0]
mov ecx, dword [0x14078e798]
movdqa xmm4, xmmword [0x1404b6a60]
add rcx, rax
movdqa xmm5, xmmword [0x1404b6910]
movdqu xmm0, xmmword [rdx]
movdqu xmm1, xmmword [rdx + 0x10]
movdqu xmm2, xmmword [rdx + 0x20]
movdqu xmm3, xmmword [rdx + 0x30]
movaps xmmword [rsp + 0x10], xmm6
movdqa xmm6, xmmword [0x1404b6950]
movaps xmmword [rsp], xmm7
movdqa xmm7, xmmword [0x1404b6970]
cmp rax, rcx
jae 0x140178de0
nop word [rax + rax]
aesdec xmm0, xmm4
aesenc xmm1, xmm5
aesdec xmm2, xmm6
aesenc xmm3, xmm7
movdqu xmmword [rax], xmm0
movdqu xmmword [rax + 0x10], xmm1
movdqu xmmword [rax + 0x20], xmm2
movdqu xmmword [rax + 0x30], xmm3
add rax, 0x40
cmp rax, rcx
jb 0x140178db0
movaps xmm6, xmmword [rsp + 0x10]
movaps xmm7, xmmword [rsp]
movdqu xmmword [rdx], xmm0
movdqu xmmword [rdx + 0x10], xmm1
movdqu xmmword [rdx + 0x20], xmm2
movdqu xmmword [rdx + 0x30], xmm3
add rsp, 0x28
ret
Function at 0x14017c2a0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r13, r9
mov rbx, rdx
mov r14, rcx
mov rdx, qword [rcx]
mov rdi, rbx
sub rdi, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 4
movabs r9, 0xfffffffffffffff
cmp rax, r9
je 0x14017c4d9
lea r8, [rax + 1]
mov qword [rsp + 0x30], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 4
mov rdx, rcx
shr rdx, 1
mov rax, r9
sub rax, rdx
cmp rcx, rax
jbe 0x14017c41e
mov rsi, r9
mov qword [rsp + 0x98], r9
mov rcx, rsi
shl rcx, 4
call fcn.140004180
mov r15, rax
mov qword [rsp + 0x40], rax
and rdi, 0xfffffffffffffff0
lea r12, [rdi + rax]
lea rdi, [r12 + 0x10]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x90], rdi
mov ecx, 0x28
call fcn.140347330
mov r9, rax
mov rax, qword [rsp + 0xc8]
mov ecx, dword [rax]
mov dword [r9], ecx
mov rax, qword [rsp + 0xc0]
mov ecx, dword [rax]
mov dword [r9 + 4], ecx
mov rax, qword [rsp + 0xb8]
mov ecx, dword [rax]
mov dword [r9 + 8], ecx
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rax]
mov qword [r9 + 0x10], rcx
mov rax, qword [r13]
mov qword [r9 + 0x18], rax
mov rax, qword [rsp + 0xa0]
mov qword [r9 + 0x20], rax
mov qword [rsp + 0x48], r9
lea r13, [r12 + 8]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0
lea r8, [0x14017c510]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [r12], rax
test rax, rax
je 0x14017c4c6
mov qword [rsp + 0x90], r12
mov rcx, qword [r14 + 8]
mov rax, qword [r14]
mov rdx, r15
cmp rbx, rcx
jne 0x14017c442
cmp rax, rcx
je 0x14017c4a0
nop dword [rax]
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rcx
jne 0x14017c400
jmp 0x14017c4a0
lea rax, [rdx + rcx]
mov rsi, r8
cmp rax, r8
cmovae rsi, rax
mov qword [rsp + 0x98], rsi
cmp rsi, r9
ja 0x14017c4df
jmp 0x14017c318
cmp rax, rbx
je 0x14017c46d
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rbx
jne 0x14017c450
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x90], r15
cmp rbx, rcx
je 0x14017c4a0
sub rdi, rbx
nop dword [rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rbx]
movups xmmword [rbx], xmm0
movups xmmword [rbx + rdi], xmm1
add rbx, 0x10
cmp rbx, rcx
jne 0x14017c480
nop word [rax + rax]
mov r9, rsi
mov r8, qword [rsp + 0x30]
mov rdx, r15
mov rcx, r14
call fcn.1401743c0
mov rax, r12
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [r13], 0
mov ecx, 6
call fcn.140345b54
nop
call fcn.140014330
int3
call fcn.140003f70
int3
Function at 0x14017c770
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 8], rcx
push rbp
push rsi
push rdi
sub rsp, 0x40
mov rsi, rcx
lea rax, vtable.xmrig::RxQueue.0
mov qword [rcx], rax
mov qword [rcx + 8], rdx
xor ebp, ebp
mov qword [rcx + 0x10], rbp
mov dword [rcx + 0x18], ebp
mov qword [rcx + 0x20], rbp
mov qword [rcx + 0x28], rbp
mov qword [rcx + 0x30], rbp
mov dword [rcx + 0x38], ebp
add rcx, 0x40
call fcn.14034679c
nop
lea rcx, [rsi + 0x88]
lea edx, [rbp + 2]
call fcn.140345df4
nop
mov qword [rsi + 0xd8], rbp
mov qword [rsi + 0xe0], rbp
xorps xmm0, xmm0
movups xmmword [rsi + 0xe8], xmm0
mov qword [rsi + 0xf8], rbp
mov qword [rsi + 0x100], rbp
mov qword [rsi + 0x108], rbp
lea ecx, [rbp + 0x18]
call fcn.140347330
mov rdi, rax
mov qword [rsp + 0x68], rax
xorps xmm0, xmm0
movups xmmword [rax], xmm0
mov dword [rax + 8], 1
mov dword [rax + 0xc], 1
lea rax, vtable.std::_Ref_count_obj2_class_xmrig::Async_.0
mov qword [rdi], rax
lea rbx, [rdi + 0x10]
mov rdx, rsi
mov rcx, rbx
call fcn.140015e90
nop
mov qword [rsi + 0xd8], rbx
mov rbx, qword [rsi + 0xe0]
mov qword [rsi + 0xe0], rdi
test rbx, rbx
je 0x14017c875
mov edi, 0xffffffff
mov eax, edi
lock xadd dword [rbx + 8], eax
cmp eax, 1
jne 0x14017c875
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax]
lock xadd dword [rbx + 0xc], edi
cmp edi, 1
jne 0x14017c875
mov rax, qword [rbx]
mov rcx, rbx
call qword [rax + reloc.WS2_32.dll_htonl]
mov ecx, reloc.WS2_32.dll_recv
call fcn.140347330
mov qword [rax], rsi
lea rcx, [0x14017cd90]
mov qword [rax + 8], rcx
mov qword [rsp + 0x68], rax
lea rcx, [rsp + 0x38]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], ebp
mov r9, rax
lea r8, [0x140070e90]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [rsp + 0x30], rax
test rax, rax
je 0x14017c8e8
cmp dword [rsi + 0xf0], 0
jne 0x14017c8e2
movaps xmm0, xmmword [rsp + 0x30]
movups xmmword [rsi + 0xe8], xmm0
mov rax, rsi
mov rbx, qword [rsp + 0x70]
add rsp, 0x40
pop rdi
pop rsi
pop rbp
ret
call fcn.140352658
nop
mov dword [rsp + 0x38], ebp
mov ecx, 6
call fcn.140345b54
int3
Function at 0x1401818e0
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
mov ebx, r8d
mov esi, edx
mov r13, rcx
call fcn.140030810
mov rbp, rax
xor r12d, r12d
mov r9, qword [r13 + 0x30]
mov r9, qword [r9]
cmp byte [r9 + 0x19], r12b
jne 0x140181973
mov rcx, qword [r9 + 0x28]
cmp qword [rcx + 0x10], 0
je 0x140181923
mov r12d, dword [r9 + 0x20]
mov rax, qword [r9 + 0x10]
cmp byte [rax + 0x19], 0
je 0x14018194f
mov rax, qword [r9 + 8]
cmp byte [rax + 0x19], 0
jne 0x14018194a
cmp r9, qword [rax + 0x10]
jne 0x14018194a
mov r9, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140181937
mov r9, rax
jmp 0x14018196c
mov r9, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x14018196c
nop dword [rax + rax]
mov r9, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140181960
cmp byte [r9 + 0x19], 0
je 0x140181914
mov edx, r12d
mov rcx, r13
call fcn.140181410
mov rdi, rax
mov qword [rsp + 0x70], rax
lea rdx, [r13 + 0x18]
mov r9d, ebx
mov r8d, esi
mov rcx, rax
call fcn.14017bde0
call fcn.140030810
sub rax, rbp
mov qword [rsp + 0x20], rax
mov r9d, r12d
lea r8, str.e_44me_1_37m_randomx_e_0m
lea rdx, str._se_1_36m_u_e_0me_1_32mdataset_readye_0me_1_30m___llu_ms_e_0m
mov ecx, 6
call fcn.1400265b0
cmp qword [r13 + 0x38], 1
jbe 0x140181afe
mov rbx, qword [r13 + 0x30]
mov rbx, qword [rbx]
cmp byte [rbx + 0x19], 0
jne 0x140181af6
lea rdx, [0x140182060]
lea rsi, [rbx + 0x20]
cmp dword [rsi], r12d
je 0x140181aa2
mov rcx, rdi
call fcn.14017c1f0
mov rbp, rax
mov qword [rsp + 0x88], rax
mov r14, qword [r13 + 0x48]
cmp r14, qword [r13 + 0x50]
je 0x140181a71
mov ecx, 0x20
call fcn.140347330
mov qword [rax], rbp
mov ecx, dword [rsi]
mov dword [rax + 8], ecx
mov rcx, qword [rsi + 8]
mov qword [rax + 0x10], rcx
lea rcx, [0x140182060]
mov qword [rax + 0x18], rcx
mov qword [rsp + 0x88], rax
lea rcx, [r14 + 8]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], 0
mov r9, rax
lea r8, [0x140182b30]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [r14], rax
test rax, rax
je 0x140181b18
add qword [r13 + 0x48], 0x10
jmp 0x140181a96
lea rax, [rsp + 0x88]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rsi
lea r9, [rsi + 8]
mov r8, rdx
mov rdx, r14
lea rcx, [r13 + 0x40]
call fcn.140182840
lea rdx, [0x140182060]
mov rdi, qword [rsp + 0x70]
mov rax, qword [rbx + 0x10]
cmp byte [rax + 0x19], 0
je 0x140181ace
mov rax, qword [rbx + 8]
cmp byte [rax + 0x19], 0
jne 0x140181ac9
cmp rbx, qword [rax + 0x10]
jne 0x140181ac9
mov rbx, rax
mov rax, qword [rax + 8]
cmp byte [rax + 0x19], 0
je 0x140181ab6
mov rbx, rax
jmp 0x140181aec
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
jne 0x140181aec
nop word [rax + rax]
mov rbx, rax
mov rax, qword [rax]
cmp byte [rax + 0x19], 0
je 0x140181ae0
cmp byte [rbx + 0x19], 0
je 0x1401819e3
mov rcx, r13
call fcn.1401820f0
mov byte [r13 + 1], 1
mov rbx, qword [rsp + 0x78]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov dword [r14 + 8], 0
mov ecx, 6
call fcn.140345b54
int3
Function at 0x140182500
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r13, r9
mov rbx, rdx
mov r14, rcx
mov rdx, qword [rcx]
mov rdi, rbx
sub rdi, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 4
movabs r9, 0xfffffffffffffff
cmp rax, r9
je 0x140182729
lea r8, [rax + 1]
mov qword [rsp + 0x30], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 4
mov rdx, rcx
shr rdx, 1
mov rax, r9
sub rax, rdx
cmp rcx, rax
jbe 0x14018266e
mov rsi, r9
mov qword [rsp + 0x98], r9
mov rcx, rsi
shl rcx, 4
call fcn.140004180
mov r15, rax
mov qword [rsp + 0x40], rax
and rdi, 0xfffffffffffffff0
lea r12, [rdi + rax]
lea rdi, [r12 + 0x10]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x90], rdi
mov ecx, 0x18
call fcn.140347330
mov r9, rax
mov rax, qword [rsp + 0xc0]
movzx ecx, byte [rax]
mov byte [r9], cl
mov rax, qword [rsp + 0xb8]
movzx ecx, byte [rax]
mov byte [r9 + 1], cl
mov rax, qword [rsp + 0xb0]
mov ecx, dword [rax]
mov dword [r9 + 4], ecx
mov rax, qword [r13]
mov qword [r9 + 8], rax
mov rax, qword [rsp + 0xa0]
mov qword [r9 + 0x10], rax
mov qword [rsp + 0x48], r9
lea r13, [r12 + 8]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0
lea r8, [0x140182af0]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [r12], rax
test rax, rax
je 0x140182716
mov qword [rsp + 0x90], r12
mov rcx, qword [r14 + 8]
mov rax, qword [r14]
mov rdx, r15
cmp rbx, rcx
jne 0x140182692
cmp rax, rcx
je 0x1401826f0
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rcx
jne 0x140182650
jmp 0x1401826f0
lea rax, [rdx + rcx]
mov rsi, r8
cmp rax, r8
cmovae rsi, rax
mov qword [rsp + 0x98], rsi
cmp rsi, r9
ja 0x14018272f
jmp 0x140182578
cmp rax, rbx
je 0x1401826bd
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rbx
jne 0x1401826a0
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x90], r15
cmp rbx, rcx
je 0x1401826f0
sub rdi, rbx
nop dword [rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rbx]
movups xmmword [rbx], xmm0
movups xmmword [rbx + rdi], xmm1
add rbx, 0x10
cmp rbx, rcx
jne 0x1401826d0
nop word [rax + rax]
mov r9, rsi
mov r8, qword [rsp + 0x30]
mov rdx, r15
mov rcx, r14
call fcn.1401743c0
mov rax, r12
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [r13], 0
mov ecx, 6
call fcn.140345b54
nop
call fcn.140014330
int3
call fcn.140003f70
int3
Function at 0x140182840
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 0x18], r8
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x50
mov r13, r9
mov rbx, rdx
mov r14, rcx
mov rdx, qword [rcx]
mov rdi, rbx
sub rdi, rdx
mov rax, qword [rcx + 8]
sub rax, rdx
sar rax, 4
movabs r9, 0xfffffffffffffff
cmp rax, r9
je 0x140182a59
lea r8, [rax + 1]
mov qword [rsp + 0x30], r8
mov rcx, qword [rcx + 0x10]
sub rcx, rdx
sar rcx, 4
mov rdx, rcx
shr rdx, 1
mov rax, r9
sub rax, rdx
cmp rcx, rax
jbe 0x14018299e
mov rsi, r9
mov qword [rsp + 0x98], r9
mov rcx, rsi
shl rcx, 4
call fcn.140004180
mov r15, rax
mov qword [rsp + 0x40], rax
and rdi, 0xfffffffffffffff0
lea r12, [rdi + rax]
lea rdi, [r12 + 0x10]
mov qword [rsp + 0x38], rdi
mov qword [rsp + 0x90], rdi
mov ecx, 0x20
call fcn.140347330
mov r9, rax
mov rax, qword [rsp + 0xb8]
mov rcx, qword [rax]
mov qword [r9], rcx
mov rax, qword [rsp + 0xb0]
mov ecx, dword [rax]
mov dword [r9 + 8], ecx
mov rax, qword [r13]
mov qword [r9 + 0x10], rax
mov rax, qword [rsp + 0xa0]
mov qword [r9 + 0x18], rax
mov qword [rsp + 0x48], r9
lea r13, [r12 + 8]
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], 0
lea r8, [0x140182b30]
xor edx, edx
xor ecx, ecx
call fcn.14035540c
mov qword [r12], rax
test rax, rax
je 0x140182a46
mov qword [rsp + 0x90], r12
mov rcx, qword [r14 + 8]
mov rax, qword [r14]
mov rdx, r15
cmp rbx, rcx
jne 0x1401829c2
cmp rax, rcx
je 0x140182a20
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rcx
jne 0x140182980
jmp 0x140182a20
lea rax, [rdx + rcx]
mov rsi, r8
cmp rax, r8
cmovae rsi, rax
mov qword [rsp + 0x98], rsi
cmp rsi, r9
ja 0x140182a5f
jmp 0x1401828b8
cmp rax, rbx
je 0x1401829ed
nop word [rax + rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rax]
movups xmmword [rax], xmm0
movups xmmword [rdx], xmm1
lea rdx, [rdx + 0x10]
add rax, 0x10
cmp rax, rbx
jne 0x1401829d0
mov rcx, qword [r14 + 8]
mov qword [rsp + 0x90], r15
cmp rbx, rcx
je 0x140182a20
sub rdi, rbx
nop dword [rax]
xorps xmm0, xmm0
movups xmm1, xmmword [rbx]
movups xmmword [rbx], xmm0
movups xmmword [rbx + rdi], xmm1
add rbx, 0x10
cmp rbx, rcx
jne 0x140182a00
nop word [rax + rax]
mov r9, rsi
mov r8, qword [rsp + 0x30]
mov rdx, r15
mov rcx, r14
call fcn.1401743c0
mov rax, r12
add rsp, 0x50
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov dword [r13], 0
mov ecx, 6
call fcn.140345b54
nop
call fcn.140014330
int3
call fcn.140003f70
int3
Function at 0x140182c90
Capabilities:
Delete service
Stop service

Disassembly:
push rbx
sub rsp, 0x50
mov rax, qword [0x1404f1628]
xor rax, rsp
mov qword [rsp + 0x40], rax
mov rbx, rcx
mov rcx, qword [rcx + 8]
cmp rcx, 0xffffffffffffffff
je 0x140182cb8
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
jne 0x140182cd6
mov al, 1
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140347310
add rsp, 0x50
pop rbx
ret
mov qword [rsp + 0x68], rsi
xor esi, esi
mov qword [rsp + 0x70], rdi
mov dil, 1
cmp byte [rbx], sil
jne 0x140182d31
lea r8, [rsp + 0x20]
lea edx, [rsi + 1]
call qword [sym.imp.ADVAPI32.dll_ControlService]
mov rcx, qword [rbx + 0x18]
test eax, eax
movzx edi, dil
cmove edi, esi
call qword [sym.imp.ADVAPI32.dll_DeleteService]
test eax, eax
jne 0x140182d31
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r9d, eax
lea r8, str.e_43_1me_1_37m_msr_____e_0m
lea rdx, str._s_e_0_31mfailed_to_remove_WinRing0_driver__error__ue_0m
lea ecx, [rsi + 3]
call fcn.1400265b0
xor dil, dil
mov rcx, qword [rbx + 0x18]
call qword [sym.imp.ADVAPI32.dll_CloseServiceHandle]
movzx eax, dil
mov qword [rbx + 0x18], rsi
mov rdi, qword [rsp + 0x70]
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
xor rcx, rsp
call fcn.140347310
add rsp, 0x50
pop rbx
ret
Function at 0x140184f80
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push rbx
push rsi
push r14
sub rsp, 0x30
mov esi, dword [rcx + 8]
mov r14, rcx
mov eax, dword [rcx + 0xc]
lea ebx, [rsi + 4]
cmp ebx, eax
ja 0x140184fc6
nop dword [rax]
mov rax, qword [r14]
mov edx, esi
mov r9, qword [r14 + 0x10]
mov ecx, esi
shl rcx, 6
add rcx, qword [rax + 0x18]
call fcn.140193b64
mov eax, dword [r14 + 0xc]
add esi, 4
add ebx, 4
cmp ebx, eax
jbe 0x140184fa0
cmp esi, eax
jae 0x1401851a3
mov qword [rsp + 0x50], rbp
mov qword [rsp + 0x58], rdi
mov qword [rsp + 0x60], r15
mov r15d, dword [0x1404f1630]
nop dword [rax]
nop dword [rax + rax]
mov rdi, qword [r14 + 0x10]
mov r9d, 0x40
mov rax, qword [r14]
mov ecx, esi
mov ebx, esi
mov rbp, qword [rdi]
mov edx, dword [rdi + 0x20]
add rdx, rcx
shl rbx, 6
add rbx, qword [rax + 0x18]
movzx ecx, byte [rdi + 0x24]
mov r8, rbx
mov eax, dword [rdi + 0x1c]
imul rdx, rax
mov dword [rsp + 0x28], 0x40
shr rdx, cl
mov ecx, esi
imul edx, dword [rdi + 0x18]
mov qword [rsp + 0x20], rbx
sub ecx, edx
shl rcx, 6
movups xmm0, xmmword [rcx + rbp]
movups xmmword [rbx], xmm0
movups xmm1, xmmword [rcx + rbp + 0x10]
movups xmmword [rbx + 0x10], xmm1
movups xmm0, xmmword [rcx + rbp + 0x20]
movups xmmword [rbx + 0x20], xmm0
movups xmm1, xmmword [rcx + rbp + 0x30]
mov ecx, 0x200
movups xmmword [rbx + 0x30], xmm1
xor dword [rbx], esi
call fcn.140015d60
xor r10d, r10d
xor r11d, r11d
movzx ecx, byte [rdi + 0x24]
mov rdx, r11
and edx, 0xf
mov eax, r10d
xor eax, esi
imul r8d, eax, 0x1000193
mov eax, dword [rdi + 0x1c]
xor r8d, dword [rbx + rdx*4]
mov edx, dword [rdi + 0x20]
add rdx, r8
imul rdx, rax
shr rdx, cl
imul edx, dword [rdi + 0x18]
sub r8d, edx
mov edx, r8d
shl rdx, 6
add rdx, rbp
cmp r15d, 2
jl 0x14018512a
lea rax, [rdx + 0x3c]
lea rcx, [rbx + 0x3c]
cmp rbx, rax
ja 0x1401850c3
cmp rcx, rdx
jae 0x14018512a
movdqu xmm1, xmmword [rbx]
movdqa xmm2, xmmword [0x1404b68d0]
movdqu xmm0, xmmword [rdx]
pmulld xmm1, xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rdx + 0x10]
movdqu xmmword [rbx], xmm1
movdqu xmm1, xmmword [rbx + 0x10]
pmulld xmm1, xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rdx + 0x20]
movdqu xmmword [rbx + 0x10], xmm1
movdqu xmm1, xmmword [rbx + 0x20]
pmulld xmm1, xmm2
pxor xmm1, xmm0
movdqu xmm0, xmmword [rdx + 0x30]
movdqu xmmword [rbx + 0x20], xmm1
movdqu xmm1, xmmword [rbx + 0x30]
pmulld xmm1, xmm2
pxor xmm1, xmm0
movdqu xmmword [rbx + 0x30], xmm1
jmp 0x140185157
mov rax, rbx
sub rdx, rbx
mov r9d, reloc.WS2_32.dll_recv
nop word [rax + rax]
imul ecx, dword [rax], 0x1000193
lea rax, [rax + 4]
xor ecx, dword [rdx + rax - 4]
mov dword [rax - 4], ecx
sub r9, 1
jne 0x140185140
inc r10d
inc r11
cmp r10d, 0x200
jne 0x140185070
mov dword [rsp + 0x28], 0x40
mov r9d, 0x40
mov r8, rbx
mov qword [rsp + 0x20], rbx
mov ecx, r10d
call fcn.140015d60
inc esi
cmp esi, dword [r14 + 0xc]
jb 0x140184ff0
mov r15, qword [rsp + 0x60]
mov rdi, qword [rsp + 0x58]
mov rbp, qword [rsp + 0x50]
add rsp, 0x30
pop r14
pop rsi
pop rbx
ret