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

Disassembly:
jmp 0x1800478f0
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
cmp qword [rcx + 0x18], 0xffffffffffffffff
je 0x18004793a
mov r15, qword [rbx + 0x10]
lea rcx, [rsp + 0x20]
mov rdx, r15
mov r8, rdi
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
jne 0x180047965
mov eax, 1
jmp 0x180047ad3
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x20]
mov r8, rdi
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
jne 0x180047a9c
mov eax, 1
jmp 0x180047ad3
add rbx, 0x18
lea r13, [rsp + 0x20]
mov qword [rsp + 0x30], rdi
jmp 0x1800479bf
dec r13
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.1800326f0
mov r13, rbx
mov rcx, rbx
mov rdx, r15
mov r8, qword [rsp + 0x30]
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
mov rbx, rsi
mov rsi, r14
je 0x180047930
mov rbp, qword [rsp + 0x20]
cmp al, 2
je 0x180047aa5
mov r8, qword [rsi + 8]
mov r12, qword [rsi + 0x10]
sub r8, r12
jb 0x180047aef
movzx edi, byte [rsp + 0x28]
mov r14, rsi
mov rdx, qword [rsi]
add rdx, r12
mov rsi, rbx
mov qword [rsp + 0x20], rbx
mov rbx, r13
mov rcx, r13
call fcn.180051340
mov r13, rdx
test rax, rax
je 0x180047aa9
mov rcx, r13
call fcn.180047590
cmp al, 0xd
jne 0x180047ace
and ebp, 0x23
mov rax, qword [r15 + 0x90]
xor rbp, 0x2f
mov rcx, rdi
shl rcx, 0x10
nop
mov edx, eax
shr edx, 0x10
cmp dil, dl
jne 0x180047a4c
mov edx, eax
and edx, ebp
or rdx, rcx
lock cmpxchg qword [r15 + 0x90], rdx
jne 0x180047a30
mov eax, r13d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x180047996
test rax, rax
je 0x180047996
mov rbp, qword [r13 - 1]
mov rdi, qword [r13 + 7]
mov rax, qword [rdi]
test rax, rax
je 0x180047a7e
mov rcx, rbp
call rax
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x180047980
mov r8, qword [rdi + 0x10]
mov rcx, rbp
call fcn.1800326f0
jmp 0x180047980
cmp al, 2
jne 0x180047ae7
mov rbp, qword [rsp + 0x20]
xor eax, eax
jmp 0x180047ad3
lea rax, [r12 + r13]
mov rcx, qword [r14 + 0x18]
cmp rax, rcx
jbe 0x180047abd
mov qword [r14 + 0x18], rax
mov rcx, rax
add r12, r13
jb 0x180047aef
cmp rax, rcx
ja 0x180047aef
mov qword [r14 + 0x10], rax
xor r13d, r13d
xor eax, eax
mov rbp, r13
mov rdx, rbp
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi + 0x10]
cmp rax, qword [rsi + 8]
ud2

Function at 0x180040920
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rcx, qword [rcx]
add rcx, 0x10
jmp 0x1800478f0
Function at 0x1800409c0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rcx, qword [rcx]
add rcx, 0x10
jmp 0x180047b00
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r8
mov rdi, rdx
mov r15, rcx
cmp qword [rcx + 0x18], 0xffffffffffffffff
je 0x180047b51
mov r12, qword [r15 + 0x10]
lea rcx, [rsp + 0x28]
mov rdx, r12
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
jne 0x180047b7c
mov eax, 2
jmp 0x180047cb6
mov rdx, qword [r15 + 0x10]
lea rcx, [rsp + 0x28]
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
jne 0x180047c9c
mov eax, 2
jmp 0x180047cb6
add r15, 0x18
lea rsi, [rsp + 0x28]
jmp 0x180047bc3
dec r13
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.1800326f0
mov rsi, r14
mov rcx, r14
mov rdx, r12
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
je 0x180047b47
mov rbp, qword [rsp + 0x28]
cmp al, 2
je 0x180047cb1
movzx ebx, byte [rsp + 0x30]
mov qword [rsp + 0x28], r15
mov r14, rsi
mov rcx, rsi
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
call fcn.180051350
mov rsi, rax
mov r13, rdx
test rax, rax
je 0x180047cac
mov rcx, r13
call fcn.180047590
cmp al, 0xd
jne 0x180047cac
and ebp, 0x23
mov rax, qword [r12 + 0x90]
xor rbp, 0x2f
mov rcx, rbx
shl rcx, 0x10
nop word cs:[rax + rax]
mov edx, eax
shr edx, 0x10
cmp bl, dl
jne 0x180047c4c
mov edx, eax
and edx, ebp
or rdx, rcx
lock cmpxchg qword [r12 + 0x90], rdx
jne 0x180047c30
mov eax, r13d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x180047ba6
test rax, rax
je 0x180047ba6
mov rsi, qword [r13 - 1]
mov rbx, qword [r13 + 7]
mov rax, qword [rbx]
test rax, rax
je 0x180047c7e
mov rcx, rsi
call rax
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x180047b90
mov r8, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1800326f0
jmp 0x180047b90
cmp al, 2
jne 0x180047ccd
mov r13, qword [rsp + 0x28]
mov eax, 1
jmp 0x180047cb9
mov rax, rsi
jmp 0x180047cb9
mov eax, 1
mov r13, rbp
mov rdx, r13
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
Function at 0x1800478f0
Capabilities:
Encrypt data using rc4 prga

Disassembly:
jmp 0x1800478f0
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x38
mov rsi, r8
mov rdi, rdx
mov rbx, rcx
cmp qword [rcx + 0x18], 0xffffffffffffffff
je 0x18004793a
mov r15, qword [rbx + 0x10]
lea rcx, [rsp + 0x20]
mov rdx, r15
mov r8, rdi
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
jne 0x180047965
mov eax, 1
jmp 0x180047ad3
mov rdx, qword [rbx + 0x10]
lea rcx, [rsp + 0x20]
mov r8, rdi
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
jne 0x180047a9c
mov eax, 1
jmp 0x180047ad3
add rbx, 0x18
lea r13, [rsp + 0x20]
mov qword [rsp + 0x30], rdi
jmp 0x1800479bf
dec r13
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.1800326f0
mov r13, rbx
mov rcx, rbx
mov rdx, r15
mov r8, qword [rsp + 0x30]
xor r9d, r9d
call fcn.18003cde0
movzx eax, byte [rsp + 0x29]
cmp al, 3
mov rbx, rsi
mov rsi, r14
je 0x180047930
mov rbp, qword [rsp + 0x20]
cmp al, 2
je 0x180047aa5
mov r8, qword [rsi + 8]
mov r12, qword [rsi + 0x10]
sub r8, r12
jb 0x180047aef
movzx edi, byte [rsp + 0x28]
mov r14, rsi
mov rdx, qword [rsi]
add rdx, r12
mov rsi, rbx
mov qword [rsp + 0x20], rbx
mov rbx, r13
mov rcx, r13
call fcn.180051340
mov r13, rdx
test rax, rax
je 0x180047aa9
mov rcx, r13
call fcn.180047590
cmp al, 0xd
jne 0x180047ace
and ebp, 0x23
mov rax, qword [r15 + 0x90]
xor rbp, 0x2f
mov rcx, rdi
shl rcx, 0x10
nop
mov edx, eax
shr edx, 0x10
cmp dil, dl
jne 0x180047a4c
mov edx, eax
and edx, ebp
or rdx, rcx
lock cmpxchg qword [r15 + 0x90], rdx
jne 0x180047a30
mov eax, r13d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x180047996
test rax, rax
je 0x180047996
mov rbp, qword [r13 - 1]
mov rdi, qword [r13 + 7]
mov rax, qword [rdi]
test rax, rax
je 0x180047a7e
mov rcx, rbp
call rax
mov rdx, qword [rdi + 8]
test rdx, rdx
je 0x180047980
mov r8, qword [rdi + 0x10]
mov rcx, rbp
call fcn.1800326f0
jmp 0x180047980
cmp al, 2
jne 0x180047ae7
mov rbp, qword [rsp + 0x20]
xor eax, eax
jmp 0x180047ad3
lea rax, [r12 + r13]
mov rcx, qword [r14 + 0x18]
cmp rax, rcx
jbe 0x180047abd
mov qword [r14 + 0x18], rax
mov rcx, rax
add r12, r13
jb 0x180047aef
cmp rax, rcx
ja 0x180047aef
mov qword [r14 + 0x10], rax
xor r13d, r13d
xor eax, eax
mov rbp, r13
mov rdx, rbp
add rsp, 0x38
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rax, qword [rsi + 0x10]
cmp rax, qword [rsi + 8]
ud2
Function at 0x180047b00
Capabilities:
Encrypt data using rc4 prga

Disassembly:
mov rcx, qword [rcx]
add rcx, 0x10
jmp 0x180047b00
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x48
mov qword [rsp + 0x40], r9
mov qword [rsp + 0x38], r8
mov rdi, rdx
mov r15, rcx
cmp qword [rcx + 0x18], 0xffffffffffffffff
je 0x180047b51
mov r12, qword [r15 + 0x10]
lea rcx, [rsp + 0x28]
mov rdx, r12
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
jne 0x180047b7c
mov eax, 2
jmp 0x180047cb6
mov rdx, qword [r15 + 0x10]
lea rcx, [rsp + 0x28]
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
jne 0x180047c9c
mov eax, 2
jmp 0x180047cb6
add r15, 0x18
lea rsi, [rsp + 0x28]
jmp 0x180047bc3
dec r13
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.1800326f0
mov rsi, r14
mov rcx, r14
mov rdx, r12
mov r8, rdi
mov r9b, 1
call fcn.18003cde0
movzx eax, byte [rsp + 0x31]
cmp al, 3
je 0x180047b47
mov rbp, qword [rsp + 0x28]
cmp al, 2
je 0x180047cb1
movzx ebx, byte [rsp + 0x30]
mov qword [rsp + 0x28], r15
mov r14, rsi
mov rcx, rsi
mov rdx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x40]
call fcn.180051350
mov rsi, rax
mov r13, rdx
test rax, rax
je 0x180047cac
mov rcx, r13
call fcn.180047590
cmp al, 0xd
jne 0x180047cac
and ebp, 0x23
mov rax, qword [r12 + 0x90]
xor rbp, 0x2f
mov rcx, rbx
shl rcx, 0x10
nop word cs:[rax + rax]
mov edx, eax
shr edx, 0x10
cmp bl, dl
jne 0x180047c4c
mov edx, eax
and edx, ebp
or rdx, rcx
lock cmpxchg qword [r12 + 0x90], rdx
jne 0x180047c30
mov eax, r13d
and eax, 3
lea rcx, [rax - 2]
cmp rcx, 2
jb 0x180047ba6
test rax, rax
je 0x180047ba6
mov rsi, qword [r13 - 1]
mov rbx, qword [r13 + 7]
mov rax, qword [rbx]
test rax, rax
je 0x180047c7e
mov rcx, rsi
call rax
mov rdx, qword [rbx + 8]
test rdx, rdx
je 0x180047b90
mov r8, qword [rbx + 0x10]
mov rcx, rsi
call fcn.1800326f0
jmp 0x180047b90
cmp al, 2
jne 0x180047ccd
mov r13, qword [rsp + 0x28]
mov eax, 1
jmp 0x180047cb9
mov rax, rsi
jmp 0x180047cb9
mov eax, 1
mov r13, rbp
mov rdx, r13
add rsp, 0x48
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
Function at 0x180049dd0
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0x50
mov rsi, rcx
mov rax, qword [rcx]
nop dword [rax + rax]
mov rcx, rax
xor rcx, 3
lock cmpxchg qword [rsi], rcx
jne 0x180049de0
test al, 1
je 0x180049ed3
test al, 2
jne 0x180049ed3
test al, 8
jne 0x180049e1b
lea rcx, [rsi + 0x20]
mov qword [rsp + 0x28], 4
lea rdx, [rsp + 0x28]
call fcn.180040590
jmp 0x180049e33
test al, 0x10
je 0x180049e33
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x180049ed3
mov rcx, qword [rsi + 0x68]
call qword [rax + 0x10]
mov rax, 0xffffffffffffffc0
lock xadd qword [rsi], rax
cmp rax, 0x3f
jbe 0x180049ed3
and rax, 0xffffffffffffffc0
cmp rax, 0x40
jne 0x180049e9c
mov rcx, qword [rsi + 0x28]
add rcx, 0xfffffffffffffffe
cmp rcx, 3
mov eax, 1
cmovb rax, rcx
cmp rax, 1
je 0x180049ea2
test rax, rax
jne 0x180049eab
mov rdx, qword [rsi + 0x30]
movabs rax, 0x8000000000000000
cmp rdx, rax
je 0x180049eab
test rdx, rdx
je 0x180049eab
mov rcx, qword [rsi + 0x38]
mov r8d, 1
call fcn.1800326f0
jmp 0x180049eab
add rsp, 0x50
pop rsi
ret
lea rcx, [rsi + 0x28]
call fcn.18003db30
mov rax, qword [rsi + 0x60]
test rax, rax
je 0x180049ebb
mov rcx, qword [rsi + 0x68]
call qword [rax + 0x18]
mov edx, 0x80
mov r8d, 0x80
mov rcx, rsi
add rsp, 0x50
pop rsi
jmp fcn.1800326f0
ud2
Function at 0x180051150
Capabilities:
Set socket configuration

Disassembly:
push rsi
push rdi
sub rsp, 0x38
mov esi, edx
cmp word [rcx], 0
mov eax, 2
mov edi, 0x17
cmove edi, eax
mov eax, dword [0x1800b1b38]
cmp eax, 3
jne 0x1800511ed
mov ecx, edi
mov edx, esi
xor r8d, r8d
call qword [sym.imp.ws2_32.dll_socket]
cmp rax, 0xffffffffffffffff
je 0x1800511c8
mov rsi, rax
mov dword [rsp + 0x2c], 1
lea r8, [rsp + 0x2c]
mov rcx, rax
mov edx, 0x8004667e
call qword [sym.imp.ws2_32.dll_ioctlsocket]
test eax, eax
je 0x1800511de
call sub.kernel32.dll_GetLastError
mov edi, eax
shl rdi, 0x20
or rdi, 2
mov rcx, rsi
call qword [sym.imp.ws2_32.dll_closesocket]
mov eax, 1
jmp 0x1800511e3
call sub.kernel32.dll_GetLastError
mov edi, eax
shl rdi, 0x20
or rdi, 2
mov eax, 1
jmp 0x1800511e3
xor eax, eax
mov rdi, rsi
mov rdx, rdi
add rsp, 0x38
pop rdi
pop rsi
ret
mov byte [rsp + 0x2b], 1
lea rax, [rsp + 0x2b]
mov qword [rsp + 0x30], rax
lea rax, str.C:Userslucak.cargo_registry_srcindex.crates.io_6f17d22bba15001fmio_1.0.2_src_syswindows_net.rs
mov qword [rsp + 0x20], rax
lea rcx, [0x1800b1b38]
lea r9, [0x180097070]
lea r8, [rsp + 0x30]
xor edx, edx
call fcn.180090010
jmp 0x180051174

Function at 0x180051230
Capabilities:
Connect socket

Disassembly:
push rsi
push rdi
push rbx
sub rsp, 0x40
mov rbx, rdx
mov rsi, rcx
mov rcx, rdx
mov edx, 1
call fcn.180051150
mov rdi, rdx
test rax, rax
je 0x180051262
mov qword [rsi + 8], rdi
mov qword [rsi], 0xffffffffffffffff
jmp 0x180051303
cmp word [rbx], 0
je 0x180051287
movups xmm0, xmmword [rbx + 4]
movzx eax, word [rbx + 0x1c]
rol ax, 8
mov ecx, dword [rbx + 0x18]
add rbx, 0x14
mov r8d, 0x1c
mov dx, 0x17
jmp 0x1800512a0
movzx eax, word [rbx + 6]
rol ax, 8
add rbx, 2
xorps xmm0, xmm0
mov r8d, 0x10
mov dx, 2
mov r9d, dword [rbx]
mov word [rsp + 0x24], dx
mov word [rsp + 0x26], ax
mov dword [rsp + 0x28], r9d
movups xmmword [rsp + 0x2c], xmm0
mov dword [rsp + 0x3c], ecx
lea rdx, [rsp + 0x24]
mov rcx, rdi
call qword [sym.imp.ws2_32.dll_connect]
cmp eax, 0xffffffff
jne 0x1800512da
call sub.kernel32.dll_GetLastError
cmp eax, 0x2733
jne 0x1800512e7
mov qword [rsi], rdi
mov qword [rsi + 8], 0
jmp 0x180051303
shl rax, 0x20
or rax, 2
mov qword [rsi + 8], rax
mov qword [rsi], 0xffffffffffffffff
mov rcx, rdi
call qword [sym.imp.ws2_32.dll_closesocket]
mov rax, rsi
add rsp, 0x40
pop rbx
pop rdi
pop rsi
ret
Function at 0x180054ba0
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x478
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 2
mov qword [rsp + 0x48], 0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x28], rax
xor edi, edi
mov r14, qword [sym.imp.kernel32.dll_GetWindowsDirectoryW]
mov ebx, 0xffffffff
xor r12d, r12d
cmp r8, 0x201
jae 0x180054c30
jmp 0x180054c1f
jae 0x180054cec
cmp r8, 0x201
jae 0x180054c30
mov esi, 0x200
lea r13, [rsp + 0x78]
mov rbp, r8
jmp 0x180054c5b
sub r8, r12
mov rax, rdi
sub rax, r12
cmp r8, rax
ja 0x180054cbc
cmp rdi, rbx
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rsp + 0x48], r12
mov rsi, r12
mov r13, qword [rsp + 0x28]
mov rbp, r12
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
mov rcx, r13
mov edx, ebp
call r14
mov r15d, eax
test eax, eax
jne 0x180054c80
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x180054d9f
mov r8d, r15d
cmp rbp, r8
jne 0x180054c10
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x180054dca
lea r8, [rbp*2]
cmp rbp, 0x7fffffff
cmova r8, rbx
cmp r8, 0x201
jb 0x180054c1f
jmp 0x180054c30
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x38]
mov rdx, r12
call fcn.18008d0f0
mov rdi, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
jmp 0x180054c3e
cmp rsi, r8
jb 0x180054dca
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax]
mov rbx, qword [rax + 8]
lea r14, [rsp + 0x58]
mov rcx, r14
mov rdx, r13
call fcn.180062370
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
mov rcx, r14
call fcn.180060eb0
cmp byte [rbx], 0
jne 0x180054d3c
lea rdx, str.exestrings_passed_to_WinAPI_cannot_contain_NULs
lea rcx, [rsp + 0x58]
mov r8d, 3
call fcn.180061850
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.18005ec60
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x180054d6d
mov rcx, qword [rsp + 0x60]
mov r8d, 1
call fcn.1800326f0
test rdi, rdi
je 0x180054d88
add rdi, rdi
mov r8d, 2
mov rcx, qword [rsp + 0x28]
mov rdx, rdi
call fcn.1800326f0
mov rax, rsi
add rsp, 0x478
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rsi, qword [rsp + 0x30]
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000001
mov qword [rsi], rax
test rdi, rdi
jne 0x180054d72
jmp 0x180054d88
ud2
Function at 0x1800550c0
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x478
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x38], 0
mov qword [rsp + 0x40], 2
mov qword [rsp + 0x48], 0
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x28], rax
xor edi, edi
mov r14, qword [sym.imp.kernel32.dll_GetSystemDirectoryW]
mov ebx, 0xffffffff
xor r12d, r12d
cmp r8, 0x201
jae 0x180055150
jmp 0x18005513f
jae 0x18005520c
cmp r8, 0x201
jae 0x180055150
mov esi, 0x200
lea r13, [rsp + 0x78]
mov rbp, r8
jmp 0x18005517b
sub r8, r12
mov rax, rdi
sub rax, r12
cmp r8, rax
ja 0x1800551dc
cmp rdi, rbx
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rsp + 0x48], r12
mov rsi, r12
mov r13, qword [rsp + 0x28]
mov rbp, r12
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
mov rcx, r13
mov edx, ebp
call r14
mov r15d, eax
test eax, eax
jne 0x1800551a0
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x1800552bf
mov r8d, r15d
cmp rbp, r8
jne 0x180055130
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x1800552ea
lea r8, [rbp*2]
cmp rbp, 0x7fffffff
cmova r8, rbx
cmp r8, 0x201
jb 0x18005513f
jmp 0x180055150
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x38]
mov rdx, r12
call fcn.18008d0f0
mov rdi, qword [rsp + 0x38]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x28], rax
jmp 0x18005515e
cmp rsi, r8
jb 0x1800552ea
mov rax, qword [rsp + 0x50]
mov rsi, qword [rax]
mov rbx, qword [rax + 8]
lea r14, [rsp + 0x58]
mov rcx, r14
mov rdx, r13
call fcn.180062370
mov rdx, qword [rsi]
mov r8, qword [rsi + 8]
mov rcx, r14
call fcn.180060eb0
cmp byte [rbx], 0
jne 0x18005525c
lea rdx, str.exestrings_passed_to_WinAPI_cannot_contain_NULs
lea rcx, [rsp + 0x58]
mov r8d, 3
call fcn.180061850
mov rdx, qword [rsp + 0x60]
mov r8, qword [rsp + 0x68]
mov rsi, qword [rsp + 0x30]
mov rcx, rsi
call fcn.18005ec60
mov rdx, qword [rsp + 0x58]
test rdx, rdx
je 0x18005528d
mov rcx, qword [rsp + 0x60]
mov r8d, 1
call fcn.1800326f0
test rdi, rdi
je 0x1800552a8
add rdi, rdi
mov r8d, 2
mov rcx, qword [rsp + 0x28]
mov rdx, rdi
call fcn.1800326f0
mov rax, rsi
add rsp, 0x478
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rsi, qword [rsp + 0x30]
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000001
mov qword [rsi], rax
test rdi, rdi
jne 0x180055292
jmp 0x1800552a8
ud2
Function at 0x180055970
Capabilities:
Query environment variable

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x458
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 2
mov qword [rsp + 0x50], 0
mov r14, qword [rdx + 8]
mov r8d, 0x200
mov eax, 2
mov qword [rsp + 0x30], rax
xor edi, edi
mov esi, 0xffffffff
xor r12d, r12d
cmp r8, 0x201
jae 0x1800559f0
jmp 0x1800559df
jae 0x180055abb
cmp r8, 0x201
jae 0x1800559f0
mov ebx, 0x200
lea r13, [rsp + 0x58]
mov rbp, r8
jmp 0x180055a1f
sub r8, r12
mov rax, rdi
sub rax, r12
cmp r8, rax
ja 0x180055a8b
cmp rdi, rsi
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rsp + 0x50], r12
mov rbx, r12
mov r13, qword [rsp + 0x30]
mov rbp, r12
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
mov rcx, r14
mov rdx, r13
mov r8d, ebp
call qword [sym.imp.kernel32.dll_GetEnvironmentVariableW]
mov r15d, eax
test eax, eax
jne 0x180055a4b
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x180055b02
mov r8d, r15d
cmp rbp, r8
jne 0x1800559d0
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x180055b2d
lea r8, [rbp*2]
cmp rbp, 0x7fffffff
cmova r8, rsi
cmp r8, 0x201
jb 0x1800559df
jmp 0x1800559f0
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x40]
mov rdx, r12
call fcn.18008d0f0
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
jmp 0x180055a02
cmp rbx, r8
jb 0x180055b2d
mov rsi, qword [rsp + 0x38]
mov rcx, rsi
mov rdx, r13
call fcn.180062370
test rdi, rdi
je 0x180055aeb
add rdi, rdi
mov r8d, 2
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call fcn.1800326f0
mov rax, rsi
add rsp, 0x458
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rsi, qword [rsp + 0x38]
mov qword [rsi + 8], rax
movabs rax, 0x8000000000000000
mov qword [rsi], rax
test rdi, rdi
jne 0x180055ad5
jmp 0x180055aeb
ud2
Function at 0x180055b30
Capabilities:
Get common file path

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x458
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x48], 2
mov qword [rsp + 0x50], 0
mov r15d, 0x200
mov eax, 2
mov qword [rsp + 0x30], rax
xor edi, edi
mov r14d, 0xffffffff
xor r12d, r12d
cmp r15, 0x201
jae 0x180055bb0
jmp 0x180055b9f
jae 0x180055c75
cmp r15, 0x201
jae 0x180055bb0
mov ebx, 0x200
lea r13, [rsp + 0x58]
mov rbp, r15
jmp 0x180055bdf
sub r15, r12
mov rax, rdi
sub rax, r12
cmp r15, rax
ja 0x180055c42
cmp rdi, r14
mov r12d, 0xffffffff
cmovb r12, rdi
mov qword [rsp + 0x50], r12
mov rbx, r12
mov r13, qword [rsp + 0x30]
mov rbp, r12
xor ecx, ecx
call qword [sym.imp.kernel32.dll_SetLastError]
mov rcx, r13
mov edx, ebp
call qword [sym.imp.kernel32.dll_GetSystemDirectoryW]
mov esi, eax
test eax, eax
jne 0x180055c06
call qword [sym.imp.kernel32.dll_GetLastError]
test eax, eax
jne 0x180055ca8
mov r15d, esi
cmp rbp, r15
jne 0x180055b90
call qword [sym.imp.kernel32.dll_GetLastError]
cmp eax, 0x7a
jne 0x180055d28
lea r15, [rbp*2]
cmp rbp, 0x7fffffff
cmova r15, r14
cmp r15, 0x201
jb 0x180055b9f
jmp 0x180055bb0
mov qword [rsp + 0x20], 2
mov r9d, 2
lea rcx, [rsp + 0x40]
mov rdx, r12
mov r8, r15
call fcn.18008d0f0
mov rdi, qword [rsp + 0x40]
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rax
jmp 0x180055bc2
cmp rbx, r15
jb 0x180055d28
lea r14, [r15 + r15]
test esi, esi
je 0x180055cd3
movzx eax, byte [0x1800b1b10]
mov edx, 2
mov rcx, r14
call fcn.1800326e0
test rax, rax
je 0x180055d2a
mov rsi, rax
jmp 0x180055cd8
call qword [sym.imp.kernel32.dll_GetLastError]
shl rax, 0x20
or rax, 2
mov rbx, qword [rsp + 0x38]
mov qword [rbx + 8], rax
movabs rax, 0x8000000000000000
mov qword [rbx], rax
test rdi, rdi
jne 0x180055cfb
jmp 0x180055d11
mov esi, 2
mov rcx, rsi
mov rdx, r13
mov r8, r14
call fcn.18008b440
mov rbx, qword [rsp + 0x38]
mov qword [rbx], r15
mov qword [rbx + 8], rsi
mov qword [rbx + 0x10], r15
test rdi, rdi
je 0x180055d11
add rdi, rdi
mov r8d, 2
mov rcx, qword [rsp + 0x30]
mov rdx, rdi
call fcn.1800326f0
mov rax, rbx
add rsp, 0x458
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
ud2
mov ecx, 2
mov rdx, r14
call fcn.18003e2b0
int3

Function at 0x180056da0
Capabilities:
Get system information on windows

Disassembly:
sub rsp, 0x58
xorps xmm0, xmm0
movaps xmmword [rsp + 0x40], xmm0
movaps xmmword [rsp + 0x30], xmm0
movaps xmmword [rsp + 0x20], xmm0
lea rcx, [rsp + 0x20]
call qword [sym.imp.kernel32.dll_GetSystemInfo]
mov ecx, dword [rsp + 0x40]
xor eax, eax
test rcx, rcx
sete al
lea rdx, str.The_number_of_hardware_threads_is_not_known_for_the_target_platform
cmovne rdx, rcx
add rsp, 0x58
ret