Function at 0x579af3
Capabilities:
Schedule task via itaskservice

Disassembly:
push 0xc0
mov eax, 0x58ec3b
call fcn.00532017
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 0x5bd6d4
push 1
push ebx
push 0x5bd8e4
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [esi], eax
test eax, eax
js 0x57a7ff
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 0x57a7ff
mov dword [ebp - 0x18], ebx
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x24]
mov edi, dword [ebp - 0x3c]
push 0x5c5388
call fcn.00414375
mov byte [ebp - 4], 6
mov eax, dword [eax]
test eax, eax
je 0x579c3d
mov ecx, dword [eax]
jmp 0x579c3f
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 0x579c93
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x579c93
test edi, edi
je 0x579c93
cmp dword [edi], eax
je 0x579c77
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579c89
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x579ca0
mov byte [ebp - 4], 7
jmp 0x57a7f2
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp - 0x18]
cmp dword [eax + 0x14], 8
jb 0x579cae
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.00414375
mov byte [ebp - 4], 8
mov ecx, dword [eax]
test ecx, ecx
je 0x579cc5
mov ecx, dword [ecx]
jmp 0x579cc7
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 0x579d12
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x579d12
test edi, edi
je 0x579d12
cmp dword [edi], eax
je 0x579cf6
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579d08
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
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 0x579d47
mov byte [ebp - 4], 0xa
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579d3e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb
jmp 0x57a7f2
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 0x579d8c
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x579d72
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579d83
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xf
jmp 0x57a7f2
mov eax, dword [ebp - 0x50]
mov edi, dword [ebp - 0x20]
cmp dword [eax + 0x14], 8
jb 0x579d9a
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.00414375
mov byte [ebp - 4], 0x10
mov ecx, dword [eax]
test ecx, ecx
je 0x579db1
mov ecx, dword [ecx]
jmp 0x579db3
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 0x579e03
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x579e03
test edi, edi
je 0x579e03
cmp dword [edi], eax
je 0x579de7
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579df9
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x579e32
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x579e18
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x12
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579e29
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x13
jmp 0x57a7f2
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.00414375
mov byte [ebp - 4], 0x14
mov edx, dword [eax]
test edx, edx
je 0x579e5f
mov edx, dword [edx]
jmp 0x579e61
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 0x579eb4
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x579eb4
test edi, edi
je 0x579eb4
cmp dword [edi], eax
je 0x579e98
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x579eaa
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
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 0x579f23
mov byte [ebp - 4], 0x16
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x579ef8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x17
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x579f09
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x18
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579f1a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x19
jmp 0x57a7f2
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 0x579f70
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x579f45
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1b
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x579f56
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1c
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579f67
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1d
jmp 0x57a7f2
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 0x579fef
mov byte [ebp - 4], 0x1f
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x579fb3
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x579fc4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x21
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x579fd5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x22
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x579fe6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x23
jmp 0x57a7f2
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 0x57a069
mov byte [ebp - 4], 0x5f
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a01c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x60
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a02d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x61
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a03e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x62
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a04f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x63
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a060
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x64
jmp 0x57a7f2
mov dword [ebp - 0x24], ebx
mov byte [ebp - 4], 0x65
lea edx, [ebp - 0x24]
mov eax, dword [ebp - 0x38]
push edx
push 0x5bd814
push eax
mov ecx, dword [eax]
call dword [ecx]
mov dword [esi], eax
test eax, eax
jns 0x57a0f6
mov byte [ebp - 4], 0x66
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a098
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x67
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a0a9
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x68
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a0ba
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x69
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a0cb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6a
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a0dc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6b
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a0ed
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6c
jmp 0x57a7f2
mov edi, dword [ebp - 0x24]
lea ecx, [ebp - 0x5c]
push str.TriggerLogonApp
call fcn.00414375
mov byte [ebp - 4], 0x6d
mov ecx, dword [eax]
test ecx, ecx
je 0x57a114
mov ecx, dword [ecx]
jmp 0x57a116
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 0x57a162
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a162
test edi, edi
je 0x57a162
cmp dword [edi], eax
je 0x57a146
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a158
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a1d5
mov byte [ebp - 4], 0x6e
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a177
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x6f
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a188
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x70
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a199
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x71
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a1aa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x72
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a1bb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x73
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a1cc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x74
jmp 0x57a7f2
mov byte [ebp - 4], 0x75
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x57a1e6
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x76
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x57a1f7
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 0x57a26f
mov byte [ebp - 4], 0x78
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a222
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x79
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a233
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7a
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a244
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7b
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a255
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7c
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a266
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x7d
jmp 0x57a7f2
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 0x57a2f9
mov byte [ebp - 4], 0x7f
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a29b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x80
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a2ac
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x81
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a2bd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x82
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a2ce
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x83
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a2df
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x84
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a2f0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x85
jmp 0x57a7f2
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 0x57a39b
mov byte [ebp - 4], 0x87
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a32c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x88
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a33d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x89
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a34e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8a
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a35f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8b
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a370
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8c
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a381
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8d
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a392
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x8e
jmp 0x57a7f2
mov eax, dword [ebp - 0x4c]
mov edi, dword [ebp - 0x30]
cmp dword [eax + 0x14], 8
jb 0x57a3a9
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x4c]
call fcn.00414375
mov byte [ebp - 4], 0x8f
mov ecx, dword [eax]
test ecx, ecx
je 0x57a3c0
mov ecx, dword [ecx]
jmp 0x57a3c2
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 0x57a412
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a412
test edi, edi
je 0x57a412
cmp dword [edi], eax
je 0x57a3f6
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a408
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a49a
mov byte [ebp - 4], 0x90
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a42b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x91
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a43c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x92
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a44d
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x93
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a45e
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x94
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a46f
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x95
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a480
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x96
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a491
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x97
jmp 0x57a7f2
mov eax, dword [ebp - 0x48]
mov edi, dword [ebp - 0x30]
cmp dword [eax + 0x14], 8
jb 0x57a4a8
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x48]
call fcn.00414375
mov byte [ebp - 4], 0x98
mov ecx, dword [eax]
test ecx, ecx
je 0x57a4bf
mov ecx, dword [ecx]
jmp 0x57a4c1
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 0x57a50d
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a50d
test edi, edi
je 0x57a50d
cmp dword [edi], eax
je 0x57a4f1
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a503
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
pop ecx
pop ecx
cmp dword [esi], ebx
jge 0x57a595
mov byte [ebp - 4], 0x99
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a526
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9a
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a537
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9b
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a548
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9c
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a559
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9d
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a56a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9e
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a57b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x9f
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a58c
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa0
jmp 0x57a7f2
mov dword [ebp - 0x40], ebx
push 0x5c4ffc
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa1
call fcn.004143de
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 0x57a5de
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x8c]
call fcn.004143de
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 0x57a60b
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x24]
call fcn.00414375
mov byte [ebp - 4], 0xa5
mov eax, dword [eax]
test eax, eax
je 0x57a622
mov ecx, dword [eax]
jmp 0x57a624
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 0x57a6b0
lea eax, [edi + 8]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
test eax, eax
jne 0x57a6ad
test edi, edi
je 0x57a6ad
cmp dword [edi], eax
je 0x57a691
push dword [edi]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov dword [edi], ebx
cmp dword [edi + 4], 0
je 0x57a6a3
push dword [edi + 4]
call fcn.0041593f
pop ecx
mov dword [edi + 4], ebx
push 0xc
push edi
call fcn.00531641
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 0x57a764
mov byte [ebp - 4], 0xa6
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x57a6e4
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa7
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a6f5
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa8
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a706
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xa9
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a717
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xaa
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a728
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xab
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a739
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xac
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a74a
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xad
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a75b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xae
jmp 0x57a7f2
mov bl, 1
mov byte [ebp - 4], 0xaf
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x57a777
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb0
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x57a788
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb1
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x57a799
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb2
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x57a7aa
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb3
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x57a7bb
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb4
mov eax, dword [ebp - 0x1c]
test eax, eax
je 0x57a7cc
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb5
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x57a7dd
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb6
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x57a7ee
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0xb7
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x57a7ff
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov dword [ebp - 4], 0xb8
mov ecx, dword [ebp - 0x3c]
test ecx, ecx
je 0x57a813
mov edx, dword [ecx]
push ecx
call dword [edx + 8]
mov al, bl
call fcn.00531fc1
ret 0x18