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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x521ca0
mov eax, dword fs:[0]
push eax
sub esp, 0xe0
push esi
push edi
mov eax, dword [0x56f790]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x6c], ecx
push 0
mov dword [ebp - 0x78], 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x47e155
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 0x53b6b8
push 1
push 0
push 0x5417cc
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x47e2e3
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 - 0xbc]
push eax
movups xmmword [ebp - 0xdc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0xbc], xmm0
call esi
movups xmm0, xmmword [ebp - 0xbc]
lea eax, [ebp - 0x88]
push eax
movups xmmword [ebp - 0xec], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x88], 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 - 0x88]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0x88]
push eax
call edi
lea eax, [ebp - 0xbc]
push eax
call edi
lea eax, [ebp - 0x98]
push eax
call edi
lea eax, [ebp - 0xa8]
push eax
call edi
test esi, esi
js 0x47e2e3
mov dword [ebp - 0x1c], 0
mov edi, dword [ebp - 0x14]
push 0x532d98
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f059
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 0x47e300
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0
test eax, eax
je 0x47e2e3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x47f03d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47f03d
mov dword [ebp - 0x24], 0
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
mov byte [ebp - 4], 7
test eax, eax
jne 0x47e404
xor esi, esi
mov dword [ebp - 0x60], esi
mov eax, dword [edi]
lea ecx, [ebp - 0x24]
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 0x47e5ea
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x47e5ea
mov dword [ebp - 0x64], 0
mov ecx, dword [eax]
lea edx, [ebp - 0x64]
push edx
push eax
mov byte [ebp - 4], 9
call dword [ecx + 0x4c]
test eax, eax
js 0x47e5d9
mov dword [ebp - 0x5c], 0
mov eax, dword [ebp - 0x64]
lea edx, [ebp - 0x5c]
push edx
push eax
mov byte [ebp - 4], 0xa
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
js 0x47e5c8
mov dword [ebp - 0x54], 0
mov eax, dword [ebp - 0x5c]
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 0x47e5b7
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 0x47e5b7
cmp dword [ebp - 0x58], 0
jne 0x47e5b7
push dword [ebp - 0x54]
lea ecx, [ebp - 0x30]
call fcn.0047daa0
mov eax, dword [ebp - 0x30]
mov byte [ebp - 4], 0xc
test eax, eax
je 0x47e5a9
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push 0x52bd6c
call edi
mov esi, eax
mov dword [ebp - 0xac], esi
test esi, esi
je 0x47f063
jmp 0x47e41e
push eax
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
call eax
mov esi, eax
mov dword [ebp - 0x60], esi
test esi, esi
je 0x47f06d
jmp 0x47e31e
push 0x52bd6c
mov byte [ebp - 4], 0xd
call edi
mov edi, eax
mov dword [ebp - 0x74], edi
test edi, edi
je 0x47f077
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push 0x52bd6c
mov byte [ebp - 4], 0xe
call eax
mov dword [ebp - 0x50], eax
test eax, eax
je 0x47f081
mov ecx, dword [ebp + 0xc]
push esi
mov byte [ebp - 4], 0xf
call fcn.0047f150
test eax, eax
jne 0x47e488
mov ecx, dword [ebp + 0xc]
push edi
lea ecx, [ecx + 4]
call fcn.0047f150
test eax, eax
jne 0x47e488
mov ecx, dword [ebp + 0xc]
push dword [ebp - 0x50]
lea ecx, [ecx + 8]
call fcn.0047f150
test eax, eax
je 0x47e517
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x10]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp + 0xc]
push dword [eax]
call fcn.0044fdc0
mov edx, dword [ebp - 0x20]
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 - 0x30]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
call fcn.0044fdc0
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 - 0x20]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x30]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp + 0xc]
push dword [eax + 8]
call fcn.0044fdc0
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 - 0x20]
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x24]
lea edx, [ebp - 0x60]
mov dword [ebp - 0x60], 0
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
test eax, eax
js 0x47e591
cmp word [ebp - 0x60], 0xffff
je 0x47e541
mov eax, dword [ebp - 0x24]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
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 - 0x30]
mov byte [ebp - 4], 0xb
test eax, eax
je 0x47e567
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x54]
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47e578
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c]
mov byte [ebp - 4], 9
test eax, eax
je 0x47e589
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x64]
jmp 0x47efe3
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 - 0x30]
mov byte [ebp - 4], 0xb
test eax, eax
je 0x47e5b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x54]
mov byte [ebp - 4], 0xa
test eax, eax
je 0x47e5c8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x5c]
mov byte [ebp - 4], 9
test eax, eax
je 0x47e5d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x64]
mov byte [ebp - 4], 7
test eax, eax
je 0x47e5ea
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp + 8]
mov edi, dword [ebp - 0x1c]
test eax, eax
jne 0x47e658
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 0x47e66e
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 7
test eax, eax
je 0x47e63e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 5
test eax, eax
je 0x47e2d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47e2d2
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f08b
jmp 0x47e5f9
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x47e682
mov dword [ebp - 0x14], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x2c], 0
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x2c]
push edx
push eax
mov byte [ebp - 4], 0x15
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
mov eax, dword [ebp - 0x2c]
jns 0x47e6b4
mov byte [ebp - 4], 0x14
test eax, eax
je 0x47e62d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47e62d
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x58]
push eax
call fcn.0047fc10
mov eax, dword [eax]
mov byte [ebp - 4], 0x16
test eax, eax
jne 0x47e719
xor esi, esi
mov dword [ebp - 0x10], esi
mov ecx, dword [ebp - 0x20]
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 0x47e702
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x2c]
mov dword [ebp - 0x20], ecx
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x47e72f
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x47e746
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f095
jmp 0x47e6d2
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f09f
mov ecx, dword [ebp - 0x20]
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 - 0x2c]
test ecx, ecx
je 0x47e76c
mov dword [ebp - 0x2c], 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], 0x19
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x47e7b3
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x15
test eax, eax
je 0x47e799
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x47e62d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47e62d
mov dword [ebp - 0x3c], 0
mov eax, dword [ebp - 0x28]
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 - 0x28]
mov esi, eax
test edx, edx
je 0x47e7e6
mov dword [ebp - 0x28], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x3c]
test esi, esi
jns 0x47e80e
mov byte [ebp - 4], 0x19
test eax, eax
je 0x47e7fe
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x28]
mov byte [ebp - 4], 0x15
test edx, edx
je 0x47e799
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x47e799
xor ecx, ecx
mov dword [ebp - 0x34], ecx
test eax, eax
je 0x47e838
mov ecx, dword [eax]
lea edx, [ebp - 0x34]
push edx
push 0x53b4bc
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 - 0x28]
mov dword [ebp - 0x34], ecx
mov byte [ebp - 4], 0x1b
test ecx, ecx
je 0x47e7ed
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 0x47f0a9
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 [0x573c28], 0
mov eax, dword [ebp - 0x34]
mov dword [ebp - 0x58], eax
jne 0x47e8a2
lea eax, [ebp - 0x10]
mov dword [ebp - 0x10], 0x100
push eax
push 0x573c28
push 2
call sub.Secur32.dll_GetUserNameExW
call fcn.00408a30
mov ecx, eax
test ecx, ecx
je 0x47f0b3
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x50], eax
push 0x573c28
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x1d
call fcn.00408690
test al, al
jne 0x47e8fd
mov ecx, 0x573c28
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x47e8e0
sub ecx, edx
sar ecx, 1
push ecx
push 0x573c28
lea ecx, [ebp - 0x50]
call fcn.00407f80
mov edi, dword [ebp - 0x50]
mov byte [ebp - 4], 0x1e
test edi, edi
jne 0x47e94f
xor esi, esi
mov dword [ebp - 0x20], 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 0x47e93e
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00408a30
mov ecx, eax
test ecx, ecx
je 0x47f0bd
jmp 0x47e965
push edi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x20], esi
test esi, esi
je 0x47f0c7
jmp 0x47e90d
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x30], 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 - 0x30]
push str.PT_dM_dS
push eax
call fcn.0040ecb0
mov eax, dword [ebp - 0x30]
add esp, 0x10
mov ecx, dword [ebp - 0x34]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x20], ecx
test eax, eax
jne 0x47e9b1
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x47e9c4
push eax
call edi
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f0d1
mov ecx, dword [ebp - 0x20]
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 0x47e9f1
mov dword [ebp - 0x34], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
cmp dword [ebp - 0x10], 0
jge 0x47ea2a
lea ecx, [ebp - 0x30]
call fcn.00408250
mov eax, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1a
test eax, eax
je 0x47ea10
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x19
test eax, eax
je 0x47e788
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47e788
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 0x47ea59
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test eax, eax
je 0x47e9f7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47e9f7
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 0x47ea8c
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 0x47eabb
mov byte [ebp - 4], 0x22
test eax, eax
je 0x47eaa4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test edx, edx
je 0x47e9f7
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x47e9f7
xor esi, esi
mov dword [ebp - 0x44], esi
test eax, eax
je 0x47eae5
mov ecx, dword [eax]
lea edx, [ebp - 0x44]
push edx
push 0x53b4ac
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 0x47ea93
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
test eax, eax
jne 0x47eb2a
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 - 0x20], ecx
mov eax, dword [eax + 4]
test eax, eax
jne 0x47eb3c
xor esi, esi
mov dword [ebp - 0x10], esi
jmp 0x47eb53
push eax
call edi
mov edi, eax
mov dword [ebp - 0x10], edi
test edi, edi
je 0x47f0db
jmp 0x47eafb
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x10], esi
test esi, esi
je 0x47f0e5
mov ecx, dword [ebp - 0x20]
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 0x47eb7c
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x47eb93
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x47f0ef
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 0x47ebf9
mov byte [ebp - 4], 0x24
test eax, eax
je 0x47ebce
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x23
test eax, eax
je 0x47ebdf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x22
test eax, eax
je 0x47ea46
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x47ea46
mov ecx, dword [ebp - 0x6c]
mov dword [ebp - 0x10], eax
lea eax, [ebp - 0x20]
push eax
call fcn.0047fc10
mov eax, dword [eax]
mov byte [ebp - 4], 0x29
test eax, eax
jne 0x47ec67
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 - 0x20]
or eax, 0xffffffff
mov byte [ebp - 4], 0x28
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x47ec47
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 0x47f0f9
jmp 0x47ec7d
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x47f103
jmp 0x47ec17
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 0x47ecb1
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 0x47ece6
mov byte [ebp - 4], 0x28
test eax, eax
je 0x47ecde
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
jmp 0x47ebc0
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 0x47f10d
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 - 0x68], 0
mov eax, dword [ebp - 0x40]
lea edx, [ebp - 0x68]
push edx
push eax
mov byte [ebp - 4], 0x2e
mov ecx, dword [eax]
call dword [ecx + 0x9c]
test eax, eax
js 0x47ed5d
mov eax, dword [ebp - 0x68]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x47ed71
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 - 0x98]
xorps xmm0, xmm0
push eax
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 ecx, dword [ebp - 0x6c]
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0x31
movups xmmword [ebp - 0xcc], xmm0
call fcn.0047fc10
mov esi, dword [eax]
xor eax, eax
mov word [ebp - 0x88], ax
lea eax, [ebp - 0x88]
push eax
mov byte [ebp - 4], 0x32
mov dword [ebp + 0xc], esi
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
js 0x47f117
mov eax, 8
push esi
mov esi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov word [ebp - 0x88], ax
call esi
mov dword [ebp - 0x80], eax
test eax, eax
jne 0x47ee1c
cmp dword [ebp + 0xc], eax
jne 0x47f11d
movups xmm0, xmmword [ebp - 0x88]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x33
mov dword [ebp - 0x10], edx
movups xmmword [ebp - 0xec], xmm0
test eax, eax
jne 0x47ee42
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x47ee5c
push eax
call esi
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x47f13a
movups xmm0, xmmword [ebp - 0xec]
mov edx, dword [ebp - 0x10]
movups xmm1, xmmword [ebp - 0xdc]
mov ecx, dword [edx]
lea eax, [ebp - 0x70]
push eax
sub esp, 0x10
mov byte [ebp - 4], 0x34
mov eax, esp
push 3
sub esp, 0x10
movups xmmword [eax], xmm1
mov eax, esp
sub esp, 0x10
movups xmm1, xmmword [ebp - 0xcc]
movups xmmword [eax], xmm1
mov eax, esp
push 6
push dword [ebp - 0x18]
push esi
push edx
movups xmmword [eax], xmm0
call dword [ecx + 0x44]
push esi
mov dword [ebp + 0xc], eax
call edi
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x88]
push eax
call edi
mov edx, dword [ebp - 0x20]
or esi, 0xffffffff
mov byte [ebp - 4], 0x31
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x47eece
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea eax, [ebp - 0xa8]
push eax
call edi
lea eax, [ebp - 0x98]
push eax
call edi
cmp dword [ebp + 0xc], 0
mov eax, dword [ebp - 0x70]
mov byte [ebp - 4], 0x2e
jge 0x47ef10
test eax, eax
je 0x47eef7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 0x2c
test eax, eax
je 0x47ef08
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
jmp 0x47ecd0
test eax, eax
je 0x47ef1a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x68]
mov byte [ebp - 4], 0x2c
test eax, eax
je 0x47ef2b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x40]
mov byte [ebp - 4], 0x28
test eax, eax
je 0x47ef3c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x48]
mov byte [ebp - 4], 0x24
test eax, eax
je 0x47ef4d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x44]
mov byte [ebp - 4], 0x23
test eax, eax
je 0x47ef5e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x22
test eax, eax
je 0x47ef6f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x38]
mov byte [ebp - 4], 0x20
test eax, eax
je 0x47ef80
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x1b
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x47ef9c
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 0x47efad
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x3c]
mov byte [ebp - 4], 0x19
test eax, eax
je 0x47efbe
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x15
test eax, eax
je 0x47efcf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 4], 0x14
test eax, eax
je 0x47efe0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 7
test eax, eax
je 0x47eff1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x24]
mov byte [ebp - 4], 5
test eax, eax
je 0x47f002
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x1c]
mov byte [ebp - 4], 0
test eax, eax
je 0x47f013
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
test eax, eax
je 0x47f027
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov ecx, dword [ebp - 0x6c]
push 0
push str.LDS_GAMECENTER
call fcn.0047f310
mov dword [ebp - 0x78], 1
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x78]
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.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x80004005
call fcn.00404400
push 0x80004005
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push 0x8007000e
call fcn.00404400
push eax
call fcn.00404400
mov eax, 0xa
mov dword [ebp - 0x80], 0x8007000e
push 0x8007000e
mov word [ebp - 0x88], ax
call fcn.00404400
push 0x8007000e
call fcn.00404400
int3