joyce8/EMBER2024-capa huggingface dataset:
Function at 0x140172250
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
mov rbp, rsp
sub rsp, 0x70
and qword [rbp + 0x18], 0
mov rbx, r9
cmp dword [0x1404522b8], 0
jne 0x140172282
mov ecx, 0xc004d101
jmp 0x140172313
mov rdx, rcx
lea r9, [rbp + 0x18]
mov rcx, qword [0x1404522b0]
mov r8d, 4
call fcn.140173aac
mov ecx, eax
test eax, eax
js 0x140172313
mov rax, qword [rbp + 0x18]
test byte [rax + 0x18], 1
jne 0x1401722b2
mov ecx, 0xc004d314
jmp 0x140172313
mov rcx, qword [rax + 0x10]
xor r9d, r9d
mov rdx, qword [0x140452498]
lea rax, [0x14003e55c]
and qword [rbp - 0x1c], 0
mov qword [rbp - 0x30], rcx
mov ecx, 3
mov qword [rbp - 0x48], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x40], rax
lea rax, [0x1403d910c]
mov qword [rbp - 0x50], rcx
lea r8d, [rcx + 0x41]
mov qword [rbp - 0x38], rdx
mov dword [rbp - 0x20], ecx
lea rdx, [rbp - 0x50]
lea ecx, [r8 + 0x75]
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x14], rbx
call sub.ntdll.dll_NtQuerySystemInformation
mov ecx, dword [rbp + 0x20]
test ecx, ecx
jns 0x140172318
call fcn.140082a8c
call fcn.14016fdd0
mov ecx, eax
mov ebx, eax
call fcn.140082b34
lea rcx, [rbp + 0x18]
call fcn.140071d54
mov eax, ebx
mov rbx, qword [rsp + 0x80]
add rsp, 0x70
pop rbp
ret

Function at 0x140172348
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rdi
push rbp
mov rbp, rsp
sub rsp, 0x70
and qword [rbp - 0x48], 0
mov rbx, r8
cmp dword [0x1404522b8], 0
mov edi, edx
jne 0x140172377
mov ecx, 0xc004d101
jmp 0x140172454
test rcx, rcx
je 0x140172406
mov rdx, rcx
lea r9, [rbp - 0x48]
mov rcx, qword [0x1404522b0]
mov r8d, 4
call fcn.140173aac
mov ecx, eax
test eax, eax
js 0x140172454
mov rax, qword [rbp - 0x48]
test byte [rax + 0x18], 1
jne 0x1401723b7
mov ecx, 0xc004d314
jmp 0x140172454
mov rcx, qword [rax + 0x10]
xor r9d, r9d
mov rdx, qword [0x140452498]
lea rax, [0x14003f25c]
mov qword [rbp - 0x38], rax
lea rax, [rbp + 0x28]
mov qword [rbp - 0x20], rcx
mov ecx, 0xb9
mov qword [rbp - 0x28], rdx
lea r8d, [r9 + 0x34]
lea rdx, [rbp - 0x40]
mov qword [rbp - 0x30], rax
mov qword [rbp - 0x40], 3
mov dword [rbp - 0x18], edi
mov qword [rbp - 0x14], rbx
call sub.ntdll.dll_NtQuerySystemInformation
mov ecx, dword [rbp + 0x28]
jmp 0x140172450
mov rax, qword [0x140452498]
lea rdx, [rbp - 0x40]
and qword [rbp - 0x20], 0
xor r9d, r9d
mov qword [rbp - 0x28], rax
mov ecx, 0xb9
lea rax, [0x14003f25c]
mov qword [rbp - 0x40], 3
mov qword [rbp - 0x38], rax
lea rax, [rbp - 0x50]
lea r8d, [r9 + 0x34]
mov qword [rbp - 0x30], rax
mov dword [rbp - 0x18], edi
mov qword [rbp - 0x14], rbx
call sub.ntdll.dll_NtQuerySystemInformation
mov ecx, dword [rbp - 0x50]
test ecx, ecx
jns 0x140172459
call fcn.140082a8c
call fcn.14016fdd0
mov ecx, eax
mov ebx, eax
call fcn.140082b34
lea rcx, [rbp - 0x48]
call fcn.140071d54
lea r11, [rsp + 0x70]
mov eax, ebx
mov rbx, qword [r11 + 0x10]
mov rdi, qword [r11 + 0x18]
mov rsp, r11
pop rbp
ret
Function at 0x140172784
Capabilities:
Encrypt data using rc4 prga

Disassembly:
push rbx
sub rsp, 0x10
mov rbx, r8
mov r11, rdx
xor r10d, r10d
test r9d, r9d
je 0x1401727fb
mov dword [rsp], r10d
cmp r10d, r9d
jae 0x1401727fb
inc byte [r11 + 0x100]
movzx r8d, byte [r11 + 0x100]
mov al, byte [r8 + r11]
add byte [r11 + 0x101], al
movzx edx, byte [r11 + 0x101]
mov cl, byte [rdx + r11]
mov al, byte [r8 + r11]
mov byte [rdx + r11], al
mov byte [r8 + r11], cl
movzx ecx, byte [r11 + 0x101]
movzx eax, byte [r11 + 0x100]
mov cl, byte [rcx + r11]
add cl, byte [rax + r11]
movzx eax, cl
mov cl, byte [rax + r11]
xor byte [r10 + rbx], cl
inc r10d
jmp 0x140172798
xor eax, eax
jmp 0x140172803
add rsp, 0x10
pop rbx
ret

Function at 0x140181cf4
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
mov rbp, rsp
sub rsp, 0x60
mov r14d, dword [rcx + 4]
mov r12, rdx
mov rdx, qword [rcx + 8]
mov rbx, r8
mov qword [rbp - 0x38], rdx
mov dword [rbp + 0x58], r14d
test r14d, r14d
je 0x140181e05
xor edi, edi
test r14d, r14d
jle 0x140181dfa
mov esi, r14d
mov rbx, rdx
lea r14, [0x1400376dc]
xor r9d, r9d
mov qword [rbp - 0x30], 3
mov r15d, esi
mov qword [rbp - 0x28], r14
shr r15d, 1
lea rdx, [rbp - 0x30]
mov qword [rbp - 0x10], r12
lea r8d, [r9 + 0x28]
lea r13d, [r15 + rdi]
movsxd rax, r13d
lea rcx, [rbx + rax*8]
mov qword [rbp - 0x18], rcx
lea rax, [rbp + 0x40]
mov ecx, 0xb9
mov qword [rbp - 0x20], rax
call sub.ntdll.dll_NtQuerySystemInformation
cmp dword [rbp + 0x40], 0
jge 0x140181d9d
or eax, 0xffffffff
lea edi, [r13 + 1]
sub eax, r15d
add esi, eax
jmp 0x140181da0
mov esi, r15d
test esi, esi
jg 0x140181d47
mov rbx, qword [rbp + 0x50]
cmp edi, dword [rbp + 0x58]
jge 0x140181dfa
mov rdx, qword [rbp - 0x38]
xor r9d, r9d
movsxd rax, edi
mov ecx, 0xb9
mov qword [rbp - 0x30], 3
mov qword [rbp - 0x18], r12
lea r8d, [r9 + 0x28]
lea rdx, [rdx + rax*8]
lea rax, [0x1400376dc]
mov qword [rbp - 0x10], rdx
mov qword [rbp - 0x28], rax
lea rdx, [rbp - 0x30]
lea rax, [rbp - 0x40]
mov qword [rbp - 0x20], rax
call sub.ntdll.dll_NtQuerySystemInformation
cmp dword [rbp - 0x40], 0
jl 0x140181dfa
mov al, 1
jmp 0x140181dfc
xor al, al
test rbx, rbx
je 0x140181e10
mov dword [rbx], edi
jmp 0x140181e10
xor al, al
test rbx, rbx
je 0x140181e10
and dword [r8], 0
mov rbx, qword [rsp + 0xa8]
add rsp, 0x60
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
Function at 0x140182bec
Capabilities:
Get system information on windows

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x5f]
sub rsp, 0xa0
mov rsi, rcx
xorps xmm0, xmm0
xor eax, eax
lea rcx, [rbp - 0x21]
movups xmmword [rbp - 0x21], xmm0
mov qword [rbp - 0x11], rax
mov r15, r8
mov r14, rdx
call qword [sym.imp.OLEAUT32.dll_VariantClear]
xorps xmm0, xmm0
lea rcx, [rbp - 0x39]
xor eax, eax
movups xmmword [rbp - 0x39], xmm0
mov qword [rbp - 0x29], rax
call qword [sym.imp.OLEAUT32.dll_VariantClear]
mov rax, qword [rsi]
mov r12d, 3
movsd xmm1, qword [rbp - 0x29]
xor edi, edi
and qword [rbp + 0x67], 0
cmp dword [0x140452a98], 1
mov rbx, qword [rax + 0x1c0]
lea r13d, [r12 + 5]
mov rax, qword [0x1403cf6d0]
mov rcx, rbx
cmove rdi, qword [0x1404521a8]
mov dword [rbp - 0x31], r13d
mov word [rbp - 0x39], r12w
movups xmm0, xmmword [rbp - 0x39]
movsd qword [rbp + 7], xmm1
movaps xmmword [rbp - 9], xmm0
call rax
lea rcx, [rbp + 0x67]
mov rax, rbx
mov qword [rsp + 0x20], rcx
lea rdx, [rbp - 9]
mov rcx, rsi
xor r9d, r9d
mov r8, rdi
call rax
mov ebx, eax
test eax, eax
js 0x140182d28
movsd xmm1, qword [rbp - 0x11]
mov rbx, qword [rbp + 0x67]
mov qword [rbp - 0x19], r15
mov word [rbp - 0x21], r13w
movups xmm0, xmmword [rbp - 0x21]
mov rax, qword [rbx]
movsd qword [rbp + 7], xmm1
movaps xmmword [rbp - 9], xmm0
mov rdi, qword [rax + 0x48]
mov rax, qword [0x1403cf6d0]
mov rcx, rdi
call rax
mov rax, rdi
lea rdx, [rbp - 9]
mov rcx, rbx
call rax
mov ebx, eax
test eax, eax
js 0x140182d28
mov rax, qword [r14]
mov rbx, qword [rax + 0xa8]
mov rax, qword [0x1403cf6d0]
mov rcx, rbx
call rax
mov rdx, qword [rbp + 0x67]
mov rax, rbx
xor r8d, r8d
mov rcx, r14
call rax
mov ebx, eax
test eax, eax
jns 0x140182d2f
mov ecx, eax
call fcn.140082a8c
mov ecx, ebx
call fcn.140082b34
and qword [rbp + 0x27], 0
lea rax, [0x14003189c]
xor r9d, r9d
mov qword [rbp + 0x1f], rax
lea rax, [rbp + 0x67]
mov qword [rbp + 0x17], r12
lea rdx, [rbp + 0x17]
mov qword [rbp + 0x2f], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
lea r11, [rsp + 0xa0]
mov eax, ebx
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
Function at 0x140182f7c
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
and qword [rbp + 0x20], 0
mov rdi, rcx
movsxd rsi, edx
cmp dword [rcx], esi
je 0x1401830b5
mov r14d, dword [rcx + 4]
cmp esi, r14d
cmovl r14d, esi
test edx, edx
jle 0x14018302d
mov rbx, rsi
xor ecx, ecx
call fcn.140082b34
shl rbx, 3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, qword [rbp + 0x20]
mov rbx, rax
test r15, r15
je 0x140182ffb
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
jne 0x140183011
mov ebx, 0x8007000e
mov ecx, ebx
call fcn.140082a8c
jmp 0x1401830b7
mov qword [rbp + 0x20], rbx
test r14d, r14d
je 0x14018302d
mov rdx, qword [rdi + 8]
mov rcx, rbx
movsxd r8, r14d
shl r8, 3
call sub.msvcrt.dll_memcpy
cmp esi, dword [rdi + 4]
jge 0x14018307c
mov ebx, esi
mov rcx, qword [rdi + 8]
movsxd rax, ebx
lea rdx, [rcx + rax*8]
test rdx, rdx
je 0x140183075
and qword [rbp - 0x10], 0
lea rax, [0x14003be5c]
xor r9d, r9d
mov qword [rbp - 8], rdx
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x20], 3
mov ecx, 0xb9
mov qword [rbp - 0x18], rax
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
inc ebx
cmp ebx, dword [rdi + 4]
jl 0x140183034
mov r15, qword [rbp + 0x20]
and qword [rbp + 0x20], 0
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x1401830a2
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
test r15, r15
cmovne rax, r15
mov qword [rdi + 8], rax
mov dword [rdi + 4], r14d
mov dword [rdi], esi
xor ebx, ebx
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x10], 0
lea rax, [0x14004711c]
xor r9d, r9d
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x20], 3
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret
Function at 0x140183118
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
push rsi
push rdi
push r12
push r14
push r15
sub rsp, 0x50
mov rsi, rcx
movsxd r14, edx
mov ecx, dword [rcx + 4]
mov r12, r8
test ecx, ecx
jns 0x140183142
mov edi, 0x8000ffff
mov ecx, edi
jmp 0x14018315c
lea r8, [rsp + 0x80]
mov edx, 1
call fcn.1400821a4
mov edi, eax
test eax, eax
jns 0x140183166
mov ecx, eax
call fcn.140082a8c
jmp 0x1401832d8
mov edi, dword [rsi]
test edi, edi
jns 0x14018317a
mov edi, 0x8000ffff
mov ebx, edi
mov ecx, edi
jmp 0x14018321f
cmp dword [rsp + 0x80], edi
jg 0x14018318a
xor ebx, ebx
jmp 0x140183224
mov r15d, dword [rsp + 0x80]
test edi, edi
jne 0x14018319f
mov edi, 0x20
xor ebx, ebx
jmp 0x1401831f9
js 0x1401831db
lea ecx, [rdi + rdi]
xor ebx, ebx
mov eax, ecx
shr eax, 1
cmp eax, edi
je 0x1401831bc
mov ebx, 0x80070216
mov ecx, ebx
call fcn.140082a8c
jmp 0x1401831bf
mov r15d, ecx
mov ecx, ebx
call fcn.140082b34
test ebx, ebx
js 0x1401831e0
test r15d, r15d
jns 0x1401831d6
mov ebx, 0x80070216
jmp 0x1401831e0
mov edi, r15d
jmp 0x1401831e7
mov ebx, 0x80070057
mov ecx, ebx
call fcn.140082a8c
mov ecx, ebx
call fcn.140082b34
test ebx, ebx
jns 0x1401831f9
mov ecx, ebx
call fcn.140082a8c
mov ecx, ebx
call fcn.140082b34
test ebx, ebx
js 0x140183238
cmp edi, dword [rsp + 0x80]
jl 0x140183192
mov edx, edi
mov rcx, rsi
call fcn.140183300
mov ebx, eax
test eax, eax
jns 0x140183224
mov ecx, eax
call fcn.140082a8c
mov ecx, ebx
call fcn.140082b34
mov edi, ebx
test ebx, ebx
jns 0x14018323c
mov ecx, ebx
jmp 0x14018315c
mov ecx, ebx
jmp 0x14018321f
mov ecx, dword [rsi + 4]
mov rbx, r14
cmp r14d, ecx
jge 0x140183262
mov rax, qword [rsi + 8]
sub ecx, r14d
movsxd r8, ecx
shl r8, 3
lea rdx, [rax + r14*8]
lea rcx, [rdx + 8]
call sub.msvcrt.dll_memmove
mov rax, qword [rsi + 8]
xor ecx, ecx
mov qword [rax + rbx*8], rcx
mov r14, qword [rsi + 8]
mov rdi, qword [r12]
and qword [r12], rcx
mov rax, qword [r14 + rbx*8]
test rax, rax
je 0x1401832c6
lea rcx, [0x14004919c]
mov qword [rsp + 0x20], 3
mov qword [rsp + 0x28], rcx
lea rdx, [rsp + 0x20]
xor r9d, r9d
mov qword [rsp + 0x38], rax
lea rcx, [rsp + 0x98]
mov dword [rsp + 0x40], 1
mov qword [rsp + 0x30], rcx
mov ecx, 0xb9
lea r8d, [r9 + 0x24]
call sub.ntdll.dll_NtQuerySystemInformation
xor eax, eax
test rdi, rdi
cmovne rax, rdi
mov qword [r14 + rbx*8], rax
inc dword [rsi + 4]
xor edi, edi
mov ecx, edi
call fcn.140082b34
mov rbx, qword [rsp + 0x88]
mov eax, edi
add rsp, 0x50
pop r15
pop r14
pop r12
pop rdi
pop rsi
ret
Function at 0x140183300
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
and qword [rbp + 0x20], 0
mov rdi, rcx
movsxd rsi, edx
cmp dword [rcx], esi
je 0x140183439
mov r14d, dword [rcx + 4]
cmp esi, r14d
cmovl r14d, esi
test edx, edx
jle 0x1401833b1
mov rbx, rsi
xor ecx, ecx
call fcn.140082b34
shl rbx, 3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, qword [rbp + 0x20]
mov rbx, rax
test r15, r15
je 0x14018337f
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
jne 0x140183395
mov ebx, 0x8007000e
mov ecx, ebx
call fcn.140082a8c
jmp 0x14018343b
mov qword [rbp + 0x20], rbx
test r14d, r14d
je 0x1401833b1
mov rdx, qword [rdi + 8]
mov rcx, rbx
movsxd r8, r14d
shl r8, 3
call sub.msvcrt.dll_memcpy
cmp esi, dword [rdi + 4]
jge 0x140183400
mov ebx, esi
mov rcx, qword [rdi + 8]
movsxd rax, ebx
lea rdx, [rcx + rax*8]
test rdx, rdx
je 0x1401833f9
and qword [rbp - 0x10], 0
lea rax, [0x14003d85c]
xor r9d, r9d
mov qword [rbp - 8], rdx
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x20], 3
mov ecx, 0xb9
mov qword [rbp - 0x18], rax
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
inc ebx
cmp ebx, dword [rdi + 4]
jl 0x1401833b8
mov r15, qword [rbp + 0x20]
and qword [rbp + 0x20], 0
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x140183426
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
test r15, r15
cmovne rax, r15
mov qword [rdi + 8], rax
mov dword [rdi + 4], r14d
mov dword [rdi], esi
xor ebx, ebx
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x10], 0
lea rax, [0x1400487dc]
xor r9d, r9d
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x20], 3
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret
Function at 0x140184134
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x20], rsi
push rbp
push rdi
push r12
push r14
push r15
mov rbp, rsp
sub rsp, 0x80
and qword [rbp - 0x48], 0
lea rax, [0x1400453dc]
and qword [rbp - 0x14], 0
mov r15, r9
mov qword [rbp - 0x38], rax
xor r9d, r9d
lea rax, [rbp + 0x38]
mov dword [rbp - 0x18], r8d
mov qword [rbp - 0x30], rax
mov esi, r8d
lea rax, [0x1403da578]
mov qword [rbp - 0x28], rdx
mov qword [rbp - 0x20], rax
lea r8d, [r9 + 0x3c]
lea rax, [rbp + 0x40]
mov qword [rbp - 0x40], 3
mov r14, rdx
mov qword [rbp - 0xc], rax
mov r12, rcx
lea rdx, [rbp - 0x40]
lea ecx, [r8 + 0x7d]
call sub.ntdll.dll_NtQuerySystemInformation
mov ebx, dword [rbp + 0x38]
cmp ebx, 0xc004d304
jne 0x1401841c2
xor ebx, ebx
jmp 0x1401842ac
test ebx, ebx
jns 0x1401841cd
mov ecx, ebx
jmp 0x1401842a7
mov ebx, dword [rbp + 0x40]
shl rbx, 3
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov rdi, qword [rbp - 0x48]
mov rbx, rax
test rdi, rdi
je 0x140184208
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rdi
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
jne 0x140184214
mov ebx, 0x8007000e
jmp 0x1401841c6
lea rax, [0x1400453dc]
mov qword [rbp - 0x48], rbx
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x40]
lea rax, [rbp - 0x50]
mov qword [rbp - 0x14], rbx
mov qword [rbp - 0x30], rax
xor r9d, r9d
lea rax, [0x1403da578]
mov qword [rbp - 0x40], 3
mov qword [rbp - 0x20], rax
lea rax, [rbp + 0x40]
mov qword [rbp - 0xc], rax
lea r8d, [r9 + 0x3c]
mov qword [rbp - 0x28], r14
lea ecx, [r8 + 0x7d]
mov dword [rbp - 0x18], esi
call sub.ntdll.dll_NtQuerySystemInformation
mov ebx, dword [rbp - 0x50]
test ebx, ebx
js 0x1401841c6
xor edi, edi
cmp dword [rbp + 0x40], edi
jbe 0x1401842ac
mov rsi, qword [rbp + 0x50]
mov rax, qword [rbp - 0x48]
mov r9, r15
mov rdx, r14
mov qword [rsp + 0x20], rsi
mov rcx, r12
mov r8, qword [rax + rdi*8]
call fcn.140184fc0
mov ebx, eax
test eax, eax
js 0x1401842a5
inc edi
cmp edi, dword [rbp + 0x40]
jb 0x14018427b
jmp 0x1401842ac
mov ecx, eax
call fcn.140082a8c
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x30], 0
lea rax, [0x14003e89c]
xor r9d, r9d
mov qword [rbp - 0x38], rax
lea rax, [rbp - 0x48]
mov qword [rbp - 0x40], 3
lea rdx, [rbp - 0x40]
mov qword [rbp - 0x28], rax
lea r8d, [r9 + 0x3c]
lea ecx, [r8 + 0x7d]
call sub.ntdll.dll_NtQuerySystemInformation
lea r11, [rsp + 0x80]
mov eax, ebx
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r12
pop rdi
pop rbp
ret
Function at 0x140184b08
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
and qword [rbp + 0x20], 0
mov rdi, rcx
movsxd rsi, edx
cmp dword [rcx], esi
je 0x140184c7c
mov r14d, dword [rcx + 4]
cmp esi, r14d
cmovl r14d, esi
test edx, edx
jle 0x140184bf0
lea r15, [rsi + rsi*8]
movabs rax, 0xe38e38e38e38e38f
shl r15, 3
xor ebx, ebx
mul r15
shr rdx, 6
cmp rdx, rsi
je 0x140184b79
mov ebx, 0x80070216
mov ecx, ebx
call fcn.140082a8c
mov r15, qword [rbp + 0x20]
mov ecx, ebx
call fcn.140082b34
test ebx, ebx
jns 0x140184b90
mov ecx, ebx
call fcn.140082a8c
jmp 0x140184c7e
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, qword [rbp + 0x20]
mov rbx, rax
test r15, r15
je 0x140184bc4
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
jne 0x140184bd0
mov ebx, 0x8007000e
jmp 0x140184b84
mov qword [rbp + 0x20], rbx
test r14d, r14d
je 0x140184bf0
mov rdx, qword [rdi + 8]
mov rcx, rbx
movsxd rax, r14d
lea r8, [rax + rax*8]
shl r8, 3
call sub.msvcrt.dll_memcpy
cmp esi, dword [rdi + 4]
jge 0x140184c43
mov ebx, esi
mov rdx, qword [rdi + 8]
movsxd rax, ebx
lea rcx, [rax + rax*8]
lea rax, [rdx + rcx*8]
test rax, rax
je 0x140184c3c
and qword [rbp - 0x10], 0
lea rcx, [0x14004a1dc]
xor r9d, r9d
mov qword [rbp - 0x18], rcx
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x20], 3
mov ecx, 0xb9
mov qword [rbp - 8], rax
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
inc ebx
cmp ebx, dword [rdi + 4]
jl 0x140184bf7
mov r15, qword [rbp + 0x20]
and qword [rbp + 0x20], 0
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x140184c69
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
test r15, r15
cmovne rax, r15
mov qword [rdi + 8], rax
mov dword [rdi + 4], r14d
mov dword [rdi], esi
xor ebx, ebx
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x10], 0
lea rax, [0x140047e1c]
xor r9d, r9d
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x20], 3
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret
Function at 0x140184cdc
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
xor ebx, ebx
movsxd rsi, edx
mov rdi, rcx
mov qword [rbp + 0x20], rbx
cmp dword [rcx], esi
je 0x140184dbc
mov r14d, dword [rcx + 4]
cmp esi, r14d
cmovl r14d, esi
test edx, edx
jle 0x140184d85
mov rbx, rsi
xor ecx, ecx
call fcn.140082b34
shl rbx, 5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, qword [rbp + 0x20]
mov rbx, rax
test r15, r15
je 0x140184d5c
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
je 0x140184e14
mov qword [rbp + 0x20], rbx
test r14d, r14d
je 0x140184d85
mov rdx, qword [rdi + 8]
mov rcx, rbx
movsxd r8, r14d
shl r8, 5
call sub.msvcrt.dll_memcpy
mov rbx, qword [rbp + 0x20]
and qword [rbp + 0x20], 0
mov r15, qword [rdi + 8]
test r15, r15
je 0x140184da7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
test rbx, rbx
cmovne rax, rbx
xor ebx, ebx
mov qword [rdi + 8], rax
mov dword [rdi + 4], r14d
mov dword [rdi], esi
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x10], 0
lea rax, [0x14004815c]
xor r9d, r9d
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x20], 3
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret
mov ebx, 0x8007000e
mov ecx, ebx
call fcn.140082a8c
jmp 0x140184dbc
Function at 0x140184e28
Capabilities:
Get system information on windows

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
mov qword [rsp + 0x20], rdi
push rbp
push r14
push r15
mov rbp, rsp
sub rsp, 0x40
and qword [rbp + 0x20], 0
mov rdi, rcx
movsxd rsi, edx
cmp dword [rcx], esi
je 0x140184f5e
mov r14d, dword [rcx + 4]
cmp esi, r14d
cmovl r14d, esi
test edx, edx
jle 0x140184ed9
mov rbx, rsi
xor ecx, ecx
call fcn.140082b34
shl rbx, 5
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov r15, qword [rbp + 0x20]
mov rbx, rax
test r15, r15
je 0x140184ea7
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, r15
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
test rbx, rbx
jne 0x140184ebd
mov ebx, 0x8007000e
mov ecx, ebx
call fcn.140082a8c
jmp 0x140184f60
mov qword [rbp + 0x20], rbx
test r14d, r14d
je 0x140184ed9
mov rdx, qword [rdi + 8]
mov rcx, rbx
movsxd r8, r14d
shl r8, 5
call sub.msvcrt.dll_memcpy
cmp esi, dword [rdi + 4]
jge 0x140184f25
mov ebx, esi
movsxd rdx, ebx
shl rdx, 5
add rdx, qword [rdi + 8]
je 0x140184f1e
and qword [rbp - 0x10], 0
lea rax, [0x14004a51c]
xor r9d, r9d
mov qword [rbp - 8], rdx
lea rdx, [rbp - 0x20]
mov qword [rbp - 0x20], 3
mov ecx, 0xb9
mov qword [rbp - 0x18], rax
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
inc ebx
cmp ebx, dword [rdi + 4]
jl 0x140184ee0
mov r15, qword [rbp + 0x20]
and qword [rbp + 0x20], 0
mov rbx, qword [rdi + 8]
test rbx, rbx
je 0x140184f4b
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, rbx
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
xor eax, eax
test r15, r15
cmovne rax, r15
mov qword [rdi + 8], rax
mov dword [rdi + 4], r14d
mov dword [rdi], esi
xor ebx, ebx
mov ecx, ebx
call fcn.140082b34
and qword [rbp - 0x10], 0
lea rax, [0x14004849c]
xor r9d, r9d
mov qword [rbp - 0x18], rax
lea rax, [rbp + 0x20]
mov qword [rbp - 0x20], 3
lea rdx, [rbp - 0x20]
mov qword [rbp - 8], rax
mov ecx, 0xb9
lea r8d, [r9 + 0x20]
call sub.ntdll.dll_NtQuerySystemInformation
mov rsi, qword [rsp + 0x70]
mov eax, ebx
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rsp + 0x78]
add rsp, 0x40
pop r15
pop r14
pop rbp
ret