Function at 0x10041ca0
Capabilities:
Get session user name
Schedule task via itaskservice

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100dd058
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
push esi
push edi
mov eax, dword [0x10114894]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x78], ecx
push 0
mov dword [ebp - 0x6c], 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x10041cf5
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push 0
push 0
push 0
push 3
push 6
push 0
push 0
push 0xffffffffffffffff
push 0
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [ebp - 0x14], 0
lea eax, [ebp - 0x14]
mov dword [ebp - 4], 0
push eax
push 0x100e9880
push 1
push 0
push 0x100ed1f8
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x10041e83
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa8]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0xa8], xmm0
call esi
movups xmm0, xmmword [ebp - 0xa8]
lea eax, [ebp - 0x98]
push eax
movups xmmword [ebp - 0xcc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x98], xmm0
call esi
movups xmm0, xmmword [ebp - 0x98]
lea eax, [ebp - 0x88]
push eax
movups xmmword [ebp - 0xdc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x88], xmm0
call esi
movups xmm0, xmmword [ebp - 0x88]
lea eax, [ebp - 0xbc]
push eax
movups xmmword [ebp - 0xec], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0xbc], xmm0
call esi
movups xmm0, xmmword [ebp - 0xcc]
mov eax, dword [ebp - 0x14]
sub esp, 0x10
mov ecx, esp
mov byte [ebp - 4], 4
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xdc]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xec]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0xbc]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0xbc]
push eax
call edi
lea eax, [ebp - 0x88]
push eax
call edi
lea eax, [ebp - 0x98]
push eax
call edi
lea eax, [ebp - 0xa8]
push eax
call edi
test esi, esi
js 0x10041e83
mov dword [ebp - 0x1c], 0
mov edi, dword [ebp - 0x14]
push 0x100e6444
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042b89
mov eax, dword [edi]
lea ecx, [ebp - 0x1c]
push ecx
push esi
push edi
mov byte [ebp - 4], 6
call dword [eax + 0x1c]
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test edi, edi
jns 0x10041ea0
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0
test eax, eax
je 0x10041e83
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x10042b6d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10042b6d
mov dword [ebp - 0x20], 0
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov byte [ebp - 4], 7
test eax, eax
jne 0x10041fa4
xor esi, esi
mov dword [ebp - 0x5c], esi
mov eax, dword [edi]
lea ecx, [ebp - 0x20]
push ecx
push esi
push edi
mov byte [ebp - 4], 8
call dword [eax + 0x34]
push esi
mov edi, eax
mov byte [ebp - 4], 7
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test edi, edi
js 0x100421b8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x100421b8
mov dword [ebp - 0x60], 0
mov ecx, dword [eax]
lea edx, [ebp - 0x60]
push edx
push eax
mov byte [ebp - 4], 9
call dword [ecx + 0x4c]
test eax, eax
js 0x100421a7
mov dword [ebp - 0x68], 0
mov eax, dword [ebp - 0x60]
lea edx, [ebp - 0x68]
push edx
push eax
mov byte [ebp - 4], 0xa
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
js 0x10042196
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x68]
lea edx, [ebp - 0x54]
push edx
push 1
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0xb
call dword [ecx + 0x20]
test eax, eax
js 0x10042185
mov eax, dword [ebp - 0x54]
lea edx, [ebp - 0x58]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
js 0x10042185
cmp dword [ebp - 0x58], 0
jne 0x10042185
push dword [ebp - 0x54]
lea ecx, [ebp - 0x2c]
call fcn.10041600
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xc
test eax, eax
je 0x10042177
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push 0x100fc134
call edi
mov esi, eax
mov dword [ebp - 0xac], esi
test esi, esi
je 0x10042b93
jmp 0x10041fbe
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call eax
mov esi, eax
mov dword [ebp - 0x5c], esi
test esi, esi
je 0x10042b9d
jmp 0x10041ebe
push 0x100fc134
mov byte [ebp - 4], 0xd
call edi
mov edi, eax
mov dword [ebp - 0x74], edi
test edi, edi
je 0x10042ba7
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push 0x100fc134
mov byte [ebp - 4], 0xe
call eax
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10042bb1
mov ecx, dword [ebp + 0xc]
push esi
mov byte [ebp - 4], 0xf
call fcn.10008fb0
test eax, eax
jne 0x10042028
mov ecx, dword [ebp + 0xc]
push edi
lea ecx, [ecx + 4]
call fcn.10008fb0
test eax, eax
jne 0x10042028
mov ecx, dword [ebp + 0xc]
push dword [ebp - 0x50]
lea ecx, [ecx + 8]
call fcn.10008fb0
test eax, eax
je 0x100420b7
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp + 0xc]
push dword [eax]
call fcn.10041650
mov edx, dword [ebp - 0x30]
push dword [eax]
mov byte [ebp - 4], 0x10
push edx
mov ecx, dword [edx]
call dword [ecx + 0x2c]
push dword [ebp - 0x10]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
call fcn.10041650
mov edx, dword [ebp - 0x10]
push dword [eax]
mov byte [ebp - 4], 0x11
push edx
mov ecx, dword [edx]
call dword [ecx + 0x3c]
push dword [ebp - 0x30]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x2c]
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
push dword [eax + 8]
call fcn.10041650
mov edx, dword [ebp - 0x10]
push dword [eax]
mov byte [ebp - 4], 0x12
push edx
mov ecx, dword [edx]
call dword [ecx + 0x34]
push dword [ebp - 0x30]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x20]
lea edx, [ebp - 0x5c]
mov dword [ebp - 0x5c], 0
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
test eax, eax
js 0x1004215f
cmp word [ebp - 0x5c], 0xffff
je 0x100420e5
mov eax, dword [ebp - 0x20]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
push dword [ebp - 0x50]
mov dword [ebp - 0x6c], 1
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
push esi
call edi
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xb
test eax, eax
je 0x10042112
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x54]
mov byte [ebp - 4], 0xa
test eax, eax
je 0x10042123
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 9
test eax, eax
je 0x10042134
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x60]
mov byte [ebp - 4], 7
test eax, eax
je 0x10042145
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 5
test eax, eax
je 0x10041e72
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10041e72
push dword [ebp - 0x50]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
call edi
push esi
call edi
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0xb
test eax, eax
je 0x10042185
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x54]
mov byte [ebp - 4], 0xa
test eax, eax
je 0x10042196
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 9
test eax, eax
je 0x100421a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x60]
mov byte [ebp - 4], 7
test eax, eax
je 0x100421b8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
test eax, eax
jne 0x10042203
xor esi, esi
mov dword [ebp - 0x10], esi
mov eax, dword [edi]
push 0
push esi
push edi
mov byte [ebp - 4], 0x13
call dword [eax + 0x3c]
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push esi
call edi
mov dword [ebp - 0x18], 0
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x18]
push edx
push 0
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x14
call dword [ecx + 0x24]
test eax, eax
jns 0x10042219
mov eax, dword [ebp - 0x18]
jmp 0x10042137
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042bbb
jmp 0x100421c7
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x1004222d
mov dword [ebp - 0x14], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x28], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x28]
push edx
push eax
mov byte [ebp - 4], 0x15
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
mov eax, dword [ebp - 0x28]
jns 0x10042262
mov byte [ebp - 4], 0x14
test eax, eax
je 0x1004225a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
jmp 0x10042137
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x30], eax
lea eax, [ebp - 0x58]
push eax
call fcn.10042fb0
mov eax, dword [eax]
mov byte [ebp - 4], 0x16
test eax, eax
jne 0x100422c7
xor esi, esi
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x30]
push esi
push ecx
mov byte [ebp - 4], 0x17
mov eax, dword [ecx]
call dword [eax + 0x28]
push esi
call edi
mov edx, dword [ebp - 0x58]
or eax, 0xffffffff
mov byte [ebp - 4], 0x15
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100422b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x28]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x100422dd
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x100422f4
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042bc5
jmp 0x10042280
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042bcf
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push esi
push ecx
mov byte [ebp - 4], 0x18
call dword [eax + 0x20]
push esi
mov byte [ebp - 4], 0x15
call edi
mov ecx, dword [ebp - 0x28]
test ecx, ecx
je 0x1004231a
mov dword [ebp - 0x28], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x24], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x24]
push edx
push eax
mov byte [ebp - 4], 0x19
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x1004234f
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0x15
test eax, eax
je 0x10042347
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x28]
jmp 0x1004224c
mov dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x3c]
push edx
push 9
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x1a
call dword [ecx + 0x28]
mov edx, dword [ebp - 0x24]
mov esi, eax
test edx, edx
je 0x10042382
mov dword [ebp - 0x24], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x3c]
test esi, esi
jns 0x100423b0
mov byte [ebp - 4], 0x19
test eax, eax
je 0x1004239a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x24]
mov byte [ebp - 4], 0x15
test edx, edx
je 0x10042347
mov eax, dword [edx]
push edx
call dword [eax + 8]
mov eax, dword [ebp - 0x28]
jmp 0x1004224c
xor ecx, ecx
mov dword [ebp - 0x34], ecx
test eax, eax
je 0x100423da
mov ecx, dword [eax]
lea edx, [ebp - 0x34]
push edx
push 0x100e97a4
push eax
call dword [ecx]
mov ecx, dword [ebp - 0x34]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x3c]
cmovs ecx, edx
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x34], ecx
mov byte [ebp - 4], 0x1b
test ecx, ecx
je 0x10042389
mov eax, dword [ecx]
push 0xffffffffffffffff
push ecx
call dword [eax + 0x4c]
mov eax, dword [ebp - 0x34]
push str.Trigger1
mov dword [ebp - 0x10], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x74], esi
test esi, esi
je 0x10042bd9
mov ecx, dword [ebp - 0x10]
push esi
push ecx
mov byte [ebp - 4], 0x1c
mov eax, dword [ecx]
call dword [eax + 0x24]
push esi
mov byte [ebp - 4], 0x1b
call edi
cmp word [0x10118190], 0
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x58], eax
jne 0x10042444
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0x100
push eax
push 0x10118190
push 2
call sub.Secur32.dll_GetUserNameExW
call fcn.100078b0
mov ecx, eax
test ecx, ecx
je 0x10042be3
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
push 0x10118190
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x1d
call fcn.10008820
test al, al
jne 0x1004249d
mov ecx, 0x10118190
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10042480
sub ecx, edx
sar ecx, 1
push ecx
push 0x10118190
lea ecx, [ebp - 0x50]
call fcn.100070c0
mov edi, dword [ebp - 0x50]
mov byte [ebp - 4], 0x1e
test edi, edi
jne 0x100424ef
xor esi, esi
mov dword [ebp - 0x30], esi
mov ecx, dword [ebp - 0x58]
push esi
push ecx
mov byte [ebp - 4], 0x1f
mov eax, dword [ecx]
call dword [eax + 0x5c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x1b
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x100424de
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.100078b0
mov ecx, eax
test ecx, ecx
je 0x10042bed
jmp 0x10042505
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x10042bf7
jmp 0x100424ad
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp + 0xc]
mov ecx, 0x3c
mov byte [ebp - 4], 0x20
mov eax, dword [eax + 0x10]
cdq
idiv ecx
push edx
push eax
lea eax, [ebp - 0x2c]
push str.PT_dM_dS
push eax
call fcn.1001abe0
mov eax, dword [ebp - 0x2c]
add esp, 0x10
mov ecx, dword [ebp - 0x34]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x30], ecx
test eax, eax
jne 0x10042551
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x10042564
push eax
call edi
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042c01
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push esi
push ecx
mov byte [ebp - 4], 0x21
call dword [eax + 0x54]
push esi
mov dword [ebp - 0x10], eax
mov byte [ebp - 4], 0x20
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edx, dword [ebp - 0x34]
test edx, edx
je 0x10042591
mov dword [ebp - 0x34], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
cmp dword [ebp - 0x10], 0
jge 0x100425ca
lea ecx, [ebp - 0x2c]
call fcn.10007410
mov eax, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x100425b0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x19
test eax, eax
je 0x10042336
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10042336
mov dword [ebp - 0x38], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x38]
push edx
push eax
mov byte [ebp - 4], 0x22
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x100425f9
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test eax, eax
je 0x10042597
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x10042597
mov dword [ebp - 0x4c], 0
mov eax, dword [ebp - 0x38]
lea edx, [ebp - 0x4c]
push edx
push 0
push eax
mov ecx, dword [eax]
mov byte [ebp - 4], 0x23
call dword [ecx + 0x30]
mov edx, dword [ebp - 0x38]
mov esi, eax
test edx, edx
je 0x1004262c
mov dword [ebp - 0x38], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x4c]
test esi, esi
jns 0x1004265b
mov byte [ebp - 4], 0x22
test eax, eax
je 0x10042644
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test edx, edx
je 0x10042597
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x10042597
xor esi, esi
mov dword [ebp - 0x44], esi
test eax, eax
je 0x10042685
mov ecx, dword [eax]
lea edx, [ebp - 0x44]
push edx
push 0x100e9794
push eax
call dword [ecx]
mov esi, dword [ebp - 0x44]
xor ecx, ecx
mov edx, dword [ebp - 0x38]
test eax, eax
mov eax, dword [ebp - 0x4c]
cmovs esi, ecx
mov dword [ebp - 0x44], esi
mov byte [ebp - 4], 0x24
test esi, esi
je 0x10042633
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
test eax, eax
jne 0x100426ca
xor edi, edi
mov dword [ebp - 0x10], edi
mov eax, dword [esi]
push edi
push esi
mov byte [ebp - 4], 0x25
call dword [eax + 0x2c]
push edi
mov edi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x24
call edi
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax + 4]
test eax, eax
jne 0x100426dc
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x100426f3
push eax
call edi
mov edi, eax
mov dword [ebp - 0x10], edi
test edi, edi
je 0x10042c0b
jmp 0x1004269b
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x10042c15
mov ecx, dword [ebp - 0x30]
mov eax, dword [ecx]
push esi
push ecx
mov byte [ebp - 4], 0x26
call dword [eax + 0x3c]
push esi
mov byte [ebp - 4], 0x24
call edi
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x44]
mov dword [ebp - 0x10], ecx
mov eax, dword [eax + 8]
test eax, eax
jne 0x1004271c
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x10042733
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x10042c1f
mov ecx, dword [ebp - 0x10]
mov eax, dword [ecx]
push esi
push ecx
mov byte [ebp - 4], 0x27
call dword [eax + 0x34]
push esi
call edi
mov dword [ebp - 0x48], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x48]
push edx
push eax
mov byte [ebp - 4], 0x28
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
mov eax, dword [ebp - 0x48]
jns 0x10042799
mov byte [ebp - 4], 0x24
test eax, eax
je 0x1004276e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x23
test eax, eax
je 0x1004277f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x22
test eax, eax
je 0x100425e6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x100425e6
mov ecx, dword [ebp - 0x78]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x30]
push eax
call fcn.10042fb0
mov eax, dword [eax]
mov byte [ebp - 4], 0x29
test eax, eax
jne 0x10042807
xor esi, esi
mov dword [ebp + 0xc], esi
mov ecx, dword [ebp - 0x10]
push esi
push ecx
mov byte [ebp - 4], 0x2a
mov eax, dword [ecx]
call dword [eax + 0x20]
push esi
call edi
mov edx, dword [ebp - 0x30]
or eax, 0xffffffff
mov byte [ebp - 4], 0x28
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x100427e7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x48]
push str.BUILTINAdministrators
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x74], esi
test esi, esi
je 0x10042c29
jmp 0x1004281d
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x10042c33
jmp 0x100427b7
mov ecx, dword [ebp + 0xc]
push esi
push ecx
mov byte [ebp - 4], 0x2b
mov eax, dword [ecx]
call dword [eax + 0x40]
push esi
mov byte [ebp - 4], 0x28
call edi
mov eax, dword [ebp - 0x48]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
je 0x10042851
mov dword [ebp - 0x44], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x40], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x40]
push edx
push eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
mov eax, dword [ebp - 0x40]
jns 0x10042886
mov byte [ebp - 4], 0x28
test eax, eax
je 0x1004287e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
jmp 0x10042760
mov ecx, dword [eax]
push 0
push eax
call dword [ecx + 0x40]
mov eax, dword [ebp - 0x40]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0x40]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov eax, dword [ebp - 0x40]
push str.PT0S
mov dword [ebp + 0xc], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x74], esi
test esi, esi
je 0x10042c3d
mov ecx, dword [ebp + 0xc]
push esi
push ecx
mov byte [ebp - 4], 0x2d
mov eax, dword [ecx]
call dword [eax + 0x70]
push esi
call edi
mov dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x64]
push edx
push eax
mov byte [ebp - 4], 0x2e
mov ecx, dword [eax]
call dword [ecx + 0x9c]
test eax, eax
js 0x100428fd
mov eax, dword [ebp - 0x64]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x10042911
mov dword [ebp - 0x40], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x70], 0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x88]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x88], xmm0
call esi
movups xmm0, xmmword [ebp - 0x88]
lea eax, [ebp - 0x98]
push eax
movups xmmword [ebp - 0xec], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x98], xmm0
call esi
movups xmm0, xmmword [ebp - 0x98]
lea eax, [ebp - 0xa8]
push eax
movups xmmword [ebp - 0xdc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0xa8], xmm0
call esi
movups xmm0, xmmword [ebp - 0xa8]
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x32
movups xmmword [ebp - 0xcc], xmm0
test eax, eax
jne 0x10042a33
xor esi, esi
mov dword [ebp + 0xc], esi
movups xmm0, xmmword [ebp - 0xec]
mov ecx, dword [edi]
lea eax, [ebp - 0x70]
push eax
sub esp, 0x10
mov byte [ebp - 4], 0x33
mov eax, esp
push 3
sub esp, 0x10
movups xmmword [eax], xmm0
mov eax, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xdc]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0xcc]
push 6
push dword [ebp - 0x18]
movups xmmword [eax], xmm0
push esi
push edi
call dword [ecx + 0x44]
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0xa8]
push eax
call esi
lea eax, [ebp - 0x98]
push eax
call esi
lea eax, [ebp - 0x88]
push eax
call esi
mov eax, dword [ebp - 0x70]
mov byte [ebp - 4], 0x2e
test edi, edi
jns 0x10042a4c
test eax, eax
je 0x10042a1a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x2c
test eax, eax
je 0x10042a2b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
jmp 0x10042870
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x10042c47
jmp 0x10042998
mov dword [ebp - 0x6c], 1
test eax, eax
je 0x10042a5d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 0x2c
test eax, eax
je 0x10042a6e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x28
test eax, eax
je 0x10042a7f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x24
test eax, eax
je 0x10042a90
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x23
test eax, eax
je 0x10042aa1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x22
test eax, eax
je 0x10042ab2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test eax, eax
je 0x10042ac3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x2c]
or eax, 0xffffffff
mov byte [ebp - 4], 0x1b
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x10042ae2
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x10042af3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x19
test eax, eax
je 0x10042b04
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 0x15
test eax, eax
je 0x10042b15
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x10042b26
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 7
test eax, eax
je 0x10042b37
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x20]
mov byte [ebp - 4], 5
test eax, eax
je 0x10042b48
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0
test eax, eax
je 0x10042b59
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
test ecx, ecx
je 0x10042b6d
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 8
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x80004005
call fcn.10005050
push 0x80004005
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
push 0x8007000e
call fcn.10005050
int3