Function at 0x10009b60
Capabilities:
Contain obfuscated stackstrings
Reference processor manufacturer constants
Schedule task via itaskservice

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1002969b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x1a0
mov eax, dword [0x10035080]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebx + 8]
push 0
mov dword [ebp - 0xe0], eax
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
js 0x1000ac66
lea eax, [ebp - 0x94]
mov dword [ebp - 0x94], 0
push eax
push 0x1002a1e4
push 1
push 0
push 0x1002a204
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov esi, eax
test esi, esi
jns 0x10009c04
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 1
jmp 0x1000ac7a
mov eax, dword [ebp - 0x94]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [eax]
mov esi, dword [eax + 0x28]
lea eax, [ebp - 0x80]
push eax
call edi
mov dword [ebp - 4], 2
lea eax, [ebp - 0x60]
movups xmm0, xmmword [ebp - 0x80]
push eax
movups xmmword [ebp - 0x1a0], xmm0
call edi
movups xmm0, xmmword [ebp - 0x60]
lea eax, [ebp - 0xd8]
push eax
movups xmmword [ebp - 0x190], xmm0
call edi
movups xmm0, xmmword [ebp - 0xd8]
lea eax, [ebp - 0x180]
push eax
movups xmmword [ebp - 0x90], xmm0
call edi
mov byte [ebp - 4], 5
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x1a0]
mov eax, esp
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x190]
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x90]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0x180]
push dword [ebp - 0x94]
movups xmmword [eax], xmm0
call esi
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0x180]
push eax
call edi
lea eax, [ebp - 0xd8]
push eax
call edi
lea eax, [ebp - 0x60]
push eax
call edi
lea eax, [ebp - 0x80]
mov dword [ebp - 4], 0xffffffff
push eax
call edi
mov eax, dword [ebp - 0x94]
test esi, esi
jns 0x10009d02
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 6
jmp 0x1000ac7a
mov dword [ebp - 0x9c], 0
mov eax, dword [eax]
push 0xc
mov edi, dword [eax + 0x1c]
call fcn.1000bb8f
mov esi, eax
add esp, 4
mov dword [ebp - 0xc0], esi
mov dword [ebp - 4], 7
test esi, esi
je 0x10009d61
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
push 0x10031a94
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esi], eax
test eax, eax
je 0x1000ac91
jmp 0x10009d63
xor esi, esi
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0xc0], esi
test esi, esi
je 0x1000ac9b
lea eax, [ebp - 0x9c]
mov dword [ebp - 4], 8
push eax
push dword [esi]
push dword [ebp - 0x94]
call edi
mov edi, eax
mov dword [ebp - 4], 0xffffffff
or ecx, 0xffffffff
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x10009dd9
mov ecx, dword [esi]
test ecx, ecx
je 0x10009db7
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x10009dce
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
test edi, edi
jns 0x10009e08
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, edi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 9
jmp 0x1000ac7a
mov ecx, dword [ebp - 0x94]
lea edx, [ebp - 0x98]
push edx
mov dword [ebp - 0x98], 0
push 0
mov eax, dword [ecx]
push ecx
call dword [eax + 0x24]
mov esi, eax
test esi, esi
jns 0x10009e64
mov ecx, dword [ebp - 0x9c]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0x94]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 0xa
jmp 0x1000ac7a
mov ecx, dword [ebp - 0x98]
lea edx, [ebp - 0xac]
mov dword [ebp - 0xac], 0
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov esi, eax
test esi, esi
jns 0x10009eca
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0x9c]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 0xb
jmp 0x1000ac7a
lea ecx, [ebp - 0xd8]
mov dword [ebp - 0x74], 0
push ecx
lea eax, [ebp - 0xc8]
mov dword [ebp - 0xd8], 0x7263694d
push eax
xorps xmm0, xmm0
mov dword [ebp - 0xd4], 0x666f736f
push ecx
lea ecx, [ebp - 0x7c]
movq qword [ebp - 0x7c], xmm0
mov dword [ebp - 0xd0], 0x73552074
mov dword [ebp - 0xcc], 0x49557265
call fcn.10002df0
mov dword [ebp - 4], 0xc
mov eax, dword [ebp - 0xac]
push ecx
push dword [ebp - 0x78]
lea ecx, [ebp - 0x100]
mov eax, dword [eax]
push dword [ebp - 0x7c]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xc4], eax
call fcn.10005a10
mov edi, eax
mov byte [ebp - 4], 0xd
cmp dword [edi + 0x14], 7
jbe 0x10009f50
mov edi, dword [edi]
push 0xc
call fcn.1000bb8f
mov esi, eax
add esp, 4
mov dword [ebp - 0xc0], esi
mov byte [ebp - 4], 0xe
test esi, esi
je 0x10009f9d
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 0x10009f9f
test edi, edi
jne 0x1000aca5
jmp 0x10009f9f
xor esi, esi
mov byte [ebp - 4], 0xd
mov dword [ebp - 0xc0], esi
test esi, esi
je 0x1000acaf
mov byte [ebp - 4], 0xf
push dword [esi]
push dword [ebp - 0xac]
call dword [ebp - 0xc4]
mov edi, eax
or ecx, 0xffffffff
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x1000a005
mov ecx, dword [esi]
test ecx, ecx
je 0x10009fe3
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x10009ffa
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0xec]
cmp ecx, 7
jbe 0x1000a049
mov edx, dword [ebp - 0x100]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000a03f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000acb9
push ecx
push edx
call fcn.1000bb5e
add esp, 8
mov eax, dword [ebp - 0xac]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
test edi, edi
jns 0x1000a099
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, edi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x10
jmp 0x1000ac7a
mov ecx, dword [ebp - 0x98]
lea edx, [ebp - 0xa0]
mov dword [ebp - 0xa0], 0
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x24]
mov esi, eax
test esi, esi
jns 0x1000a0fc
mov ecx, dword [ebp - 0x98]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0x9c]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x11
jmp 0x1000ac7a
mov ecx, dword [ebp - 0xa0]
lea edx, [ebp - 0xa4]
push edx
mov dword [ebp - 0xa4], 0
push 1
mov eax, dword [ecx]
push ecx
call dword [eax + 0x28]
mov esi, eax
test esi, esi
jns 0x1000a16d
mov ecx, dword [ebp - 0xa0]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0x98]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x12
jmp 0x1000ac7a
mov ecx, dword [ebp - 0xa4]
lea edx, [ebp - 0xb0]
push edx
mov dword [ebp - 0xb0], 0
push 0x1002a1f4
mov eax, dword [ecx]
push ecx
call dword [eax]
mov esi, eax
test esi, esi
jns 0x1000a1ec
mov ecx, dword [ebp - 0xa4]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0xa0]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x13
jmp 0x1000ac7a
lea eax, [ebp - 0x70]
push eax
call dword [sym.imp.KERNEL32.dll_GetLocalTime]
mov eax, dword [ebp - 0x64]
add eax, 0x28
movzx ecx, ax
mov word [ebp - 0x64], ax
cmp ecx, 0x3c
jb 0x1000a21b
lea eax, [ecx - 0x3c]
mov cx, word [ebp - 0x66]
inc cx
mov word [ebp - 0x64], ax
mov word [ebp - 0x66], cx
jmp 0x1000a21f
mov cx, word [ebp - 0x66]
cmp cx, 0x3c
jb 0x1000a23d
mov edx, 0xffc4
add cx, dx
mov dx, word [ebp - 0x68]
inc dx
mov word [ebp - 0x66], cx
mov word [ebp - 0x68], dx
jmp 0x1000a241
mov dx, word [ebp - 0x68]
movzx eax, ax
push eax
movzx eax, cx
push eax
movzx eax, dx
push eax
movzx eax, word [ebp - 0x6a]
push eax
movzx eax, word [ebp - 0x6e]
push eax
movzx eax, word [ebp - 0x70]
push eax
lea eax, [ebp - 0x50]
push str._04d__02d__02dT_02d:_02d:_02d
push eax
call fcn.1000ad30
mov eax, dword [ebp - 0xb0]
push 0xc
mov eax, dword [eax]
mov edi, dword [eax + 0x3c]
call fcn.1000bb8f
mov esi, eax
add esp, 0x24
mov dword [ebp - 0xc0], esi
mov byte [ebp - 4], 0x14
test esi, esi
je 0x1000a2c1
xorps xmm0, xmm0
lea eax, [ebp - 0x50]
movq qword [esi], xmm0
mov dword [esi + 8], 0
push eax
mov dword [esi + 4], 0
mov dword [esi + 8], 1
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [esi], eax
test eax, eax
je 0x1000acbe
jmp 0x1000a2c3
xor esi, esi
mov byte [ebp - 4], 0xc
mov dword [ebp - 0xc0], esi
test esi, esi
je 0x1000acc8
mov byte [ebp - 4], 0x15
push dword [esi]
push dword [ebp - 0xb0]
call edi
mov edi, eax
mov byte [ebp - 4], 0xc
or ecx, 0xffffffff
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x1000a329
mov ecx, dword [esi]
test ecx, ecx
je 0x1000a307
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x1000a31e
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
mov eax, dword [ebp - 0xb0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
test edi, edi
jns 0x1000a391
mov eax, dword [ebp - 0xa4]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, edi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x16
jmp 0x1000ac7a
mov ecx, dword [ebp - 0x98]
lea edx, [ebp - 0xb4]
mov dword [ebp - 0xb4], 0
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x44]
mov esi, eax
test esi, esi
jns 0x1000a40c
mov ecx, dword [ebp - 0xa4]
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
mov ecx, dword [ebp - 0xa0]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x17
jmp 0x1000ac7a
mov ecx, dword [ebp - 0xb4]
lea edx, [ebp - 0xb8]
push edx
mov dword [ebp - 0xb8], 0
push 0
mov eax, dword [ecx]
push ecx
call dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov esi, eax
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
test esi, esi
jns 0x1000a495
mov ecx, dword [ebp - 0xa4]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x18
jmp 0x1000ac7a
mov ecx, dword [ebp - 0xb8]
lea edx, [ebp - 0xa8]
push edx
mov dword [ebp - 0xa8], 0
push str.MbLk
mov eax, dword [ecx]
push ecx
call dword [eax]
mov ecx, dword [ebp - 0xb8]
mov esi, eax
push ecx
mov edx, dword [ecx]
call dword [edx + 8]
test esi, esi
jns 0x1000a520
mov ecx, dword [ebp - 0xa4]
push ecx
mov eax, dword [ecx]
call dword [eax + 8]
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
mov byte [ebp - 4], 0x19
jmp 0x1000ac7a
lea ecx, [ebp - 0x170]
mov dword [ebp - 0x54], 0
push ecx
lea eax, [ebp - 0x101]
mov dword [ebp - 0x170], 0x20444441
push eax
xorps xmm0, xmm0
mov dword [ebp - 0x16c], 0x434b4822
push ecx
lea ecx, [ebp - 0x5c]
movq qword [ebp - 0x5c], xmm0
mov dword [ebp - 0x168], 0x4f535c55
mov dword [ebp - 0x164], 0x41575446
mov dword [ebp - 0x160], 0x4d5c4552
mov dword [ebp - 0x15c], 0x6f726369
mov dword [ebp - 0x158], 0x74666f73
mov dword [ebp - 0x154], 0x6e69575c
mov dword [ebp - 0x150], 0x73776f64
mov dword [ebp - 0x14c], 0x7275435c
mov dword [ebp - 0x148], 0x746e6572
mov dword [ebp - 0x144], 0x73726556
mov dword [ebp - 0x140], 0x5c6e6f69
mov dword [ebp - 0x13c], 0x226e7552
mov dword [ebp - 0x138], 0x20562f20
mov dword [ebp - 0x134], 0x63695022
mov dword [ebp - 0x130], 0x22706d78
mov dword [ebp - 0x12c], 0x20742f20
mov dword [ebp - 0x128], 0x5f474552
mov dword [ebp - 0x124], 0x2f205a53
mov dword [ebp - 0x120], 0x442f2046
mov dword [ebp - 0x11c], 0x63732220
mov dword [ebp - 0x118], 0x73617468
mov dword [ebp - 0x114], 0x2f20736b
mov dword [ebp - 0x110], 0x206e7572
mov dword [ebp - 0x10c], 0x206e742f
mov dword [ebp - 0x108], 0x78636950
mov word [ebp - 0x104], 0x706d
mov byte [ebp - 0x102], 0x22
call fcn.10002df0
lea ecx, [ebp - 0xc8]
mov byte [ebp - 4], 0x1a
push ecx
lea eax, [ebp - 0xc5]
mov dword [ebp - 0x84], 0
push eax
xorps xmm0, xmm0
mov word [ebp - 0xc8], 0x4552
push ecx
lea ecx, [ebp - 0x8c]
movq qword [ebp - 0x8c], xmm0
mov byte [ebp - 0xc6], 0x47
call fcn.10002df0
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0xa8]
push ecx
push dword [ebp - 0x88]
lea ecx, [ebp - 0x100]
mov eax, dword [eax]
push dword [ebp - 0x8c]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0xc4], eax
call fcn.10005a10
mov edi, eax
mov byte [ebp - 4], 0x1c
cmp dword [edi + 0x14], 7
jbe 0x1000a6e2
mov edi, dword [edi]
push 0xc
call fcn.1000bb8f
mov esi, eax
add esp, 4
mov dword [ebp - 0xc0], esi
mov byte [ebp - 4], 0x1d
test esi, esi
je 0x1000a72f
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 0x1000a731
test edi, edi
jne 0x1000acd2
jmp 0x1000a731
xor esi, esi
mov byte [ebp - 4], 0x1c
mov dword [ebp - 0xc0], esi
test esi, esi
je 0x1000acdc
mov byte [ebp - 4], 0x1e
push dword [esi]
push dword [ebp - 0xa8]
call dword [ebp - 0xc4]
mov dword [ebp - 0xc0], eax
or ecx, 0xffffffff
lock xadd dword [esi + 8], ecx
dec ecx
jne 0x1000a79b
mov ecx, dword [esi]
test ecx, ecx
je 0x1000a779
push ecx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x1000a790
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0xec]
cmp ecx, 7
jbe 0x1000a7df
mov edx, dword [ebp - 0x100]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000a7d5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000ace6
push ecx
push edx
call fcn.1000bb5e
add esp, 8
mov eax, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x5c]
push ecx
push dword [ebp - 0x58]
mov eax, dword [eax]
lea ecx, [ebp - 0x100]
push edi
mov eax, dword [eax + 0x34]
mov dword [ebp - 0xe4], eax
call fcn.10005a10
mov dword [ebp - 0xc4], eax
mov byte [ebp - 4], 0x1f
cmp dword [eax + 0x14], 7
jbe 0x1000a81b
mov eax, dword [eax]
mov dword [ebp - 0xc4], eax
push 0xc
call fcn.1000bb8f
mov esi, eax
add esp, 4
mov dword [ebp - 0xdc], esi
mov byte [ebp - 4], 0x20
test esi, esi
je 0x1000a871
push dword [ebp - 0xc4]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
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 0x1000a873
cmp dword [ebp - 0xc4], eax
jne 0x1000aceb
jmp 0x1000a873
xor esi, esi
mov byte [ebp - 4], 0x1f
mov dword [ebp - 0xdc], esi
test esi, esi
je 0x1000acf5
mov byte [ebp - 4], 0x21
push dword [esi]
push dword [ebp - 0xa8]
call dword [ebp - 0xe4]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x1000a8d7
mov eax, dword [esi]
test eax, eax
je 0x1000a8b5
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x1000a8cc
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0xec]
cmp ecx, 7
jbe 0x1000a91b
mov edx, dword [ebp - 0x100]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000a911
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000acff
push ecx
push edx
call fcn.1000bb5e
add esp, 8
mov eax, dword [ebp - 0xa8]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov esi, dword [ebp - 0xc0]
test esi, esi
jns 0x1000a9a0
mov eax, dword [ebp - 0xa4]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, esi
lea ecx, [ebp - 0x100]
call fcn.10008440
push eax
lea ecx, [ebp - 0xd4]
mov byte [ebp - 4], 0x22
call fcn.100084c0
push 0x10034528
lea eax, [ebp - 0xd4]
jmp 0x1000ac8b
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0xbc], 0
push 0x10031acc
mov eax, dword [eax]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0xe4], eax
mov eax, 8
mov word [ebp - 0x180], ax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x178], eax
test eax, eax
je 0x1000ad04
movups xmm0, xmmword [ebp - 0x180]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x1a0]
push eax
movups xmmword [ebp - 0xd8], xmm0
call esi
movups xmm0, xmmword [ebp - 0x1a0]
lea eax, [ebp - 0x190]
push eax
movups xmmword [ebp - 0x1b0], xmm0
call esi
mov byte [ebp - 4], 0x25
mov eax, dword [ebp - 0x98]
movups xmm0, xmmword [ebp - 0x190]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp - 0xe0]
movups xmmword [ebp - 0xf8], xmm0
cmp dword [eax + 0x14], 7
jbe 0x1000aa46
mov eax, dword [eax]
mov dword [ebp - 0xe0], eax
push 0xc
call fcn.1000bb8f
mov esi, eax
add esp, 4
mov dword [ebp - 0xdc], esi
mov byte [ebp - 4], 0x26
test esi, esi
je 0x1000aa9c
push dword [ebp - 0xe0]
xorps xmm0, xmm0
movq qword [esi], xmm0
mov dword [esi + 8], 0
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 0x1000aa9e
cmp dword [ebp - 0xe0], eax
jne 0x1000ad0e
jmp 0x1000aa9e
xor esi, esi
mov byte [ebp - 4], 0x25
mov dword [ebp - 0xdc], esi
test esi, esi
je 0x1000ad18
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0xbc]
movups xmm0, xmmword [ebp - 0xd8]
push eax
sub esp, 0x10
mov eax, esp
push 3
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0x1b0]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0xf8]
push 6
push dword [ebp - 0xc0]
movups xmmword [eax], xmm0
push dword [esi]
push dword [ebp - 0x9c]
call dword [ebp - 0xe4]
or eax, 0xffffffff
lock xadd dword [esi + 8], eax
dec eax
jne 0x1000ab40
mov eax, dword [esi]
test eax, eax
je 0x1000ab1e
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [esi], 0
mov eax, dword [esi + 4]
test eax, eax
je 0x1000ab35
push eax
call fcn.1000bbbf
add esp, 4
mov dword [esi + 4], 0
push 0xc
push esi
call fcn.1000bb5e
add esp, 8
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x190]
push eax
call esi
lea eax, [ebp - 0x1a0]
push eax
call esi
lea eax, [ebp - 0x180]
mov byte [ebp - 4], 0x1b
push eax
call esi
mov eax, dword [ebp - 0xbc]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0xa0]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x98]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x9c]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x94]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov edx, dword [ebp - 0x8c]
test edx, edx
je 0x1000abe1
mov ecx, dword [ebp - 0x84]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x1000abd7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000ad22
push ecx
push edx
call fcn.1000bb5e
add esp, 8
test edi, edi
je 0x1000ac12
mov ecx, dword [ebp - 0x54]
mov eax, edi
sub ecx, edi
cmp ecx, 0x1000
jb 0x1000ac08
mov edi, dword [eax - 4]
add ecx, 0x23
sub eax, edi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000ad22
push ecx
push edi
call fcn.1000bb5e
add esp, 8
mov edx, dword [ebp - 0x7c]
test edx, edx
je 0x1000ac46
mov ecx, dword [ebp - 0x74]
mov eax, edx
sub ecx, edx
cmp ecx, 0x1000
jb 0x1000ac3c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000ad22
push ecx
push edx
call fcn.1000bb5e
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1000bb50
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret 4
mov edx, eax
lea ecx, [ebp - 0x100]
call fcn.10008440
mov dword [ebp - 4], 0
push eax
lea ecx, [ebp - 0x5c]
call fcn.100084c0
push 0x10034528
lea eax, [ebp - 0x5c]
push eax
call fcn.1000d2f0
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
call fcn.100109ef
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
call fcn.100109ef
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
call fcn.100109ef
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
push 0x8007000e
call fcn.1000ad70
call fcn.100109ef
int3