Function at 0x579de6
Capabilities:
Schedule task via itaskservice

Disassembly:
push 0xc0
mov eax, 0x58f322
call fcn.00532159
mov dword [ebp - 0x50], ecx
mov eax, dword [ebp + 8]
xor ebx, ebx
mov esi, dword [ebp + 0x1c]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4c], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x58], esi
mov dword [ebp - 0x3c], ebx
lea eax, [ebp - 0x3c]
mov dword [ebp - 4], ebx
push eax
push 0x5be6d4
push 1
push ebx
push 0x5be8e4
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [esi], eax
test eax, eax
js 0x57aaf2
lea eax, [ebp - 0x6c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea esi, [ebp - 0x6c]
lea edi, [ebp - 0x9c]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x8c]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea esi, [ebp - 0x8c]
lea edi, [ebp - 0xac]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0x7c]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.OLEAUT32.dll_VariantClear]
lea esi, [ebp - 0x7c]
lea edi, [ebp - 0xbc]
movsd dword es:[edi], dword [esi]
lea eax, [ebp - 0xcc]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov byte [ebp - 4], 4
lea esi, [ebp - 0x9c]
sub esp, 0x10
mov eax, dword [ebp - 0x3c]
mov edi, esp
sub esp, 0x10
mov ecx, dword [eax]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0xac]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0xbc]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0xcc]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x28]
mov esi, dword [ebp - 0x58]
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov dword [esi], eax
lea eax, [ebp - 0xcc]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
lea eax, [ebp - 0x8c]
push eax
call edi
lea eax, [ebp - 0x6c]
push eax
call edi
cmp dword [esi], ebx
jl 0x57aaf2
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
mov edi, dword [ebp - 0x3c]
push 0x5c6388
call fcn.004143df
mov byte [ebp - 4], 6
mov eax, dword [eax]
test eax, eax
je 0x579f30
mov ecx, dword [eax]
jmp 0x579f32
mov ecx, ebx
mov eax, dword [edi]
lea edx, [ebp - 0x18]
push edx
push ecx
push edi
call dword [eax + 0x1c]
mov byte [ebp - 4], 5
mov edi, dword [ebp - 0x24]
mov dword [esi], eax
test edi, edi
je 0x579f86
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x579f86
test edi, edi
je 0x579f86
cmp dword [edi], eax
je 0x579f6a
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579f7c
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x579f93
mov byte [ebp - 4], 7
jmp 0x57aae5
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp - 0x18]
cmp dword [eax + 0x14], 8
jb 0x579fa1
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.004143df
mov byte [ebp - 4], 8
mov ecx, dword [eax]
test ecx, ecx
je 0x579fb8
mov ecx, dword [ecx]
jmp 0x579fba
mov ecx, ebx
mov eax, dword [edi]
push ebx
push ecx
push edi
call dword [eax + 0x3c]
mov edi, dword [ebp - 0x24]
test edi, edi
je 0x57a005
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a005
test edi, edi
je 0x57a005
cmp dword [edi], eax
je 0x579fe9
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579ffb
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
mov dword [ebp - 0x14], ebx
mov byte [ebp - 4], 9
lea edx, [ebp - 0x14]
mov eax, dword [ebp - 0x3c]
push edx
push ebx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov dword [esi], eax
test eax, eax
jns 0x57a03a
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a031
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb
jmp 0x57aae5
mov dword [ebp - 0x20], ebx
mov byte [ebp - 4], 0xc
lea edx, [ebp - 0x20]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x1c]
mov dword [esi], eax
test eax, eax
jns 0x57a07f
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a065
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a076
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf
jmp 0x57aae5
mov eax, dword [ebp - 0x50]
mov edi, dword [ebp - 0x20]
cmp dword [eax + 0x14], 8
jb 0x57a08d
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.004143df
mov byte [ebp - 4], 0x10
mov ecx, dword [eax]
test ecx, ecx
je 0x57a0a4
mov ecx, dword [ecx]
jmp 0x57a0a6
mov ecx, ebx
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x28]
mov byte [ebp - 4], 0xc
mov edi, dword [ebp - 0x24]
mov dword [esi], eax
test edi, edi
je 0x57a0f6
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a0f6
test edi, edi
je 0x57a0f6
cmp dword [edi], eax
je 0x57a0da
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a0ec
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a125
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a10b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a11c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x13
jmp 0x57aae5
mov eax, dword [ebp - 0x14]
lea edx, [ebp - 0x44]
mov dword [ebp - 0x44], ebx
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
push str.Principal
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.004143df
mov byte [ebp - 4], 0x14
mov edx, dword [eax]
test edx, edx
je 0x57a152
mov edx, dword [edx]
jmp 0x57a154
mov edx, ebx
mov eax, dword [ebp - 0x44]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x20]
mov byte [ebp - 4], 0xc
mov edi, dword [ebp - 0x24]
mov dword [esi], eax
test edi, edi
je 0x57a1a7
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a1a7
test edi, edi
je 0x57a1a7
cmp dword [edi], eax
je 0x57a18b
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a19d
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
mov eax, dword [ebp - 0x44]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
push dword [ebp - 0x44]
mov dword [esi], eax
mov eax, dword [ebp - 0x14]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov dword [ebp - 0x1c], ebx
mov byte [ebp - 4], 0x15
lea edx, [ebp - 0x1c]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x2c]
mov dword [esi], eax
test eax, eax
jns 0x57a216
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a1eb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a1fc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a20d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x19
jmp 0x57aae5
mov eax, dword [ebp - 0x1c]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x58]
mov dword [esi], eax
test eax, eax
jns 0x57a263
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a238
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a249
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a25a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1d
jmp 0x57aae5
mov eax, dword [ebp - 0x1c]
push ebx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov dword [esi], eax
mov eax, dword [ebp - 0x1c]
push ebx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x48]
mov dword [esi], eax
mov dword [ebp - 0x28], ebx
mov byte [ebp - 4], 0x1e
lea edx, [ebp - 0x28]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x24]
mov dword [esi], eax
test eax, eax
jns 0x57a2e2
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a2a6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a2b7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a2c8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a2d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x23
jmp 0x57aae5
mov dword [ebp - 0x38], ebx
mov byte [ebp - 4], 0x5e
lea edx, [ebp - 0x38]
mov eax, dword [ebp - 0x28]
push edx
push 7
push eax
mov ecx, dword [eax]
call dword [ecx + 0x28]
mov dword [esi], eax
test eax, eax
jns 0x57a35c
mov byte [ebp - 4], 0x5f
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a30f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x60
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a320
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x61
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a331
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x62
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a342
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a353
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x64
jmp 0x57aae5
mov dword [ebp - 0x24], ebx
mov byte [ebp - 4], 0x65
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x38]
push edx
push 0x5be814
push eax
mov ecx, dword [eax]
call dword [ecx]
mov dword [esi], eax
test eax, eax
jns 0x57a3e9
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a38b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x67
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a39c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x68
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a3ad
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a3be
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6a
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a3cf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a3e0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6c
jmp 0x57aae5
mov edi, dword [ebp - 0x24]
lea ecx, [ebp - 0x5c]
push str.TriggerLogonApp
call fcn.004143df
mov byte [ebp - 4], 0x6d
mov ecx, dword [eax]
test ecx, ecx
je 0x57a407
mov ecx, dword [ecx]
jmp 0x57a409
mov ecx, ebx
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x24]
mov edi, dword [ebp - 0x5c]
mov dword [esi], eax
test edi, edi
je 0x57a455
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a455
test edi, edi
je 0x57a455
cmp dword [edi], eax
je 0x57a439
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a44b
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a4c8
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a46a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6f
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a47b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a48c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x71
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a49d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a4ae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a4bf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x74
jmp 0x57aae5
mov byte [ebp - 4], 0x75
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a4d9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a4ea
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 0x2c], ebx
mov byte [ebp - 4], 0x77
lea edx, [ebp - 0x2c]
mov eax, dword [ebp - 0x14]
push edx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x44]
mov dword [esi], eax
test eax, eax
jns 0x57a562
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a515
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a526
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7a
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a537
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7b
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a548
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a559
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7d
jmp 0x57aae5
mov dword [ebp - 0x34], ebx
mov byte [ebp - 4], 0x7e
lea edx, [ebp - 0x34]
mov eax, dword [ebp - 0x2c]
push edx
push ebx
push eax
mov ecx, dword [eax]
call dword [ecx + 0x30]
mov dword [esi], eax
test eax, eax
jns 0x57a5ec
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a58e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x80
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a59f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x81
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a5b0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a5c1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x83
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a5d2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x84
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a5e3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x85
jmp 0x57aae5
mov dword [ebp - 0x30], ebx
mov byte [ebp - 4], 0x86
lea edx, [ebp - 0x30]
mov eax, dword [ebp - 0x34]
push edx
push str.MbLk
push eax
mov ecx, dword [eax]
call dword [ecx]
mov dword [esi], eax
test eax, eax
jns 0x57a68e
mov byte [ebp - 4], 0x87
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a61f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x88
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a630
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x89
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a641
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a652
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8b
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a663
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a674
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8d
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a685
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8e
jmp 0x57aae5
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x30]
cmp dword [eax + 0x14], 8
jb 0x57a69c
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x4c]
call fcn.004143df
mov byte [ebp - 4], 0x8f
mov ecx, dword [eax]
test ecx, ecx
je 0x57a6b3
mov ecx, dword [ecx]
jmp 0x57a6b5
mov ecx, ebx
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x2c]
mov byte [ebp - 4], 0x86
mov edi, dword [ebp - 0x4c]
mov dword [esi], eax
test edi, edi
je 0x57a705
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a705
test edi, edi
je 0x57a705
cmp dword [edi], eax
je 0x57a6e9
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a6fb
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a78d
mov byte [ebp - 4], 0x90
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a71e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x91
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a72f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x92
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a740
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x93
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a751
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x94
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a762
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x95
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a773
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x96
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a784
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x97
jmp 0x57aae5
mov eax, dword [ebp - 0x48]
mov edi, dword [ebp - 0x30]
cmp dword [eax + 0x14], 8
jb 0x57a79b
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x48]
call fcn.004143df
mov byte [ebp - 4], 0x98
mov ecx, dword [eax]
test ecx, ecx
je 0x57a7b2
mov ecx, dword [ecx]
jmp 0x57a7b4
mov ecx, ebx
mov eax, dword [edi]
push ecx
push edi
call dword [eax + 0x34]
mov edi, dword [ebp - 0x48]
mov dword [esi], eax
test edi, edi
je 0x57a800
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a800
test edi, edi
je 0x57a800
cmp dword [edi], eax
je 0x57a7e4
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a7f6
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a888
mov byte [ebp - 4], 0x99
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a819
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9a
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a82a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a83b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a84c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a85d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a86e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a87f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa0
jmp 0x57aae5
mov dword [ebp - 0x40], ebx
push 0x5c5ffc
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa1
call fcn.00414448
mov esi, eax
lea edi, [ebp - 0xbc]
lea eax, [ebp - 0x6c]
push eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [ebp - 0x50]
lea esi, [ebp - 0x6c]
mov byte [ebp - 4], 0xa3
lea edi, [ebp - 0xac]
movsd dword es:[edi], dword [esi]
add eax, 0x18
cmp dword [eax + 0x14], 8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jb 0x57a8d1
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x8c]
call fcn.00414448
mov byte [ebp - 4], 0xa4
lea edi, [ebp - 0x9c]
mov esi, eax
mov eax, dword [ebp - 0x54]
cmp dword [eax + 0x14], 8
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x18]
mov dword [ebp - 0x48], esi
jb 0x57a8fe
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.004143df
mov byte [ebp - 4], 0xa5
mov eax, dword [eax]
test eax, eax
je 0x57a915
mov ecx, dword [eax]
jmp 0x57a917
mov ecx, ebx
mov eax, dword [esi]
lea edx, [ebp - 0x40]
push edx
sub esp, 0x10
lea esi, [ebp - 0xbc]
mov edi, esp
push 3
movsd dword es:[edi], dword [esi]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0xac]
sub esp, 0x10
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, esp
lea esi, [ebp - 0x9c]
push 6
push dword [ebp - 0x14]
movsd dword es:[edi], dword [esi]
push ecx
push dword [ebp - 0x48]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call dword [eax + 0x44]
mov esi, dword [ebp - 0x58]
mov edi, dword [ebp - 0x24]
mov dword [esi], eax
test edi, edi
je 0x57a9a3
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a9a0
test edi, edi
je 0x57a9a0
cmp dword [edi], eax
je 0x57a984
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a996
push dword [edi + 4]
call fcn.00415a4e
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531eab
pop ecx
pop ecx
mov dword [ebp - 0x24], ebx
mov edi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [ebp - 0x8c]
push eax
call edi
lea eax, [ebp - 0x6c]
push eax
call edi
lea eax, [ebp - 0x7c]
push eax
call edi
cmp dword [esi], ebx
jge 0x57aa57
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x57a9d7
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a9e8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a9f9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa9
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57aa0a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57aa1b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xab
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57aa2c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57aa3d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xad
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57aa4e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xae
jmp 0x57aae5
mov bl, 1
mov byte [ebp - 4], 0xaf
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x57aa6a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb0
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57aa7b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb1
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57aa8c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb2
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57aa9d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb3
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57aaae
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb4
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57aabf
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb5
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57aad0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb6
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57aae1
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb7
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x57aaf2
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xb8
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x57ab06
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
mov al, bl
call fcn.00532103
ret 0x18