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

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x30], rax
test r8, r8
je 0x1400532a3
mov r14, r9
mov rbx, r8
mov rdi, rdx
mov rsi, rcx
mov r13, qword [rsp + 0xa8]
mov r12, qword [rsp + 0xa0]
cmp rcx, 0x20
setae al
add rcx, 0xffffffffffffffe0
cmp rcx, rdx
setae cl
cmp rsi, rdx
jb 0x1400530fa
and al, cl
jne 0x1400530fa
cmp rbx, 0x10
jb 0x140053154
lea r15, [rsp + 0x20]
nop dword [rax]
mov rcx, rsi
mov rdx, r15
mov r8, r14
call r13
mov rax, qword [rsi]
mov rcx, qword [r12]
xor rcx, qword [rsp + 0x20]
mov qword [rdi], rcx
mov qword [r12], rax
mov rax, qword [rsi + 8]
mov rcx, qword [r12 + 8]
xor rcx, qword [rsp + 0x28]
mov qword [rdi + 8], rcx
mov qword [r12 + 8], rax
add rbx, 0xfffffffffffffff0
add rsi, 0x10
add rdi, 0x10
cmp rbx, 0xf
ja 0x1400530b0
jmp 0x140053154
cmp rbx, 0x10
jb 0x140053149
mov rbp, r12
nop word cs:[rax + rax]
mov r15, rsi
mov rcx, rsi
mov rdx, rdi
mov r8, r14
call r13
mov rax, qword [rbp]
xor qword [rdi], rax
mov rax, qword [rbp + 8]
xor qword [rdi + 8], rax
add rbx, 0xfffffffffffffff0
add rsi, 0x10
add rdi, 0x10
mov rbp, r15
cmp rbx, 0xf
ja 0x140053110
lea rax, [rsi - 0x10]
jmp 0x14005314c
mov rax, r12
movups xmm0, xmmword [rax]
movups xmmword [r12], xmm0
test rbx, rbx
je 0x1400532a3
lea rdx, [rsp + 0x20]
mov rcx, rsi
mov r8, r14
call r13
cmp rbx, 0x10
mov eax, reloc.WS2_32.dll_recv
cmovb rax, rbx
cmp rax, 1
jne 0x140053186
xor ecx, ecx
test al, 1
jne 0x1400531d3
jmp 0x1400531eb
mov edx, eax
and edx, 0x1e
xor ecx, ecx
nop dword [rax]
movzx r8d, byte [rsi + rcx]
movzx r9d, byte [r12 + rcx]
xor r9b, byte [rsp + rcx + 0x20]
mov byte [rdi + rcx], r9b
mov byte [r12 + rcx], r8b
movzx r8d, byte [rsi + rcx + 1]
movzx r9d, byte [r12 + rcx + 1]
xor r9b, byte [rsp + rcx + 0x21]
mov byte [rdi + rcx + 1], r9b
mov byte [r12 + rcx + 1], r8b
add rcx, 2
cmp rdx, rcx
jne 0x140053190
lea rdx, [rcx - 1]
test al, 1
je 0x1400531eb
movzx edx, byte [r12 + rcx]
xor dl, byte [rsp + rcx + 0x20]
movzx r8d, byte [rsi + rcx]
mov byte [rdi + rcx], dl
mov byte [r12 + rcx], r8b
mov rdx, rcx
cmp rdx, 0xe
ja 0x1400532a3
xor ecx, ecx
mov edx, reloc.WS2_32.dll_ntohs
sub rdx, rax
cmovae rcx, rdx
inc rcx
cmp rcx, 8
jb 0x140053286
lea rdx, [rax + r12]
lea r8, [rax + rsi]
mov r9, rdx
sub r9, r8
cmp r9, 0x10
jb 0x140053286
cmp rcx, 0x10
jae 0x14005322b
xor r9d, r9d
jmp 0x140053262
mov r9, rcx
and r9, 0xfffffffffffffff0
xor r10d, r10d
nop word cs:[rax + rax]
movups xmm0, xmmword [r8 + r10]
movups xmmword [rdx + r10], xmm0
add r10, 0x10
cmp r9, r10
jne 0x140053240
cmp rcx, r9
je 0x1400532a3
test cl, 8
jne 0x140053262
add rax, r9
jmp 0x140053286
mov r10, rcx
and r10, 0xfffffffffffffff8
add rax, r10
nop dword [rax]
mov r11, qword [r8 + r9]
mov qword [rdx + r9], r11
add r9, 8
cmp r10, r9
jne 0x140053270
cmp rcx, r10
je 0x1400532a3
dec rax
nop dword [rax]
movzx ecx, byte [rsi + rax + 1]
mov byte [r12 + rax + 1], cl
inc rax
cmp rax, 0xf
jb 0x140053290
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.140263300
nop
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
Function at 0x140067590
Capabilities:
Hash data using sha256

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xa0
mov rsi, r8
mov r8, rdx
mov rdx, rcx
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x98], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x7c], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x50], xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmm0, xmmword [0x1402de280]
movaps xmmword [rsp + 0x20], xmm0
movaps xmm0, xmmword [0x1402de290]
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x8c], 0x20
lea rcx, [rsp + 0x20]
call fcn.14007e160
mov ebx, dword [rsp + 0x8c]
mov ebp, dword [rsp + 0x40]
mov r14d, dword [rsp + 0x44]
lea rdi, [rsp + 0x48]
mov eax, dword [rsp + 0x88]
lea rcx, [rax + 1]
mov byte [rsp + rax + 0x48], 0x80
cmp rax, 0x38
jb 0x14006765b
cmp eax, 0x3f
je 0x140067644
mov r8d, 0x3f
sub r8, rax
add rcx, rdi
xor edx, edx
call fcn.140265b50
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007e3b0
xor ecx, ecx
jmp 0x140067661
cmp rcx, 0x38
je 0x140067674
mov r8d, gethostname
sub r8, rcx
add rcx, rdi
xor edx, edx
call fcn.140265b50
bswap r14d
bswap ebp
mov dword [rsp + 0x80], r14d
mov dword [rsp + 0x84], ebp
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007e3b0
xorps xmm0, xmm0
movups xmmword [rdi + 0x30], xmm0
movups xmmword [rdi + 0x20], xmm0
movups xmmword [rdi + 0x10], xmm0
movups xmmword [rdi], xmm0
mov dword [rdi + 0x40], 0
lea eax, [rbx - 0x21]
cmp eax, 0xffffffe3
jb 0x140067729
shr ebx, 2
mov eax, dword [rsp + 0x20]
bswap eax
mov dword [rsi], eax
cmp ebx, 1
je 0x140067729
mov eax, dword [rsp + 0x24]
bswap eax
mov dword [rsi + 4], eax
cmp ebx, 2
je 0x140067729
mov eax, dword [rsp + 0x28]
bswap eax
mov dword [rsi + 8], eax
cmp ebx, 3
je 0x140067729
mov eax, dword [rsp + 0x2c]
bswap eax
mov dword [rsi + 0xc], eax
cmp ebx, 4
je 0x140067729
mov eax, dword [rsp + 0x30]
bswap eax
mov dword [rsi + 0x10], eax
cmp ebx, 5
je 0x140067729
mov eax, dword [rsp + 0x34]
bswap eax
mov dword [rsi + 0x14], eax
cmp ebx, 6
je 0x140067729
mov eax, dword [rsp + 0x38]
bswap eax
mov dword [rsi + 0x18], eax
cmp ebx, 7
je 0x140067729
mov eax, dword [rsp + 0x3c]
bswap eax
mov dword [rsi + 0x1c], eax
lea rcx, [rsp + 0x20]
mov edx, reloc.WS2_32.dll_WSASetLastError
call fcn.1400936a0
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.140263300
mov rax, rsi
add rsp, 0xa0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
Function at 0x140067760
Capabilities:
Hash data using sha512

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x100
mov rsi, r8
mov r8, rdx
mov rdx, rcx
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0xf8], rax
movabs rax, 0x6a09e667f3bcc908
mov qword [rsp + 0x20], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rsp + 0x28], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rsp + 0x30], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rsp + 0x38], rax
movabs rax, 0x510e527fade682d1
mov qword [rsp + 0x40], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rsp + 0x48], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rsp + 0x50], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rsp + 0x58], rax
movabs rax, 0x4000000000
mov qword [rsp + 0xf0], rax
pxor xmm0, xmm0
movdqu xmmword [rsp + 0x60], xmm0
lea rcx, [rsp + 0x20]
call fcn.140068df0
mov eax, dword [rsp + 0xf0]
mov ebx, dword [rsp + 0xf4]
lea rdi, [rsp + 0x70]
lea rcx, [rax + 1]
mov byte [rsp + rax + 0x70], 0x80
cmp rax, 0x70
jb 0x140067874
cmp eax, 0x7f
je 0x14006785d
mov r8d, 0x7f
sub r8, rax
add rcx, rdi
xor edx, edx
call fcn.140265b50
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007f4e0
xor ecx, ecx
jmp 0x14006787a
cmp rcx, 0x70
je 0x14006788d
mov r8d, reloc.WS2_32.dll_WSASetLastError
sub r8, rcx
add rcx, rdi
xor edx, edx
call fcn.140265b50
mov rax, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x68]
bswap rcx
mov qword [rsp + 0xe0], rcx
bswap rax
mov qword [rsp + 0xe8], rax
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007f4e0
test rsi, rsi
je 0x1400679b3
cmp ebx, 8
jb 0x1400679b3
mov eax, ebx
shr rbx, 3
cmp eax, 0x20
jae 0x1400678e7
xor ecx, ecx
mov rax, rsi
jmp 0x140067985
mov ecx, ebx
and ecx, 0xfffffffc
lea rdx, [rcx*8]
lea rax, [rsi + rcx*8]
xor r8d, r8d
pxor xmm0, xmm0
nop
movdqu xmm1, xmmword [rsp + r8 + 0x20]
movdqu xmm2, xmmword [rsp + r8 + 0x30]
movdqa xmm3, xmm1
punpckhbw xmm3, xmm0
pshufd xmm3, xmm3, 0x4e
pshuflw xmm3, xmm3, 0x1b
pshufhw xmm3, xmm3, 0x1b
punpcklbw xmm1, xmm0
pshufd xmm1, xmm1, 0x4e
pshuflw xmm1, xmm1, 0x1b
pshufhw xmm1, xmm1, 0x1b
packuswb xmm1, xmm3
movdqa xmm3, xmm2
punpckhbw xmm3, xmm0
pshufd xmm3, xmm3, 0x4e
pshuflw xmm3, xmm3, 0x1b
pshufhw xmm3, xmm3, 0x1b
punpcklbw xmm2, xmm0
pshufd xmm2, xmm2, 0x4e
pshuflw xmm2, xmm2, 0x1b
pshufhw xmm2, xmm2, 0x1b
packuswb xmm2, xmm3
movdqu xmmword [rsi + r8], xmm1
movdqu xmmword [rsi + r8 + 0x10], xmm2
add r8, 0x20
cmp rdx, r8
jne 0x140067900
cmp rcx, rbx
je 0x1400679b3
sub rbx, rcx
lea rcx, [rsp + rcx*8]
add rcx, 0x20
xor edx, edx
nop word cs:[rax + rax]
mov r8, qword [rcx + rdx*8]
bswap r8
mov qword [rax + rdx*8], r8
inc rdx
cmp rbx, rdx
jne 0x1400679a0
lea rcx, [rsp + 0x20]
mov edx, 0xd8
call fcn.1400936a0
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.140263300
mov rax, rsi
add rsp, 0x100
pop rbx
pop rdi
pop rsi
ret
Function at 0x140074be0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rax, qword [rcx + 8]
bswap rax
mov qword [rsp + 0x28], rcx
mov rcx, qword [rcx]
bswap rcx
cmp r9, 0x10
jb 0x140074d34
mov rdi, r9
mov rbx, r8
mov r14, qword [rdx]
mov r15, qword [rdx + 8]
mov r12, r15
xor r12, r14
lea rsi, [rsp + 0x30]
nop word cs:[rax + rax]
mov r13, qword [rbx]
mov rbp, qword [rbx + 8]
bswap rbp
xor rbp, rax
bswap r13
xor r13, rcx
lea rcx, [rsp + 0x58]
lea rdx, [rsp + 0x50]
mov r8, rbp
mov r9, r15
call fcn.14008a210
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov r8, r13
mov r9, r14
call fcn.14008a210
xor r13, rbp
lea rcx, [rsp + 0x38]
mov rdx, rsi
mov r8, r13
mov r9, r12
call fcn.14008a210
mov rdx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x48]
mov r9, qword [rsp + 0x50]
mov r10, qword [rsp + 0x40]
mov rax, rdx
shl rax, 0x3f
mov rcx, rdx
shl rcx, 0x3e
xor rcx, rax
mov rax, rdx
shl rax, 0x39
xor rax, rcx
xor rax, qword [rsp + 0x38]
mov r11, rdx
xor r11, r8
xor r11, r9
xor r11, rax
mov rax, r11
shr rax, 1
mov r13, r11
mov rbp, r11
shr rbp, 2
xor rbp, rax
mov rax, r11
mov rcx, r11
shr rcx, 7
xor rcx, r10
xor rcx, rbp
mov rbp, r11
shld rbp, rdx, 0x3f
shld r13, rdx, 0x3e
shld rax, rdx, 0x39
xor rcx, r11
xor rax, r13
xor rbp, qword [rsp + 0x30]
xor rax, rdx
xor rax, r8
xor rax, r9
xor rax, rbp
xor rax, r10
add rbx, 0x10
add rdi, 0xfffffffffffffff0
cmp rdi, 0xf
ja 0x140074c40
bswap rcx
bswap rax
mov rdx, qword [rsp + 0x28]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140263300
nop
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
Function at 0x14008b9e0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x70], rax
cmp dword [rcx + 0x2d0], 0
je 0x14008ba4b
mov dword [rsp + 0x20], 0x231
lea r9, str..._.._third_party_boringssl_src_crypto_hpke_hpke.c
xor esi, esi
mov ecx, 6
xor edx, edx
mov r8d, 0x42
call fcn.14004a660
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140263300
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rsi, rcx
cmp qword [rcx + 0x2c8], 0xffffffffffffffff
je 0x14008bb08
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov rcx, qword [rsi + 0x18]
call fcn.140064df0
mov rbp, rax
test rax, rax
je 0x14008ba85
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8, rbp
call fcn.140265b50
mov r15, qword [rsp + 0xe8]
lea rcx, [rsi + 0x18]
mov rdx, qword [rsi + 0x2c8]
mov r11, rdx
shr r11, 0x10
mov r12, rdx
shr r12, 0x18
mov r13, rdx
shr r13, 0x20
mov r8, rdx
shr r8, 0x28
mov r9, rdx
shr r9, 0x30
mov r10, rdx
shr r10, 0x38
mov rax, rbp
sub rax, 1
mov byte [rsp + rax + 0x50], dl
lea rax, [rsp + 0x50]
mov byte [rbp + rax - 2], dh
mov byte [rbp + rax - 3], r11b
mov byte [rbp + rax - 4], r12b
mov byte [rbp + rax - 5], r13b
mov byte [rbp + rax - 6], r8b
mov byte [rbp + rax - 7], r9b
mov byte [rbp + rax - 8], r10b
jb 0x14008bbbe
cmp rbp, 8
jae 0x14008bb2b
xor r11d, r11d
jmp 0x14008bba8
mov dword [rsp + 0x20], 0x235
lea r9, str..._.._third_party_boringssl_src_crypto_hpke_hpke.c
xor esi, esi
mov ecx, 6
xor edx, edx
mov r8d, 0x45
jmp 0x14008ba26
cmp rbp, 0x20
jae 0x14008bb36
xor r11d, r11d
jmp 0x14008bb78
mov r11, rbp
and r11, 0xffffffffffffffe0
xor edx, edx
nop
movups xmm0, xmmword [rsi + rdx + 0x270]
movups xmm1, xmmword [rsi + rdx + 0x280]
xorps xmm0, xmmword [rsp + rdx + 0x50]
xorps xmm1, xmmword [rsp + rdx + 0x60]
movaps xmmword [rsp + rdx + 0x50], xmm0
movaps xmmword [rsp + rdx + 0x60], xmm1
add rdx, 0x20
cmp r11, rdx
jne 0x14008bb40
cmp rbp, r11
je 0x14008bbbe
test bpl, 0x18
je 0x14008bba8
mov rdx, r11
mov r11, rbp
and r11, 0xfffffffffffffff8
nop word cs:[rax + rax]
mov r8, qword [rsi + rdx + 0x270]
xor qword [rsp + rdx + 0x50], r8
add rdx, 8
cmp r11, rdx
jne 0x14008bb90
jmp 0x14008bbb9
movzx edx, byte [rsi + r11 + 0x270]
xor byte [rsp + r11 + 0x50], dl
inc r11
cmp rbp, r11
jne 0x14008bba8
mov rdx, qword [rsp + 0xf8]
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0xf0]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], r15
mov rdx, qword [rsp + 0xe0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
mov rdx, r14
mov r8, rbx
mov r9, rdi
call fcn.140065260
test eax, eax
je 0x14008bc17
inc qword [rsi + 0x2c8]
mov esi, 1
jmp 0x14008ba2b
xor esi, esi
jmp 0x14008ba2b
Function at 0x14008bc20
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x78
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x70], rax
cmp dword [rcx + 0x2d0], 0
je 0x14008bd09
mov rsi, rcx
cmp qword [rcx + 0x2c8], 0xffffffffffffffff
je 0x14008bd31
mov rdi, r9
mov rbx, r8
mov r14, rdx
mov rcx, qword [rsi + 0x18]
call fcn.140064df0
mov rbp, rax
test rax, rax
je 0x14008bc86
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8, rbp
call fcn.140265b50
mov r15, qword [rsp + 0xe8]
lea rcx, [rsi + 0x18]
mov rdx, qword [rsi + 0x2c8]
mov r11, rdx
shr r11, 0x10
mov r12, rdx
shr r12, 0x18
mov r13, rdx
shr r13, 0x20
mov r8, rdx
shr r8, 0x28
mov r9, rdx
shr r9, 0x30
mov r10, rdx
shr r10, 0x38
mov rax, rbp
sub rax, 1
mov byte [rsp + rax + 0x50], dl
lea rax, [rsp + 0x50]
mov byte [rbp + rax - 2], dh
mov byte [rbp + rax - 3], r11b
mov byte [rbp + rax - 4], r12b
mov byte [rbp + rax - 5], r13b
mov byte [rbp + rax - 6], r8b
mov byte [rbp + rax - 7], r9b
mov byte [rbp + rax - 8], r10b
jb 0x14008bdee
cmp rbp, 8
jae 0x14008bd59
xor r11d, r11d
jmp 0x14008bdd8
mov dword [rsp + 0x20], 0x249
lea r9, str..._.._third_party_boringssl_src_crypto_hpke_hpke.c
xor esi, esi
mov ecx, 6
xor edx, edx
mov r8d, 0x42
call fcn.14004a660
jmp 0x14008be46
mov dword [rsp + 0x20], 0x24d
lea r9, str..._.._third_party_boringssl_src_crypto_hpke_hpke.c
xor esi, esi
mov ecx, 6
xor edx, edx
mov r8d, 0x45
call fcn.14004a660
jmp 0x14008be46
cmp rbp, 0x20
jae 0x14008bd64
xor r11d, r11d
jmp 0x14008bda8
mov r11, rbp
and r11, 0xffffffffffffffe0
xor edx, edx
nop dword [rax]
movups xmm0, xmmword [rsi + rdx + 0x270]
movups xmm1, xmmword [rsi + rdx + 0x280]
xorps xmm0, xmmword [rsp + rdx + 0x50]
xorps xmm1, xmmword [rsp + rdx + 0x60]
movaps xmmword [rsp + rdx + 0x50], xmm0
movaps xmmword [rsp + rdx + 0x60], xmm1
add rdx, 0x20
cmp r11, rdx
jne 0x14008bd70
cmp rbp, r11
je 0x14008bdee
test bpl, 0x18
je 0x14008bdd8
mov rdx, r11
mov r11, rbp
and r11, 0xfffffffffffffff8
nop word cs:[rax + rax]
mov r8, qword [rsi + rdx + 0x270]
xor qword [rsp + rdx + 0x50], r8
add rdx, 8
cmp r11, rdx
jne 0x14008bdc0
jmp 0x14008bde9
movzx edx, byte [rsi + r11 + 0x270]
xor byte [rsp + r11 + 0x50], dl
inc r11
cmp rbp, r11
jne 0x14008bdd8
mov rdx, qword [rsp + 0xf8]
mov qword [rsp + 0x48], rdx
mov rdx, qword [rsp + 0xf0]
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], r15
mov rdx, qword [rsp + 0xe0]
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rbp
mov qword [rsp + 0x20], rax
mov rdx, r14
mov r8, rbx
mov r9, rdi
call fcn.140064f80
test eax, eax
je 0x14008be44
inc qword [rsi + 0x2c8]
mov esi, 1
jmp 0x14008be46
xor esi, esi
mov rcx, qword [rsp + 0x70]
xor rcx, rsp
call fcn.140263300
mov eax, esi
add rsp, 0x78
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
Function at 0x140093780
Capabilities:
Encode data using xor

Disassembly:
test r8, r8
je 0x140093795
cmp r8, 8
jae 0x140093798
xor eax, eax
xor r9d, r9d
jmp 0x1400938a0
xor eax, eax
ret
cmp r8, 0x20
jae 0x1400937a8
xor r9d, r9d
xor eax, eax
jmp 0x140093837
mov rax, r8
and rax, 0xffffffffffffffe0
pxor xmm0, xmm0
xor r9d, r9d
pxor xmm1, xmm1
nop word [rax + rax]
movdqu xmm2, xmmword [rcx + r9]
movdqu xmm3, xmmword [rcx + r9 + 0x10]
movdqu xmm4, xmmword [rdx + r9]
pxor xmm4, xmm2
por xmm0, xmm4
movdqu xmm2, xmmword [rdx + r9 + 0x10]
pxor xmm2, xmm3
por xmm1, xmm2
add r9, 0x20
cmp rax, r9
jne 0x1400937c0
por xmm1, xmm0
pshufd xmm0, xmm1, 0xee
por xmm0, xmm1
pshufd xmm1, xmm0, 0x55
por xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x10
por xmm0, xmm1
movdqa xmm1, xmm0
psrlw xmm1, 8
por xmm1, xmm0
movd r9d, xmm1
cmp rax, r8
je 0x1400938b4
test r8b, 0x18
je 0x1400938a0
mov r10, rax
mov rax, r8
and rax, 0xfffffffffffffff8
movzx r9d, r9b
movd xmm0, r9d
nop word [rax + rax]
mov r9, qword [rdx + r10]
xor r9, qword [rcx + r10]
movq xmm1, r9
por xmm0, xmm1
add r10, 8
cmp rax, r10
jne 0x140093850
pshufd xmm1, xmm0, 0x55
por xmm1, xmm0
movdqa xmm0, xmm1
psrld xmm0, 0x10
por xmm0, xmm1
movdqa xmm1, xmm0
psrlw xmm1, 8
por xmm1, xmm0
movd r9d, xmm1
cmp rax, r8
je 0x1400938b4
nop word [rax + rax]
movzx r10d, byte [rdx + rax]
xor r10b, byte [rcx + rax]
or r9b, r10b
inc rax
cmp r8, rax
jne 0x1400938a0
movzx eax, r9b
ret

Function at 0x14009b190
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
test rdx, rdx
je 0x14009b1d2
mov rsi, rdx
mov rdi, rcx
mov r14d, 0xffffffff
nop word [rax + rax]
cmp rsi, r14
mov ebx, 0xffffffff
cmovb rbx, rsi
mov rcx, rdi
mov edx, ebx
call sub.ADVAPI32.dll_SystemFunction036
test al, al
je 0x14009b1dc
add rdi, rbx
sub rsi, rbx
jne 0x14009b1b0
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.14027415c
int3

Function at 0x14009b1f0
Capabilities:
Encode data using xor
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbx
mov eax, dword [rcx]
mov r10d, dword [rcx + 4]
test rdx, rdx
je 0x14009b249
xor r11d, r11d
nop word cs:[rax + rax]
inc eax
movzx eax, al
mov esi, dword [rcx + rax*4 + 8]
add r10d, esi
movzx r10d, r10b
mov edi, dword [rcx + r10*4 + 8]
mov dword [rcx + rax*4 + 8], edi
mov dword [rcx + r10*4 + 8], esi
add edi, esi
movzx esi, dil
movzx ebx, byte [r8 + r11]
xor bl, byte [rcx + rsi*4 + 8]
mov byte [r9 + r11], bl
inc r11
cmp rdx, r11
jne 0x14009b210
mov dword [rcx], eax
mov dword [rcx + 4], r10d
pop rbx
pop rdi
pop rsi
ret
Function at 0x14009c5a0
Capabilities:
Get thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
mov esi, ecx
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x28], rax
lea rax, [0x14009c640]
mov qword [rsp + 0x20], rax
lea rcx, [0x14039e1a8]
lea rdx, [0x14009c420]
lea r8, [rsp + 0x20]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x14009c634
cmp dword [0x14039e1b0], 0
je 0x14009c5f1
xor esi, esi
jmp 0x14009c61c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, dword [0x14039e1b4]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rdi, rdi
je 0x14009c5ed
movsxd rax, esi
mov rsi, qword [rdi + rax*8]
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.140263300
mov rax, rsi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
call fcn.14027415c
int3

Function at 0x14009c670
Capabilities:
Get thread local storage value
Set thread local storage value

Disassembly:
push r15
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rdi, r8
mov rsi, rdx
mov ebx, ecx
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x30], rax
lea rax, [0x14009c640]
mov qword [rsp + 0x28], rax
lea rcx, [0x14039e1a8]
lea rdx, [0x14009c420]
lea r8, [rsp + 0x28]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x14009c780
cmp dword [0x14039e1b0], 0
je 0x14009c6d5
mov rcx, rsi
call rdi
xor esi, esi
jmp 0x14009c729
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov ecx, dword [0x14039e1b4]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov r14, rax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
test r14, r14
je 0x14009c745
lea r15, [0x14039e1b8]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
movsxd rbx, ebx
lea rax, [0x14039e1c0]
mov qword [rax + rbx*8], rdi
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_ReleaseSRWLockExclusive]
mov qword [r14 + rbx*8], rsi
mov esi, 1
mov rcx, qword [rsp + 0x30]
xor rcx, rsp
call fcn.140263300
mov eax, esi
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
pop r15
ret
mov ecx, 1
mov edx, 0x28
call fcn.140276ed0
test rax, rax
je 0x14009c6cc
mov r14, rax
mov ecx, dword [0x14039e1b4]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x14009c6f9
mov rcx, r14
call fcn.14026b828
jmp 0x14009c6cc
call fcn.14027415c
int3
Function at 0x1400e1330
Capabilities:
Generate random numbers via winapi

Disassembly:
sub rsp, 0x28
test rcx, rcx
jle 0x1400e1350
mov r8, rcx
xor ecx, ecx
mov r9d, 2
call sub.bcrypt.dll_BCryptGenRandom
test eax, eax
setns al
jmp 0x1400e1352
mov al, 1
add rsp, 0x28
ret

Function at 0x1400e5270
Capabilities:
Enumerate files on windows

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x280
mov rax, qword [0x14039bf08]
xor rax, rsp
mov qword [rsp + 0x278], rax
mov ebx, 4
cmp byte [rcx + 0x18], 0
jne 0x1400e53f5
mov rdi, rdx
mov rsi, rcx
cmp qword [rcx + 0x10], 0
je 0x1400e5320
movsxd rax, dword [rsi + 0x1c]
mov qword [rdi + 0x10], rax
mov rcx, qword [rdi + 8]
mov word [rcx + rax*2], 0
mov rcx, qword [rsi + 0x20]
test rcx, rcx
je 0x1400e52e2
mov rax, qword [rsi]
test rax, rax
je 0x1400e52d5
cmp qword [rax + 0x20], rcx
je 0x1400e52e2
call fcn.140263320
mov qword [rsi + 0x20], 0
mov rax, qword [rsi]
test rax, rax
je 0x1400e52f2
mov rax, qword [rax + 0x20]
mov qword [rsi + 0x20], rax
mov rcx, qword [rsi + 0x10]
lea rdx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_FindNextFileW]
test eax, eax
je 0x1400e53e0
lea r8, [rsp + 0x28]
mov rcx, rdi
mov rdx, rsi
call fcn.1400e5420
mov ebx, eax
jmp 0x1400e53f5
cmp qword [rsi], 0
lea rax, [0x1402fab84]
lea rbx, [0x1402fab88]
cmove rbx, rax
mov r14, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
mov r15d, 0x7fff
mov edx, 0x7fff
sub rdx, rax
lea rcx, [r14 + rax*2]
lea r8, [0x14029d582]
mov r9, rbx
call fcn.1400169e0
mov word [r14 + 0xfffe], 0
test eax, eax
js 0x1400e53ca
movsxd r14, eax
sub r15, qword [rdi + 0x10]
cmp r15, r14
jl 0x1400e53ca
mov edx, 0x8000
mov rcx, rbx
call fcn.140276700
cmp rax, r14
jne 0x1400e53ca
add r14, qword [rdi + 0x10]
mov qword [rdi + 0x10], r14
dec r14d
mov dword [rsi + 0x1c], r14d
mov rcx, qword [rdi + 8]
lea rdx, [rsp + 0x28]
call qword [sym.imp.KERNEL32.dll_FindFirstFileW]
cmp rax, 0xffffffffffffffff
je 0x1400e53d5
mov qword [rsi + 0x10], rax
movsxd rax, dword [rsi + 0x1c]
mov qword [rdi + 0x10], rax
mov rcx, qword [rdi + 8]
mov word [rcx + rax*2], 0
jmp 0x1400e5309
mov ecx, reloc.WS2_32.dll_WSAGetLastError
call qword [sym.imp.KERNEL32.dll_SetLastError]
mov byte [rsi + 0x18], 1
mov ebx, 3
jmp 0x1400e53f5
mov byte [rsi + 0x18], 1
call qword [sym.imp.KERNEL32.dll_GetLastError]
xor ebx, ebx
cmp eax, 0x12
sete bl
add ebx, 3
mov rcx, qword [rsp + 0x278]
xor rcx, rsp
call fcn.140263300
mov eax, ebx
add rsp, 0x280
pop rbx
pop rdi
pop rsi
pop r14
pop r15
ret