Function at 0x4af220
Capabilities:
Connect to wmi namespace via wbemlocator
Reference sql statements
Reference wmi statements

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x182c
call fcn.004f23a0
mov eax, dword [0x5552b0]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push esi
push edi
xor edi, edi
push edi
mov dword [ebp - 0x181c], eax
call dword [sym.imp.ole32.dll_CoInitialize]
cmp byte [0x568461], 0
je 0x4af317
lea ecx, [ebp - 0x180c]
push ecx
push 0x5020f8
mov esi, 1
push esi
push edi
push 0x5021c8
mov dword [ebp - 0x180c], edi
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x4af311
mov eax, dword [ebp - 0x180c]
lea ecx, [ebp - 0x1808]
push ecx
push edi
push edi
push edi
push edi
push edi
push edi
mov dword [ebp - 0x1808], edi
mov edx, dword [eax]
mov edx, dword [edx + 0xc]
push str.ROOTCIMV2
push eax
call edx
test eax, eax
js 0x4af303
mov eax, dword [ebp - 0x1808]
push edi
push edi
push 3
push 3
push edi
push edi
push 0xa
push eax
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
mov eax, dword [ebp - 0x1808]
js 0x4af2fb
lea edx, [ebp - 0x1810]
push edx
push edi
push 0x30
push str.SELECT__FROM_Win32_NetworkAdapter_WHERE_AdapterTypeID__0_OR_AdapterTypeID__9
mov dword [ebp - 0x1810], edi
mov ecx, dword [eax]
push 0x52550c
push eax
mov eax, dword [ecx + 0x50]
call eax
test eax, eax
jns 0x4af329
mov eax, dword [ebp - 0x1808]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x180c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
xor eax, eax
pop edi
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.004e4746
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x1810]
mov dword [ebp - 0x1804], edi
mov dword [ebp - 0x1814], edi
cmp eax, edi
je 0x4b04fc
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea esp, [esp]
mov ecx, dword [eax]
lea edx, [ebp - 0x1814]
push edx
lea edx, [ebp - 0x1804]
push edx
push esi
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
cmp dword [ebp - 0x1814], 0
je 0x4b04f6
xor ecx, ecx
push 0xfe
push ecx
lea edx, [ebp - 0x7ea]
push edx
mov word [ebp - 0x7ec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.Name
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af3e2
cmp word [ebp - 0x17fc], si
je 0x4af3e2
mov ecx, dword [ebp - 0x17f4]
push 0x7f
push ecx
lea edx, [ebp - 0x7ec]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push 0xfe
push ecx
lea edx, [ebp - 0x6ea]
push edx
mov word [ebp - 0x6ec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.Caption
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af44e
cmp word [ebp - 0x17fc], si
je 0x4af44e
mov ecx, dword [ebp - 0x17f4]
push 0x7f
push ecx
lea edx, [ebp - 0x6ec]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push 0x7e
push ecx
lea edx, [ebp - 0x3ea]
push edx
mov word [ebp - 0x3ec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.AdapterType
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af4b7
cmp word [ebp - 0x17fc], si
je 0x4af4b7
mov ecx, dword [ebp - 0x17f4]
push 0x3f
push ecx
lea edx, [ebp - 0x3ec]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push ecx
xor eax, eax
push ecx
mov word [ebp - 0x28], cx
lea ecx, [ebp - 0x17fc]
push ecx
mov dword [ebp - 0x26], eax
mov dword [ebp - 0x22], eax
mov dword [ebp - 0x1e], eax
mov dword [ebp - 0x1a], eax
mov dword [ebp - 0x16], eax
mov dword [ebp - 0x12], eax
mov dword [ebp - 0xe], eax
mov word [ebp - 0xa], ax
mov eax, dword [ebp - 0x1804]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
push 0
push str.Availability
push eax
call edx
test eax, eax
jne 0x4af522
cmp word [ebp - 0x17fc], si
je 0x4af522
movsx ecx, word [ebp - 0x17f4]
push 0xa
lea eax, [ebp - 0x28]
push eax
push ecx
call fcn.004e534f
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x4ea]
push ecx
mov word [ebp - 0x4ec], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.GUID
push eax
call edx
test eax, eax
jne 0x4af58b
cmp word [ebp - 0x17fc], si
je 0x4af58b
mov eax, dword [ebp - 0x17f4]
push 0x3f
push eax
lea ecx, [ebp - 0x4ec]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x1ea]
push ecx
mov word [ebp - 0x1ec], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.Manufacturer
push eax
call edx
test eax, eax
jne 0x4af5f4
cmp word [ebp - 0x17fc], si
je 0x4af5f4
mov eax, dword [ebp - 0x17f4]
push 0x3f
push eax
lea ecx, [ebp - 0x1ec]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x26a]
push ecx
mov word [ebp - 0x26c], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.NetConnectionID
push eax
call edx
test eax, eax
jne 0x4af65d
cmp word [ebp - 0x17fc], si
je 0x4af65d
mov eax, dword [ebp - 0x17f4]
push 0x3f
push eax
lea ecx, [ebp - 0x26c]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
mov word [ebp - 0x68], ax
mov dword [ebp - 0x66], eax
mov dword [ebp - 0x62], eax
mov dword [ebp - 0x5e], eax
mov dword [ebp - 0x5a], eax
mov dword [ebp - 0x56], eax
mov dword [ebp - 0x52], eax
mov dword [ebp - 0x4e], eax
mov word [ebp - 0x4a], ax
mov eax, dword [ebp - 0x1804]
mov ecx, dword [eax]
push 0
push str.NetConnectionStatus
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af6c8
cmp word [ebp - 0x17fc], si
je 0x4af6c8
movsx edx, word [ebp - 0x17f4]
push 0xa
lea ecx, [ebp - 0x68]
push ecx
push edx
call fcn.004e534f
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push 0x7e
push ecx
lea edx, [ebp - 0x2ea]
push edx
mov word [ebp - 0x2ec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1804]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.PNPDeviceID
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af731
cmp word [ebp - 0x17fc], si
je 0x4af731
mov ecx, dword [ebp - 0x17f4]
push 0x3f
push ecx
lea edx, [ebp - 0x2ec]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
push 0x800
lea ecx, [ebp - 0x17ec]
push 0
push ecx
call fcn.004e8ba0
lea edx, [ebp - 0x6ec]
push edx
lea eax, [ebp - 0x17ec]
push str.SELECT__FROM_Win32_NetworkAdapterConfiguration_WHERE_Caption___s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov eax, dword [ebp - 0x1808]
add esp, 0x18
lea edx, [ebp - 0x1818]
push edx
push 0
push 0x30
lea edx, [ebp - 0x17ec]
push edx
mov dword [ebp - 0x1818], 0
mov ecx, dword [eax]
push 0x52550c
push eax
mov eax, dword [ecx + 0x50]
call eax
mov eax, dword [ebp - 0x1818]
mov dword [ebp - 0x1800], 0
test eax, eax
je 0x4b04de
mov ecx, dword [eax]
lea edx, [ebp - 0x1814]
push edx
lea edx, [ebp - 0x1800]
push edx
push esi
push 0xffffffffffffffff
push eax
mov eax, dword [ecx + 0x10]
call eax
cmp dword [ebp - 0x1814], 0
je 0x4b04f6
xor ecx, ecx
push 0x3fe
push ecx
lea edx, [ebp - 0xfea]
push edx
mov word [ebp - 0xfec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.IPAddress
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af8ba
cmp word [ebp - 0x17fc], si
je 0x4af8ba
mov edx, dword [ebp - 0x17f4]
lea ecx, [ebp - 0x1820]
push ecx
push edx
call dword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov eax, dword [ebp - 0x17f4]
xor esi, esi
cmp dword [eax + 0x10], esi
jbe 0x4af8a5
mov eax, dword [ebp - 0x1820]
push 0x1ff
lea edx, [ebp - 0xfec]
test esi, esi
jne 0x4af861
mov ecx, dword [eax]
push ecx
push edx
call fcn.004e5481
jmp 0x4af86b
mov ecx, dword [eax + esi*4]
push ecx
push edx
call fcn.004e5d06
lea edi, [ebp - 0xfec]
add esp, 0xc
add edi, 0xfffffffe
jmp 0x4af880
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4af880
mov eax, dword [0x51ca08]
mov dword [edi], eax
mov eax, dword [ebp - 0x17f4]
inc esi
cmp esi, dword [eax + 0x10]
jb 0x4af841
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea ecx, [ebp - 0x17fc]
push ecx
call edi
mov esi, 1
xor edx, edx
push 0x3e
push edx
lea eax, [ebp - 0xaa]
push eax
mov word [ebp - 0xac], dx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.MACAddress
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4af923
cmp word [ebp - 0x17fc], si
je 0x4af923
mov ecx, dword [ebp - 0x17f4]
push 0x1f
push ecx
lea edx, [ebp - 0xac]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push 0xfe
push ecx
lea edx, [ebp - 0x5ea]
push edx
mov word [ebp - 0x5ec], cx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.DefaultIPGateway
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4afa0d
cmp word [ebp - 0x17fc], si
je 0x4afa0d
mov edx, dword [ebp - 0x17f4]
lea ecx, [ebp - 0x1828]
push ecx
push edx
call dword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov eax, dword [ebp - 0x17f4]
xor esi, esi
cmp dword [eax + 0x10], esi
jbe 0x4af9f8
jmp 0x4af9a0
mov eax, dword [ebp - 0x1828]
push 0x7f
lea edx, [ebp - 0x5ec]
test esi, esi
jne 0x4af9bd
mov ecx, dword [eax]
push ecx
push edx
call fcn.004e5481
jmp 0x4af9c7
mov ecx, dword [eax + esi*4]
push ecx
push edx
call fcn.004e5d06
lea edi, [ebp - 0x5ec]
add esp, 0xc
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4af9d3
mov eax, dword [0x51ca08]
mov dword [edi], eax
mov eax, dword [ebp - 0x17f4]
inc esi
cmp esi, dword [eax + 0x10]
jb 0x4af9a0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea ecx, [ebp - 0x17fc]
push ecx
call edi
mov esi, 1
xor edx, edx
push 0x1fe
push edx
lea eax, [ebp - 0x9ea]
push eax
mov word [ebp - 0x9ec], dx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.IPSubnet
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4afafa
cmp word [ebp - 0x17fc], si
je 0x4afafa
mov edx, dword [ebp - 0x17f4]
lea ecx, [ebp - 0x1824]
push ecx
push edx
call dword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov eax, dword [ebp - 0x17f4]
xor esi, esi
cmp dword [eax + 0x10], esi
jbe 0x4afae5
mov eax, dword [ebp - 0x1824]
push 0xff
lea edx, [ebp - 0x9ec]
test esi, esi
jne 0x4afaa1
mov ecx, dword [eax]
push ecx
push edx
call fcn.004e5481
jmp 0x4afaab
mov ecx, dword [eax + esi*4]
push ecx
push edx
call fcn.004e5d06
lea edi, [ebp - 0x9ec]
add esp, 0xc
add edi, 0xfffffffe
jmp 0x4afac0
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4afac0
mov eax, dword [0x51ca08]
mov dword [edi], eax
mov eax, dword [ebp - 0x17f4]
inc esi
cmp esi, dword [eax + 0x10]
jb 0x4afa81
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea ecx, [ebp - 0x17fc]
push ecx
call edi
mov esi, 1
xor edx, edx
push 0x1fe
push edx
lea eax, [ebp - 0xbea]
push eax
mov word [ebp - 0xbec], dx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.DNSServerSearchOrder
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4afbe0
cmp word [ebp - 0x17fc], si
je 0x4afbe0
mov edx, dword [ebp - 0x17f4]
lea ecx, [ebp - 0x182c]
push ecx
push edx
call dword [sym.imp.OLEAUT32.dll_SafeArrayUnaccessData]
mov eax, dword [ebp - 0x17f4]
xor esi, esi
cmp dword [eax + 0x10], esi
jbe 0x4afbcb
mov edi, edi
mov eax, dword [ebp - 0x182c]
push 0xff
lea edx, [ebp - 0xbec]
test esi, esi
jne 0x4afb90
mov ecx, dword [eax]
push ecx
push edx
call fcn.004e5481
jmp 0x4afb9a
mov ecx, dword [eax + esi*4]
push ecx
push edx
call fcn.004e5d06
lea edi, [ebp - 0xbec]
add esp, 0xc
add edi, 0xfffffffe
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4afba6
mov eax, dword [0x51ca08]
mov dword [edi], eax
mov eax, dword [ebp - 0x17f4]
inc esi
cmp esi, dword [eax + 0x10]
jb 0x4afb70
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
push eax
call dword [sym.imp.OLEAUT32.dll_SafeArrayGetElement]
lea ecx, [ebp - 0x17fc]
push ecx
call edi
mov esi, 1
xor edx, edx
push 0x7e
push edx
lea eax, [ebp - 0x36a]
push eax
mov word [ebp - 0x36c], dx
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov ecx, dword [eax]
add esp, 0xc
push 0
push 0
lea edx, [ebp - 0x17fc]
push edx
push 0
push str.DNSHostName
push eax
mov eax, dword [ecx + 0x10]
call eax
test eax, eax
jne 0x4afc49
cmp word [ebp - 0x17fc], si
je 0x4afc49
mov ecx, dword [ebp - 0x17f4]
push 0x3f
push ecx
lea edx, [ebp - 0x36c]
push edx
call fcn.004e5481
add esp, 0xc
lea eax, [ebp - 0x17fc]
push eax
call edi
xor ecx, ecx
push ecx
xor eax, eax
push ecx
mov word [ebp - 0x48], cx
lea ecx, [ebp - 0x17fc]
push ecx
mov dword [ebp - 0x46], eax
mov dword [ebp - 0x42], eax
mov dword [ebp - 0x3e], eax
mov dword [ebp - 0x3a], eax
mov dword [ebp - 0x36], eax
mov dword [ebp - 0x32], eax
mov dword [ebp - 0x2e], eax
mov word [ebp - 0x2a], ax
mov eax, dword [ebp - 0x1800]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
push 0
push str.DNSEnabledForWINSResolution
push eax
call edx
test eax, eax
jne 0x4afcb4
cmp word [ebp - 0x17fc], si
je 0x4afcb4
movsx ecx, word [ebp - 0x17f4]
push 0xa
lea eax, [ebp - 0x48]
push eax
push ecx
call fcn.004e534f
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x3e
push eax
lea ecx, [ebp - 0x16a]
push ecx
mov word [ebp - 0x16c], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.DNSDomain
push eax
call edx
test eax, eax
jne 0x4afd1d
cmp word [ebp - 0x17fc], si
je 0x4afd1d
mov eax, dword [ebp - 0x17f4]
push 0x1f
push eax
lea ecx, [ebp - 0x16c]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x3e
push eax
lea ecx, [ebp - 0xea]
push ecx
mov word [ebp - 0xec], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.DHCPServer
push eax
call edx
test eax, eax
jne 0x4afd86
cmp word [ebp - 0x17fc], si
je 0x4afd86
mov eax, dword [ebp - 0x17f4]
push 0x1f
push eax
lea ecx, [ebp - 0xec]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x3e
push eax
lea ecx, [ebp - 0x12a]
push ecx
mov word [ebp - 0x12c], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.DHCPLeaseObtained
push eax
call edx
test eax, eax
jne 0x4afdef
cmp word [ebp - 0x17fc], si
je 0x4afdef
mov eax, dword [ebp - 0x17f4]
push 0x1f
push eax
lea ecx, [ebp - 0x12c]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
xor eax, eax
push 0x7e
push eax
lea ecx, [ebp - 0x46a]
push ecx
mov word [ebp - 0x46c], ax
call fcn.004e8ba0
mov eax, dword [ebp - 0x1800]
mov edx, dword [eax]
mov edx, dword [edx + 0x10]
add esp, 0xc
push 0
push 0
lea ecx, [ebp - 0x17fc]
push ecx
push 0
push str.DHCPLeaseExpires
push eax
call edx
test eax, eax
jne 0x4afe58
cmp word [ebp - 0x17fc], si
je 0x4afe58
mov eax, dword [ebp - 0x17f4]
push 0x3f
push eax
lea ecx, [ebp - 0x46c]
push ecx
call fcn.004e5481
add esp, 0xc
lea edx, [ebp - 0x17fc]
push edx
call edi
mov eax, dword [ebp - 0x181c]
cmp dword [eax], 0x20
jae 0x4b04f6
lea eax, [ebp - 0x7ec]
mov edx, eax
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4afe70
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4afe80
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4afea0
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x6ec]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4afec0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4afed0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4afef0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x3ec]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4aff10
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4aff20
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4aff40
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x28]
mov edx, eax
jmp 0x4aff60
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4aff60
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4aff70
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4aff90
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x4ec]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4affb0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4affc0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4affe0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x1ec]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0000
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0010
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0030
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x26c]
mov edx, eax
jmp 0x4b0050
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0050
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0060
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0080
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x68]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b00a0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b00b0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b00d0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x2ec]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b00f0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0100
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0120
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0xfec]
mov edx, eax
jmp 0x4b0140
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0140
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0150
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0170
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0xac]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0190
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b01a0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b01c0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x5ec]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b01e0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b01f0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0210
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x9ec]
mov edx, eax
jmp 0x4b0230
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0230
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0240
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0260
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0xbec]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0280
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0290
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b02b0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0x36c]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b02d0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b02e0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0300
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x48]
mov edx, eax
jmp 0x4b0320
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0320
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0330
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0350
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x16c]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0370
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0380
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b03a0
mov edx, dword [0x51ccdc]
lea eax, [ebp - 0xec]
mov dword [edi], edx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b03c0
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b03d0
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b03f0
mov eax, dword [0x51ccdc]
mov dword [edi], eax
lea eax, [ebp - 0x12c]
mov edx, eax
jmp 0x4b0410
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0410
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0420
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0440
mov ecx, dword [0x51ccdc]
lea eax, [ebp - 0x46c]
mov dword [edi], ecx
mov edx, eax
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b0460
sub eax, edx
lea edi, [ebx - 2]
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x4b0470
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea edi, [ebx - 2]
nop
mov ax, word [edi + 2]
add edi, 2
test ax, ax
jne 0x4b0490
mov edx, dword [0x51ccdc]
mov eax, ebx
mov dword [edi], edx
lea edx, [eax + 2]
lea esp, [esp]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x4b04b0
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
sub eax, edx
sar eax, 1
mov ecx, 1
mov word [ebx + eax*2], cx
mov eax, dword [ebp - 0x181c]
inc dword [eax]
mov eax, dword [ebp - 0x1818]
mov esi, ecx
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov eax, dword [ebp - 0x1810]
test eax, eax
jne 0x4af350
jmp 0x4b04fc
mov eax, dword [ebp - 0x1810]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x1808]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x180c]
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [ebp - 8]
pop edi
mov eax, esi
xor ecx, ebp
pop esi
call fcn.004e4746
mov esp, ebp
pop ebp
ret