joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140057593
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x58
mov qword [rsp + 0x48], r9
mov r9, rcx
mov r10, rdx
shr r10, 1
mov rax, rdx
and rax, 0xfffffffffffffffe
add rcx, rax
mov qword [rsp + 0x28], rcx
lea rdi, [r9 + rax - 2]
mov qword [rsp + 0x20], r9
lea r13, [r9 + rdx*2 - 2]
mov qword [rsp + 0x38], rdx
mov qword [rsp + 0x30], r8
lea rax, [r8 + rdx*2]
add rax, 0xfffffffffffffffe
mov qword [rsp + 0x40], rax
neg r10
mov qword [rsp + 0x50], r10
xor r14d, r14d
mov r12, qword [rsp + 0x48]
cmp qword [rsp + 0x50], r14
je 0x140057693
mov rsi, r13
mov r13, qword [rsp + 0x28]
movzx ebp, word [r13]
mov rbx, qword [rsp + 0x20]
movzx r15d, word [rbx]
mov rcx, r12
mov edx, ebp
mov r8d, r15d
call fcn.1400571f6
test al, al
cmovne r15d, ebp
mov rdx, qword [rsp + 0x30]
mov word [rdx], r15w
movzx ecx, al
xor al, 1
lea r13, [r13 + rcx*2]
mov qword [rsp + 0x28], r13
movzx eax, al
lea rbx, [rbx + rax*2]
mov qword [rsp + 0x20], rbx
add rdx, 2
mov qword [rsp + 0x30], rdx
movzx ebp, word [rsi]
movzx r15d, word [rdi]
mov rcx, r12
mov edx, ebp
mov r8d, r15d
call fcn.1400571f6
test al, al
cmovne ebp, r15d
mov rcx, qword [rsp + 0x40]
mov word [rcx + r14*2], bp
movzx eax, al
add eax, eax
lea r13, [rax + rsi]
add r13, 0xfffffffffffffffe
sub rdi, rax
dec r14
jmp 0x1400575f6
add rdi, 2
test byte [rsp + 0x38], 1
jne 0x1400576aa
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x20]
jmp 0x1400576dc
xor eax, eax
xor ecx, ecx
mov r9, qword [rsp + 0x20]
cmp r9, rdi
setae al
setb cl
mov r8, qword [rsp + 0x28]
mov rdx, r8
cmovb rdx, r9
movzx edx, word [rdx]
mov r10, qword [rsp + 0x30]
mov word [r10], dx
lea r9, [r9 + rcx*2]
lea r8, [r8 + rax*2]
cmp r9, rdi
jne 0x1400576fb
add r13, 2
cmp r8, r13
jne 0x1400576fb
add rsp, 0x58
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call fcn.1402e8a10
int3

Function at 0x1400624bd
Capabilities:
Create directory

Disassembly:
test cl, 1
je 0x1400624cd
mov rcx, rdx
mov rdx, r8
jmp fcn.14011d570
mov rcx, rdx
mov rdx, r8
jmp fcn.14011d4c0
Function at 0x1400625c8
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x68
mov rdi, rcx
mov rsi, qword [rdx + 8]
mov r12, qword [rdx + 0x18]
test r12, r12
sete al
test rsi, rsi
sete cl
or cl, al
cmp cl, 1
jne 0x140062603
mov qword [rdi + 8], 2
jmp 0x1400627df
mov r14, r9
mov rbx, r8
mov r15, rdx
lea r9, [rsp + 0x30]
and qword [r9], 0
lea rcx, [0x1402f8818]
xor edx, edx
xor r8d, r8d
call sub.shell32.dll_SHGetKnownFolderPath
test eax, eax
js 0x1400627d2
mov r8, 0xffffffffffffffff
mov r13, qword [rsp + 0x30]
cmp word [r13 + r8*2 + 2], 0
lea r8, [r8 + 1]
jne 0x14006263a
lea rbp, [rsp + 0x48]
mov rcx, rbp
mov rdx, r13
call fcn.140117060
mov rcx, r13
call sub.ole32.dll_CoTaskMemFree
mov rdx, qword [rbp]
mov rax, qword [rbp + 8]
mov rcx, rdx
neg rcx
mov rcx, qword [rbp + 0x10]
jo 0x1400627d7
lea r13, [rsp + 0x48]
mov r8, qword [r13 + 0x18]
mov qword [r13], rdx
mov qword [r13 + 8], rax
mov qword [r13 + 0x10], rcx
mov qword [r13 + 0x18], r8
mov rdx, qword [r15 + 0x10]
lea rbp, [rsp + 0x30]
mov rcx, rbp
mov r8, r12
call fcn.140062815
mov rcx, r13
mov rdx, rbp
call fcn.1400624d8
mov rdx, qword [r15]
lea r15, [rsp + 0x30]
mov rcx, r15
mov r8, rsi
call fcn.140062815
mov rcx, r13
mov rdx, r15
call fcn.1400624d8
mov rdx, qword [r13]
mov rax, qword [r13 + 8]
mov rcx, qword [r13 + 0x10]
mov r8, rdx
neg r8
jo 0x1400627d7
mov qword [rsp + 0x28], rdi
lea r9, [rsp + 0x48]
mov r8, qword [r9 + 0x18]
mov qword [r9], rdx
mov qword [r9 + 8], rax
mov qword [r9 + 0x10], rcx
mov qword [r9 + 0x18], r8
xor esi, esi
xor r13d, r13d
xor ebp, ebp
xor edi, edi
xor eax, eax
xor r15d, r15d
test r15b, 1
jne 0x1400627fd
mov r12, rax
mov r15b, 1
mov r8, r14
sub r8, rdi
jb 0x1400627cd
lea rdx, [rbx + rdi]
cmp r8, 0xf
ja 0x14006274a
xor r9d, r9d
cmp r8, r9
je 0x140062784
cmp byte [rdx + r9], 0x2f
je 0x14006275a
inc r9
jmp 0x140062739
mov cl, 0x2f
call fcn.14006e390
cmp rax, 1
jne 0x140062784
mov r9, rdx
lea rsi, [r9 + rdi]
inc rsi
add r9, rdi
mov rdi, rsi
cmp r9, r14
jae 0x14006271d
cmp byte [rbx + r9], 0x2f
mov rdi, rsi
jne 0x14006271d
xor r15d, r15d
mov r13, rsi
mov rdi, rsi
mov rax, rsi
jmp 0x140062793
mov rsi, r14
mov bpl, 1
mov rdi, r14
mov rax, r12
mov r9, r14
sub r9, r12
je 0x140062710
add r12, rbx
lea rdi, [rsp + 0x30]
mov rcx, rdi
mov rdx, r12
mov r8, r9
call fcn.140062815
lea rcx, [rsp + 0x48]
mov rdx, rdi
call fcn.1400624d8
mov rdi, rsi
mov rax, r13
mov r15d, ebp
jmp 0x140062710
mov bpl, 1
jmp 0x14006278d
mov eax, 1
mov qword [rdi + 8], rax
mov qword [rdi + 0x10], rcx
movabs rax, 0x8000000000000000
mov qword [rdi], rax
add rsp, 0x68
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
movups xmm0, xmmword [rsp + 0x48]
movups xmm1, xmmword [rsp + 0x58]
mov rax, qword [rsp + 0x28]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
jmp 0x1400627ec
Function at 0x14007267f
Capabilities:
Hash data with crc32

Disassembly:
push r14
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x20
mov r9, r8
mov rax, rdx
not ecx
lea rdi, [0x1402fe4c0]
mov ebx, 0xff
lea rsi, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fcrc32fast_1.3.2_src_baseline.rs
cmp r9, 0x40
jb 0x1400727af
mov r14d, 4
sub r14, 1
jb 0x1400726a4
cmp r9, 0xf
jbe 0x1400727dc
movzx edx, byte [rax + 0xf]
movzx r8d, byte [rax + 0xe]
mov ebp, dword [rdi + r8*4 + 0x400]
xor ebp, dword [rdi + rdx*4]
movzx edx, byte [rax + 0xd]
xor ebp, dword [rdi + rdx*4 + 0x800]
movzx edx, byte [rax + 0xc]
xor ebp, dword [rdi + rdx*4 + 0xc00]
movzx edx, byte [rax + 0xb]
xor ebp, dword [rdi + rdx*4 + 0x1000]
movzx edx, byte [rax + 0xa]
xor ebp, dword [rdi + rdx*4 + 0x1400]
movzx edx, byte [rax + 9]
xor ebp, dword [rdi + rdx*4 + 0x1800]
movzx edx, byte [rax + 8]
xor ebp, dword [rdi + rdx*4 + 0x1c00]
movzx edx, byte [rax + 7]
xor ebp, dword [rdi + rdx*4 + 0x2000]
movzx edx, byte [rax + 6]
xor ebp, dword [rdi + rdx*4 + 0x2400]
movzx edx, byte [rax + 5]
xor ebp, dword [rdi + rdx*4 + 0x2800]
movzx edx, byte [rax + 4]
xor ebp, dword [rdi + rdx*4 + 0x2c00]
mov edx, ecx
shr edx, 0x18
movzx r8d, byte [rax + 3]
xor r8d, edx
xor ebp, dword [rdi + r8*4 + 0x3000]
mov edx, ecx
shr edx, 0x10
and edx, ebx
movzx r8d, byte [rax + 2]
xor r8d, edx
xor ebp, dword [rdi + r8*4 + 0x3400]
mov edx, ecx
shr edx, 8
and edx, ebx
movzx r8d, byte [rax + 1]
xor r8d, edx
xor ebp, dword [rdi + r8*4 + 0x3800]
and ecx, ebx
movzx edx, byte [rax]
xor edx, ecx
xor ebp, dword [rdi + rdx*4 + 0x3c00]
mov rcx, rax
mov rdx, r9
mov r8, rsi
call fcn.140072cc3
mov r9, rdx
mov ecx, ebp
jmp 0x1400726b4
xor edx, edx
cmp r9, rdx
je 0x1400727cd
mov r8b, byte [rax + rdx]
xor r8b, cl
movzx r8d, r8b
shr ecx, 8
xor ecx, dword [rdi + r8*4]
inc rdx
jmp 0x1400727b1
not ecx
mov eax, ecx
add rsp, 0x20
pop rbx
pop rbp
pop rdi
pop rsi
pop r14
ret
lea r8, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fcrc32fast_1.3.2_src_baseline.rs
mov ecx, 0xf
mov rdx, r9
call fcn.1402e8300
int3
Function at 0x140082f30
Capabilities:
Hash data using fnv

Disassembly:
mov rax, qword [rcx]
xor r9d, r9d
movabs r10, 0x100000001b3
cmp r8, r9
je 0x140082f56
movzx r11d, byte [rdx + r9]
xor rax, r11
imul rax, r10
inc r9
jmp 0x140082f40
mov qword [rcx], rax
ret

Function at 0x140087c6d
Capabilities:
Encode data using xor

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1158
call fcn.1402e62b0
sub rsp, rax
movdqa xmmword [rsp + 0x1140], xmm10
movdqa xmmword [rsp + 0x1130], xmm9
movdqa xmmword [rsp + 0x1120], xmm8
movdqa xmmword [rsp + 0x1110], xmm7
movdqa xmmword [rsp + 0x1100], xmm6
mov rbx, rdx
mov qword [rsp + 0xf8], rcx
mov rsi, qword [rdx + 8]
mov rdi, qword [rdx + 0x10]
lea r8, str..__C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001fignore_0.4.18_srcgitignore.rs
mov r9d, 2
mov rcx, rsi
mov rdx, rdi
call fcn.140117350
test rax, rax
cmove rax, rsi
cmovne rdi, rdx
lea r14, [rsp + 0x5f0]
mov rcx, r14
mov rdx, rax
mov r8, rdi
call case.0x14011ce92.51
and qword [r14 - 0x18], 0
mov edi, 8
mov qword [r14 - 0x10], rdi
and qword [r14 - 8], 0
lea r14, [rsp + 0x610]
and qword [r14], 0
mov qword [r14 + 8], rdi
and qword [r14 + 0x10], 0
mov rcx, qword [rbx]
mov rdx, rsi
call fcn.14018159d
mov al, byte [rbx + 0x90]
mov byte [r14 + 0x18], al
mov rdx, qword [rbx + 0x20]
mov rax, qword [rbx + 0x28]
mov qword [rsp + 0x350], rbx
imul rcx, qword [rbx + 0x30], 0x18
add rcx, rax
mov qword [rsp + 0xb0], rax
mov qword [rsp + 0xb8], rax
mov qword [rsp + 0xc0], rdx
mov qword [rsp + 0xc8], rcx
lea rdx, [rsp + 0x6e0]
lea r15, [rdx + rdi]
lea rdx, [rsp + 0x420]
add rdx, rdi
mov qword [rsp + 0xa0], rdx
lea rdx, [rsp + 0xc30]
add rdx, rdi
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 0xde0]
add rdi, rdx
mov qword [rsp + 0x48], rdi
lea r13, [0x1403add6f]
lea r14, [rsp + 0x180]
movabs r12, 0x8000000000000007

Function at 0x1400b0b40
Capabilities:
Hash data using fnv

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x20
mov rsi, rdx
mov rdi, rcx
mov rbx, qword [rcx]
xor ecx, ecx
test rbx, rbx
setne cl
call fcn.1400b0b8b
test rbx, rbx
je 0x1400b0b79
mov rdx, qword [rdi + 8]
mov r8, qword [rdi + 0x10]
mov rcx, rsi
add rsp, 0x20
pop rbx
pop rdi
pop rsi
jmp fcn.140082f30
mov cl, byte [rdi + 8]
mov rdx, rsi
mov edx, esi
Function at 0x1400b8e7d
Capabilities:
Send data
Send data on socket

Disassembly:
sub rsp, 0x28
lea rdx, [0x1403b4f48]
mov r8d, 1
xor r9d, r9d
call sub.ws2_32.dll_send
cmp eax, 0xffffffff
jne 0x1400b8eb6
call qword [sym.imp.ws2_32.dll_WSAGetLastError]
shl rax, 0x20
or rax, 2
lea rcx, [rsp + 0x20]
mov qword [rcx], rax
call fcn.1400ae424
nop
add rsp, 0x28
ret
Function at 0x1400c8670
Capabilities:
Receive data
Receive data on socket

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x68
mov rsi, rdx
mov rbx, rcx
mov rax, qword [rdx + 0x20]
lea rcx, [rax - 2]
cmp rcx, 2
jae 0x1400c86a3
mov edx, 1
mov rcx, rsi
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r14
jmp fcn.1400c8798
test rax, rax
jne 0x1400c878d
mov rcx, qword [rsi]
mov rdx, qword [rsi + 8]
cmp rcx, 1
jne 0x1400c86c2
mov r8, qword [rdx]
and r8d, 0xe
jmp 0x1400c86c5
xor r8d, r8d
lea rdi, [rsi + 0x20]
call fcn.1400c87bf
lea rdx, [rsp + 0x58]
and dword [rdx], 0
mov r14, qword [rbx]
lea rax, [r14 + 8]
mov qword [rdx + 8], 1
lea r8, [rsp + 0x40]
and dword [r8], 0
lea rbx, [rsp + 0x44]
and dword [rbx], 0
mov rcx, qword [r14]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r8
and qword [rsp + 0x30], 0
mov r8d, 1
mov r9, rbx
call sub.ws2_32.dll_WSARecv
mov r8d, dword [rbx]
lea rbx, [rsp + 0x48]
mov rcx, rbx
mov edx, eax
ret 0xf6e8
sub byte [rax], al
add byte [rax - 0x75], cl
add ecx, dword [rax - 0x7b]
invalid
je 0x1400c874e
cmp eax, 1
Function at 0x1400cc2a4
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
test byte [rdx], 1
je 0x1400cc2e3
lea rax, [rdx + 8]
cmp qword [rdx + 0x38], 0xffffffffffffffff
mov r8, qword [rdx + 0x48]
mov eax, dword [rdx + 0x48]
mov r9, qword [rdx + 0x50]
push rax
mov r10, qword [rdx + 0x58]
mov rdx, qword [rdx + 0x60]
je 0x1400cc3d2
test byte [rbx], al
add dword [rax], eax
invalid
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x30], 0
jmp 0x1400cc3e1
cmp byte [rdx + 0x1a], 0
jne 0x1400cc3f5
add dword [rax], eax
invalid
mov rax, qword [rdx + 0x48]
mov r9, qword [rdx + 0x50]
mov r8, qword [rdx + 8]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], r10
mov byte [rsp + 0x30], 1
mov rdx, rax
call fcn.14000bc2d
jmp 0x1400cc40c

Function at 0x1400cc768
Capabilities:
Set socket configuration

Disassembly:
sub rsp, 0x38
mov eax, edx
lea r9, [rsp + 0x34]
mov dword [r9], r8d
mov dword [rsp + 0x20], 4
mov edx, 0xffff
mov r8d, eax
call sub.ws2_32.dll_setsockopt
cmp eax, 0xffffffff
je 0x1400cc794
xor eax, eax
jmp 0x1400cc799
call fcn.1400c886c

Function at 0x1400cd6c4
Capabilities:
Link many functions at runtime

Disassembly:
push r15
push r14
push rsi
push rdi
push rbx
sub rsp, 0x50
mov rsi, rcx
mov r14, qword [0x14042b930]
test r14, r14
jne 0x1400cd7f6
lea rcx, [0x140353ea3]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400cd72c
mov rbx, rax
lea rdx, [0x140353ec4]
mov rcx, rax
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x1400cd72c
mov rdi, rax
lea rdx, [0x140353ed2]
mov rcx, rbx
mov ecx, ebx
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x1400cd72c
mov r15, rax
xor ebx, ebx
jmp 0x1400cd7ae
lea rcx, [0x1403e23e1]
call qword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test rax, rax
je 0x1400cd80a
mov rdi, rax
lea rdx, str.NtCreateKeyedEvent
lea edx, str.NtCreateKeyedEvent
mov rcx, rax
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x1400cd80a
mov r14, rax
lea rdx, str.NtReleaseKeyedEvent
mov rcx, rdi
call sub.KERNEL32.dll_GetProcAddress
test rax, rax
je 0x1400cd80a
mov rbx, rax
lea rdx, str.NtWaitForKeyedEvent
mov rcx, rdi
call sub.KERNEL32.dll_GetProcAddress
and dword [rax], eax

Function at 0x1400ce19a
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x248
movaps xmmword [rsp + 0x230], xmm6
mov r13, r8
mov r14, rdx
mov qword [rsp + 0x138], rcx
lea rax, [r8 + 0x18]
mov qword [rsp + 0x70], rax
lea rdi, [r8 + 0x6d8]
lea rax, [r8 + 0x400]
mov qword [rsp + 0x88], rax
lea rax, [r8 + 0x418]
mov qword [rsp + 0x1f0], rax
lea rax, [r8 + 0x654]
mov qword [rsp + 0x210], rax
lea rax, [r8 + 0x2c0]
mov qword [rsp + 0xe0], rax
lea rax, [r8 + 0x3e0]
mov qword [rsp + 0x1c0], rax
lea rax, [r8 + 0x690]
mov qword [rsp + 0x1e8], rax
lea rax, [r8 + 0x40]
mov qword [rsp + 0x208], rax
mov byte [rsp + 0x3e], r9b
and r9b, 3
mov byte [rsp + 0x6f], r9b
lea rax, [r8 + 0x6a8]
mov qword [rsp + 0x168], rax
xorps xmm6, xmm6
mov qword [rsp + 0x128], 0
mov qword [rsp + 0x60], r8
mov qword [rsp + 0x40], rdi
Function at 0x1400ddc1e
Capabilities:
Hash data using fnv

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0x28
sub byte [rbx + rcx*4 + 0x51], cl
push rcx
and byte [rbp - 0x7b], cl
test r10, r10
ror byte [rdi], cl
je 0x1400ddce8
add byte [rax], al
invalid
mov rdi, r8
mov rbx, rdx
ror dword [rax - 0x77], cl
mov rsi, rcx
invalid
mov rcx, qword [rdx]
mov ecx, dword [rdx]
movabs rax, 0xcbf29ce484222325
test ah, ah
in al, 0x9c
bnd retf
xor rax, rcx
xor eax, ecx
movabs rdx, 0x100000001b3
mov bl, 1
add byte [rax], al
add byte [rcx], al
add byte [rax], al
imul rax, rdx
scasd eax, dword [rdi]
ret 0xf44
movzx r8d, byte [rbx + 8]
movzx eax, byte [rbx + 8]
xor rax, r8
ror byte [rax + 0xf], 0xaf
scasd eax, dword [rdi]
ret 0xf44
mov dh, 0x4b
or qword [r9 + r14 - 0x38], rcx
xor rax, r9
xor eax, ecx
imul rax, rdx
scasd eax, dword [rdi]
ret 0xd231
div r10
mov r10, qword [rsi + 0x18]
mov edx, dword [rsi + 0x18]
mov rax, qword [rsi + 8]
or byte [rbx + r9*4 + 0x76], r9b
or byte [rbx + rcx*4 + 0x76], cl
jbe 0x1400ddc94
mov r11, qword [r10 + rdx*8]
cmp r11, r14
cmp ebx, esi
jae 0x1400ddcb0
imul r11, r11, 0x18
add r11, rax
add ebx, eax
cmp qword [r11], rcx
cmp dword [rbx], ecx
or esi, dword [rbp + 0x17]
cmp byte [r11 + 8], r8b
jne 0x1400ddcb0
cmp byte [r11 + 9], r9b
jne 0x1400ddcb0
mov rdx, qword [r11 + 0x10]
mov eax, 1
add dword [rax], eax
add byte [rax], al
jmp 0x1400ddcde
mov qword [r10 + rdx*8], r14
cmp r14, qword [rsi]
jne 0x1400ddcc5
mov rcx, rsi
call fcn.1400d6951
invalid
invalid
dec dword [rax - 0x75]
mov eax, dword [rsi + 8]
invalid
imul rcx, r14, 0x18
movups xmm0, xmmword [rbx]
movups xmmword [rax + rcx], xmm0
add al, 8
mov qword [rax + rcx + 0x10], rdi
mov dword [rax + rcx + 0x10], edi
inc r14
inc esi
invalid
mov qword [rsi + 0x10], r14
mov dword [rsi + 0x10], esi
xor eax, eax
invalid
add rsp, 0x28
pop rbx
pop rdi
pop rsi
pop r14
pop rsi
ret
lea rcx, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001f_regex_1.6.0_srccompile.rs
call fcn.1402e8b40
scasb al, byte [rdi]
and byte [rax], al
add ah, cl
int3
Function at 0x140105850
Capabilities:
Encode data using xor

Disassembly:
push rbp
mov rbp, rsp
sub rdx, rcx
cmp rdx, 0x20
jae 0x140105863
pop rbp
jmp fcn.14006e5f0
nop
pop rbp
jmp fcn.140064ba0

Function at 0x14010944e
Capabilities:
Get client handle via schannel
Get outbound credentials handle via credssp

Disassembly:
push r14
push rsi
push rdi
push rbx
sub rsp, 0xf8
movaps xmmword [rsp + 0xe0], xmm6
xorps xmm0, xmm0
movaps xmmword [rsp + 0x70], xmm0
movups xmmword [rsp + 0xc8], xmm0
movups xmmword [rsp + 0xb8], xmm0
movups xmmword [rsp + 0xa8], xmm0
movups xmmword [rsp + 0x98], xmm0
mov dword [rsp + 0x88], 4
mov dword [rsp + 0xd0], 0x400010
xor eax, eax
cmp rax, qword [rcx + 0x18]
jo 0x1401094be
mov eax, dword [rcx + 0x28]
mov dword [rsp + 0xb0], eax
mov rax, qword [rcx + 0x20]
mov qword [rsp + 0xb8], rax
xor eax, eax
cmp rax, qword [rcx + 0x30]
jo 0x1401094f7
mov rdx, qword [rcx + 0x40]
test rdx, rdx
je 0x1401094f0
mov r8, qword [rcx + 0x38]
xor eax, eax
lea r9, [0x1403e41ac]
xor r10d, r10d
movzx r11d, byte [r8 + r10]
or eax, dword [r9 + r11*4]
inc r10
cmp rdx, r10
jne 0x1401094df
mov dword [rsp + 0xc0], eax
mov r14, qword [rcx + 8]
mov rbx, qword [rcx + 0x10]
mov edx, 8
mov r8d, 8
mov rcx, rbx
call fcn.140073683
mov qword [rsp + 0x58], rax
mov qword [rsp + 0x60], rdx
and qword [rsp + 0x68], 0
cmp rax, rbx
jb 0x140109639
mov rdi, rax
mov rsi, rdx
xor eax, eax
test rbx, rbx
je 0x140109563
lea rcx, [rsi + rax*8]
xor r8d, r8d
mov rdx, r8
mov r8, qword [r14 + r8*8]
mov qword [rcx + rdx*8], r8
lea r8, [rdx + 1]
cmp rbx, r8
jne 0x14010953f
add rax, rdx
inc rax
mov rdi, qword [rsp + 0x58]
mov rsi, qword [rsp + 0x60]
mov dword [rsp + 0x8c], eax
mov qword [rsp + 0x90], rsi
lea rax, [0x140425208]
mov qword [rsp + 0x50], rax
mov eax, dword [0x140425220]
cmp eax, 3
jne 0x140109667
mov rax, qword [rsp + 0x50]
mov rdx, qword [rax + 8]
lea rax, [rsp + 0x70]
mov qword [rsp + 0x38], rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x28], xmm0
lea rax, [rsp + 0x88]
mov qword [rsp + 0x20], rax
and qword [rsp + 0x40], 0
xor ecx, ecx
mov r8d, 2
xor r9d, r9d
call qword [sym.imp.Secur32.dll_AcquireCredentialsHandleA]
test eax, eax
je 0x1401095e2
mov ebx, eax
shl rbx, 0x20
or rbx, 2
mov r14d, 1
jmp 0x140109607
movaps xmm6, xmmword [rsp + 0x70]
mov ecx, 0x20
call fcn.140108e8b
mov rbx, rax
mov eax, 1
mov qword [rbx], rax
mov qword [rbx + 8], rax
movups xmmword [rbx + 0x10], xmm6
xor r14d, r14d
mov r8d, 8
mov r9d, 8
mov rcx, rdi
mov rdx, rsi
call fcn.1400c530f
mov rax, r14
mov rdx, rbx
movaps xmm6, xmmword [rsp + 0xe0]
add rsp, 0xf8
pop rbx
pop rdi
pop rsi
pop r14
ret
mov qword [rsp + 0x20], 8
lea rdi, [rsp + 0x58]
mov r9d, 8
mov rcx, rdi
xor edx, edx
mov r8, rbx
call fcn.1402ebb54
mov rsi, qword [rdi + 8]
mov rax, qword [rdi + 0x10]
jmp 0x140109538
lea rax, [rsp + 0x50]
lea rcx, [rsp + 0xd8]
mov qword [rcx], rax
lea r8, [rsp + 0x58]
mov qword [r8], rcx
lea rax, str.C:UsersAdministrator.cargo_registry_srcindex.crates.io_6f17d22bba15001flazy_static_1.4.0_srcinline_lazy.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x140425220]
lea r9, [0x1403ae1d8]
xor edx, edx
call fcn.1402ebec0
jmp 0x14010958d
Function at 0x140109c55
Capabilities:
Get remote cert context via schannel

Disassembly:
sub rsp, 0x28
lea r8, [rsp + 0x20]
and qword [r8], 0
mov edx, 0x53
call qword [sym.imp.Secur32.dll_QueryContextAttributesW]
mov edx, eax
xor eax, eax
test edx, edx
setne cl
jne 0x140109c7f
mov rdx, qword [rsp + 0x20]
jmp 0x140109c87
shl rdx, 0x20
or rdx, 2
mov al, cl
add rsp, 0x28
ret

Function at 0x140114640
Capabilities:
Write file on windows

Disassembly:
push rbp
push rsi
sub rsp, 0xa8
lea rbp, [rsp + 0x80]
mov rsi, rcx
movups xmm0, xmmword [0x1403b2400]
movaps xmmword [rbp], xmm0
mov eax, 0xffffffff
cmp r8, rax
cmovb rax, r8
xorps xmm0, xmm0
movups xmmword [rsp + 0x38], xmm0
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rdx
mov rax, rbp
mov qword [rsp + 0x20], rax
xor edx, edx
xor r8d, r8d
xor r9d, r9d
call qword [sym.imp.ntdll.dll_NtWriteFile]
cmp eax, 0x103
jne 0x1401146b1
mov rcx, rsi
mov edx, 0xffffffff
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [rbp]
cmp eax, 0x103
je 0x1401146de
test eax, eax
js 0x1401146bd
mov rdx, qword [rbp + 8]
xor eax, eax
jmp 0x1401146d4
mov ecx, eax
call qword [sym.imp.ntdll.dll_RtlNtStatusToDosError]
mov edx, eax
shl rdx, 0x20
or rdx, 2
mov eax, 1
add rsp, 0xa8
pop rsi
pop rbp
ret
mov dword [rbp + 0x18], 0
mov byte [rbp + 0x1c], 0
lea rax, [0x1403b2460]
mov qword [rbp - 0x38], rax
mov qword [rbp - 0x30], 1
lea rax, [rbp + 0x20]
mov qword [rbp - 0x28], rax
xorps xmm0, xmm0
movups xmmword [rbp - 0x20], xmm0
lea rcx, [rbp + 0x18]
lea rdx, [rbp - 0x38]
call fcn.140113d40

Function at 0x140116ba0
Capabilities:
Get system information on windows

Disassembly:
push rbp
sub rsp, 0x50
lea rbp, [rsp + 0x50]
xorps xmm0, xmm0
movaps xmmword [rbp - 0x10], xmm0
movaps xmmword [rbp - 0x20], xmm0
movaps xmmword [rbp - 0x30], xmm0
lea rcx, [rbp - 0x30]
call sub.KERNEL32.dll_GetSystemInfo
mov ecx, dword [rbp - 0x10]
xor eax, eax
test rcx, rcx
sete al
lea rdx, str.The_number_of_hardware_threads_is_not_known_for_the_target_platform
mov ah, 0xbd
sub dword [rax], eax
cmovne rdx, rcx
add rsp, 0x50
pop rbp
ret

Function at 0x140118e80
Capabilities:
Query environment variable

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x4a8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x420], 0xfffffffffffffffe
mov rsi, rcx
lea rcx, [rbp - 0x50]
call fcn.140119470
mov rcx, qword [rbp - 0x50]
mov rax, rcx
neg rax
jno 0x140118f43
mov rax, qword [rbp - 0x48]
mov ecx, eax
and ecx, 3
mov qword [rbp + 0x408], rsi
mov qword [rbp + 0x400], rcx
mov rax, qword [rbp - 0x48]
mov eax, 0x10858948
add al, 0
add byte [rax - 0x39], cl
test eax, ebp
add eax, dword [rax]
add byte [rax], al
add byte [rax], al
add byte [rax - 0x39], cl
test eax, esi
add eax, dword [rax]
add byte [rdx], al
add byte [rax], al
add byte [rax - 0x39], cl
test eax, edi
add eax, dword [rax]
add byte [rax], al
add byte [rax], al
add byte [rcx - 0x48], al
add byte [rdx], al
add byte [rax], al
mov eax, 2
add byte [rax], al
mov qword [rbp + 0x418], rax
xor edi, edi
xor ebx, ebx
xor r14d, r14d
cmp r8, 0x201
jae 0x140118fd0
jmp 0x140118fbf