Function at 0x1403a67d0
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 [0x1404e41f8]
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 0x1403a69d0
lea r8d, [rbx + 5]
lea rcx, [rsp + 0x158]
call qword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, ebx
jge 0x1403a69dd
xor eax, eax
jmp 0x1403a7dff
mov r8d, r13d
lea rcx, [rsp + 0x168]
jmp 0x1403a69bf
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 0x1403a69ff
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403a69c9
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 0x1403a6a41
mov rcx, qword [rsp + 0x60]
mov rax, qword [rcx]
jmp 0x1403a69fa
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 0x1403a6a7c
mov rcx, qword [rsp + 0x58]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
jmp 0x1403a6a37
lea rcx, [0x1404023d8]
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 0x1403a6b34
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 0x1403a69c9
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 0x1403a6cc0
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 0x1403a6cb2
cmp dword [rsp + 0x50], ebx
jbe 0x1403a6cb2
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 0x1403a6ca4
cmp word [rsp + 0x68], 8
jne 0x1403a6ca4
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a6ca4
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a6c23
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 0x1403a6b10
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a6c62
mov byte [rax], bl
cmp byte [rsp + 0x180], bl
je 0x1403a6ca4
xor eax, eax
lea rdi, [rsp + 0x180]
mov rcx, r14
repne scasb al, byte [rdi]
not rcx
sub rcx, r13
cmp ecx, ebx
jle 0x1403a6ca4
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 0x1403a6c8e
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 0x1403a6b10
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 0x1403a6eb1
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 0x1403a6ea3
cmp dword [rsp + 0x50], ebx
jbe 0x1403a6ea3
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 0x1403a6e95
cmp word [rsp + 0x68], 8
jne 0x1403a6e95
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a6e95
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a6e2e
mov rcx, qword [rsp + 0xc0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xe0]
jmp 0x1403a6c18
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a6e95
mov al, byte [rsp + rdx + 0x180]
mov byte [rdi + r12 + 0x10c], al
add rdi, r13
cmp rdi, 0x14
jge 0x1403a6e95
add rdx, r13
cmp rdx, r8
jl 0x1403a6e75
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 0x1403a6b10
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 0x1403a70a0
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 0x1403a7092
cmp dword [rsp + 0x50], ebx
jbe 0x1403a7092
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 0x1403a7084
cmp word [rsp + 0x68], 8
jne 0x1403a7084
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a7084
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a701f
mov rcx, qword [rsp + 0x88]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xc8]
jmp 0x1403a6c18
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a7084
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 0x1403a7063
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 0x1403a6b10
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 0x1403a7289
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 0x1403a727b
cmp dword [rsp + 0x50], ebx
jbe 0x1403a727b
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 0x1403a726d
cmp word [rsp + 0x68], 8
jne 0x1403a726d
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a726d
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a720e
mov rcx, qword [rsp + 0xb8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xe8]
jmp 0x1403a6c18
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a726d
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x3e], cx
xor byte [r12 + 0x3f], cl
cmp rdx, rdi
jl 0x1403a7252
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 0x1403a6b10
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 0x1403a7478
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 0x1403a746a
cmp dword [rsp + 0x50], ebx
jbe 0x1403a746a
mov rcx, qword [rsp + 0xf0]
lea r9, [rsp + 0x68]
lea rdx, [0x1404077f0]
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 0x1403a745c
cmp word [rsp + 0x68], 8
jne 0x1403a745c
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a745c
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a73f7
mov rcx, qword [rsp + 0xa8]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xf0]
jmp 0x1403a6c18
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a745c
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x122], cx
xor byte [r12 + 0x123], cl
cmp rdx, rdi
jl 0x1403a743b
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 0x1403a6b10
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 0x1403a7682
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 0x1403a7674
cmp dword [rsp + 0x50], ebx
jbe 0x1403a7674
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 0x1403a7666
cmp word [rsp + 0x68], 8
jne 0x1403a7666
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a7666
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a75e6
mov rcx, qword [rsp + 0x90]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
mov rcx, qword [rsp + 0xd8]
jmp 0x1403a6c18
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a7625
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 0x1403a7666
movsx ecx, byte [rsp + rdx + 0x180]
add rdx, r13
add word [r12 + 0x120], cx
xor byte [r12 + 0x121], cl
cmp rdx, rdi
jl 0x1403a7645
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 0x1403a76a0
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 0x1403a6b10
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 0x1403a78ce
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 0x1403a78c0
mov eax, dword [rsp + 0x50]
cmp eax, ebx
jbe 0x1403a789c
cmp eax, r13d
mov ebp, r13d
jb 0x1403a789c
mov r13, rbx
lea r14, [rsp + 0x108]
cmp ebp, 4
ja 0x1403a7894
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 0x1403a787d
cmp word [rsp + 0x68], 8
jne 0x1403a787d
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a787d
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
je 0x1403a7cba
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a787d
mov cl, byte [rsp + rdx + 0x180]
cmp cl, bl
je 0x1403a7874
cmp cl, 0x20
je 0x1403a7874
lea rax, [rdi + r12]
add rdi, 1
cmp rdi, 0x14
mov byte [rax + r13 + 0x62], cl
jge 0x1403a787d
add rdx, 1
cmp rdx, r8
jl 0x1403a7851
mov eax, dword [rsp + 0x50]
add ebp, 1
add r14, 8
add r13, 0x14
cmp ebp, eax
jbe 0x1403a77a9
or r14, 0xffffffffffffffff
lea r13d, [r14 + 2]
cmp eax, ebx
mov ebp, ebx
jbe 0x1403a78c0
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 0x1403a78aa
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 0x1403a6b10
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 0x1403a7b2c
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 0x1403a7b1e
mov eax, dword [rsp + 0x50]
cmp eax, ebx
jbe 0x1403a7afa
cmp eax, r13d
mov ebp, r13d
mov r14, r13
jb 0x1403a7af6
lea r15, [rsp + 0x128]
lea r13, [r12 + 0x5b]
cmp ebp, 4
ja 0x1403a7ae8
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 0x1403a7acd
cmp word [rsp + 0x68], 8
jne 0x1403a7acd
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a7acd
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
je 0x1403a7cf5
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a7a89
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 0x1403a7acd
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 0x1403a7aab
mov eax, dword [rsp + 0x50]
add ebp, 1
add r14, 1
add r15, 8
add r13, 2
cmp ebp, eax
jbe 0x1403a79eb
mov r15, qword [rsp + 0x100]
mov r13d, 1
or r14, 0xffffffffffffffff
cmp eax, ebx
mov ebp, ebx
jbe 0x1403a7b1e
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 0x1403a7b08
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 0x1403a6b10
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 0x1403a7ddb
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 0x1403a7dcd
cmp dword [rsp + 0x50], ebx
jbe 0x1403a7dcd
mov rcx, qword [rsp + 0xd0]
lea r9, [rsp + 0x68]
lea rdx, [0x1404792e8]
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 0x1403a7dbf
cmp word [rsp + 0x68], 8
jne 0x1403a7dbf
mov rcx, qword [rsp + 0x70]
cmp rcx, rbx
je 0x1403a7dbf
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
cmp rax, rbx
mov rdi, rax
jne 0x1403a7d30
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 0x1403a7df4
mov rcx, qword [rsp + 0x80]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [rsp + 0x50], ebx
jbe 0x1403a6b10
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 0x1403a7cda
jmp 0x1403a6b10
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
call qword [rax + reloc.WS2_32.dll_recv]
cmp dword [rsp + 0x50], ebx
jbe 0x1403a6b10
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 0x1403a7d15
jmp 0x1403a6b10
lea rcx, [rsp + 0x68]
call qword [sym.imp.OLEAUT32.dll_VariantCopy]
lea rcx, [rsp + 0x180]
mov rdx, rdi
call fcn.1403a6774
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 0x1403a7d67
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 0x1403a7dbf
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 0x1403a7d91
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.1403addc0
mov rbx, qword [rsp + 0x9d0]
add rsp, 0x990
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret