joyce8/EMBER2024-capa huggingface dataset:
Function at 0x18003f2e0
Capabilities:
Read file via mapping

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r15
sub rsp, 0x120
mov rax, qword [0x18010e098]
xor rax, rsp
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0x170]
mov rbp, rcx
lea rcx, str.FILE
mov dword [rsp + 0x38], r9d
mov qword [rsp + 0x30], rcx
mov r15, rdx
mov rcx, rbp
mov qword [rsp + 0x40], rax
xor edx, edx
mov rsi, r8
call fcn.18003f4e0
xor ebx, ebx
mov edi, eax
mov qword [r15], rbx
mov qword [rsi], rbx
test eax, eax
jns 0x18003f38a
call fcn.1800a88f4
mov r8d, 0x80
lea rdx, [rsp + 0x80]
mov ebx, dword [rax]
neg ebx
mov ecx, ebx
call sym.avutil_59.dll_av_strerror
lea rax, [rsp + 0x80]
mov r9, rbp
lea r8, str.Cannot_read_file__s:__s_n
mov qword [rsp + 0x20], rax
mov edx, 0x10
lea rcx, [rsp + 0x30]
call sym.avutil_59.dll_av_log
mov eax, ebx
jmp 0x18003f49a
lea rdx, [rsp + 0x48]
mov ecx, edi
call fcn.1800b771c
test eax, eax
jns 0x18003f3e4
call fcn.1800a88f4
mov r8d, 0x80
lea rdx, [rsp + 0x80]
mov ebx, dword [rax]
neg ebx
mov ecx, ebx
call sym.avutil_59.dll_av_strerror
lea r9, [rsp + 0x80]
mov edx, 0x10
lea r8, str.Error_occurred_in_fstat__:__s_n
lea rcx, [rsp + 0x30]
call sym.avutil_59.dll_av_log
mov ecx, edi
call fcn.1800bd87c
mov eax, ebx
jmp 0x18003f49a
movsxd rax, dword [rsp + 0x5c]
mov qword [rsp + 0x118], r14
mov qword [rsi], rax
test rax, rax
je 0x18003f486
mov ecx, edi
call fcn.1800b7ca0
xor r9d, r9d
mov qword [rsp + 0x28], rbx
xor edx, edx
mov dword [rsp + 0x20], ebx
mov rcx, rax
lea r8d, [r9 + 2]
call qword [sym.imp.KERNEL32.dll_CreateFileMappingA]
mov rbp, rax
test rax, rax
jne 0x18003f430
lea r8, str.Error_occurred_in_CreateFileMapping___n
jmp 0x18003f463
mov rax, qword [rsi]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x20], rax
mov rcx, rbp
lea edx, [r9 + 4]
call qword [sym.imp.KERNEL32.dll_MapViewOfFile]
mov rcx, rbp
mov r14, rax
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test r14, r14
jne 0x18003f483
lea r8, str.Error_occurred_in_MapViewOfFile___n
mov edx, 0x10
lea rcx, [rsp + 0x30]
call sym.avutil_59.dll_av_log
mov ecx, edi
call fcn.1800bd87c
mov eax, 0xffffffff
mov qword [rsi], rbx
jmp 0x18003f492
mov rbx, r14
mov ecx, edi
mov qword [r15], rbx
call fcn.1800bd87c
xor eax, eax
mov r14, qword [rsp + 0x118]
mov rcx, qword [rsp + 0x100]
xor rcx, rsp
call fcn.1800a4400
add rsp, 0x120
pop r15
pop rdi
pop rsi
pop rbp
pop rbx
ret

Function at 0x180043370
Capabilities:
Hash data using murmur3

Disassembly:
movsxd rax, dword [rcx + 8]
cmp eax, 0xe
ja case.default.0x18004338b
lea r9, [0x180000000]
mov r8d, dword [r9 + rax*4 + 0x433c8]
add r8, r9
jmp r8
mov rcx, qword [rcx]
jmp sym.avutil_59.dll_av_md5_final
mov rcx, qword [rcx]
jmp sym.avutil_59.dll_av_murmur3_final
mov rcx, qword [rcx]
jmp sym.avutil_59.dll_av_ripemd_final
mov rcx, qword [rcx]
jmp sym.avutil_59.dll_av_sha_final
mov rcx, qword [rcx]
jmp sym.avutil_59.dll_av_sha512_final
mov eax, dword [rcx + 0x18]
not eax
bswap eax
mov dword [rdx], eax
ret
mov eax, dword [rcx + 0x18]
bswap eax
mov dword [rdx], eax
ret
Function at 0x180043960
Capabilities:
Hash data using murmur3

Disassembly:
push rbx
sub rsp, 0x20
movsxd rax, dword [rcx + 8]
mov rbx, rcx
cmp eax, 0xe
ja case.default.0x180043984
lea rcx, [0x180000000]
mov r9d, dword [rcx + rax*4 + 0x439f4]
add r9, rcx
jmp r9
mov rcx, qword [rbx]
add rsp, 0x20
pop rbx
jmp sym.avutil_59.dll_av_md5_update
mov rcx, qword [rbx]
add rsp, 0x20
pop rbx
jmp sym.avutil_59.dll_av_murmur3_update
mov rcx, qword [rbx]
add rsp, 0x20
pop rbx
jmp sym.avutil_59.dll_av_ripemd_update
mov rcx, qword [rbx]
add rsp, 0x20
pop rbx
jmp sym.avutil_59.dll_av_sha_update
mov rcx, qword [rbx]
add rsp, 0x20
pop rbx
jmp sym.avutil_59.dll_av_sha512_update
mov rcx, qword [rbx + 0x10]
mov r9, r8
mov r8, rdx
mov edx, dword [rbx + 0x18]
call sym.avutil_59.dll_av_crc
mov dword [rbx + 0x18], eax
add rsp, 0x20
pop rbx
ret
mov ecx, dword [rbx + 0x18]
call sym.avutil_59.dll_av_adler32_update
mov dword [rbx + 0x18], eax
add rsp, 0x20
pop rbx
ret
Function at 0x180045ae0
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0xb8
mov rax, qword [0x18010e098]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov edi, dword [rsp + 0x120]
mov rsi, r9
mov r12, rdx
mov r15, qword [rsp + 0x128]
mov rbx, rcx
mov r13d, r8d
cmp edi, dword [rcx + 8]
jbe 0x180045b47
mov rcx, qword [rcx]
call qword [rbx + 0x20]
mov rcx, qword [rbx]
mov r8d, edi
mov rdx, rsi
call qword [rbx + 0x18]
mov rcx, qword [rbx]
lea rdx, [rbx + 0x28]
call qword [rbx + 0x10]
mov edi, dword [rbx + 0xc]
jmp 0x180045b56
mov r8, rdi
mov rdx, rsi
add rcx, 0x28
call fcn.1800a5250
mov dword [rbx + 0xa8], edi
mov rcx, qword [rbx]
call qword [rbx + 0x20]
movsxd r8, dword [rbx + 0xa8]
test r8d, r8d
jle 0x180045b96
lea rdx, [rsp + 0x20]
mov r9, rbx
sub r9, rdx
lea rcx, [rsp + 0x20]
mov edx, r8d
movzx eax, byte [r9 + rcx + 0x28]
lea rcx, [rcx + 1]
xor al, 0x36
mov byte [rcx - 1], al
sub rdx, 1
jne 0x180045b81
movsxd rdi, dword [rbx + 8]
cmp r8d, edi
jge 0x180045bb6
mov eax, edi
lea rcx, [rsp + 0x20]
sub eax, r8d
add rcx, r8
mov r8d, eax
mov dl, 0x36
call fcn.1800a5900
mov rcx, qword [rbx]
lea rdx, [rsp + 0x20]
mov r8, rdi
call qword [rbx + 0x18]
mov rcx, qword [rbx]
mov r8, r13
mov rdx, r12
call qword [rbx + 0x18]
mov eax, dword [rbx + 0xc]
cmp dword [rsp + 0x130], eax
jae 0x180045be6
mov eax, 0xffffffea
jmp 0x180045c7c
mov rcx, qword [rbx]
mov rdx, r15
call qword [rbx + 0x10]
mov rcx, qword [rbx]
call qword [rbx + 0x20]
movsxd r8, dword [rbx + 0xa8]
test r8d, r8d
jle 0x180045c35
lea rdx, [rsp + 0x20]
mov r9, rbx
sub r9, rdx
lea rcx, [rsp + 0x20]
mov edx, r8d
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r9 + rcx + 0x28]
lea rcx, [rcx + 1]
xor al, 0x5c
mov byte [rcx - 1], al
sub rdx, 1
jne 0x180045c20
movsxd rdi, dword [rbx + 8]
cmp r8d, edi
jge 0x180045c55
mov eax, edi
lea rcx, [rsp + 0x20]
sub eax, r8d
add rcx, r8
mov r8d, eax
mov dl, 0x5c
call fcn.1800a5900
mov rcx, qword [rbx]
lea rdx, [rsp + 0x20]
mov r8, rdi
call qword [rbx + 0x18]
movsxd r8, dword [rbx + 0xc]
mov rdx, r15
mov rcx, qword [rbx]
call qword [rbx + 0x18]
mov rcx, qword [rbx]
mov rdx, r15
call qword [rbx + 0x10]
mov eax, dword [rbx + 0xc]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1800a4400
add rsp, 0xb8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x180045ca0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 0x20], rbx
push rsi
sub rsp, 0xb0
mov rax, qword [0x18010e098]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rsi, rdx
mov rbx, rcx
cmp r8d, dword [rcx + 0xc]
jae 0x180045cd5
mov eax, 0xffffffea
jmp 0x180045d69
mov rcx, qword [rcx]
mov qword [rsp + 0xd0], rdi
call qword [rbx + 0x10]
mov rcx, qword [rbx]
call qword [rbx + 0x20]
movsxd r9, dword [rbx + 0xa8]
test r9, r9
jle 0x180045d1c
xor edx, edx
lea rcx, [rsp + 0x20]
mov r8, rbx
sub r8, rcx
lea rcx, [rsp + 0x20]
add rcx, rdx
inc rdx
movzx eax, byte [r8 + rcx + 0x28]
xor al, 0x5c
mov byte [rcx], al
cmp rdx, r9
jl 0x180045d02
movsxd rdi, dword [rbx + 8]
cmp r9, rdi
jge 0x180045d3a
lea rcx, [rsp + 0x20]
mov r8, rdi
add rcx, r9
sub r8, r9
mov dl, 0x5c
call fcn.1800a5900
mov rcx, qword [rbx]
lea rdx, [rsp + 0x20]
mov r8, rdi
call qword [rbx + 0x18]
movsxd r8, dword [rbx + 0xc]
mov rdx, rsi
mov rcx, qword [rbx]
call qword [rbx + 0x18]
mov rcx, qword [rbx]
mov rdx, rsi
call qword [rbx + 0x10]
mov eax, dword [rbx + 0xc]
mov rdi, qword [rsp + 0xd0]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1800a4400
mov rbx, qword [rsp + 0xd8]
add rsp, 0xb0
pop rsi
ret

Function at 0x180045db0
Capabilities:
Encode data using xor

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r14
sub rsp, 0xb0
mov rax, qword [0x18010e098]
xor rax, rsp
mov qword [rsp + 0xa0], rax
mov rsi, rdx
mov edi, r8d
mov rbx, rcx
cmp r8d, dword [rcx + 8]
jbe 0x180045e00
mov rcx, qword [rcx]
call qword [rbx + 0x20]
mov rcx, qword [rbx]
mov r8d, edi
mov rdx, rsi
call qword [rbx + 0x18]
mov rcx, qword [rbx]
lea rdx, [rbx + 0x28]
call qword [rbx + 0x10]
mov edi, dword [rbx + 0xc]
jmp 0x180045e0c
mov r8, rdi
add rcx, 0x28
call fcn.1800a5250
mov dword [rbx + 0xa8], edi
mov rcx, qword [rbx]
call qword [rbx + 0x20]
movsxd r8, dword [rbx + 0xa8]
test r8d, r8d
jle 0x180045e56
lea rdx, [rsp + 0x20]
mov r9, rbx
sub r9, rdx
lea rax, [rsp + 0x20]
mov edx, r8d
nop word [rax + rax]
movzx ecx, byte [r9 + rax + 0x28]
lea rax, [rax + 1]
xor cl, 0x36
mov byte [rax - 1], cl
sub rdx, 1
jne 0x180045e40
movsxd rdi, dword [rbx + 8]
cmp r8d, edi
jge 0x180045e76
mov eax, edi
lea rcx, [rsp + 0x20]
sub eax, r8d
add rcx, r8
mov r8d, eax
mov dl, 0x36
call fcn.1800a5900
mov rcx, qword [rbx]
lea rdx, [rsp + 0x20]
mov r8, rdi
call qword [rbx + 0x18]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.1800a4400
add rsp, 0xb0
pop r14
pop rdi
pop rsi
pop rbp
pop rbx
ret
Function at 0x180051db0
Capabilities:
Hash data using murmur3

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push r14
sub rsp, 0x20
movsxd rax, dword [rcx + 0x20]
mov rbx, rcx
mov rdi, qword [rcx]
mov r14, rdx
mov rsi, qword [rcx + 8]
mov r8d, 0x10
add rcx, 0x10
sub r8, rax
add rcx, rax
xor edx, edx
call fcn.1800a5900
mov rax, qword [rbx + 0x18]
movabs r9, 0x4cf5ad432745937f
mov rcx, qword [rbx + 0x10]
movabs rdx, 0x87c37b91114253d5
imul rax, r9
imul rcx, rdx
ror rax, 0x1f
movabs r8, 0xc4ceb9fe1a85ec53
imul rax, rdx
rol rcx, 0x1f
xor rax, qword [rbx + 0x28]
xor rsi, rax
imul rcx, r9
movabs r9, 0xff51afd7ed558ccd
xor rcx, qword [rbx + 0x28]
mov rbx, qword [rsp + 0x30]
xor rcx, rdi
mov rdi, qword [rsp + 0x40]
add rcx, rsi
mov rax, rcx
shr rax, 0x21
xor rax, rcx
imul rax, r9
mov rdx, rax
shr rdx, 0x21
xor rdx, rax
lea rax, [rsi + rcx]
mov rsi, qword [rsp + 0x38]
mov rcx, rax
shr rcx, 0x21
xor rcx, rax
imul rcx, r9
imul rdx, r8
mov rax, rcx
shr rax, 0x21
xor rax, rcx
imul rax, r8
mov rcx, rax
shr rcx, 0x21
xor rcx, rax
mov rax, rdx
shr rax, 0x21
xor rax, rdx
add rax, rcx
mov qword [r14], rax
add rax, rcx
mov qword [r14 + 8], rax
add rsp, 0x20
pop r14
ret

Function at 0x180051f10
Capabilities:
Encode data using xor
Hash data using murmur3

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov r9, qword [rcx + 8]
mov rdi, r8
mov r8, qword [rcx]
mov rbx, rcx
test rdi, rdi
je 0x18005205c
add qword [rcx + 0x28], rdi
movabs r11, 0x87c37b91114253d5
mov eax, dword [rcx + 0x20]
movabs r10, 0x4cf5ad432745937f
test eax, eax
jle 0x180051fd4
cmp eax, 0x10
jge 0x180051f84
nop dword [rax + rax]
movsxd rcx, eax
movzx eax, byte [rdx]
inc rdx
mov byte [rcx + rbx + 0x10], al
mov eax, dword [rbx + 0x20]
inc eax
mov dword [rbx + 0x20], eax
sub rdi, 1
je 0x18005205c
cmp eax, 0x10
jl 0x180051f60
mov rax, qword [rbx + 0x10]
imul rax, r11
mov dword [rbx + 0x20], 0
rol rax, 0x1f
imul rax, r10
xor rax, r8
rol rax, 0x1b
add rax, r9
lea r8, [rax*4 + 0x52dce729]
add r8, rax
mov rax, qword [rbx + 0x18]
imul rax, r10
ror rax, 0x1f
imul rax, r11
xor rax, r9
rol rax, 0x1f
add rax, 0xb41def1
add rax, r8
lea r9, [rax + rax*4]
mov rcx, rdi
and rcx, 0xfffffffffffffff0
add rcx, rdx
cmp rdx, rcx
jae 0x180052041
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rdx]
imul rax, r11
rol rax, 0x1f
imul rax, r10
xor rax, r8
rol rax, 0x1b
add rax, r9
lea r8, [rax*4 + 0x52dce729]
add r8, rax
mov rax, qword [rdx + 8]
imul rax, r10
add rdx, 0x10
ror rax, 0x1f
imul rax, r11
xor rax, r9
rol rax, 0x1f
add rax, 0xb41def1
add rax, r8
lea r9, [rax + rax*4]
cmp rdx, rcx
jb 0x180051ff0
mov qword [rbx], r8
mov qword [rbx + 8], r9
and edi, 0xf
jbe 0x18005205c
lea rcx, [rbx + 0x10]
mov r8d, edi
call fcn.1800a5250
mov dword [rbx + 0x20], edi
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
Function at 0x18005adb0
Capabilities:
Execute anti-debugging instructions
Generate random numbers via winapi

Disassembly:
push rbx
sub rsp, 0xe0
mov rax, qword [0x18010e098]
xor rax, rsp
mov qword [rsp + 0xd8], rax
xor r9d, r9d
lea r8, str.Microsoft_Primitive_Provider
lea rdx, [0x1800e5230]
lea rcx, [rsp + 0x38]
call sub.bcrypt.dll_BCryptOpenAlgorithmProvider
test eax, eax
js 0x18005ae1b
mov rcx, qword [rsp + 0x38]
lea rdx, [rsp + 0x30]
xor r9d, r9d
lea r8d, [r9 + 4]
call sub.bcrypt.dll_BCryptGenRandom
mov rcx, qword [rsp + 0x38]
xor edx, edx
mov ebx, eax
call sub.bcrypt.dll_BCryptCloseAlgorithmProvider
test ebx, ebx
js 0x18005ae1b
mov eax, dword [rsp + 0x30]
jmp 0x18005afb7
movsxd rax, dword [sym.avutil_59.dll_av_sha_size]
mov qword [rsp + 0xf0], rbp
mov qword [rsp + 0xf8], rsi
mov rsi, qword [0x18011d3c0]
mov qword [rsp + 0x100], rdi
xor edi, edi
mov ebp, edi
mov ebx, edi
cmp rax, 0x78
ja 0x18005afd0
mov qword [rsp + 0x108], r14
rdtsc
shl rdx, 0x20
or rax, rdx
xor dword [0x18011d404], eax
rdtsc
shl rdx, 0x20
lea r14, [0x18011d3d0]
or rax, rdx
shr rax, 0x20
xor dword [0x18011d474], eax
call fcn.1800bc3f8
mov r9d, eax
lea ecx, [rdi + rbp*2]
sub r9d, edi
mov r10d, eax
cmp ecx, eax
mov rcx, qword [0x18011d3c0]
mov eax, 0xa6dd2039
jl 0x18005aedc
and ecx, 0x1ff
mov edi, r10d
lea r8, [r14 + rcx*4]
mov ebp, r9d
imul ecx, dword [r8], 0x19660d
mul r9d
add ecx, 0x3c6ef35f
shr edx, 0x1f
imul eax, edx, 0x3b9fce47
add eax, r9d
add ecx, eax
test ebx, ebx
mov dword [r8], ecx
cmove ebx, r10d
jmp 0x18005ae82
mul r9d
inc rcx
shr edx, 0x1f
mov r8, rcx
imul eax, edx, 0x3b9fce47
and r8d, 0x1ff
mov qword [0x18011d3c0], rcx
mov edx, dword [r14 + r8*4]
add edx, eax
mov rax, rcx
and eax, 0x1ff
add edx, r9d
mov dword [r14 + rax*4], edx
mov eax, r10d
sub eax, ebx
cmp eax, 0x1f
jl 0x18005af2f
sub rcx, rsi
test rsi, rsi
je 0x18005af29
cmp rcx, 4
ja 0x18005af40
cmp rcx, 0x40
ja 0x18005af40
test ebx, ebx
mov edi, r10d
mov ebp, r9d
cmove ebx, r10d
jmp 0x18005ae82
rdtsc
shl rdx, 0x20
lea rcx, [rsp + 0x40]
or rax, rdx
mov edx, 0xa0
add dword [0x18011d58c], eax
call sym.avutil_59.dll_av_sha_init
mov r8d, 0x800
lea rcx, [rsp + 0x40]
mov rdx, r14
call sym.avutil_59.dll_av_sha_update
lea rdx, [rsp + 0xc0]
lea rcx, [rsp + 0x40]
call sym.avutil_59.dll_av_sha_final
mov eax, dword [rsp + 0xd0]
mov ecx, dword [rsp + 0xc0]
mov r14, qword [rsp + 0x108]
mov rsi, qword [rsp + 0xf8]
mov rbp, qword [rsp + 0xf0]
mov rdi, qword [rsp + 0x100]
bswap eax
bswap ecx
add eax, ecx
mov rcx, qword [rsp + 0xd8]
xor rcx, rsp
call fcn.1800a4400
add rsp, 0xe0
pop rbx
ret
lea rax, str.C:_FFmpeg_n7.0_libavutil_random_seed.c
mov dword [rsp + 0x28], 0x57
lea r9, str.sizeof_tmp____av_sha_size
mov qword [rsp + 0x20], rax
lea r8, str.Assertion__s_failed_at__s:_d_n
xor edx, edx
xor ecx, ecx
call sym.avutil_59.dll_av_log
call fcn.1800ad990
int3
Function at 0x18005b010
Capabilities:
Generate random numbers via winapi

Disassembly:
mov qword [rsp + 8], rbx
push rdi
sub rsp, 0x20
mov rbx, rdx
lea r8, str.Microsoft_Primitive_Provider
mov rdi, rcx
lea rdx, [0x1800e5230]
lea rcx, [rsp + 0x40]
xor r9d, r9d
call sub.bcrypt.dll_BCryptOpenAlgorithmProvider
test eax, eax
js 0x18005b071
mov rcx, qword [rsp + 0x40]
xor r9d, r9d
mov r8d, ebx
mov rdx, rdi
call sub.bcrypt.dll_BCryptGenRandom
mov rcx, qword [rsp + 0x40]
xor edx, edx
mov ebx, eax
call sub.bcrypt.dll_BCryptCloseAlgorithmProvider
test ebx, ebx
js 0x18005b071
xor eax, eax
mov rbx, qword [rsp + 0x30]
add rsp, 0x20
pop rdi
ret
mov rbx, qword [rsp + 0x30]
mov eax, 0xffffffd8
add rsp, 0x20
pop rdi
ret

Function at 0x18005b9c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
movzx ebx, byte [rcx + 0x100]
mov r11, rcx
movzx esi, byte [rcx + 0x104]
test r9d, r9d
jle 0x18005ba3f
movzx r10d, byte [rcx + rbx]
mov qword [rsp + 0x10], rdi
lea rdi, [rcx + rbx]
nop word [rax + rax]
movzx eax, sil
dec r9d
movzx ecx, byte [rax + r11]
mov byte [rax + r11], r10b
add r10b, cl
movzx eax, r10b
mov byte [rdi], cl
movzx ecx, byte [rax + r11]
test r8, r8
je 0x18005ba1e
movzx eax, byte [r8]
inc r8
xor al, cl
jmp 0x18005ba21
movzx eax, cl
inc bl
mov byte [rdx], al
movzx edi, bl
inc rdx
add rdi, r11
movzx r10d, byte [rdi]
add sil, r10b
test r9d, r9d
jg 0x18005b9f0
mov rdi, qword [rsp + 0x10]
movzx eax, bl
mov rbx, qword [rsp + 0x18]
mov dword [r11 + 0x100], eax
movzx eax, sil
mov dword [r11 + 0x104], eax
pop rsi
ret
Function at 0x180068e00
Capabilities:
Encode data using xor
Encrypt data using tea

Disassembly:
test r9d, r9d
je 0x180068fea
push rdi
push r12
push r14
sub rsp, 0x40
mov qword [rsp + 0x60], rbx
mov r14, rdx
mov qword [rsp + 0x68], rbp
sub r14, r8
cmp dword [rsp + 0x88], 0
mov edi, r9d
mov qword [rsp + 0x70], rsi
mov r10, r8
mov qword [rsp + 0x38], r13
mov r12, rcx
mov qword [rsp + 0x30], r15
je 0x180068f0c
mov r11, qword [rsp + 0x80]
mov eax, dword [r12 + 0x40]
dec edi
mov r8d, dword [r10]
cdq
mov ecx, dword [r10 + 4]
sub eax, edx
mov esi, dword [r12]
mov ebp, dword [r12 + 4]
mov r15d, dword [r12 + 8]
mov r13d, dword [r12 + 0xc]
sar eax, 1
imul r9d, eax, 0x9e3779b9
bswap r8d
bswap ecx
test eax, eax
jle 0x180068ed2
mov ebx, eax
nop dword [rax + rax]
mov edx, r8d
mov eax, r8d
shr edx, 5
add edx, r13d
shl eax, 4
add eax, r15d
xor edx, eax
lea eax, [r9 + r8]
xor edx, eax
sub ecx, edx
mov edx, ecx
mov eax, ecx
shr edx, 5
shl eax, 4
add edx, ebp
add eax, esi
xor edx, eax
lea eax, [r9 + rcx]
xor edx, eax
lea r9d, [r9 + 0x61c88647]
sub r8d, edx
sub rbx, 1
jne 0x180068e90
test r11, r11
je 0x180068eed
mov eax, dword [r11]
bswap eax
xor r8d, eax
mov eax, dword [r11 + 4]
bswap eax
xor ecx, eax
mov rax, qword [r10]
mov qword [r11], rax
bswap r8d
bswap ecx
mov dword [r14 + r10], r8d
mov dword [r14 + r10 + 4], ecx
add r10, 8
test edi, edi
jne 0x180068e50
jmp 0x180068fc8
mov r15, qword [rsp + 0x80]
lea rsi, [rdx + 2]
sub r14, 2
lea rbx, [r8 + 2]
xor r13d, r13d
nop dword [rax]
nop word [rax + rax]
dec edi
mov qword [rsp + 0x20], r13
xor r9d, r9d
lea rbp, [r14 + rbx]
lea r8, [rbx - 2]
mov rdx, rbp
mov rcx, r12
test r15, r15
je 0x180068fb3
movzx eax, byte [r8]
mov r8, rbp
xor al, byte [r15]
mov byte [rbp], al
movzx eax, byte [rbx - 1]
xor al, byte [r15 + 1]
mov byte [rsi - 1], al
movzx eax, byte [r15 + 2]
xor al, byte [rbx]
mov byte [rsi], al
movzx eax, byte [rbx + 1]
xor al, byte [r15 + 3]
mov byte [rsi + 1], al
movzx eax, byte [rbx + 2]
xor al, byte [r15 + 4]
mov byte [rsi + 2], al
movzx eax, byte [rbx + 3]
xor al, byte [r15 + 5]
mov byte [rsi + 3], al
movzx eax, byte [rbx + 4]
xor al, byte [r15 + 6]
mov byte [rsi + 4], al
movzx eax, byte [rbx + 5]
xor al, byte [r15 + 7]
mov byte [rsi + 5], al
call fcn.180069020
mov r9, qword [rbp]
mov qword [r15], r9
jmp 0x180068fb8
call fcn.180069020
add rsi, 8
add rbx, 8
test edi, edi
jne 0x180068f30
mov r13, qword [rsp + 0x38]
mov rsi, qword [rsp + 0x70]
mov rbp, qword [rsp + 0x68]
mov rbx, qword [rsp + 0x60]
mov r15, qword [rsp + 0x30]
add rsp, 0x40
pop r14
pop r12
pop rdi
ret
Function at 0x180069020
Capabilities:
Encode data using xor
Encrypt data using tea

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push r14
push r15
mov eax, dword [rcx + 0x40]
mov r15, rdx
mov r11d, dword [r8]
cdq
mov r10d, dword [r8 + 4]
sub eax, edx
mov ebx, dword [rcx]
mov r14, r8
mov edi, dword [rcx + 4]
mov esi, dword [rcx + 8]
mov ebp, dword [rcx + 0xc]
sar eax, 1
bswap r11d
bswap r10d
test r9d, r9d
je 0x1800690d3
imul edx, eax, 0x9e3779b9
test eax, eax
jle 0x1800690b2
mov r8d, eax
mov ecx, r11d
mov eax, r11d
shr ecx, 5
add ecx, ebp
shl eax, 4
add eax, esi
xor ecx, eax
lea eax, [rdx + r11]
xor ecx, eax
sub r10d, ecx
mov ecx, r10d
mov eax, r10d
shr ecx, 5
shl eax, 4
add ecx, edi
add eax, ebx
xor ecx, eax
lea eax, [rdx + r10]
xor ecx, eax
lea edx, [rdx + 0x61c88647]
sub r11d, ecx
sub r8, 1
jne 0x180069070
mov rcx, qword [rsp + 0x38]
test rcx, rcx
je 0x180069122
mov eax, dword [rcx]
bswap eax
xor r11d, eax
mov eax, dword [rcx + 4]
bswap eax
xor r10d, eax
mov rax, qword [r14]
mov qword [rcx], rax
jmp 0x180069122
xor edx, edx
test eax, eax
jle 0x180069122
mov r8d, eax
nop dword [rax]
mov ecx, r10d
lea edx, [rdx - 0x61c88647]
shr ecx, 5
mov eax, r10d
add ecx, edi
shl eax, 4
add eax, ebx
xor ecx, eax
lea eax, [rdx + r10]
xor ecx, eax
add r11d, ecx
mov ecx, r11d
mov eax, r11d
shr ecx, 5
shl eax, 4
add ecx, ebp
add eax, esi
xor ecx, eax
lea eax, [rdx + r11]
xor ecx, eax
add r10d, ecx
sub r8, 1
jne 0x1800690e0
mov rbx, qword [rsp + 0x18]
mov rbp, qword [rsp + 0x20]
mov rsi, qword [rsp + 0x28]
mov rdi, qword [rsp + 0x30]
bswap r11d
bswap r10d
mov dword [r15], r11d
mov dword [r15 + 4], r10d
pop r15
pop r14
ret
Function at 0x18006a650
Capabilities:
Encode data using xor

Disassembly:
test r9d, r9d
je 0x18006a77c
push rbx
push rbp
push rdi
push r15
sub rsp, 0x28
mov qword [rsp + 0x50], rsi
mov ebp, r9d
mov rsi, qword [rsp + 0x70]
mov rdi, r8
mov qword [rsp + 0x58], r12
mov rbx, rdx
mov qword [rsp + 0x60], r13
mov r12, rsi
mov r13d, dword [rsp + 0x78]
neg r12
mov qword [rsp + 0x20], r14
mov r15, rcx
mov r14, 0xfffffffffffffff1
sub r14, rsi
nop dword [rax]
dec ebp
test r13d, r13d
je 0x18006a6bd
mov r9, rsi
mov r8, rdi
mov rdx, rbx
mov rcx, r15
call fcn.18006b860
jmp 0x18006a74f
test rsi, rsi
je 0x18006a741
lea rcx, [rsi + 0xf]
cmp rbx, rcx
ja 0x18006a6d4
lea r8, [rbx + 0xf]
cmp r8, rsi
jae 0x18006a6e9
lea rax, [rdi + r12]
add rax, rcx
cmp rbx, rax
ja 0x18006a71b
lea r8, [rbx + 0xf]
cmp r8, rdi
jb 0x18006a71b
mov rax, rsi
lea r10, [rdi + r12]
mov r9d, 0x10
nop word [rax + rax]
movzx edx, byte [r10 + rax]
lea rcx, [r14 + rax]
xor dl, byte [rax]
lea rax, [rax + 1]
mov byte [rcx + r8], dl
sub r9, 1
jne 0x18006a700
jmp 0x18006a72b
movdqu xmm1, xmmword [rdi]
movdqu xmm0, xmmword [rsi]
pxor xmm1, xmm0
movdqu xmmword [rbx], xmm1
mov r8, rbx
mov rdx, rbx
mov rcx, r15
call fcn.18006bbe0
movups xmm0, xmmword [rbx]
movups xmmword [rsi], xmm0
jmp 0x18006a74f
mov r8, rdi
mov rdx, rbx
mov rcx, r15
call fcn.18006bbe0
add rbx, 0x10
add rdi, 0x10
test ebp, ebp
jne 0x18006a6a0
mov r14, qword [rsp + 0x20]
mov r13, qword [rsp + 0x60]
mov r12, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x50]
add rsp, 0x28
pop r15
pop rdi
pop rbp
pop rbx
ret
Function at 0x1800b71ac
Capabilities:
Create thread

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rbp
mov qword [rsp + 0x20], rsi
push rdi
sub rsp, 0x30
xor edi, edi
mov esi, edx
mov rbp, rcx
test r8, r8
jne 0x1800b71e3
call fcn.1800a88f4
mov dword [rax], 0x16
call fcn.1800bdfc0
xor eax, eax
jmp 0x1800b7271
mov rdx, r9
mov rcx, r8
call fcn.1800b7148
mov rbx, rax
test rax, rax
je 0x1800b726e
lea rax, [rsp + 0x50]
mov rdx, rsi
mov qword [rsp + 0x28], rax
lea r8, [0x1800b7074]
mov eax, dword [rsp + 0x60]
mov r9, rbx
mov rcx, rbp
mov dword [rsp + 0x20], eax
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rdx, rax
test rax, rax
jne 0x1800b725b
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, eax
call fcn.1800a8868
mov rcx, qword [rbx + 0x10]
test rcx, rcx
je 0x1800b7242
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, qword [rbx + 0x18]
test rcx, rcx
je 0x1800b7251
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
mov rcx, rbx
call fcn.1800bf124
jmp 0x1800b726e
mov rcx, qword [rsp + 0x68]
test rcx, rcx
je 0x1800b726b
mov eax, dword [rsp + 0x50]
mov dword [rcx], eax
mov rdi, rdx
mov rax, rdi
mov rbx, qword [rsp + 0x40]
mov rbp, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
add rsp, 0x30
pop rdi
ret