Function at 0x495ab0
Capabilities:
Connect to wmi namespace via wbemlocator

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4f3eb8
mov eax, dword fs:[0]
push eax
sub esp, 0x94
mov eax, dword [0x571180]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x58], ecx
push 0
push 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
js 0x496ab9
push 0
push 0
push 0
push 3
push 0
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
test eax, eax
js 0x496ab3
lea eax, [ebp - 0x18]
push eax
push 0x52c330
push 1
push 0
push 0x52c320
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x496ab3
mov ebx, dword fs:[0x2c]
mov eax, 0x3b
mov word [ebp - 0x1c], ax
mov dword [ebp - 0x30], 0x9a000f
mov dword [ebp - 0x2c], 0xdd0074
mov ebx, dword [ebx]
mov dword [ebp - 0x28], 0xc40069
mov dword [ebp - 0x24], 0x4a002a
mov dword [ebp - 0x20], 0xe7000b
mov eax, dword [ebx + 0x2120]
lea edi, [ebx + 0x2030]
test al, 1
jne 0x495bdc
or eax, 1
mov dword [ebx + 0x2120], eax
mov dword [ebp - 4], 0
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [edi + 0x16], 1
nop dword [eax + eax]
mov ax, word [ebp + ecx*2 - 0x30]
mov word [edi + ecx*2], ax
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495bc8
cmp ecx, 0xb
jb 0x495bb0
push 0x512580
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov ecx, edi
call fcn.00498630
push 0xc
call fcn.004c2e67
mov esi, eax
add esp, 4
mov dword [ebp - 0x38], esi
mov dword [ebp - 4], 1
test esi, esi
je 0x495c30
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push edi
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esi], eax
test eax, eax
jne 0x495c32
test edi, edi
jne 0x496ad5
jmp 0x495c32
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x38], esi
test esi, esi
je 0x496adf
lea edx, [ebp - 0x14]
mov dword [ebp - 4], 2
mov eax, dword [ebp - 0x18]
push edx
push 0
push 0
mov ecx, dword [eax]
push 0
push 0
push 0
push 0
push dword [esi]
push eax
call dword [ecx + 0xc]
mov edi, eax
mov dword [ebp - 4], 0xffffffff
or ecx, 0xffffffff
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x495caf
mov ecx, dword [esi]
test ecx, ecx
je 0x495c8d
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x495ca4
push eax
call fcn.004c36f7
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.004c2e97
add esp, 8
test edi, edi
js 0x496aaa
push 0
push 0
push 3
push 3
push 0
push 0
push 0xa
push dword [ebp - 0x14]
call dword [sym.imp.ole32.dll_CoSetProxyBlanket]
test eax, eax
js 0x496aa1
mov eax, dword [ebx + 0x21a0]
mov dword [ebp - 0x38], 0x1024d63b
mov byte [ebp - 0x34], 0x3d
test al, 1
jne 0x495d3e
or eax, 1
mov dword [ebx + 0x21a0], eax
mov dword [ebp - 4], 3
xorps xmm0, xmm0
movlpd qword [ebp - 0x64], xmm0
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
mov byte [ebx + 0x2139], 1
mov al, byte [ebp + ecx - 0x38]
mov byte [ecx + ebx + 0x2134], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495d2a
cmp ecx, 5
jb 0x495d10
push 0x512500
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [ebx + 0x2134]
mov ecx, esi
call fcn.00498570
mov eax, dword [ebx + 0x1fe8]
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x28], 0x27d638
mov dword [ebp - 0x24], 0xd9008c5b
mov dword [ebp - 0x20], 0x72cc500
mov byte [ebp - 0x1c], 0x3d
test al, 1
jne 0x495dce
or eax, 1
mov dword [ebx + 0x1fe8], eax
mov dword [ebp - 4], 4
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [ebx + 0x1fd9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + ebx + 0x1fcc], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495dba
cmp ecx, 0xd
jb 0x495da0
push 0x5124c0
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
mov ebx, dword fs:[0x2c]
mov edi, dword [ebx]
lea esi, [edi + 0x1fcc]
mov ecx, esi
call fcn.00498510
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], esi
push ecx
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [ebp - 0x54]
call fcn.00497b50
mov dword [ebp - 4], 5
movaps xmm0, xmmword [0x551630]
mov eax, dword [edi + 0x200c]
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x495e6b
or eax, 1
mov dword [edi + 0x200c], eax
mov byte [ebp - 4], 6
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [edi + 0x206c], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + edi + 0x205c], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495e5a
cmp ecx, 0x10
jb 0x495e40
push 0x512540
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 5
lea esi, [edi + 0x205c]
mov ecx, esi
call fcn.004985d0
lea eax, [ebp - 0x54]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x495ecc
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x495ec2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496ae9
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [edi + 0x1fec]
mov dword [ebp - 0x28], 0x1a7f0e34
mov dword [ebp - 0x24], 0x12b9c524
mov dword [ebp - 0x20], 0x168090a
mov byte [ebp - 0x1c], 0x45
test al, 1
jne 0x495f6e
or eax, 1
mov dword [edi + 0x1fec], eax
mov dword [ebp - 4], 7
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [edi + 0x20d9], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + edi + 0x20cc], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495f5a
cmp ecx, 0xd
jb 0x495f40
push 0x512440
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x20cc]
mov ecx, esi
call fcn.00498450
mov eax, dword [edi + 0x2110]
mov dword [ebp - 0x54], esi
mov dword [ebp - 0x3c], 0x17621937
mov dword [ebp - 0x38], 0x6783ca30
test al, 1
jne 0x495fee
or eax, 1
mov dword [edi + 0x2110], eax
mov dword [ebp - 4], 8
xorps xmm0, xmm0
movlpd qword [ebp - 0x64], xmm0
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
mov byte [edi + 0x20f4], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x3c]
mov byte [ecx + edi + 0x20ec], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x495fda
cmp ecx, 8
jb 0x495fc0
push 0x512400
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x20ec]
mov ecx, esi
call fcn.004983f0
mov eax, dword [edi + 0x2188]
mov dword [ebp - 0x50], esi
mov dword [ebp - 0x28], 0x6630a2a
mov dword [ebp - 0x24], 0x1394c823
mov dword [ebp - 0x20], 0x1681912
mov byte [ebp - 0x1c], 0x45
test al, 1
jne 0x49607e
or eax, 1
mov dword [edi + 0x2188], eax
mov dword [ebp - 4], 9
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [edi + 0x208d], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [ecx + edi + 0x2080], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49606a
cmp ecx, 0xd
jb 0x496050
push 0x5123c0
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x2080]
mov ecx, esi
call fcn.00498450
lea ecx, [ebp - 0x54]
mov dword [ebp - 0x4c], esi
push ecx
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x68]
call fcn.00497b50
mov dword [ebp - 4], 0xa
movaps xmm0, xmmword [0x5513d0]
mov eax, dword [edi + 0x1fe4]
movups xmmword [ebp - 0x2c], xmm0
test al, 1
jne 0x49610b
or eax, 1
mov dword [edi + 0x1fe4], eax
mov byte [ebp - 4], 0xb
xorps xmm0, xmm0
movlpd qword [ebp - 0x3c], xmm0
mov edx, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x3c]
mov byte [edi + 0x1fa8], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x2c]
mov byte [ecx + edi + 0x1f98], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4960fa
cmp ecx, 0x10
jb 0x4960e0
push 0x512480
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0xa
lea esi, [edi + 0x1f98]
mov ecx, esi
call fcn.004984b0
lea eax, [ebp - 0x68]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x18]
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x49616f
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496165
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496aee
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [edi + 0x2174]
mov dword [ebp - 0x3c], 0xd13b4c20
mov dword [ebp - 0x38], 0xe7d142fc
test al, 1
jne 0x4961fe
or eax, 1
mov dword [edi + 0x2174], eax
mov dword [ebp - 4], 0xc
xorps xmm0, xmm0
movlpd qword [ebp - 0x64], xmm0
mov edx, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x64]
mov byte [edi + 0x1ffc], 1
mov al, byte [ebp + ecx - 0x3c]
mov byte [ecx + edi + 0x1ff4], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4961ea
cmp ecx, 8
jb 0x4961d0
push 0x512340
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x1ff4]
mov ecx, esi
call fcn.00498330
mov eax, dword [edi + 0x204c]
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x3c], 0xc02f422e
mov word [ebp - 0x38], 0x2df9
test al, 1
jne 0x49627e
or eax, 1
mov dword [edi + 0x204c], eax
mov dword [ebp - 4], 0xd
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x20ba], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x3c]
mov byte [edi + ecx + 0x20b4], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49626a
cmp ecx, 6
jb 0x496250
push 0x512300
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x20b4]
mov ecx, esi
call fcn.004982d0
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], esi
push ecx
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00497b50
mov dword [ebp - 4], 0xe
movaps xmm0, xmmword [0x551790]
mov eax, dword [edi + 0x20c0]
movups xmmword [ebp - 0x44], xmm0
test al, 1
jne 0x49630b
or eax, 1
mov dword [edi + 0x20c0], eax
mov byte [ebp - 4], 0xf
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x20a4], 1
nop dword [eax]
mov al, byte [ebp + ecx - 0x44]
mov byte [edi + ecx + 0x2094], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4962fa
cmp ecx, 0x10
jb 0x4962e0
push 0x512380
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0xe
lea esi, [edi + 0x2094]
mov ecx, esi
call fcn.00498390
lea eax, [ebp - 0x28]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x30]
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x49636f
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496365
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496af3
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [edi + 0x21a4]
mov dword [ebp - 0x28], 0xfcef4ee8
mov dword [ebp - 0x24], 0x3d8e9c59
mov dword [ebp - 0x20], 0xfbe45dd0
mov byte [ebp - 0x1c], 0x3f
test al, 1
jne 0x49640e
or eax, 1
mov dword [edi + 0x21a4], eax
mov dword [ebp - 4], 0x10
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x2131], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [edi + ecx + 0x2124], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4963fa
cmp ecx, 0xd
jb 0x4963e0
push 0x512280
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x2124]
mov ecx, esi
call fcn.00498210
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x60], esi
push ecx
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00497b50
mov dword [ebp - 4], 0x11
mov eax, dword [edi + 0x2118]
mov dword [ebp - 0x40], 0xbaef46f2
mov dword [ebp - 0x3c], 0xafa20d
mov word [ebp - 0x38], 0x7cea
mov byte [ebp - 0x36], 0x81
test al, 1
jne 0x4964ab
or eax, 1
mov dword [edi + 0x2118], eax
mov byte [ebp - 4], 0x12
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x210f], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x40]
mov byte [edi + ecx + 0x2104], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49649a
cmp ecx, 0xb
jb 0x496480
push 0x5122c0
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0x11
lea esi, [edi + 0x2104]
mov ecx, esi
call fcn.00498270
lea eax, [ebp - 0x28]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x48]
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x49650f
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496505
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496af8
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [edi + 0x21a8]
mov dword [ebp - 0x3c], 0xd4bba2ca
mov word [ebp - 0x38], 0x7d5d
test al, 1
jne 0x49659e
or eax, 1
mov dword [edi + 0x21a8], eax
mov dword [ebp - 4], 0x13
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x20ca], 1
nop
mov al, byte [ebp + ecx - 0x3c]
mov byte [edi + ecx + 0x20c4], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49658a
cmp ecx, 6
jb 0x496570
push 0x512200
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x20c4]
mov ecx, esi
call fcn.00498150
mov eax, dword [edi + 0x2070]
mov dword [ebp - 0x64], esi
mov dword [ebp - 0x28], 0xc4b1acca
mov dword [ebp - 0x24], 0xb1fc1c57
mov dword [ebp - 0x20], 0xc3babff2
mov byte [ebp - 0x1c], 0x31
test al, 1
jne 0x49662e
or eax, 1
mov dword [edi + 0x2070], eax
mov dword [ebp - 4], 0x14
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x20e9], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [edi + ecx + 0x20dc], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49661a
cmp ecx, 0xd
jb 0x496600
push 0x5121c0
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x20dc]
mov ecx, esi
call fcn.004980f0
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], esi
push ecx
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00497b50
mov dword [ebp - 4], 0x15
movaps xmm0, xmmword [0x551680]
mov eax, dword [edi + 0x21c4]
mov dword [ebp - 0x38], 0xdcbab9f4
mov byte [ebp - 0x34], 0x31
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x4966cb
or eax, 1
mov dword [edi + 0x21c4], eax
mov byte [ebp - 4], 0x16
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x2025], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [edi + ecx + 0x2010], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4966ba
cmp ecx, 0x15
jb 0x4966a0
push 0x512240
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0x15
lea esi, [edi + 0x2010]
mov ecx, esi
call fcn.004981b0
lea eax, [ebp - 0x28]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x60]
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x49672f
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496725
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496afd
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
movaps xmm0, xmmword [0x551470]
mov eax, dword [edi + 0x213c]
mov dword [ebp - 0x20], 0x252e9368
movups xmmword [ebp - 0x30], xmm0
test al, 1
jne 0x4967ce
or eax, 1
mov dword [edi + 0x213c], eax
mov dword [ebp - 4], 0x17
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x2154], 1
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x30]
mov byte [edi + ecx + 0x2140], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4967ba
cmp ecx, 0x14
jb 0x4967a0
push 0x512140
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x2140]
mov ecx, esi
call fcn.00498030
lea ecx, [ebp - 0x60]
mov dword [ebp - 0x60], esi
push ecx
lea eax, [ebp - 0x5c]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00497b50
mov dword [ebp - 4], 0x18
movaps xmm0, xmmword [0x5513e0]
mov eax, dword [edi + 0x211c]
mov dword [ebp - 0x38], 0x48329574
mov byte [ebp - 0x34], 0x2d
movups xmmword [ebp - 0x48], xmm0
test al, 1
jne 0x49686b
or eax, 1
mov dword [edi + 0x211c], eax
mov byte [ebp - 4], 0x19
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x216d], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x48]
mov byte [edi + ecx + 0x2158], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49685a
cmp ecx, 0x15
jb 0x496840
push 0x512180
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0x18
lea esi, [edi + 0x2158]
mov ecx, esi
call fcn.00498090
lea eax, [ebp - 0x28]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0x88]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x78]
call fcn.00476960
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x4968cf
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4968c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496b02
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [edi + 0x2170]
mov dword [ebp - 0x28], 0x5a7148a6
mov dword [ebp - 0x24], 0x8019e372
mov dword [ebp - 0x20], 0x41664f98
mov byte [ebp - 0x1c], 0x13
test al, 1
jne 0x49696e
or eax, 1
mov dword [edi + 0x2170], eax
mov dword [ebp - 4], 0x1a
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x1fb9], 1
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x28]
mov byte [edi + ecx + 0x1fac], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x49695a
cmp ecx, 0xd
jb 0x496940
push 0x5120c0
call fcn.004c3487
add esp, 4
mov dword [ebp - 4], 0xffffffff
lea esi, [edi + 0x1fac]
mov ecx, esi
call fcn.00453430
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x38], esi
push ecx
lea eax, [ebp - 0x34]
push eax
push ecx
lea ecx, [ebp - 0x28]
call fcn.00497b50
mov dword [ebp - 4], 0x1b
movaps xmm0, xmmword [0x551600]
mov eax, dword [edi + 0x2114]
mov dword [ebp - 0x60], 0x56775e8c
mov word [ebp - 0x5c], 0x8f7e
movups xmmword [ebp - 0x70], xmm0
test al, 1
jne 0x496a0b
or eax, 1
mov dword [edi + 0x2114], eax
mov byte [ebp - 4], 0x1c
xorps xmm0, xmm0
movlpd qword [ebp - 0x50], xmm0
mov edx, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x50]
mov byte [edi + 0x21c2], 1
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x70]
mov byte [ecx + edi + 0x21ac], al
add ecx, 1
adc edx, 0
test edx, edx
jne 0x4969fa
cmp ecx, 0x16
jb 0x4969e0
push 0x512100
call fcn.004c3487
add esp, 4
mov byte [ebp - 4], 0x1b
mov esi, edi
add esi, 0x21ac
mov ecx, esi
call fcn.00497fd0
lea eax, [ebp - 0x28]
push eax
push esi
push dword [ebp - 0x14]
lea eax, [ebp - 0xa0]
push eax
call fcn.00496b10
mov ecx, dword [ebp - 0x58]
push eax
lea ecx, [ecx + 0x90]
call fcn.00476960
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x496a77
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x496a6d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x496b07
push ecx
push edx
call fcn.004c2e97
add esp, 8
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
mov dword [ebp - 4], 0xffffffff
call fcn.00474b70
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004c2e59
mov esp, ebp
pop ebp
ret
push 0x8007000e
call fcn.004c4560
push 0x8007000e
call fcn.004c4560
call fcn.004c89de
call fcn.004c89de
call fcn.004c89de
call fcn.004c89de
call fcn.004c89de
call fcn.004c89de
call fcn.004c89de
int3