joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140c28f7c
Capabilities:
Execute anti-debugging instructions

Disassembly:
mov eax, 0x16047409
dec r8d
rol dword [rsp + rdx*2 - 0x34177154], cl
neg r8d
dec cx
not r8d
btr eax, ecx
shl dword [rsp + rdx - 0x1a0bb8a9], 0x88
inc si
mov qword [rsp + rdx - 0x1a0bb8ac], r10
xor dword [rsp + rdx - 0x1a0bb8ac], r8d
xchg rdx, rsi
btr r11w, 0x9d
pop r10
shr r11, cl
jns 0x140c0f929
mov eax, 0x4490148e
mov rax, qword [rbp + rax - 0x4490148e]
push 0x2416d3be
ror word [rsp + 2], 0x6d
neg qword [rsp]
sbb rsp, 0x17
call rax
mov ebx, 0xb6b54d95
movsx esi, bl
mov ecx, 0xc699da32
mov rsp, qword [rbp + riz - 0x10]
lea rdx, [rcx + rcx*8 - 0x48fe2e53]
mov rbp, qword [rbp + riz - 8]
movzx edi, sil
mov qword [rdi + rbp - 0x95], rax
lea r11, [rcx*8 - 0x1e6ebfd]
mov rbx, rbp
lea r10, [r11*2 - 0x67ff8e4f]
mov ebp, edi
xadd ecx, ebp
pop r10
btr cx, dx
pop rbp
sub rsi, rcx
movsx r8d, cx
call fcn.140c2e5a7
call fcn.140c0bf2d
shr cl, 0x21
lea r8d, [r8 + rdx*2 + 0x60902c36]
ror r8d, cl
push r11
jmp 0x140bf718f
lea rsp, [rsp + 0x10]
je 0x140c09111
mov eax, 0x140c831b
shr ax, 0xeb
mov rax, qword [rbp + rbx*8]
jae 0x140bfde19
jmp 0x140c28a25

Function at 0x140c29957
Capabilities:
Execute anti-debugging instructions

Disassembly:
btr edx, 0xa5
adc rbp, r9
lea r9, [r8 + r11 - 0x43f8beef]
and cx, 0xa83b
mov r11w, word [rbx + r11 - 0x20404]
jo 0x140c16c10
setno r9b
sal r9, cl
mov ax, word [rax + rbx - 0x5328d92b]
sub r9d, 0xb0238ea1
dec cx
mov cl, byte [rbx + rdx*2 + 4]
sal dl, 0x65
lea rbx, [rbx + rdx + 4]
movzx esi, r8w
sar r9, 0x25
bt r9, 0x13
shld r11w, ax, cl
ror r9, 0x3a
sar sil, 0xc1
mov word [rbx + r9], r11w
cmovbe r9, rsi
call fcn.140c00b47
mov edx, 0xf52909a6
mov rax, qword [rbx + riz]
lea r8, [rdx + rdx*8 - 0x17f745c6]
sub r8w, r8w
movsx ecx, dx
mov r8, qword [rbx + rcx*4 - 0x2690]
mov r9d, ecx
neg dx
lea rbx, [rbx + rcx*2 - 0x133c]
adc dl, 0x2d
mov qword ss:[rax + rcx*4 - 0x2698], r8
mov esi, dword [rdi + rcx - 0x9a6]
lea r8, [rdx + rdx*2 - 0x13d81a4d]
lea rdi, [rdi + rcx - 0x9a2]
xor esi, r10d
neg esi
bswap r9
inc cl
xor r9w, r9w
ror esi, 3
add cl, dl
not esi
push r8
jnp 0x140bf38f1
neg r9d
mov qword [rsp + r8 - 0x7497341f], r10
xor dword [rsp + rax - 0x5328d92d], r9d
pop r10
bts dx, ax
and r11, 0x1403068c
cdq
movsxd r9, r9d
sub al, dl
jp 0x140c28e9e
add rbp, rsi
mov edx, r9d
mov qword [rsp + r11 - 0x25c20d15], rbp
ret 0x10

Function at 0x140c2caa1
Capabilities:
Execute anti-debugging instructions

Disassembly:
lea rsp, [rsp + 8]
and rsp, 0xfffffffffffffff0
call fcn.140bf576f

Function at 0x140c2cd8a
Capabilities:
Execute anti-debugging instructions

Disassembly:
add eax, 0x4aab7216
call fcn.140c1eb7d
bswap r8d
pop rsi
dec r8d
not qword [rsp + rax*4]
mov qword [rsp + rax*8], r10
push r9
xor dword [rsp + r9 - 0x7ffffff8], r8d
push rcx
lea r11, [r11 + rax + 0x4e804f99]
mov r10, qword [rsp + rax*8 + 0x10]
inc byte [rsp + rax*4 + 8]
dec cl
jns 0x140c1b765
movsxd r8, r8d
setne al
add rbp, r8
rol qword [rsp + rax + 3], cl
mov qword [rsp + r9 - 0x80000000], rbp
ret 0x10
Function at 0x140c2d566
Capabilities:
Execute anti-debugging instructions

Disassembly:
ror ecx, 2
neg rdx
add ecx, r11d
cdq
rol r8, 0x65
neg ecx
sub ecx, 0xad3dd32f
neg al
sar r8b, 0x41
push r10
neg dx
or al, r11b
xor dword [rsp + r11 - 1], ecx
pop r10
sub r11b, r11b
or r9b, 0x31
movsxd rcx, ecx
adc rbp, rcx
movsx ecx, dx
ror r9b, cl
not r11w
mov r9, qword [rbx + r11*8 - 0x7fff8]
and dl, 0xf
cbw
mov rcx, qword ss:[r9 + rcx*4 - 4]
mov r9d, r11d
mov qword [rbx + r11*2 - 0x1fffe], rcx
jmp rbp
mov ecx, dword [rdi]
mov r9d, 0x509b7a3d
lea rdi, [rdi + r9 - 0x509b7a39]
movsx esi, word [rsp + r9 - 0x509b7a35]
mov r11d, dword [rsp + r9 - 0x509b7a34]
xor ecx, r10d
shl byte [rsp + rsi*2 - 0x284d], 0x46
mov qword [rsp + r9 - 0x509b7a3d], 0xffffffffcdb98698
rol ecx, 1
dec word [rsp + r9 - 0x509b7a3d]
xor ecx, 0x530e6d3e
push r11
pop r8
call fcn.140c084ad
mov edx, 0x488c8f85
lea r8, [rdx + 0x773ccca3]
mov ecx, dword [rdi + rdx - 0x488c8f85]
lea rax, [r8 + rdx*2 - 0x537c564d]
movzx r11d, dl
inc eax
lea rdi, [rdx + rdi - 0x488c8f81]
movsx r9d, r8b
imul r11b
add rax, rax
xor ecx, r10d
ror ecx, 2
btr r9w, dx
sbb dl, dh
lea ecx, [r8 + rcx - 0x15192290]
sets r11b
sal ax, 0xe9
jne 0x140c1fc09
mov r11, qword [rax + r9*8]
lea rbx, [rbx + r9*4 - 8]
xor dword [rsp + r9 + 1], 0x1333ff8d
movzx eax, byte [rsp + r9 + 4]
mov r8d, 0xf68714a7
mov qword [rbx + r9], r11
sub r8, rax
rol al, 0xa2
mov r8d, dword [rdi + r9]
jnp 0x140bf3d21
bts r8d, 0x33
mov r10d, 0x76a61c83
xor dword [rsp + r8*2 - 0x1000a6], r9d
pop r10
not dx
xchg rdx, rax
movsxd r9, r9d
rol r11d, cl
jb 0x140c32e1e
add rbp, r9
sal ecx, 0x59
add ax, si
mov r11, qword [rbx + r8 - 0x80053]
div al
cdqe
mov rdx, qword ss:[r11 + r8 - 0x80053]
not ecx
mov qword [rcx + rbx - 0x2bffffff], rdx
jmp rbp

Function at 0x140c2e673
Capabilities:
Execute anti-debugging instructions

Disassembly:
xor esi, 0x9b87da37
movsx r9d, cx
lea rax, [r11*8 + 0x73935fa8]
bswap esi
mov qword [rsp + r11 + 0x504c13d1], rcx
shr r9w, 0xf
mov qword [rsp + r11 + 0x504c13d1], r10
or r11d, r9d
call fcn.140c29b2a
sar byte [rsp + 4], 0xa5
test r9, r9
not byte [rsp + 3]
lea rsp, [rsp + 0x10]
je 0x140bf9a2d
push rdi
mov edi, 0xe49ec437
ror rdi, 0x95
lea rdi, [0x140c347d0]
Function at 0x140c30644
Capabilities:
Encode data using base64

Disassembly:
shl qword [rsp], 0x8d
mov qword [rbp + riz - 8], rax
lea rsp, [rsp + 0x10]
mov qword [rbp + riz - 0x10], rsp
sub rsp, rcx
call fcn.140c0ec09
mov edx, 0x8227b220
sar dl, 0x44
mov ecx, edx
mov r11d, dword [rbx + riz]
mov cl, byte [rbx + riz + 4]
movzx r9d, dx
mov esi, 0x6b0a5fb1
movsx eax, si
lea rbx, [r9 + rbx - 0xb200]
shr r11d, cl
cwd
cbw
sal ax, 0xcd
mov dword [rbx + r9 - 0xb202], r11d
rol r9, 0xee
push rsi
mov esi, dword [rdi + rsi - 0x6b0a5fb1]
lea rcx, [rdx*2 - 0x70e2c370]
neg al
cwd
lea rdi, [rdi + rax*8 - 0xfffc]
movsx r11d, cx
not rcx
imul cx, dx
xor esi, r10d
not esi
ror r9d, 0x61
xadd qword [rsp + r9], rdx
rol esi, 1
or dword [rsp + r9 + 2], eax
lea esi, [rdx + rsi + 0x790d4fe7]
jne 0x140c149ad
neg esi
mul qword [rsp + r9]
cwde
cdqe
dec esi
rol r11d, 0xe9
btr r9w, dx
movzx r8d, word [rsp + rdx + 3]
rol esi, 1
mov qword [rsp + rdx], r10
xor dword [rsp + rdx], esi
cwd
movsx r10d, dx
pop r10
cwd
not rdx
movsxd rsi, esi
bt r11, r8
cbw
jae 0x140c2c1ba
xor si, dx
mov r8d, dword [rbx + riz + 8]
dec sil
bswap ecx
not eax
lea r9, [rcx + 0x14291839]
shr r9d, cl
not r8d
rol r11w, 0xc5
sbb edx, 0x58970393
dec r9d
and eax, r8d
btr rsi, r11
inc dl
mov dword [rbx + rcx*4 - 0x4e4615d4], eax
lea rbx, [rcx + rbx - 0x1391856f]
lea rax, [rdx*4 + 0x3483f006]
bt r11, 0x9d
bt ax, r11w
mov esi, dword [rdx + rdi - 0x63ee1117]
lea rdi, [rdi + rcx*4 - 0x4e4615d8]
movzx r8d, r11b
ror rdx, cl
xor esi, r10d
neg esi
not esi
sal r9d, cl
neg esi
add dx, 0x3b92
rol esi, 3
xchg cl, al
xchg rcx, r11
inc al
lea esi, [r9 + rsi - 0x1077eed2]
call fcn.140c0f9fb
jmp 0x140bfd85c
adc rbp, rsi
add r9, rbp
jmp r9
push 0xffffffffaa9d4f97
adc rax, rdx
jmp 0x140c29d30

Function at 0x140c33059
Capabilities:
Execute anti-debugging instructions

Disassembly:
xor ecx, r10d
lea rdx, [r9 + r8*4 + 0x698c13ae]
xor ecx, 0x2d2e5804
mov qword [rsp + r8 - 0x76e59f26], rax
ror r8w, 5
neg ecx
xor r8, 0x54a7552b
bswap ecx
sar sil, 0x26
rol r9w, 0x82
sbb ecx, esi
movsx r11d, byte [rsp + rsi*4]
or qword [rsp + r8*2 - 0x4484c3a4], r10
xor dword [rsp + r8 - 0x224261d2], ecx
pop r10
movsxd rcx, ecx
add rbp, rcx
movsx ecx, r11b
bswap rsi
mov bx, word [rbx + r8 - 0x224261d2]
mul r8d
jno fcn.140c10833
Function at 0x140c3573c
Capabilities:
Execute anti-debugging instructions

Disassembly:
call fcn.140c263dc
mov r8d, 0xc534cd11
movsx eax, r8w
mov r11d, dword [rdi + riz]
movzx ecx, al
xor r11d, r10d
mov edx, ecx
xor r11d, 0xa287712a
mul r8d
mov r9d, r8d
not r11d
rol r11d, 1
push rax
bswap rdx
imul dl
lea r11d, [r11 + rcx*4 + 0x7c93a3f8]
sar rdx, 0xc6
call fcn.140bf3717
movzx ecx, word [rsp + rax - 0x12f1]
neg r9d
mov qword [rsp + rax*2 - 0x25e4], r10
movsx r10d, ax
cwde
bswap r10d
xor dword [rsp + rax*2 - 0x25e4], r9d
pop r10
xor cx, cx
sub rcx, rax
movsxd r9, r9d
add rbp, r9
sal ax, 0x2b
jmp rbp
mov qword [rsp + r9 - 0xbcd], r9
mov ecx, dword [rdi + r9*8 - 0x5e68]
xadd r9, rax
sbb sil, 0x14
lea rdi, [rdi + rax*2 - 0x1796]
xor ecx, r10d
cdq
dec ecx
not ecx
movzx r8d, byte [rsp + rax - 0xbc9]
inc ecx
neg ecx
mov qword [rsp + rdx*8], r10
add eax, eax
movsx r10d, r9w
inc esi
xor dword [rsp + rdx*2], ecx
ror r9w, 1
shl r8b, 0xa7
pop r10
movsxd rcx, ecx
sbb rsi, 0x16344399
setp sil
jno 0x140bf5c4d
shr qword [rsp + r9*2 - 0xebf4], cl
mov qword [rsp + rdx - 0x7605b435], r10
movzx r10d, si
xor dword [rsp + r9 - 0x75fa], r8d
rol r10d, cl
shl dx, 0x6b
pop r10
xor r11d, esi
jne 0x140c05d15
jmp 0x140c1ca95

Function at 0x140c357f5
Capabilities:
Execute anti-debugging instructions

Disassembly:
sal byte [rsp + rsi*2 - 0x29ec7], 0xe6
call fcn.140c181ab
neg r9b
cdq
not eax
xadd dl, dh
rol r9b, 1
not ax
neg eax
add r9b, dl
shl dl, 0x47
lea r11, [rsi*2 - 0x23612df8]
neg r9b
bt r8, rax
rol r9b, 1
lea rax, [rdx*2 + 0x2e949a3c]
push r11
pop rsi
xor r10b, r9b
lea r11, [r11 + r8*2 - 0x3e4858ea]
add r9, rsp
neg r11b
shl ax, 0x82
xchg rsi, r11
mov dword [rdx + r9], ecx
add rdx, rbp
jmp rdx
lea edx, [rsi + rdx + 0x7d01d9c4]
jg 0x140bfc8b2
add rdi, 8
xor r8, r10
bswap r11d
lea r8, [r8 + r11 - 0x1b705926]
push rcx
bswap r8
lea r8, [r11 + r8 - 0x310c0207]
bswap r8
btr r11w, 0x84
not cx
rol r8, 6
xor r10, r8
sub rbx, 8
and cl, 1
mov r9d, 0x5c272323
movsx eax, r11w
mov qword [rbx + r9 - 0x5c272323], r8
and rax, 0xffffffffc939c33f
mov r9d, dword [rdi + r9 - 0x5c272323]
jge 0x140c32013
mov esi, 0xb03d4f1e
mov esi, dword [rdi + riz]
push 0x5e842dbd
add rdi, 4
push 0x47b6ea0c
sal dword [rsp + 9], 3
ror qword [rsp + 8], 0xb7
xor esi, r10d
mov eax, 0xa5a69916
rol esi, 2
movsx r11d, al
mov r9d, 0xc03cf7bc
bswap esi
push r11
movzx ecx, r11w
not esi
cdq
neg esi
xor esi, 0xaa1c7c0d
cwd
lea r8, [rdx + rcx*8 - 0x4c682046]
mov qword [rsp + r11 - 6], r10
cwd
add word [rsp + r11*2 - 0x26], 0x42f
xor dword [rsp + r11 - 6], esi
shl r11b, 0x84
xor edx, 0x4cad7da5
dec rcx
mov qword [rsp + rsi*8 - 0xa7b28], r9
jns 0x140c21e63

Function at 0x140c35ab3
Capabilities:
Execute anti-debugging instructions

Disassembly:
call fcn.140bf6cbb
jmp 0x140c0b7dc
Function at 0x140004b30
Capabilities:
Get common file path

Disassembly:
push rbp
push rsi
sub rsp, 0x58
lea rbp, [rsp + 0x50]
mov qword [rbp], 0xfffffffffffffffe
mov rsi, rcx
mov qword [rbp - 8], 0
lea r9, [rbp - 8]
mov rcx, rdx
xor edx, edx
xor r8d, r8d
call sub.shell32.dll_SHGetKnownFolderPath
mov rcx, qword [rbp - 8]
test eax, eax
je 0x140004b7b
call sub.ole32.dll_CoTaskMemFree
movabs rax, 0x8000000000000000
mov qword [rsi], rax
jmp 0x140004ba8
call sub.kernel32.dll_lstrlenW
movsxd r8, eax
mov rdx, qword [rbp - 8]
lea rcx, [rbp - 0x28]
call fcn.140010060
mov rcx, qword [rbp - 8]
call sub.ole32.dll_CoTaskMemFree
movups xmm0, xmmword [rbp - 0x28]
movups xmm1, xmmword [rbp - 0x18]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rax, rsi
add rsp, 0x58
pop rsi
pop rbp
ret

Function at 0x1400069b0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x68
lea rbp, [rsp + 0x60]
mov qword [rbp], 0xfffffffffffffffe
mov qword [rbp - 0x18], r9
mov r14, r8
mov r15, rdx
mov qword [rbp - 0x10], rcx
mov rdx, r8
add rdx, qword [rbp + 0x70]
mov rax, 0xffffffffffffffff
cmovb rdx, rax
mov r13, qword [rbp + 0x78]
add rdx, r13
cmovb rdx, rax
lea r12, [rbp - 0x38]
mov rcx, r12
call fcn.1400224c0
mov rcx, r12
mov rdx, r15
mov r8, r14
call fcn.140022540
mov dword [rbp - 4], 0
movabs r12, 0x2d358dccaa6c78a5
movabs rbx, 0x8bb84b93962eacc9
mov edi, 0x3e
lea rsi, str.ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789too_many_temporary_files_exist1
lea r14, [rbp - 0x38]
lea r15, [rbp - 4]
jmp 0x140006a5e
mov byte [rbp - 4], al
mov rcx, r14
mov rdx, r15
call fcn.140022540
sub r13, 1
jb 0x140006b2a
call fcn.140007400
mov rcx, rax
cmp qword [rax], 0
je 0x140006a80
add rcx, 8
jmp 0x140006a8a
xor edx, edx
call fcn.140006f90
mov rcx, rax
mov r10, qword [rcx]
lea r9, [r10 + r12]
mov rax, r9
xor rax, rbx
mul r9
mov r8, rdx
xor r8, rax
mov rax, r8
mul rdi
lea rax, [r8 + r8]
shl r8, 6
sub r8, rax
cmp r8, 0xf
ja 0x140006afb
movabs rax, 0x5a6b1b9954d8f14a
add r10, rax
nop word cs:[rax + rax]
add r9, r12
mov rax, r10
xor rax, rbx
mul r10
xor rdx, rax
mov r8, rdx
shl r8, 6
sub r8, rdx
sub r8, rdx
add r10, r12
cmp r8, 0x10
jb 0x140006ad0
mov rax, rdx
mul rdi
movzx eax, byte [rdx + rsi]
mov qword [rcx], r9
mov r8d, 1
test al, al
jns 0x140006a50
mov ecx, eax
shr cl, 6
or cl, 0xc0
and al, 0xbf
mov byte [rbp - 3], al
mov r8d, 2
mov eax, ecx
jmp 0x140006a50
lea rcx, [rbp - 0x38]
mov rdx, qword [rbp - 0x18]
mov r8, qword [rbp + 0x70]
call fcn.140022540
movups xmm0, xmmword [rbp - 0x38]
movups xmm1, xmmword [rbp - 0x28]
mov rax, qword [rbp - 0x10]
movups xmmword [rax + 0x10], xmm1
movups xmmword [rax], xmm0
add rsp, 0x68
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
Function at 0x140006fe0
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
push rbx
mov rax, rcx
add qword [rcx + 0x30], r8
mov r11, qword [rcx + 0x40]
test r11, r11
je 0x140007022
mov r10d, 8
sub r10, r11
cmp r8, r10
mov rdi, r10
cmovb rdi, r8
cmp rdi, 4
jb 0x14000702a
mov esi, dword [rdx]
mov r9d, 4
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jb 0x14000703b
jmp 0x140007052
xor r10d, r10d
jmp 0x1400070dd
xor esi, esi
xor r9d, r9d
mov rcx, r9
or rcx, 1
cmp rcx, rdi
jae 0x140007052
movzx ebx, word [rdx + r9]
lea ecx, [r9*8]
shl rbx, cl
or rsi, rbx
or r9, 2
cmp r9, rdi
jae 0x140007069
movzx edi, byte [rdx + r9]
shl r9d, 3
mov ecx, r9d
shl rdi, cl
or rsi, rdi
lea ecx, [r11*8]
shl rsi, cl
or rsi, qword [rax + 0x38]
mov qword [rax + 0x38], rsi
cmp r10, r8
jbe 0x140007089
add r11, r8
jmp 0x1400071bb
mov r11, qword [rax + 0x18]
mov r9, qword [rax + 0x10]
mov rcx, qword [rax]
add rcx, r9
rol r9, 0xd
xor r11, rsi
xor r9, rcx
rol rcx, 0x20
mov rdi, qword [rax + 8]
add rdi, r11
rol r11, 0x10
xor r11, rdi
add rcx, r11
rol r11, 0x15
xor r11, rcx
add rdi, r9
rol r9, 0x11
mov qword [rax + 0x18], r11
xor r9, rdi
rol rdi, 0x20
mov qword [rax + 0x10], r9
mov qword [rax + 8], rdi
xor rcx, rsi
mov qword [rax], rcx
sub r8, r10
mov r11d, r8d
and r11d, 7
and r8, 0xfffffffffffffff8
cmp r10, r8
jae 0x140007152
mov rcx, qword [rax]
mov r9, qword [rax + 8]
mov rdi, qword [rax + 0x18]
mov rsi, qword [rax + 0x10]
nop
add rcx, rsi
rol rsi, 0xd
mov rbx, qword [rdx + r10]
xor rsi, rcx
rol rcx, 0x20
xor rdi, rbx
add r9, rdi
rol rdi, 0x10
xor rdi, r9
add rcx, rdi
rol rdi, 0x15
add r9, rsi
rol rsi, 0x11
xor rsi, r9
rol r9, 0x20
xor rdi, rcx
xor rcx, rbx
add r10, 8
cmp r10, r8
jb 0x140007100
mov qword [rax + 0x18], rdi
mov qword [rax + 0x10], rsi
mov qword [rax + 8], r9
mov qword [rax], rcx
cmp r11d, 4
jb 0x140007170
mov r9d, dword [rdx + r10]
mov r8d, 4
mov rcx, r8
or rcx, 1
cmp rcx, r11
jb 0x140007182
jmp 0x14000719d
xor r9d, r9d
xor r8d, r8d
mov rcx, r8
or rcx, 1
cmp rcx, r11
jae 0x14000719d
lea rcx, [rdx + r8]
movzx esi, word [r10 + rcx]
lea ecx, [r8*8]
shl rsi, cl
or r9, rsi
or r8, 2
cmp r8, r11
jae 0x1400071b7
add r10, r8
movzx edx, byte [rdx + r10]
shl r8d, 3
mov ecx, r8d
shl rdx, cl
or r9, rdx
mov qword [rax + 0x38], r9
mov qword [rax + 0x40], r11
pop rbx
pop rdi
pop rsi
ret
Function at 0x14000e0c0
Capabilities:
Get common file path

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0x498
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x410], 0xfffffffffffffffe
mov qword [rbp + 0x3f0], rcx
mov qword [rbp + 0x3f8], 0
mov qword [rbp + 0x400], 2
mov qword [rbp + 0x408], 0
mov r8d, 0x200
mov eax, 2
mov qword [rbp + 0x3e8], rax
xor esi, esi
xor edi, edi
xor ebx, ebx
cmp r8, 0x201
jae 0x14000e160
jmp 0x14000e14f
jae 0x14000e21f
cmp r8, 0x201
jae 0x14000e160
mov r14d, 0x200
lea r15, [rbp - 0x60]
mov r12, r8
jmp 0x14000e1b7
sub r8, rbx
sub rdi, rbx
cmp rdi, r8
jae 0x14000e18f
lea rcx, [rbp + 0x3f8]
mov rdx, rbx
call fcn.140031420
mov rsi, qword [rbp + 0x3f8]
mov rax, qword [rbp + 0x400]
mov qword [rbp + 0x3e8], rax
mov eax, 0xffffffff
cmp rsi, rax
mov ebx, 0xffffffff
cmovb rbx, rsi
mov qword [rbp + 0x408], rbx
mov rdi, rsi
mov r14, rbx
mov r15, qword [rbp + 0x3e8]
mov r12, rbx
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
mov ecx, r12d
mov rdx, r15
call qword [sym.imp.kernel32.dll_GetCurrentDirectoryW]
mov r13d, eax
test eax, eax
jne 0x14000e1e0
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x14000e299
mov r8d, r13d
cmp r12, r8
jne 0x14000e140
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x14000e2cd
add r12, r12
mov eax, 0xffffffff
cmp r12, rax
cmovae r12, rax
mov r8, r12
cmp r8, 0x201
jb 0x14000e14f
jmp 0x14000e160
cmp r14, r8
jb 0x14000e2e7
lea rcx, [rbp + 0x3c8]
mov rdx, r15
call fcn.140010060
movups xmm0, xmmword [rbp + 0x3c8]
movups xmm1, xmmword [rbp + 0x3d8]
movaps xmmword [rbp + 0x3b0], xmm1
movaps xmmword [rbp + 0x3a0], xmm0
mov rsi, qword [rbp + 0x3f0]
movups xmmword [rsi + 0x10], xmm1
movups xmmword [rsi], xmm0
mov rdx, qword [rbp + 0x3f8]
test rdx, rdx
je 0x14000e282
mov rcx, qword [rbp + 0x400]
add rdx, rdx
mov r8d, 2
call fcn.140004ae0
mov rax, rsi
add rsp, 0x498
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rsi, qword [rbp + 0x3f0]
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
mov rdx, qword [rbp + 0x3f8]
test rdx, rdx
jne 0x14000e26d
jmp 0x14000e282
lea rcx, str.internal_error:_entered_unreachable_codep
lea r8, str.library_std_src_syspalwindowsmod.rsstrings_passed_to_WinAPI_cannot_contain_NULs
mov edx, 0x28
call fcn.140032190
jmp 0x14000e2fc
lea rax, str.library_std_src_syspalwindowsmod.rsstrings_passed_to_WinAPI_cannot_contain_NULs
mov rcx, r8
mov rdx, r14
mov r8, rax
call fcn.140032570
ud2
Function at 0x140013ed0
Capabilities:
Write file on windows

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
mov eax, 0x10b8
call fcn.1400307c0
sub rsp, rax
lea rbp, [rsp + 0x80]
movaps xmmword [rbp + 0x1020], xmm6
mov qword [rbp + 0x1018], 0xfffffffffffffffe
mov qword [rbp + 0x1008], rdx
mov r15, rcx
lea r12, [rbp - 0x50]
mov r8d, 0x1000
mov rcx, r12
xor edx, edx
call sub.VCRUNTIME140.dll_memset
xorps xmm6, xmm6
lea r13, [rbp + 0xffc]
lea rbx, [0x14001a9a0]
lea r14, [rbp + 0xfb0]
mov rsi, qword [sym.imp.kernel32.dll_WriteFileEx]
mov rdi, qword [sym.imp.kernel32.dll_SleepEx]
mov qword [rbp + 0x1010], r15
mov r8d, 0x1000
mov rcx, r15
mov rdx, r12
call case.0x140011321.287
mov r15, rdx
mov qword [rbp + 0xfd8], rax
mov qword [rbp + 0xfe0], rdx
test rax, rax
jne 0x1400140c0
test r15, r15
je 0x14001408c
cmp r15, 0x1000
ja 0x1400140e2
xor r12d, r12d
nop word cs:[rax + rax]
mov r8d, r15d
sub r8d, r12d
lea rdx, [r12 + rbp]
add rdx, 0xffffffffffffffb0
mov dword [rbp + 0xffc], 0
movaps xmmword [rbp + 0xfb0], xmm6
mov qword [rbp + 0xfc0], 0
mov qword [rbp + 0xfc8], r13
mov qword [rsp + 0x20], rbx
mov rcx, qword [rbp + 0x1008]
mov r9, r14
call rsi
test eax, eax
je 0x140014060
nop word cs:[rax + rax]
mov ecx, 0xffffffff
mov edx, 1
call rdi
cmp dword [rbp + 0xffc], 0
je 0x140013ff0
mov ecx, dword [rbp + 0x1000]
mov eax, dword [rbp + 0x1004]
mov rdx, rcx
shl rdx, 0x20
or rdx, 2
xor r8d, r8d
test ecx, ecx
setne r8b
cmove rdx, rax
mov qword [rbp + 0xfe8], r8
mov qword [rbp + 0xff0], rdx
jne 0x140014080
add r12, rax
cmp r12, r15
je 0x140014050
jbe 0x140013fa0
jmp 0x1400140ce
mov r15, qword [rbp + 0x1010]
lea r12, [rbp - 0x50]
jmp 0x140013f4e
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov qword [rbp + 0xfe8], 1
mov qword [rbp + 0xff0], rax
lea rcx, [rbp + 0xff0]
call fcn.1400085e0
mov rsi, qword [sym.imp.kernel32.dll_CloseHandle]
mov rcx, qword [rbp + 0x1010]
call rsi
mov rcx, qword [rbp + 0x1008]
call rsi
movaps xmm6, xmmword [rbp + 0x1020]
add rsp, 0x10b8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
lea rcx, [rbp + 0xfe0]
call fcn.1400085e0
jmp 0x14001408c
lea r8, str.library_std_src_syspalwindowspipe.rs
mov rcx, r12
mov rdx, r15
call fcn.140032580
jmp 0x1400140f6
lea r8, str.library_std_src_syspalwindowspipe.rs
mov edx, 0x1000
mov rcx, r15
call fcn.140032570
ud2
Function at 0x140015420
Capabilities:
Get number of processors

Disassembly:
push rbp
push rsi
push rdi
push rbx
sub rsp, 0xb8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x30], 0xfffffffffffffffe
cmp byte [rcx + 0x21], 0
je 0x140015447
mov byte [rbp + 0x2f], 3
jmp 0x140015478
mov eax, dword [0x140087288]
mov rdx, qword gs:[0x58]
mov rax, qword [rdx + rax*8]
cmp qword [rax + 0x40], 1
jbe 0x14001546a
mov byte [rbp + 0x2f], 1
jmp 0x140015478
mov rsi, rcx
call fcn.140010290
mov rcx, rsi
mov byte [rbp + 0x2f], al
mov rax, qword [rcx + 0x18]
mov qword [rbp - 0x10], rax
mov rsi, qword [rcx]
mov rdi, qword [rcx + 8]
mov rcx, rsi
call qword [rdi + 0x18]
movabs rcx, 0xfdbc168100b1ef64
cmp rax, rcx
jne 0x1400154b3
mov eax, 8
movabs r8, 0xc1a2c89ccd1e7bc1
mov rcx, rsi
cmp rdx, r8
je 0x1400154ec
mov rcx, rsi
call qword [rdi + 0x18]
movabs r9, 0x2fc607fc58c89c13
mov ecx, 0xc
lea r8, [0x14007a954]
cmp rax, r9
jne 0x1400154f3
movabs rax, 0x966c449ce853da53
cmp rdx, rax
jne 0x1400154f3
lea rcx, [rsi + 8]
mov eax, 0x10
mov r8, qword [rcx]
mov rcx, qword [rsi + rax]
mov qword [rbp - 0x20], r8
mov qword [rbp - 0x18], rcx
call fcn.140014450
mov rdi, rax
mov qword [rbp + 8], rax
mov eax, 9
lea rcx, [0x14007a960]
test rdi, rdi
je 0x14001552b
mov rdx, qword [rdi + 0x18]
test rdx, rdx
je 0x14001552b
mov rax, qword [rdi + 0x20]
dec rax
mov rcx, rdx
mov qword [rbp - 0x30], rcx
mov qword [rbp - 0x28], rax
lea rax, [rbp - 0x30]
mov qword [rbp - 0x50], rax
lea rax, [rbp - 0x10]
mov qword [rbp - 0x48], rax
lea rax, [rbp - 0x20]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x2f]
mov qword [rbp - 0x38], rax
movzx eax, byte [0x140087150]
test al, al
je 0x14001558b
mov byte [0x140087150], 1
mov eax, dword [0x140087288]
mov rcx, qword gs:[0x58]
mov rax, qword [rcx + rax*8]
cmp qword [rax + 0x60], 0
je 0x140015598
lea rax, [rax + 0x68]
jmp 0x1400155b0
mov qword [rbp], 0
jmp 0x140015674
mov qword [rbp + 0x20], rdi
xor ecx, ecx
call fcn.140023460
test rax, rax
mov rdi, qword [rbp + 0x20]
je 0x140015750
mov rsi, qword [rax]
mov qword [rax], 0
mov qword [rbp], rsi
test rsi, rsi
je 0x140015674
mov qword [rbp - 8], rsi
lea rdi, [rsi + 0x10]
mov cl, 1
xor eax, eax
lock cmpxchg byte [rsi + 0x10], cl
jne 0x14001571e
mov rax, qword [0x1400871d0]
shl rax, 1
test rax, rax
mov qword [rbp + 0x20], rdi
jne 0x14001572b
mov dword [rbp + 0x14], 0
movzx eax, byte [rsi + 0x11]
lea rdx, [rsi + 0x18]
lea r8, [0x14007a970]
lea rcx, [rbp - 0x50]
call fcn.140015920
cmp byte [rbp + 0x14], 0
jne 0x14001562d
mov rax, qword [0x1400871d0]
shl rax, 1
test rax, rax
jne 0x14001573a
mov dword [rbp + 0x18], 0
mov byte [rbp + 0x1c], 0
mov byte [rbp + 0x2d], 0
lea r8, [0x14007a9c0]
lea rcx, [rbp - 0x50]
lea rdx, [rbp + 0x18]
call fcn.140015920
mov dword [rdx], eax
add byte [rax], al
xor esi, esi
test rdi, rdi
jne 0x1400156e2
jmp 0x1400156f1
mov rcx, rdi
call fcn.1400316f0
jmp 0x1400155de
mov bl, 0xfe
invalid
invalid
call fcn.140031640
xor al, 1
mov dword [rbp + 0x14], eax
jmp 0x1400155fc
call fcn.140031640
test al, al
invalid