joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140067fc0
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 [0x1403a8f38]
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 [0x1402b4e80]
movaps xmmword [rsp + 0x20], xmm0
movaps xmm0, xmmword [0x1402b4e90]
movaps xmmword [rsp + 0x30], xmm0
mov dword [rsp + 0x8c], 0x20
lea rcx, [rsp + 0x20]
call fcn.14007ec60
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 0x14006808b
cmp eax, 0x3f
je 0x140068074
mov r8d, 0x3f
sub r8, rax
add rcx, rdi
xor edx, edx
call fcn.140269430
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007eea0
xor ecx, ecx
jmp 0x140068091
cmp rcx, 0x38
je 0x1400680a4
mov r8d, gethostname
sub r8, rcx
add rcx, rdi
xor edx, edx
call fcn.140269430
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.14007eea0
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 0x140068159
shr ebx, 2
mov eax, dword [rsp + 0x20]
bswap eax
mov dword [rsi], eax
cmp ebx, 1
je 0x140068159
mov eax, dword [rsp + 0x24]
bswap eax
mov dword [rsi + 4], eax
cmp ebx, 2
je 0x140068159
mov eax, dword [rsp + 0x28]
bswap eax
mov dword [rsi + 8], eax
cmp ebx, 3
je 0x140068159
mov eax, dword [rsp + 0x2c]
bswap eax
mov dword [rsi + 0xc], eax
cmp ebx, 4
je 0x140068159
mov eax, dword [rsp + 0x30]
bswap eax
mov dword [rsi + 0x10], eax
cmp ebx, 5
je 0x140068159
mov eax, dword [rsp + 0x34]
bswap eax
mov dword [rsi + 0x14], eax
cmp ebx, 6
je 0x140068159
mov eax, dword [rsp + 0x38]
bswap eax
mov dword [rsi + 0x18], eax
cmp ebx, 7
je 0x140068159
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.1400940f0
mov rcx, qword [rsp + 0x98]
xor rcx, rsp
call fcn.140265f80
mov rax, rsi
add rsp, 0xa0
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
Function at 0x140068190
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 [0x1403a8f38]
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.1400698a0
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 0x1400682a4
cmp eax, 0x7f
je 0x14006828d
mov r8d, 0x7f
sub r8, rax
add rcx, rdi
xor edx, edx
call fcn.140269430
lea rcx, [rsp + 0x20]
mov r8d, 1
mov rdx, rdi
call fcn.14007ff60
xor ecx, ecx
jmp 0x1400682aa
cmp rcx, 0x70
je 0x1400682bd
mov r8d, reloc.WS2_32.dll_WSASetLastError
sub r8, rcx
add rcx, rdi
xor edx, edx
call fcn.140269430
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.14007ff60
test rsi, rsi
je 0x1400683e3
cmp ebx, 8
jb 0x1400683e3
mov eax, ebx
shr eax, 3
cmp ebx, 0x20
jae 0x140068316
xor edx, edx
mov rcx, rsi
jmp 0x1400683b5
mov edx, eax
and edx, 0xfffffffc
mov r8d, edx
lea rcx, [rsi + r8*8]
shl r8, 3
xor r9d, r9d
pxor xmm0, xmm0
nop dword [rax]
movdqu xmm1, xmmword [rsp + r9 + 0x20]
movdqu xmm2, xmmword [rsp + r9 + 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 + r9], xmm1
movdqu xmmword [rsi + r9 + 0x10], xmm2
add r9, 0x20
cmp r8, r9
jne 0x140068330
cmp rdx, rax
je 0x1400683e3
sub rax, rdx
lea rdx, [rsp + rdx*8]
add rdx, 0x20
xor r8d, r8d
nop word cs:[rax + rax]
mov r9, qword [rdx + r8*8]
bswap r9
mov qword [rcx + r8*8], r9
inc r8
cmp rax, r8
jne 0x1400683d0
lea rcx, [rsp + 0x20]
mov edx, 0xd8
call fcn.1400940f0
mov rcx, qword [rsp + 0xf8]
xor rcx, rsp
call fcn.140265f80
mov rax, rsi
add rsp, 0x100
pop rbx
pop rdi
pop rsi
ret
Function at 0x140069810
Capabilities:
Hash data using sha512

Disassembly:
movabs rax, 0x6a09e667f3bcc908
mov qword [rcx], rax
movabs rax, 0xbb67ae8584caa73b
mov qword [rcx + 8], rax
movabs rax, 0x3c6ef372fe94f82b
mov qword [rcx + 0x10], rax
movabs rax, 0xa54ff53a5f1d36f1
mov qword [rcx + 0x18], rax
movabs rax, 0x510e527fade682d1
mov qword [rcx + 0x20], rax
movabs rax, 0x9b05688c2b3e6c1f
mov qword [rcx + 0x28], rax
movabs rax, 0x1f83d9abfb41bd6b
mov qword [rcx + 0x30], rax
movabs rax, 0x5be0cd19137e2179
mov qword [rcx + 0x38], rax
movabs rax, 0x4000000000
mov qword [rcx + 0xd0], rax
xorps xmm0, xmm0
movups xmmword [rcx + 0x40], xmm0
mov eax, 1
ret
Function at 0x140075730
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 [0x1403a8f38]
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 0x140075884
mov rdi, r9
mov rbx, r8
mov r14, qword [rdx]
mov r15, qword [rdx + 8]
mov r12, r14
xor r12, r15
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.14008acc0
lea rcx, [rsp + 0x48]
lea rdx, [rsp + 0x40]
mov r8, r13
mov r9, r14
call fcn.14008acc0
xor r13, rbp
lea rcx, [rsp + 0x38]
mov rdx, rsi
mov r8, r13
mov r9, r12
call fcn.14008acc0
mov r8, qword [rsp + 0x58]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x40]
mov rax, r8
shl rax, 0x3f
mov rcx, r8
shl rcx, 0x3e
xor rcx, rax
mov rax, r8
shl rax, 0x39
xor rax, rcx
xor rax, qword [rsp + 0x38]
mov r11, r8
xor r11, r9
xor r11, r10
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, rdx
xor rcx, rbp
mov rbp, r11
shld rbp, r8, 0x3f
shld r13, r8, 0x3e
shld rax, r8, 0x39
xor rcx, r11
xor rax, r13
xor rbp, qword [rsp + 0x30]
xor rax, r8
xor rax, r9
xor rax, r10
xor rax, rbp
xor rax, rdx
add rbx, 0x10
add rdi, 0xfffffffffffffff0
cmp rdi, 0xf
ja 0x140075790
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.140265f80
nop
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
Function at 0x1400758c0
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbx
sub rsp, 0x28
mov r14, r8
mov rdi, rdx
mov rsi, rcx
mov qword [rcx + 0x180], 0
xorps xmm0, xmm0
movaps xmmword [rcx], xmm0
movaps xmmword [rcx + 0x30], xmm0
movaps xmmword [rcx + 0x40], xmm0
cmp r9, 0xc
jne 0x140075910
mov eax, dword [r14 + 8]
mov dword [rsi + 8], eax
mov rax, qword [r14]
mov qword [rsi], rax
mov byte [rsi + 0xf], 1
mov ebx, 2
jmp 0x140075ab4
mov rbx, r9
cmp r9, 0x10
jb 0x1400759d5
lea r15, [rsi + 0x60]
mov r12, rbx
nop word cs:[rax + rax]
movzx eax, byte [r14]
xor byte [rsi], al
movzx eax, byte [r14 + 1]
xor byte [rsi + 1], al
movzx eax, byte [r14 + 2]
xor byte [rsi + 2], al
movzx eax, byte [r14 + 3]
xor byte [rsi + 3], al
movzx eax, byte [r14 + 4]
xor byte [rsi + 4], al
movzx eax, byte [r14 + 5]
xor byte [rsi + 5], al
movzx eax, byte [r14 + 6]
xor byte [rsi + 6], al
movzx eax, byte [r14 + 7]
xor byte [rsi + 7], al
movzx eax, byte [r14 + 8]
xor byte [rsi + 8], al
movzx eax, byte [r14 + 9]
xor byte [rsi + 9], al
movzx eax, byte [r14 + 0xa]
xor byte [rsi + 0xa], al
movzx eax, byte [r14 + 0xb]
xor byte [rsi + 0xb], al
movzx eax, byte [r14 + 0xc]
xor byte [rsi + 0xc], al
movzx eax, byte [r14 + 0xd]
xor byte [rsi + 0xd], al
movzx eax, byte [r14 + 0xe]
xor byte [rsi + 0xe], al
movzx eax, byte [r14 + 0xf]
xor byte [rsi + 0xf], al
mov rcx, rsi
mov rdx, r15
call fcn.140075600
add r14, 0x10
add r12, 0xfffffffffffffff0
cmp r12, 0xf
ja 0x140075930
test r12, r12
jne 0x1400759e1
jmp 0x140075a96
mov r12, rbx
test r12, r12
je 0x140075a96
cmp r12, 8
jb 0x1400759f9
lea rax, [r14 + r12]
cmp rax, rsi
jbe 0x140075a61
lea rax, [rsi + r12]
cmp r14, rax
jae 0x140075a61
xor eax, eax
mov edx, r12d
sub edx, eax
mov rcx, rax
not rcx
add rcx, r12
and edx, 3
je 0x140075a21
nop
movzx r8d, byte [r14 + rax]
xor byte [rsi + rax], r8b
inc rax
dec rdx
jne 0x140075a10
cmp rcx, 3
jb 0x140075a8a
nop word [rax + rax]
movzx ecx, byte [r14 + rax]
xor byte [rsi + rax], cl
movzx ecx, byte [r14 + rax + 1]
xor byte [rsi + rax + 1], cl
movzx ecx, byte [r14 + rax + 2]
xor byte [rsi + rax + 2], cl
movzx ecx, byte [r14 + rax + 3]
xor byte [rsi + rax + 3], cl
add rax, 4
cmp r12, rax
jne 0x140075a30
jmp 0x140075a8a
mov eax, r12d
and eax, 8
xor ecx, ecx
nop dword [rax]
mov rdx, qword [r14 + rcx]
xor qword [rsi + rcx], rdx
add rcx, 8
cmp rax, rcx
jne 0x140075a70
cmp r12, rax
jne 0x1400759fb
lea rdx, [rsi + 0x60]
mov rcx, rsi
call fcn.140075600
shl rbx, 3
bswap rbx
xor qword [rsi + 8], rbx
lea rdx, [rsi + 0x60]
mov rcx, rsi
call fcn.140075600
mov ebx, dword [rsi + 0xc]
bswap ebx
inc ebx
lea rdx, [rsi + 0x20]
mov rcx, rsi
mov r8, rdi
call qword [rsi + 0x170]
bswap ebx
mov dword [rsi + 0xc], ebx
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
Function at 0x140075ae0
Capabilities:
Encode data using xor

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
xor eax, eax
cmp qword [rcx + 0x38], 0
jne 0x140075c84
mov r9, qword [rcx + 0x30]
add r9, r8
setb r10b
movabs r11, 0x2000000000000000
cmp r9, r11
ja 0x140075c84
test r10b, r10b
jne 0x140075c84
mov qword [rcx + 0x30], r9
mov eax, dword [rcx + 0x184]
test eax, eax
je 0x140075b86
test r8, r8
je 0x140075c79
nop word cs:[rax + rax]
movzx r9d, byte [rdx]
mov r10d, eax
xor byte [rcx + r10 + 0x40], r9b
inc rdx
lea rbx, [r8 - 1]
inc eax
and eax, 0xf
je 0x140075b63
cmp r8, 1
mov r8, rbx
jne 0x140075b40
test eax, eax
jne 0x140075c79
lea rax, [rcx + 0x60]
mov r14, rcx
add rcx, 0x40
mov rsi, rdx
mov rdx, rax
call fcn.140075600
mov rdx, rsi
jmp 0x140075b8c
mov r14, rcx
mov rbx, r8
mov rsi, rbx
and rsi, 0xfffffffffffffff0
je 0x140075c68
lea rax, [r14 + 0x60]
lea rcx, [r14 + 0x40]
mov rdi, rdx
mov rdx, rax
mov r8, rdi
mov r9, rsi
call fcn.140075730
mov rdx, rdi
lea rax, [rdi + rsi]
and ebx, 0xf
test rbx, rbx
je 0x140075c74
mov rcx, r14
lea r9, [r14 + 0x40]
cmp rbx, 8
jb 0x140075bf3
lea r8, [rbx + rsi]
add r8, rdx
cmp r9, r8
jae 0x140075c8e
lea r8, [rcx + rbx]
add r8, 0x40
cmp rax, r8
jae 0x140075c8e
xor r8d, r8d
mov r10, r8
not r10
add r10, rbx
mov r11, rbx
and r11, 3
je 0x140075c21
nop dword [rax + rax]
movzx edi, byte [rax + r8]
xor byte [r9 + r8], dil
inc r8
dec r11
jne 0x140075c10
cmp r10, 3
jb 0x140075c64
lea rax, [rsi + rdx]
add rax, 3
nop
movzx edx, byte [rax + r8 - 3]
xor byte [rcx + r8 + 0x40], dl
movzx edx, byte [rax + r8 - 2]
xor byte [rcx + r8 + 0x41], dl
movzx edx, byte [rax + r8 - 1]
xor byte [rcx + r8 + 0x42], dl
movzx edx, byte [rax + r8]
xor byte [rcx + r8 + 0x43], dl
add r8, 4
cmp rbx, r8
jne 0x140075c30
mov eax, ebx
jmp 0x140075c79
mov rax, rdx
test rbx, rbx
jne 0x140075bc5
xor eax, eax
mov rcx, r14
mov dword [rcx + 0x184], eax
mov eax, 1
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
cmp rbx, 0x20
jae 0x140075c99
xor r8d, r8d
jmp 0x140075cf4
mov r8, rbx
and r8, 0xffffffffffffffe0
lea r10, [rsi + rdx]
add r10, 0x10
xor r11d, r11d
nop dword [rax + rax]
movups xmm0, xmmword [r10 + r11 - 0x10]
movups xmm1, xmmword [r10 + r11]
movups xmm2, xmmword [rcx + r11 + 0x40]
xorps xmm2, xmm0
movups xmm0, xmmword [rcx + r11 + 0x50]
xorps xmm0, xmm1
movups xmmword [rcx + r11 + 0x40], xmm2
movups xmmword [rcx + r11 + 0x50], xmm0
add r11, 0x20
cmp r8, r11
jne 0x140075cb0
cmp rbx, r8
je 0x140075c64
test bl, 0x18
je 0x140075bf6
mov r10, r8
mov r8, rbx
and r8, 0xfffffffffffffff8
nop
mov r11, qword [rax + r10]
xor qword [r9 + r10], r11
add r10, 8
cmp r8, r10
jne 0x140075d00
cmp rbx, r8
je 0x140075c64
jmp 0x140075bf6
Function at 0x14007d8a0
Capabilities:
Hash data using sha1

Disassembly:
mov r8d, 1
jmp fcn.14007d8b0
Function at 0x14008c490
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x70
mov rax, qword [0x1403a8f38]
xor rax, rsp
mov qword [rsp + 0x68], rax
cmp dword [rcx + 0x2d0], 0
je 0x14008c4f7
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.14004adc0
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.140265f80
mov eax, esi
add rsp, 0x70
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov rsi, rcx
cmp qword [rcx + 0x2c8], 0xffffffffffffffff
je 0x14008c580
mov r14, rdx
mov r15, r8
mov r12, r9
mov rcx, qword [rsi + 0x18]
call fcn.1400657c0
mov rdi, rax
test rax, rax
je 0x14008c52d
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8, rdi
call fcn.140269430
mov rbx, qword [rsp + 0xe8]
mov r11, qword [rsp + 0xe0]
mov r10, qword [rsp + 0xd8]
mov rax, qword [rsp + 0xd0]
lea rcx, [rsi + 0x18]
mov rdx, qword [rsi + 0x2c8]
bswap rdx
mov qword [rsp + rdi + 0x48], rdx
test rdi, rdi
mov r9, r12
mov r8, r15
mov rdx, r14
je 0x14008c63e
cmp rdi, 8
jae 0x14008c5a3
xor r14d, r14d
jmp 0x14008c628
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 0x14008c4d4
cmp rdi, 0x20
jae 0x14008c5ae
xor r14d, r14d
jmp 0x14008c5fe
mov r14, rdi
and r14, 0xffffffffffffffe0
xor r15d, r15d
nop dword [rax + rax]
movups xmm0, xmmword [rsi + r15 + 0x270]
movups xmm1, xmmword [rsi + r15 + 0x280]
xorps xmm0, xmmword [rsp + r15 + 0x50]
xorps xmm1, xmmword [rsp + r15 + 0x60]
movaps xmmword [rsp + r15 + 0x50], xmm0
movaps xmmword [rsp + r15 + 0x60], xmm1
add r15, 0x20
cmp r14, r15
jne 0x14008c5c0
cmp rdi, r14
je 0x14008c63e
test dil, 0x18
je 0x14008c628
mov r15, r14
mov r14, rdi
and r14, 0xfffffffffffffff8
nop dword [rax + rax]
mov r12, qword [rsi + r15 + 0x270]
xor qword [rsp + r15 + 0x50], r12
add r15, 8
cmp r14, r15
jne 0x14008c610
jmp 0x14008c639
movzx ebp, byte [rsi + r14 + 0x270]
xor byte [rsp + r14 + 0x50], bpl
inc r14
cmp rdi, r14
jne 0x14008c628
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdi
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.140065c30
test eax, eax
je 0x14008c67b
inc qword [rsi + 0x2c8]
mov esi, 1
jmp 0x14008c4d9
xor esi, esi
jmp 0x14008c4d9
Function at 0x14008c690
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x70
mov rax, qword [0x1403a8f38]
xor rax, rsp
mov qword [rsp + 0x68], rax
cmp dword [rcx + 0x2d0], 0
je 0x14008c747
mov rsi, rcx
cmp qword [rcx + 0x2c8], 0xffffffffffffffff
je 0x14008c76f
mov r14, rdx
mov r15, r8
mov r12, r9
mov rcx, qword [rsi + 0x18]
call fcn.1400657c0
mov rdi, rax
test rax, rax
je 0x14008c6f4
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8, rdi
call fcn.140269430
mov rbx, qword [rsp + 0xe8]
mov r11, qword [rsp + 0xe0]
mov r10, qword [rsp + 0xd8]
mov rax, qword [rsp + 0xd0]
lea rcx, [rsi + 0x18]
mov rdx, qword [rsi + 0x2c8]
bswap rdx
mov qword [rsp + rdi + 0x48], rdx
test rdi, rdi
mov r9, r12
mov r8, r15
mov rdx, r14
je 0x14008c82e
cmp rdi, 8
jae 0x14008c797
xor r14d, r14d
jmp 0x14008c818
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.14004adc0
jmp 0x14008c86a
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.14004adc0
jmp 0x14008c86a
cmp rdi, 0x20
jae 0x14008c7a2
xor r14d, r14d
jmp 0x14008c7ee
mov r14, rdi
and r14, 0xffffffffffffffe0
xor r15d, r15d
nop dword [rax]
movups xmm0, xmmword [rsi + r15 + 0x270]
movups xmm1, xmmword [rsi + r15 + 0x280]
xorps xmm0, xmmword [rsp + r15 + 0x50]
xorps xmm1, xmmword [rsp + r15 + 0x60]
movaps xmmword [rsp + r15 + 0x50], xmm0
movaps xmmword [rsp + r15 + 0x60], xmm1
add r15, 0x20
cmp r14, r15
jne 0x14008c7b0
cmp rdi, r14
je 0x14008c82e
test dil, 0x18
je 0x14008c818
mov r15, r14
mov r14, rdi
and r14, 0xfffffffffffffff8
nop dword [rax + rax]
mov r12, qword [rsi + r15 + 0x270]
xor qword [rsp + r15 + 0x50], r12
add r15, 8
cmp r14, r15
jne 0x14008c800
jmp 0x14008c829
movzx ebp, byte [rsi + r14 + 0x270]
xor byte [rsp + r14 + 0x50], bpl
inc r14
cmp rdi, r14
jne 0x14008c818
mov qword [rsp + 0x48], rbx
mov qword [rsp + 0x40], r11
mov qword [rsp + 0x38], r10
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rdi
lea rax, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call fcn.140065950
test eax, eax
je 0x14008c868
inc qword [rsi + 0x2c8]
mov esi, 1
jmp 0x14008c86a
xor esi, esi
mov rcx, qword [rsp + 0x68]
xor rcx, rsp
call fcn.140265f80
mov eax, esi
add rsp, 0x70
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
Function at 0x1400941d0
Capabilities:
Encode data using xor

Disassembly:
test r8, r8
je 0x1400941e5
cmp r8, 8
jae 0x1400941e8
xor eax, eax
xor r9d, r9d
jmp 0x1400942f0
xor eax, eax
ret
cmp r8, 0x20
jae 0x1400941f8
xor r9d, r9d
xor eax, eax
jmp 0x140094287
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 0x140094210
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 0x140094304
test r8b, 0x18
je 0x1400942f0
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 0x1400942a0
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 0x140094304
nop word [rax + rax]
movzx r10d, byte [rdx + rax]
xor r10b, byte [rcx + rax]
or r9b, r10b
inc rax
cmp r8, rax
jne 0x1400942f0
movzx eax, r9b
ret

Function at 0x14009bc40
Capabilities:
Generate random numbers via rtlgenrandom

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
test rdx, rdx
je 0x14009bc82
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 0x14009bc8c
add rdi, rbx
sub rsi, rbx
jne 0x14009bc60
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
ret
call fcn.140277aac
int3

Function at 0x14009bca0
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 0x14009bcf9
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 0x14009bcc0
mov dword [rcx], eax
mov dword [rcx + 4], r10d
pop rbx
pop rdi
pop rsi
ret
Function at 0x14009d120
Capabilities:
Get thread local storage value

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x30
mov esi, ecx
mov rax, qword [0x1403a8f38]
xor rax, rsp
mov qword [rsp + 0x28], rax
lea rax, [0x14009d1c0]
mov qword [rsp + 0x20], rax
lea rcx, [0x1403ab308]
lea rdx, [0x14009cfa0]
lea r8, [rsp + 0x20]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x14009d1b4
cmp dword [0x1403ab310], 0
je 0x14009d171
xor esi, esi
jmp 0x14009d19c
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebx, eax
mov ecx, dword [0x1403ab314]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov rdi, rax
mov ecx, ebx
call qword [sym.imp.KERNEL32.dll_SetLastError]
test rdi, rdi
je 0x14009d16d
movsxd rax, esi
mov rsi, qword [rdi + rax*8]
mov rcx, qword [rsp + 0x28]
xor rcx, rsp
call fcn.140265f80
mov rax, rsi
add rsp, 0x30
pop rbx
pop rdi
pop rsi
ret
call fcn.140277aac
int3

Function at 0x14009d1f0
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 [0x1403a8f38]
xor rax, rsp
mov qword [rsp + 0x30], rax
lea rax, [0x14009d1c0]
mov qword [rsp + 0x28], rax
lea rcx, [0x1403ab308]
lea rdx, [0x14009cfa0]
lea r8, [rsp + 0x28]
xor r9d, r9d
call qword [sym.imp.KERNEL32.dll_InitOnceExecuteOnce]
test eax, eax
je 0x14009d300
cmp dword [0x1403ab310], 0
je 0x14009d255
mov rcx, rsi
call rdi
xor esi, esi
jmp 0x14009d2a9
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov ebp, eax
mov ecx, dword [0x1403ab314]
call qword [sym.imp.KERNEL32.dll_TlsGetValue]
mov r14, rax
mov ecx, ebp
call qword [sym.imp.KERNEL32.dll_SetLastError]
test r14, r14
je 0x14009d2c5
lea r15, [0x1403ab318]
mov rcx, r15
call qword [sym.imp.KERNEL32.dll_AcquireSRWLockExclusive]
movsxd rbx, ebx
lea rax, [0x1403ab320]
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.140265f80
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.14027ab6c
test rax, rax
je 0x14009d24c
mov r14, rax
mov ecx, dword [0x1403ab314]
mov rdx, rax
call qword [sym.imp.KERNEL32.dll_TlsSetValue]
test eax, eax
jne 0x14009d279
mov rcx, r14
call fcn.14026f0c8
jmp 0x14009d24c
call fcn.140277aac
int3