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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4ce5e6
mov eax, dword fs:[0]
push eax
sub esp, 0xc0
push esi
push edi
mov eax, dword [0x4fa0a8]
xor eax, ebp
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0
mov dword [ebp - 0x5c], 0
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x480e02
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 - 0x10], 0
lea eax, [ebp - 0x10]
mov dword [ebp - 4], 0
push eax
push 0x4e6d40
push 1
push 0
push 0x4d3bf0
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x480f7c
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x8c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x8c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x8c]
lea eax, [ebp - 0x7c]
push eax
movups xmmword [ebp - 0xac], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x7c]
lea eax, [ebp - 0x6c]
push eax
movups xmmword [ebp - 0xbc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x6c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x6c]
lea eax, [ebp - 0x9c]
push eax
movups xmmword [ebp - 0xcc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x9c], xmm0
call esi
mov byte [ebp - 4], 4
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xac]
mov eax, dword [ebp - 0x10]
mov ecx, esp
sub esp, 0x10
mov edx, dword [eax]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xbc]
movups xmmword [ecx], xmm0
mov ecx, esp
sub esp, 0x10
movups xmm0, xmmword [ebp - 0xcc]
movups xmmword [ecx], xmm0
mov ecx, esp
movups xmm0, xmmword [ebp - 0x9c]
push eax
movups xmmword [ecx], xmm0
call dword [edx + 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov esi, eax
lea eax, [ebp - 0x9c]
push eax
call edi
lea eax, [ebp - 0x6c]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
lea eax, [ebp - 0x8c]
push eax
call edi
test esi, esi
js 0x480f7c
mov dword [ebp - 0x24], 0
mov byte [ebp - 4], 5
mov edi, dword [ebp - 0x10]
push 0x4e3cfc
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x48], esi
test esi, esi
je 0x481a7b
lea ecx, [ebp - 0x24]
mov byte [ebp - 4], 6
mov eax, dword [edi]
push ecx
push esi
push edi
call dword [eax + 0x1c]
push esi
mov edi, eax
mov byte [ebp - 4], 5
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test edi, edi
jns 0x480f99
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x480f7c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x481a5f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x481a5f
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x24]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x2c], ecx
test eax, eax
jne 0x480fb3
xor esi, esi
mov dword [ebp - 0x18], esi
jmp 0x480fc6
push eax
call edi
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x2c]
push 0
mov byte [ebp - 4], 7
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x3c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x14], 0
mov byte [ebp - 4], 8
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x10]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x481012
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x480f6b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x480f6b
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x481026
mov dword [ebp - 0x10], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x20], 0
mov byte [ebp - 4], 9
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
test eax, eax
jns 0x481055
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x480ff8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x480ff8
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x34]
push eax
call fcn.00482290
mov byte [ebp - 4], 0xa
mov eax, dword [eax]
test eax, eax
jne 0x4810be
xor esi, esi
mov dword [ebp - 0x18], esi
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x2c]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x28]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 9
or eax, 0xffffffff
mov edx, dword [ebp - 0x34]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4810a7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 0x18], ecx
mov eax, dword [eax + 0xc]
test eax, eax
jne 0x4810d0
xor esi, esi
mov dword [ebp - 0x34], esi
jmp 0x4810e3
push eax
call edi
mov esi, eax
mov dword [ebp - 0x18], esi
test esi, esi
je 0x481a7b
jmp 0x481073
push eax
call edi
mov esi, eax
mov dword [ebp - 0x34], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 4], 0xc
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x20]
push esi
mov byte [ebp - 4], 9
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov ecx, dword [ebp - 0x20]
test ecx, ecx
je 0x48110d
mov dword [ebp - 0x20], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x1c], 0
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
test eax, eax
jns 0x481143
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x481042
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x481042
mov dword [ebp - 0x40], 0
mov byte [ebp - 4], 0xe
lea edx, [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
push edx
push 9
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov edx, dword [ebp - 0x1c]
mov esi, eax
test edx, edx
je 0x481176
mov dword [ebp - 0x1c], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x1c]
test esi, esi
jns 0x4811a5
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x48118e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x1c]
mov byte [ebp - 4], 9
test edx, edx
je 0x481042
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x481042
mov eax, dword [ebp - 0x40]
xor ecx, ecx
mov dword [ebp - 0x28], ecx
test eax, eax
je 0x4811d2
mov ecx, dword [eax]
lea edx, [ebp - 0x28]
push edx
push 0x4e6d68
push eax
call dword [ecx]
mov ecx, dword [ebp - 0x28]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x40]
cmovs ecx, edx
mov edx, dword [ebp - 0x1c]
mov dword [ebp - 0x28], ecx
mov byte [ebp - 4], 0xf
test ecx, ecx
jne 0x4811e0
mov byte [ebp - 4], 0xd
jmp 0x481181
mov eax, dword [ecx]
push 0xffffffffffffffff
push ecx
call dword [eax + 0x4c]
mov eax, dword [ebp - 0x28]
push 0x4e6c6c
mov dword [ebp - 0x34], eax
call edi
mov esi, eax
mov dword [ebp - 0x48], esi
test esi, esi
je 0x481a7b
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x34]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x24]
push esi
mov byte [ebp - 4], 0xf
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp word [0x50f468], 0
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
jne 0x481243
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x100
push eax
push 0x50f468
push 2
call dword [sym.imp.Secur32.dll_GetUserNameExW]
call fcn.00404d00
mov ecx, eax
test ecx, ecx
je 0x481a85
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x50f468
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x11
call fcn.00404660
test al, al
jne 0x48129d
mov ecx, 0x50f468
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x481280
sub ecx, edx
sar ecx, 1
push ecx
push 0x50f468
lea ecx, [ebp - 0x18]
call fcn.00404930
mov byte [ebp - 4], 0x12
mov edi, dword [ebp - 0x18]
test edi, edi
jne 0x4812ef
xor esi, esi
mov dword [ebp - 0x2c], esi
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x30]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x5c]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0xf
add edi, 0xfffffff0
or eax, 0xffffffff
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x4812de
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00404d00
mov ecx, eax
test ecx, ecx
je 0x481a8f
jmp 0x481306
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push edi
call eax
mov esi, eax
mov dword [ebp - 0x2c], esi
test esi, esi
je 0x481a99
jmp 0x4812ad
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x14
mov ecx, 0x3c
mov eax, dword [ebp + 0xc]
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.00420260
mov eax, dword [ebp - 0x2c]
add esp, 0x10
mov ecx, dword [ebp - 0x28]
mov edi, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x34], ecx
test eax, eax
jne 0x481352
xor esi, esi
mov dword [ebp - 0x30], esi
jmp 0x481365
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x481aa3
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x15
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x54]
push esi
mov dword [ebp - 0x30], eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov edx, dword [ebp - 0x28]
test edx, edx
je 0x481392
mov dword [ebp - 0x28], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
cmp dword [ebp - 0x30], 0
jge 0x4813cb
lea ecx, [ebp - 0x2c]
call fcn.004031c0
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x4813b1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x481129
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x481129
mov dword [ebp - 0x38], 0
mov byte [ebp - 4], 0x16
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
test eax, eax
jns 0x4813fa
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x481398
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x481398
mov dword [ebp - 0x50], 0
mov byte [ebp - 4], 0x17
lea edx, [ebp - 0x50]
mov eax, dword [ebp - 0x38]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov edx, dword [ebp - 0x38]
mov esi, eax
test edx, edx
je 0x48142d
mov dword [ebp - 0x38], 0
mov ecx, dword [edx]
push edx
call dword [ecx + 8]
mov edx, dword [ebp - 0x38]
test esi, esi
jns 0x48145c
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x481445
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov edx, dword [ebp - 0x38]
mov byte [ebp - 4], 0x14
test edx, edx
je 0x481398
mov eax, dword [edx]
push edx
call dword [eax + 8]
jmp 0x481398
mov eax, dword [ebp - 0x50]
xor ecx, ecx
mov dword [ebp - 0x3c], ecx
test eax, eax
je 0x481489
mov ecx, dword [eax]
lea edx, [ebp - 0x3c]
push edx
push str.MbLk
push eax
call dword [ecx]
mov ecx, dword [ebp - 0x3c]
xor edx, edx
test eax, eax
mov eax, dword [ebp - 0x50]
cmovs ecx, edx
mov edx, dword [ebp - 0x38]
mov dword [ebp - 0x3c], ecx
mov byte [ebp - 4], 0x18
test ecx, ecx
jne 0x481497
mov byte [ebp - 4], 0x16
jmp 0x481438
call fcn.00404d00
mov ecx, eax
test ecx, ecx
je 0x481aad
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp - 0x18], eax
push 0x4df280
lea ecx, [ebp - 0x18]
mov byte [ebp - 4], 0x19
call fcn.00404660
test al, al
jne 0x4814d7
push 1
push 0x4df280
lea ecx, [ebp - 0x18]
call fcn.00404930
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x18]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004579d0
push 1
push 0x4df280
lea ecx, [ebp - 0x18]
call fcn.004579d0
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
test eax, eax
jne 0x48150f
xor esi, esi
mov dword [ebp - 0x30], esi
jmp 0x481522
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1b
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x2c]
push esi
mov byte [ebp - 4], 0x1a
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x34], ecx
mov eax, dword [eax + 4]
test eax, eax
jne 0x48154f
xor esi, esi
mov dword [ebp - 0x30], esi
jmp 0x481562
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x34]
mov byte [ebp - 4], 0x1c
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x3c]
push esi
mov byte [ebp - 4], 0x1a
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x3c]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax + 8]
test eax, eax
jne 0x48158f
xor esi, esi
mov dword [ebp + 0xc], esi
jmp 0x4815a2
push eax
call edi
mov esi, eax
mov dword [ebp + 0xc], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x1d
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x34]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x4c], 0
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0x4c]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
jns 0x481614
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x4815e1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x18]
call fcn.004031c0
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x4815fa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x4813e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp 0x4813e7
call fcn.00404d00
mov ecx, eax
test ecx, ecx
je 0x481ab7
mov eax, dword [ecx]
mov eax, dword [eax + 0xc]
call eax
add eax, 0x10
mov dword [ebp + 0xc], eax
push str.NAdministrators
lea eax, [ebp + 0xc]
mov byte [ebp - 4], 0x1f
push str.BUILTI_s
push eax
call fcn.00420260
mov eax, dword [ebp - 0x4c]
add esp, 0xc
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x48]
push eax
call fcn.00482290
mov byte [ebp - 4], 0x20
mov eax, dword [eax]
test eax, eax
jne 0x4816b0
xor esi, esi
mov dword [ebp - 0x30], esi
mov byte [ebp - 4], 0x21
mov ecx, dword [ebp - 0x34]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x20]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [ebp - 4], 0x1f
or eax, 0xffffffff
mov edx, dword [ebp - 0x48]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x48169c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 0x4c]
mov dword [ebp - 0x30], ecx
test edi, edi
jne 0x4816c2
xor esi, esi
mov dword [ebp - 0x48], esi
jmp 0x4816da
push eax
call edi
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x481ac1
jmp 0x481668
mov eax, dword [sym.imp.OLEAUT32.dll_SysReAllocString]
push edi
call eax
mov esi, eax
mov dword [ebp - 0x48], esi
test esi, esi
je 0x481a7b
mov ecx, dword [ebp - 0x30]
mov byte [ebp - 4], 0x22
mov eax, dword [ecx]
push esi
push ecx
call dword [eax + 0x40]
push esi
mov byte [ebp - 4], 0x1f
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x4c]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x48170f
mov dword [ebp - 0x3c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x44], 0
mov byte [ebp - 4], 0x23
lea edx, [ebp - 0x44]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
test eax, eax
jns 0x481749
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x48173c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp + 0xc]
call fcn.004031c0
jmp 0x4815d0
mov eax, dword [ebp - 0x44]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebp - 0x44]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov eax, dword [ebp - 0x44]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x50]
mov eax, dword [ebp - 0x44]
push str.PT0S
mov dword [ebp - 0x48], eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp - 0x30], esi
test esi, esi
je 0x481a7b
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x48]
push esi
push ecx
mov eax, dword [ecx]
call dword [eax + 0x70]
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [ebp - 0x54], 0
mov byte [ebp - 4], 0x25
lea edx, [ebp - 0x54]
mov eax, dword [ebp - 0x44]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x9c]
test eax, eax
js 0x4817c7
mov eax, dword [ebp - 0x54]
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov ecx, dword [ebp - 0x44]
test ecx, ecx
je 0x4817db
mov dword [ebp - 0x44], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp - 0x58], 0
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0x6c]
xorps xmm0, xmm0
push eax
movups xmmword [ebp - 0x6c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x6c]
lea eax, [ebp - 0x7c]
push eax
movups xmmword [ebp - 0xcc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x7c], xmm0
call esi
movups xmm0, xmmword [ebp - 0x7c]
lea eax, [ebp - 0x8c]
push eax
movups xmmword [ebp - 0xbc], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x8c], xmm0
call esi
mov byte [ebp - 4], 0x29
movups xmm0, xmmword [ebp - 0x8c]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x24]
mov dword [ebp - 0x48], edx
movups xmmword [ebp - 0xac], xmm0
test eax, eax
jne 0x481851
xor esi, esi
mov dword [ebp + 8], esi
jmp 0x481868
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
mov dword [ebp + 8], esi
test esi, esi
je 0x481acb
mov edx, dword [ebp - 0x48]
mov byte [ebp - 4], 0x2a
lea eax, [ebp - 0x58]
movups xmm0, xmmword [ebp - 0xcc]
push eax
mov ecx, dword [edx]
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 - 0xbc]
movups xmmword [eax], xmm0
mov eax, esp
movups xmm0, xmmword [ebp - 0xac]
push 6
push dword [ebp - 0x14]
movups xmmword [eax], xmm0
push esi
push edx
call dword [ecx + 0x44]
push esi
mov dword [ebp + 8], eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x8c]
push eax
call esi
lea eax, [ebp - 0x7c]
push eax
call esi
lea eax, [ebp - 0x6c]
push eax
call esi
mov byte [ebp - 4], 0x25
cmp dword [ebp + 8], 0
mov eax, dword [ebp - 0x58]
jge 0x481916
test eax, eax
je 0x4818e7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x4818f8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x481909
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp + 0xc]
call fcn.004031c0
jmp 0x4815d0
mov dword [ebp - 0x5c], 1
test eax, eax
je 0x481927
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x23
mov eax, dword [ebp - 0x54]
test eax, eax
je 0x481938
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x44]
test eax, eax
je 0x481949
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
or esi, 0xffffffff
mov byte [ebp - 4], 0x1e
add edi, 0xfffffff0
mov eax, esi
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x481967
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x4c]
test eax, eax
je 0x481978
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x18
mov eax, esi
mov edx, dword [ebp - 0x18]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x481996
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x4819a7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x50]
test eax, eax
je 0x4819b8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x4819c9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf
mov edx, dword [ebp - 0x2c]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x4819e5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x4819f6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x481a07
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x481a18
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 8
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x481a29
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x481a3a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x481a4b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x10]
test ecx, ecx
je 0x481a5f
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0x5c]
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.00404ae0
push 0x80004005
call fcn.00404ae0
push 0x80004005
call fcn.00404ae0
push 0x8007000e
call fcn.00404ae0
push 0x8007000e
call fcn.00404ae0
push 0x80004005
call fcn.00404ae0
push 0x80004005
call fcn.00404ae0
push 0x8007000e
call fcn.00404ae0
push 0x8007000e
call fcn.00404ae0
int3