Function at 0x1403bac40
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x990
mov rax, qword [0x1404f5550]
xor rax, rsp
mov qword [rsp + reloc.mfc90u.dll_CDocObjectServer::XOleCommandTarget::Exec], rax
mov r15, r8
mov qword [rsp + 0x100], r8
mov r12, rdx
lea rcx, [rsp + 0x181]
xor ebx, ebx
xor edx, edx
mov r8d, COleTemplateServer::COleTemplateServer
mov byte [rsp + 0x180], bl
call sub.MSVCR90.dll_memset
lea rax, [rsp + 0x60]
xor edx, edx
cmp dword [r12 + 0x1c], 0x28
mov dword [rsp + 0x50], ebx
mov dword [rsp + 0x168], 0xcb8555cc
mov qword [rsp + 0x20], rax
mov word [rsp + 0x16c], 0x9128
mov word [rsp + 0x16e], CDataBoundProperty::Notify
mov byte [rsp + 0x170], 0xad
mov byte [rsp + 0x171], 0x9b
mov byte [rsp + 0x172], bl
mov byte [rsp + reloc.mfc90u.dll_CDHtmlDialog::CDHtmlDialog], 0xc0
mov byte [rsp + 0x174], 0x4f
mov byte [rsp + 0x175], 0xd8
mov byte [rsp + 0x176], HashKey<wchar_t const *>
mov byte [rsp + 0x177], SerializeElements<class ATL::CStringT<wchar_t,class StrTraitMFC_DLL<wchar_t,class ATL::ChTraitsCRT<wchar_t> > > >
mov dword [rsp + 0x158], 0x4590f811
mov word [rsp + 0x15c], 0x1d3a
mov word [rsp + 0x15e], CDataBoundProperty::Notify
mov byte [rsp + 0x160], 0x89
mov byte [rsp + 0x161], 0x1f
mov byte [rsp + 0x162], bl
mov byte [rsp + reloc.mfc90u.dll_CDaoRecordset::CDaoRecordset], 0xaa
mov byte [rsp + 0x164], bl
mov byte [rsp + 0x165], 0x4b
mov byte [rsp + 0x166], gethostbyname
mov byte [rsp + 0x167], 0x24
mov dword [rsp + 0x148], 0xdc12a687
mov word [rsp + reloc.mfc90u.dll_CBrush::CBrush], 0x737f
mov word [rsp + 0x14e], CDataBoundProperty::Notify
mov byte [rsp + reloc.mfc90u.dll_CChevronOwnerDrawMenu::CChevronOwnerDrawMenu], 0x88
mov byte [rsp + 0x151], 0x4d
mov byte [rsp + 0x152], bl
mov byte [rsp + reloc.mfc90u.dll_CCmdUI::CCmdUI], 0xaa
mov byte [rsp + reloc.mfc90u.dll_CColorDialog::CColorDialog], bl
mov byte [rsp + 0x155], 0x4b
mov byte [rsp + 0x156], gethostbyname
mov byte [rsp + 0x157], 0x24
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], rbx
mov qword [rsp + 0x98], rbx
mov qword [rsp + 0xc0], rbx
mov qword [rsp + 0x88], rbx
mov qword [rsp + 0xb8], rbx
mov qword [rsp + 0xa8], rbx
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0x80], rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xb0], rbx
lea r13d, [rbx + 1]
lea r9, [rsp + 0x148]
jge 0x1403bae40
lea r8d, [rbx + 5]
lea rcx, [rsp + 0x158]
call qword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, ebx
jge 0x1403bae4d
xor eax, eax
jmp 0x1403bc26f
mov r8d, r13d
lea rcx, [rsp + 0x168]
jmp 0x1403bae2f
lea rcx, str.rootcimv2
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov rcx, qword [rsp + 0x60]
mov rsi, rax
cmp rax, rbx
mov rax, qword [rcx]
jne 0x1403bae6f
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403bae39
lea rdx, [rsp + 0x58]
xor r9d, r9d
xor r8d, r8d
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x38], rbx
mov qword [rsp + 0x30], rbx
mov rdx, rsi
mov dword [rsp + 0x28], ebx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x18]
mov rcx, rsi
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jge 0x1403baeb1
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
jmp 0x1403bae6a
mov rcx, qword [rsp + 0x58]
mov eax, 3
mov dword [rsp + 0x38], ebx
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], eax
lea edx, [rax + 7]
xor r9d, r9d
xor r8d, r8d
mov dword [rsp + 0x20], eax
call qword [sym.imp.ole32.dll_CoSetProxyBlanket]
cmp eax, ebx
jge 0x1403baeec
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403baea7
lea rcx, [0x140417df0]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
lea rdx, str.SELECT_Name_FROM_Win32_VideoController
lea rcx, [rsp + 0x380]
mov rsi, rax
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
or r14, 0xffffffffffffffff
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
lea edx, [r14 + 9]
not rcx
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
jne 0x1403bafa4
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
jmp 0x1403bae39
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x98]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bb130
mov rcx, qword [rsp + 0x98]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xf8]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb122
cmp dword [rsp + 0x50], ebx
jbe 0x1403bb122
mov rcx, qword [rsp + 0xf8]
lea r9, [rsp + 0x68]
lea rdx, str.Name
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb114
cmp word [rsp + 0x68], 8
jne 0x1403bb114
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bb114
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bb093
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xf8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403baf80
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rdx, str.__Microsoft_Corporation___WDDM_
lea rcx, [rsp + 0x180]
call sub.MSVCR90.dll_strstr
cmp rax, rbx
je 0x1403bb0d2
mov byte [rax], bl
cmp byte [rsp + 0x180], bl
je 0x1403bb114
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
cmp ecx, ebx
jle 0x1403bb114
lea rdx, [rsp + 0x180]
mov edi, ecx
movsx ecx, byte [rdx]
add rdx, r13
add word [r12 + 0x58], cx
xor byte [r12 + 0x59], cl
sub rdi, r13
jne 0x1403bb0fe
mov rcx, qword [rsp + 0xf8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x98]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_SerialNumber_FROM_Win32_BaseBoard
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xc0]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bb321
mov rcx, qword [rsp + 0xc0]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xe0]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb313
cmp dword [rsp + 0x50], ebx
jbe 0x1403bb313
mov rcx, qword [rsp + 0xe0]
lea r9, [rsp + 0x68]
lea rdx, str.SerialNumber
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb305
cmp word [rsp + 0x68], 8
jne 0x1403bb305
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bb305
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bb29e
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xe0]
jmp 0x1403bb088
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
mov rdx, rbx
repne scasb al, byte [rdi]
mov rdi, rbx
not rcx
sub rcx, r13
movsxd r8, ecx
cmp r8, rbx
jle 0x1403bb305
mov al, byte [rsp + rdx + 0x180]
mov byte [rdi + r12 + 0x10c], al
add rdi, r13
cmp rdi, 0x14
jge 0x1403bb305
add rdx, r13
cmp rdx, r8
jl 0x1403bb2e5
mov rcx, qword [rsp + 0xe0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_Manufacturer_FROM_Win32_BaseBoard
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x88]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bb510
mov rcx, qword [rsp + 0x88]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xc8]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb502
cmp dword [rsp + 0x50], ebx
jbe 0x1403bb502
mov rcx, qword [rsp + 0xc8]
lea r9, [rsp + 0x68]
lea rdx, str.Manufacturer
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb4f4
cmp word [rsp + 0x68], 8
jne 0x1403bb4f4
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bb4f4
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bb48f
mov rcx, qword [rsp + 0x88]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xc8]
jmp 0x1403bb088
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
mov rdx, rbx
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
movsxd rdi, ecx
cmp rdi, rbx
jle 0x1403bb4f4
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + reloc.mfc90u.dll_delete__], cx
xor byte [r12 + 0x10b], cl
cmp rdx, rdi
jl 0x1403bb4d3
mov rcx, qword [rsp + 0xc8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x88]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_version_FROM_Win32_BIOS
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xb8]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bb6f9
mov rcx, qword [rsp + 0xb8]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xe8]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb6eb
cmp dword [rsp + 0x50], ebx
jbe 0x1403bb6eb
mov rcx, qword [rsp + 0xe8]
lea r9, [rsp + 0x68]
lea rdx, str.version
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb6dd
cmp word [rsp + 0x68], 8
jne 0x1403bb6dd
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bb6dd
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bb67e
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xe8]
jmp 0x1403bb088
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
mov rdx, rbx
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
movsxd rdi, ecx
cmp rdi, rbx
jle 0x1403bb6dd
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x3e], cx
xor byte [r12 + 0x3f], cl
cmp rdx, rdi
jl 0x1403bb6c2
mov rcx, qword [rsp + 0xe8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_ProductName_FROM_Win32_SoundDevice
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xa8]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bb8e8
mov rcx, qword [rsp + 0xa8]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xf0]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb8da
cmp dword [rsp + 0x50], ebx
jbe 0x1403bb8da
mov rcx, qword [rsp + 0xf0]
lea r9, [rsp + 0x68]
lea rdx, [0x14041d588]
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bb8cc
cmp word [rsp + 0x68], 8
jne 0x1403bb8cc
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bb8cc
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bb867
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xf0]
jmp 0x1403bb088
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
mov rdx, rbx
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
movsxd rdi, ecx
cmp rdi, rbx
jle 0x1403bb8cc
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x122], cx
xor byte [r12 + 0x123], cl
cmp rdx, rdi
jl 0x1403bb8ab
mov rcx, qword [rsp + 0xf0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_Name_FROM_Win32_CDROMDrive
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x90]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bbaf2
mov rcx, qword [rsp + 0x90]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xd8]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbae4
cmp dword [rsp + 0x50], ebx
jbe 0x1403bbae4
mov rcx, qword [rsp + 0xd8]
lea r9, [rsp + 0x68]
lea rdx, str.Name
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbad6
cmp word [rsp + 0x68], 8
jne 0x1403bbad6
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bbad6
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bba56
mov rcx, qword [rsp + 0x90]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xd8]
jmp 0x1403bb088
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rdx, str._ATA_Device
lea rcx, [rsp + 0x180]
call sub.MSVCR90.dll_strstr
cmp rax, rbx
je 0x1403bba95
mov byte [rax], bl
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
sub rcx, r13
movsxd rdi, ecx
cmp rdi, rbx
jle 0x1403bbad6
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x120], cx
xor byte [r12 + 0x121], cl
cmp rdx, rdi
jl 0x1403bbab5
mov rcx, qword [rsp + 0xd8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x90]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [r12 + 0x1c], 0x46
lea rcx, [rsp + 0x380]
lea rdx, str.SELECT_SerialNumber_FROM_Win32_DiskDrive
jge 0x1403bbb10
lea rdx, str.SELECT_SerialNumber_FROM_Win32_PhysicalMedia
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
xor edx, edx
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0x80]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rdi
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rdi
mov ebp, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp ebp, ebx
jl 0x1403bbd3e
mov rcx, qword [rsp + 0x80]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0x108]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, 4
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbd30
mov eax, dword [rsp + 0x50]
cmp eax, ebx
jbe 0x1403bbd0c
cmp eax, r13d
mov ebp, r13d
jb 0x1403bbd0c
mov r13, rbx
lea r14, [rsp + 0x108]
cmp ebp, 4
ja 0x1403bbd04
mov rcx, qword [r14]
lea r9, [rsp + 0x68]
lea rdx, str.SerialNumber
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbced
cmp word [rsp + 0x68], 8
jne 0x1403bbced
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bbced
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
je 0x1403bc12a
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x180]
mov rdx, rbx
repne scasb al, byte [rdi]
mov rdi, rbx
not rcx
sub rcx, 1
movsxd r8, ecx
cmp r8, rbx
jle 0x1403bbced
mov cl, byte [rsp + rdx + 0x180]
cmp cl, bl
je 0x1403bbce4
cmp cl, 0x20
je 0x1403bbce4
lea rax, [rdi + r12]
add rdi, 1
cmp rdi, 0x14
mov byte [rax + r13 + 0x62], cl
jge 0x1403bbced
add rdx, 1
cmp rdx, r8
jl 0x1403bbcc1
mov eax, dword [rsp + 0x50]
add ebp, 1
add r14, 8
add r13, 0x14
cmp ebp, eax
jbe 0x1403bbc19
or r14, 0xffffffffffffffff
lea r13d, [r14 + 2]
cmp eax, ebx
mov ebp, ebx
jbe 0x1403bbd30
lea rdi, [rsp + 0x108]
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
add ebp, r13d
add rdi, 8
cmp ebp, dword [rsp + 0x50]
jb 0x1403bbd1a
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_Model_FROM_Win32_DiskDrive
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xa0]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bbf9c
mov rcx, qword [rsp + 0xa0]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0x128]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, 4
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbf8e
mov eax, dword [rsp + 0x50]
cmp eax, ebx
jbe 0x1403bbf6a
cmp eax, r13d
mov ebp, r13d
mov r14, r13
jb 0x1403bbf66
lea r15, [rsp + 0x128]
lea r13, [r12 + 0x5b]
cmp ebp, 4
ja 0x1403bbf58
mov rcx, qword [r15]
lea r9, [rsp + 0x68]
lea rdx, str.Model
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bbf3d
cmp word [rsp + 0x68], 8
jne 0x1403bbf3d
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bbf3d
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
je 0x1403bc165
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rdx, str._ATA_Device
lea rcx, [rsp + 0x180]
call sub.MSVCR90.dll_strstr
cmp rax, rbx
je 0x1403bbef9
mov byte [rax], bl
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x180]
repne scasb al, byte [rdi]
mov rdx, rbx
not rcx
sub rcx, 1
movsxd rcx, ecx
cmp rcx, rbx
jle 0x1403bbf3d
movsx eax, byte [rsp + rdx + 0x180]
add rdx, 1
add word [r12 + r14*2 + 0x58], ax
mov al, byte [rsp + rdx + 0x17f]
xor byte [r13], al
cmp rdx, rcx
jl 0x1403bbf1b
mov eax, dword [rsp + 0x50]
add ebp, 1
add r14, 1
add r15, 8
add r13, 2
cmp ebp, eax
jbe 0x1403bbe5b
mov r15, qword [rsp + 0x100]
mov r13d, 1
or r14, 0xffffffffffffffff
cmp eax, ebx
mov ebp, ebx
jbe 0x1403bbf8e
lea rdi, [rsp + 0x128]
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
add ebp, r13d
add rdi, 8
cmp ebp, dword [rsp + 0x50]
jb 0x1403bbf78
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
lea rdx, str.SELECT_Domain_FROM_Win32_ComputerSystem
lea rcx, [rsp + 0x380]
call sub.MSVCR90.dll_sprintf
lea rcx, [rsp + 0x580]
xor edx, edx
mov r8d, reloc.mfc90u.dll_CDHtmlControlSink::AddRef
call sub.MSVCR90.dll_memset
xor eax, eax
lea rdi, [rsp + 0x380]
mov rcx, r14
lea r8, [rsp + 0x380]
mov edx, 8
repne scasb al, byte [rdi]
lea rax, [rsp + 0x580]
mov dword [rsp + 0x28], reloc.mfc90u.dll_CBrowserControlSite::AddRef
not rcx
mov qword [rsp + 0x20], rax
sub rcx, r13
mov r9, rcx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea rcx, [rsp + 0x580]
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rbp, rax
je 0x1403baf80
mov rcx, qword [rsp + 0x58]
lea rdx, [rsp + 0xb0]
mov r9d, gethostbyname
mov rax, qword [rcx]
mov qword [rsp + 0x28], rdx
mov r8, rbp
mov rdx, rsi
mov qword [rsp + 0x20], rbx
call qword [rax + 0xa0]
mov rcx, rbp
mov edi, eax
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x1403bc24b
mov rcx, qword [rsp + 0xb0]
lea rdx, [rsp + 0x50]
lea r9, [rsp + 0xd0]
mov rax, qword [rcx]
mov qword [rsp + 0x20], rdx
mov r8d, r13d
mov edx, r14d
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bc23d
cmp dword [rsp + 0x50], ebx
jbe 0x1403bc23d
mov rcx, qword [rsp + 0xd0]
lea r9, [rsp + 0x68]
lea rdx, [0x14048bb28]
mov rax, qword [rcx]
xor r8d, r8d
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
call qword [rax + 0x20]
cmp eax, ebx
jl 0x1403bc22f
cmp word [rsp + 0x68], 8
jne 0x1403bc22f
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403bc22f
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403bc1a0
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403bc264
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [rsp + 0x50], ebx
jbe 0x1403baf80
lea rdi, [rsp + 0x108]
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
add ebx, 1
add rdi, 8
cmp ebx, dword [rsp + 0x50]
jb 0x1403bc14a
jmp 0x1403baf80
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [rsp + 0x50], ebx
jbe 0x1403baf80
lea rdi, [rsp + 0x128]
mov rcx, qword [rdi]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
add ebx, 1
add rdi, 8
cmp ebx, dword [rsp + 0x50]
jb 0x1403bc185
jmp 0x1403baf80
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403babe4
mov rcx, rdi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
lea rax, [rsp + 0x180]
lea rdx, [rsp + 0x180]
sub r15, rax
mov al, byte [rdx]
mov byte [r15 + rdx], al
add rdx, r13
cmp al, bl
jne 0x1403bc1d7
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
movsxd rdi, ecx
cmp rdi, rbx
jle 0x1403bc22f
movsx eax, byte [rsp + rbx + 0x180]
movsx ecx, byte [rsp + rbx + 0x180]
add word [r12 + 0x12a], ax
call sub.MSVCR90.dll_toupper
add rbx, r13
xor byte [r12 + 0x12b], al
cmp rbx, rdi
jl 0x1403bc201
mov rcx, qword [rsp + 0xd0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xb0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov ebx, r13d
mov rcx, rsi
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, ebx
mov rcx, qword [rsp + reloc.mfc90u.dll_CDocObjectServer::XOleCommandTarget::Exec]
xor rcx, rsp
call fcn.1403c2380
mov rbx, qword [rsp + 0x9d0]
add rsp, 0x990
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret