Function at 0x140038440
Capabilities:
Connect to wmi namespace via wbemlocator
Get system information on windows
Query or enumerate registry value

Disassembly:
mov rax, rsp
mov qword [rax + 8], rcx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x270
movaps xmmword [rax - 0x48], xmm6
mov rdi, rcx
mov dword [rax + 0x10], 1
xor r13d, r13d
mov qword [rcx], r13
mov qword [rcx + 8], r13
mov qword [rcx + 0x10], r13
mov dword [rax + 0x10], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
movdqa xmm6, xmmword [0x140104660]
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], r13b
movups xmmword [rsp + 0x70], xmm0
movdqa xmmword [rax - 0x228], xmm6
mov byte [rsp + 0x70], r13b
movups xmmword [rax - 0x218], xmm0
movdqa xmmword [rax - 0x208], xmm6
mov byte [rax - 0x218], r13b
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
jns 0x140038665
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x14003855b
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x14003856b
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
mov dword [rsp + 0x2b8], r13d
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x1400385b6
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400385b1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x140038607
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038602
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x140038652
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003864d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], 0
mov rax, rdi
jmp 0x140039a4c
mov qword [rsp + 0x40], r13
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 6
xor r9d, r9d
xor r8d, r8d
mov r14, 0xffffffffffffffff
mov edx, r14d
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
jns 0x14003883e
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x14003872e
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x14003873e
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rsp + 0x2b8], r13d
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x14003878f
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003878a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x1400387e0
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400387db
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x14003882b
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038826
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], 0
mov rax, rdi
jmp 0x140039a4c
mov qword [rsp + 0xc8], r13
lea rax, [rsp + 0xc8]
mov qword [rsp + 0x20], rax
lea r9, [0x1400e6230]
xor edx, edx
mov r8d, 1
lea rcx, [0x1400e6240]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x140038a11
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x140038901
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x140038911
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rsp + 0x2b8], r13d
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x140038962
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003895d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x1400389b3
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400389ae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x1400389fe
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400389f9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], 0
mov rax, rdi
jmp 0x140039a4c
mov qword [rsp + 0xc0], r13
mov rax, qword [rsp + 0xc8]
mov rcx, qword [rax]
mov rsi, qword [rcx + 0x18]
mov ecx, Ordinal_27
call fcn.14008f478
mov rbx, rax
mov qword [rsp + 0x2c0], rax
test rax, rax
je 0x140038a68
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, str.ROOTCIMV2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
je 0x140039a67
jmp 0x140038a6b
mov rbx, r13
mov qword [rsp + 0x2c0], rbx
test rbx, rbx
je 0x140039a72
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], r13d
mov qword [rsp + 0x20], r13
xor r9d, r9d
xor r8d, r8d
mov rdx, qword [rbx]
mov rcx, qword [rsp + 0xc8]
call rsi
mov esi, eax
mov ecx, r14d
lock xadd dword [rbx + 0x10], ecx
cmp ecx, 1
jne 0x140038aef
mov rcx, qword [rbx]
test rcx, rcx
je 0x140038ad0
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140038ae2
call fcn.14008f7c4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.14008f7c4
test esi, esi
jns 0x140038c9f
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x140038b81
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x140038b91
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rsp + 0x2b8], r13d
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x140038bf0
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038beb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x140038c41
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038c3c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x140038c8c
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038c87
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], 0
mov rax, rdi
jmp 0x140039a4c
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], 6
xor r9d, r9d
xor r8d, r8d
mov edx, 0xa
mov rcx, qword [rsp + 0xc0]
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
jns 0x140038e8f
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x140038d64
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x140038d74
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
mov dword [rsp + 0x2b8], r13d
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x140038de1
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038ddc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x140038e2e
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038e29
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140038e70
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x140038e7c
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140038e77
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140038e77
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
movdqa xmmword [rsp + 0x60], xmm6
mov byte [rsp + 0x50], 0
mov rax, rdi
jmp 0x140039a4c
mov qword [rsp + 0x110], r13
mov rax, qword [rsp + 0xc0]
mov rcx, qword [rax]
mov r12, qword [rcx + 0xa0]
mov ecx, Ordinal_27
call fcn.14008f478
mov rbx, rax
mov qword [rsp + 0x2c0], rax
test rax, rax
je 0x140038edf
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, str.SELECT_Manufacturer__SMBIOSBIOSVersion__ReleaseDate_FROM_Win32_BIOS
call fcn.140090660
mov qword [rbx], rax
jmp 0x140038ee2
mov rbx, r13
mov qword [rsp + 0x2c0], rbx
test rbx, rbx
je 0x140039a7c
mov r15, qword [rbx]
mov ecx, Ordinal_27
call fcn.14008f478
mov rsi, rax
mov qword [rsp + 0xd0], rax
test rax, rax
je 0x140038f2c
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
lea rcx, [0x1400ff174]
call fcn.140090660
mov qword [rsi], rax
jmp 0x140038f2f
mov rsi, r13
mov qword [rsp + 0xd0], rsi
test rsi, rsi
je 0x140039a87
lea rax, [rsp + 0x110]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], r13
mov r9d, Ordinal_50
mov r8, r15
mov rdx, qword [rsi]
mov rcx, qword [rsp + 0xc0]
call r12
mov r15d, eax
mov ecx, r14d
lock xadd dword [rsi + 0x10], ecx
cmp ecx, 1
jne 0x140038faa
mov rcx, qword [rsi]
test rcx, rcx
je 0x140038f8a
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rsi], r13
mov rcx, qword [rsi + 8]
test rcx, rcx
je 0x140038f9c
call fcn.14008f7c4
mov qword [rsi + 8], r13
mov edx, Ordinal_27
mov rcx, rsi
call fcn.14008f7c4
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140038fe7
mov rcx, qword [rbx]
test rcx, rcx
je 0x140038fc8
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140038fda
call fcn.14008f7c4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.14008f7c4
test r15d, r15d
jns 0x140039008
mov r8d, reloc.WLDAP32.dll_Ordinal_32
lea rdx, str.Error_with_BIOS__restart_checker
lea rcx, [rsp + 0x50]
call fcn.140038110
jmp 0x1400397a5
mov qword [rsp + 0xd0], r13
mov dword [rsp + 0x2c0], r13d
mov rcx, qword [rsp + 0x110]
test rcx, rcx
je 0x1400397a5
mov rax, qword [rcx]
lea rdx, [rsp + 0x2c0]
mov qword [rsp + 0x20], rdx
lea r9, [rsp + 0xd0]
mov r8d, 1
mov edx, r14d
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
cmp dword [rsp + 0x2c0], 0
je 0x140039797
mov rcx, qword [rsp + 0xd0]
test rcx, rcx
je 0x140039797
mov rax, qword [rcx]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x118]
xor r8d, r8d
lea rdx, [0x1400ff178]
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
test eax, eax
js 0x140039175
cmp word [rsp + 0x118], 8
jne 0x140039175
mov rsi, qword [rsp + 0x120]
mov ecx, Ordinal_27
call fcn.14008f478
mov rbx, rax
mov qword [rsp + 0xe0], rax
test rax, rax
je 0x1400390ee
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x1400390f1
test rsi, rsi
jne 0x140039a92
jmp 0x1400390f1
mov rbx, r13
mov qword [rsp + 0xe0], rbx
test rbx, rbx
je 0x140039a9d
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140039117
mov rcx, qword [rbx]
call fcn.140090540
mov qword [rbx + 8], rax
mov r8, r14
nop word [rax + rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140039120
mov rdx, rax
lea rcx, [rsp + 0x50]
call fcn.140038110
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140039175
mov rcx, qword [rbx]
test rcx, rcx
je 0x140039156
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140039168
call fcn.14008f7c4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.14008f7c4
lea rcx, [rsp + 0x118]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x118]
xor r8d, r8d
lea rdx, str.SMBIOSBIOSVersion
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
test eax, eax
js 0x140039295
cmp word [rsp + 0x118], 8
jne 0x140039295
mov rsi, qword [rsp + 0x120]
mov ecx, Ordinal_27
call fcn.14008f478
mov rbx, rax
mov qword [rsp + 0xe0], rax
test rax, rax
je 0x14003920d
mov qword [rax + 8], r13
mov dword [rax + 0x10], 1
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov qword [rbx], rax
test rax, rax
jne 0x140039210
test rsi, rsi
jne 0x140039aa8
jmp 0x140039210
mov rbx, r13
mov qword [rsp + 0xe0], rbx
test rbx, rbx
je 0x140039ab3
mov rax, qword [rbx + 8]
test rax, rax
jne 0x140039236
mov rcx, qword [rbx]
call fcn.140090540
mov qword [rbx + 8], rax
mov r8, r14
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x140039240
mov rdx, rax
lea rcx, [rsp + 0x70]
call fcn.140038110
nop
mov eax, r14d
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x140039295
mov rcx, qword [rbx]
test rcx, rcx
je 0x140039276
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r13
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x140039288
call fcn.14008f7c4
mov qword [rbx + 8], r13
mov edx, Ordinal_27
mov rcx, rbx
call fcn.14008f7c4
lea rcx, [rsp + 0x118]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx]
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], r13
lea r9, [rsp + 0x118]
xor r8d, r8d
lea rdx, str.ReleaseDate
call qword [rax + reloc.WLDAP32.dll_Ordinal_32]
test eax, eax
js 0x14003977b
cmp word [rsp + 0x118], 8
jne 0x14003977b
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x100], r13
mov rdx, qword [rsp + 0x120]
nop word [rax + rax]
inc r14
cmp word [rdx + r14*2], 0
jne 0x140039310
mov r8, r14
lea rcx, [rsp + 0xe8]
call fcn.14003b2d0
nop
cmp qword [rsp + 0xf8], 8
jb 0x140039730
lea r8, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova r8, qword [rsp + 0xe8]
add r8, 8
lea rdx, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova rdx, qword [rsp + 0xe8]
lea rcx, [rsp + 0x1f8]
call fcn.14003b020
mov r14, rax
lea r8, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova r8, qword [rsp + 0xe8]
add r8, 0x10
lea rdx, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova rdx, qword [rsp + 0xe8]
add rdx, 0xc
lea rcx, [rsp + 0x1b8]
call fcn.14003b020
mov rsi, rax
lea r8, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova r8, qword [rsp + 0xe8]
add r8, 0xc
lea rdx, [rsp + 0xe8]
cmp qword [rsp + 0x100], 7
cmova rdx, qword [rsp + 0xe8]
add rdx, 8
lea rcx, [rsp + 0x198]
call fcn.14003b020
nop
mov r8d, 1
lea rdx, [0x1400ff1d8]
mov rcx, rax
call fcn.14003af20
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x178], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x188], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov dword [rsp + 0x2b8], reloc.WS2_32.dll_recvfrom
mov r9, rsi
lea r8, [rsp + 0x178]
lea rcx, [rsp + 0x138]
call fcn.14003b760
mov dword [rsp + 0x2b8], reloc.WS2_32.dll_send
mov r8d, 1
lea rdx, [0x1400ff1d8]
lea rcx, [rsp + 0x138]
call fcn.14003af20
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x158], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x168], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], reloc.WS2_32.dll_ntohs
mov byte [rax], 0
mov dword [rsp + 0x2b8], reloc.WS2_32.dll_socket
mov r9, r14
lea r8, [rsp + 0x158]
lea rcx, [rsp + 0x1d8]
call fcn.14003b760
mov dword [rsp + 0x2b8], Ordinal_32
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x140039536
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039531
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140039531
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
movups xmm0, xmmword [rsp + 0x1d8]
movaps xmmword [rsp + 0x90], xmm0
movups xmm1, xmmword [rsp + 0x1e8]
movaps xmmword [rsp + 0xa0], xmm1
mov rdx, qword [rsp + 0x170]
cmp rdx, 0xf
jbe 0x14003959d
inc rdx
mov rcx, qword [rsp + 0x158]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039597
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140039597
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
nop
mov rdx, qword [rsp + 0x150]
cmp rdx, 0xf
jbe 0x1400395e3
inc rdx
mov rcx, qword [rsp + 0x138]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400395de
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400395de
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
movdqu xmmword [rsp + 0x148], xmm6
mov byte [rsp + 0x138], 0
mov rdx, qword [rsp + 0x190]
cmp rdx, 0xf
jbe 0x14003963b
inc rdx
mov rcx, qword [rsp + 0x178]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039635
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140039635
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
nop
mov rdx, qword [rsp + 0x1b0]
cmp rdx, 0xf
jbe 0x140039681
inc rdx
mov rcx, qword [rsp + 0x198]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003967c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003967c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
movdqu xmmword [rsp + 0x1a8], xmm6
mov byte [rsp + 0x198], 0
mov rdx, qword [rsp + 0x1d0]
cmp rdx, 0xf
jbe 0x1400396d8
inc rdx
mov rcx, qword [rsp + 0x1b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400396d3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x1400396d3
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
movdqu xmmword [rsp + 0x1c8], xmm6
mov byte [rsp + 0x1b8], 0
mov rdx, qword [rsp + 0x210]
cmp rdx, 0xf
jbe 0x140039730
inc rdx
mov rcx, qword [rsp + 0x1f8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14003972a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14003972a
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
nop
mov rdx, qword [rsp + 0x100]
cmp rdx, 7
jbe 0x14003977b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039776
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140039776
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008f7c4
lea rcx, [rsp + 0x118]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x110]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rcx, [rsp + 0x218]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
movzx eax, word [rsp + 0x218]
cmp ax, 9
je 0x1400397ce
test ax, ax
mov byte [rsp + 0xb0], 0
jne 0x1400397d6
mov byte [rsp + 0xb0], 1
xorps xmm0, xmm0
movups xmmword [rsp + 0xd0], xmm0
lea rdx, [rsp + 0xd0]
mov ecx, reloc.WS2_32.dll_recv
call qword [sym.imp.tbs.dll_Tbsi_GetDeviceInfo]
test eax, eax
sete byte [rsp + 0xb1]
mov dword [rsp + 0x2c8], r13d
mov dword [rsp + 0x108], 4
lea rax, [rsp + 0x130]
mov qword [rsp + 0x20], rax
mov r9d, 0x20019
xor r8d, r8d
lea rdx, str.SYSTEMCurrentControlSetControlSecureBootState
mov rcx, 0xffffffff80000002
call qword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x140039896
lea rax, [rsp + 0x108]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x2c8]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
lea rdx, str.UEFISecureBootEnabled
mov rcx, qword [rsp + 0x130]
call qword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
test eax, eax
jne 0x140039888
cmp dword [rsp + 0x2c8], 1
sete byte [rsp + 0xb2]
mov rcx, qword [rsp + 0x130]
call qword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov eax, 1
xor ecx, ecx
cpuid
test ecx, 0x80000000
setne byte [rsp + 0xb3]
mov rbx, qword [rdi + 8]
cmp rbx, qword [rdi + 0x10]
je 0x140039920
mov qword [rsp + 0x2c0], rbx
lea rdx, [rsp + 0x50]
mov rcx, rbx
call fcn.14003a940
nop
lea rcx, [rbx + 0x20]
lea rdx, [rsp + 0x70]
call fcn.14003a940
nop
lea rcx, [rbx + 0x40]
lea rdx, [rsp + 0x90]
call fcn.14003a940
movzx eax, byte [rsp + 0xb0]
mov byte [rbx + 0x60], al
movzx eax, byte [rsp + 0xb1]
mov byte [rbx + 0x61], al
movzx eax, byte [rsp + 0xb2]
mov byte [rbx + 0x62], al
movzx eax, byte [rsp + 0xb3]
mov byte [rbx + 0x63], al
add qword [rdi + 8], 0x68
jmp 0x140039930
lea r8, [rsp + 0x50]
mov rdx, rbx
mov rcx, rdi
call fcn.14003bb90
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
call qword [sym.imp.ole32.dll_CoUninitialize]
nop
jmp 0x140039965
mov rdi, qword [rsp + 0x2b0]
movdqa xmm6, xmmword [0x140104660]
mov rdx, qword [rsp + 0xa8]
cmp rdx, 0xf
jbe 0x1400399a8
inc rdx
mov rcx, qword [rsp + 0x90]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400399a3
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039a37
call fcn.14008f7c4
movdqa xmmword [rsp + 0xa0], xmm6
mov byte [rsp + 0x90], 0
mov rdx, qword [rsp + 0x88]
cmp rdx, 0xf
jbe 0x1400399f5
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400399f0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140039a37
call fcn.14008f7c4
movdqa xmmword [rsp + 0x80], xmm6
mov byte [rsp + 0x70], 0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x140039a49
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140039a43
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x140039a43
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
jmp 0x140039955
call fcn.14008f7c4
nop
mov rax, rdi
movaps xmm6, xmmword [rsp + 0x260]
add rsp, 0x270
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
nop
mov ecx, 0x8007000e
call fcn.140090530
int3