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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xdc
push ebx
push esi
push edi
xor esi, esi
push esi
mov dword [ebp - 0xc8], esi
call dword [sym.imp.ole32.dll_CoInitialize]
test eax, eax
jns 0x404aca
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
push esi
push esi
push esi
push 3
push 6
push esi
push esi
push 0xffffffffffffffff
push esi
call dword [sym.imp.ole32.dll_CoInitializeSecurity]
lea eax, [ebp - 8]
push eax
push 0x4cb8dc
push 1
push esi
push 0x4bb964
mov dword [ebp - 8], esi
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jns 0x404b22
mov eax, dword [ebp - 8]
cmp eax, esi
je 0x405e7e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0xc8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xb8]
push eax
call esi
mov ecx, dword [ebp - 0xb0]
mov edx, dword [ebp - 0xac]
mov edi, dword [ebp - 0xb8]
mov ebx, dword [ebp - 0xb4]
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 0xd0], ecx
mov dword [ebp - 0xcc], edx
call esi
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x50], ecx
mov ecx, dword [ebp - 0x9c]
lea edx, [ebp - 0x90]
push edx
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
call esi
mov ecx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x90]
mov edx, dword [ebp - 0x88]
mov dword [ebp - 0x6c], ecx
mov dword [ebp - 0x70], eax
mov eax, dword [ebp - 0x84]
lea ecx, [ebp - 0x80]
push ecx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], eax
call esi
mov esi, dword [ebp - 0xd0]
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov dword [eax + 4], ebx
mov dword [eax + 8], esi
mov esi, dword [ebp - 0xcc]
mov dword [eax + 0xc], esi
mov esi, dword [ebp - 0x50]
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov esi, dword [ebp - 0x4c]
mov dword [eax + 4], esi
mov esi, dword [ebp - 0x48]
mov dword [eax + 8], esi
mov esi, dword [ebp - 0x44]
mov dword [eax + 0xc], esi
mov esi, dword [ebp - 0x70]
mov ecx, dword [ebp - 8]
mov edx, dword [ecx]
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov esi, dword [ebp - 0x6c]
mov dword [eax + 4], esi
mov esi, dword [ebp - 0x68]
mov dword [eax + 8], esi
mov esi, dword [ebp - 0x64]
mov dword [eax + 0xc], esi
mov esi, dword [ebp - 0x80]
sub esp, 0x10
mov eax, esp
mov dword [eax], esi
mov esi, dword [ebp - 0x7c]
mov dword [eax + 4], esi
mov esi, dword [ebp - 0x78]
mov dword [eax + 8], esi
mov esi, dword [ebp - 0x74]
mov dword [eax + 0xc], esi
mov eax, dword [edx + 0x28]
push ecx
call eax
lea ecx, [ebp - 0x80]
mov edi, eax
push ecx
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
call esi
lea edx, [ebp - 0x90]
push edx
call esi
lea eax, [ebp - 0xa8]
push eax
call esi
lea ecx, [ebp - 0xb8]
push ecx
call esi
test edi, edi
jns 0x404c85
mov eax, dword [ebp - 8]
test eax, eax
je 0x405e7e
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0xc8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov edi, dword [ebp - 8]
xor ebx, ebx
push 0x4cb7dc
mov dword [ebp - 0x10], ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x404ca8
push 0x8007000e
call fcn.00402e50
mov ecx, dword [edi]
mov eax, dword [ecx + 0x1c]
lea edx, [ebp - 0x10]
push edx
push esi
push edi
call eax
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jge 0x404cf9
mov eax, dword [ebp - 0x10]
cmp eax, ebx
je 0x404cd1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 8]
cmp eax, ebx
je 0x405e7e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0xc8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8
mov edi, dword [ebp - 0x10]
mov dword [ebp - 0x20], ebx
cmp dword [ebp + 8], ebx
jne 0x404e14
xor esi, esi
mov ecx, dword [edi]
mov eax, dword [ecx + 0x34]
lea edx, [ebp - 0x20]
push edx
push esi
push edi
call eax
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
jl 0x404ef3
mov eax, dword [ebp - 0x20]
cmp eax, ebx
je 0x404ef3
lea edx, [ebp - 0x5c]
mov dword [ebp - 0x5c], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x4c]
call eax
test eax, eax
js 0x404ee4
mov eax, dword [ebp - 0x5c]
lea edx, [ebp - 0xc4]
mov dword [ebp - 0xc4], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
js 0x404ed2
mov eax, dword [ebp - 0xc4]
lea edx, [ebp - 0x1c]
push edx
mov dword [ebp - 0x1c], ebx
mov ecx, dword [eax]
push 1
push eax
mov eax, dword [ecx + 0x20]
call eax
test eax, eax
js 0x404ec3
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
lea edx, [ebp - 0x54]
push edx
push eax
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
js 0x404ec3
cmp dword [ebp - 0x54], ebx
jne 0x404ec3
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xc0], ebx
cmp eax, ebx
je 0x404ed2
mov ecx, dword [eax]
lea edx, [ebp - 0xc0]
push edx
push str.MbLk
push eax
mov eax, dword [ecx]
call eax
mov eax, dword [ebp - 0xc0]
cmp eax, ebx
je 0x404ec3
lea edx, [ebp - 4]
mov dword [ebp - 4], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x30]
call eax
mov eax, dword [ebp - 4]
cmp eax, ebx
jne 0x404e32
push ebx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
push 0x4cb44c
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 4], eax
cmp eax, ebx
jne 0x404e32
push 0x8007000e
call fcn.00402e50
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x404d0a
push 0x8007000e
call fcn.00402e50
lea esi, [ebp - 0xbc]
call fcn.004032d0
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 4]
add edi, 8
push edi
call fcn.00406670
test eax, eax
je 0x404e9c
mov ecx, dword [edi]
call fcn.004066a0
cmp eax, 0xffffffff
jne 0x404e9c
mov eax, 0x4cb7e0
lea esi, [ebp - 0x58]
call fcn.00403350
lea ecx, [ebp - 0xbc]
mov ebx, esi
push ecx
lea esi, [ebp - 0x34]
call fcn.004066d0
mov eax, dword [eax]
mov edx, dword [eax - 0xc]
add esp, 4
push edx
push eax
mov ebx, edi
call fcn.00404530
mov eax, esi
call fcn.004033a0
lea eax, [ebp - 0x58]
call fcn.004033a0
xor ebx, ebx
lea eax, [ebp - 0xbc]
call fcn.004033a0
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0xc0]
cmp eax, ebx
je 0x404ec3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x1c]
cmp eax, ebx
je 0x404ed2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc4]
cmp eax, ebx
je 0x404ee4
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x5c]
cmp eax, ebx
je 0x404ef3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov edi, dword [ebp - 0x10]
cmp dword [ebp + 8], ebx
jne 0x404f4c
xor esi, esi
mov ecx, dword [edi]
mov edx, dword [ecx + 0x3c]
push ebx
push esi
push edi
call edx
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 8]
lea edx, [ebp - 0xc]
push edx
mov dword [ebp - 0xc], ebx
mov ecx, dword [eax]
push ebx
push eax
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
jns 0x404f66
mov eax, dword [ebp - 0xc]
cmp eax, ebx
je 0x404f34
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x20]
cmp eax, ebx
je 0x404cc2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x404cc2
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x404efd
push 0x8007000e
call fcn.00402e50
mov eax, dword [ebp - 8]
cmp eax, ebx
je 0x404f78
mov dword [ebp - 8], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 0x14]
mov dword [ebp - 0x14], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x1c]
call eax
test eax, eax
jns 0x404f9f
mov eax, dword [ebp - 0x14]
cmp eax, ebx
je 0x404f25
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x404f25
cmp word [0x4f7110], 0
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x54], ebx
jne 0x404fc5
lea eax, [ebp - 0x34]
push eax
push 0x4f7110
mov dword [ebp - 0x34], 0x100
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov edx, dword [0x4f36ec]
mov eax, dword [edx + 0xc]
mov ecx, 0x4f36ec
call eax
lea esi, [eax + 0x10]
mov eax, 0x4f7110
shr eax, 0x10
mov dword [ebp - 4], esi
mov dword [ebp - 0x58], eax
test eax, eax
jne 0x405008
mov ecx, 0x4f7110
movzx edi, cx
call fcn.00402ee0
test eax, eax
je 0x405035
push eax
mov eax, edi
lea edi, [ebp - 4]
call fcn.004034e0
jmp 0x405032
mov eax, 0x4f7110
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405010
sub eax, edx
sar eax, 1
push 0x4f7110
lea edx, [ebp - 4]
push edx
mov ebx, eax
call fcn.00403580
mov ebx, dword [ebp - 0x54]
mov esi, dword [ebp - 4]
test esi, esi
jne 0x4050cc
xor edi, edi
mov eax, dword [ebx]
mov ecx, dword [eax + 0x28]
push edi
push ebx
call ecx
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
add esi, 0xfffffff0
lea edx, [esi + 0xc]
or eax, 0xffffffff
lock xadd dword [edx], eax
dec eax
test eax, eax
jg 0x40506b
mov ecx, dword [esi]
mov edx, dword [ecx]
mov eax, dword [edx + 4]
push esi
call eax
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0xc]
mov edi, dword [ebp - 0x14]
xor ebx, ebx
cmp eax, ebx
jne 0x4050e7
xor esi, esi
mov edx, dword [edi]
mov eax, dword [edx + 0x20]
push esi
push edi
call eax
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x14]
cmp eax, ebx
je 0x40509e
mov dword [ebp - 0x14], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 0x18]
mov dword [ebp - 0x18], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x24]
call eax
test eax, eax
mov eax, dword [ebp - 0x18]
jns 0x4050fe
cmp eax, ebx
je 0x404f8e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x404f8e
push esi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x40503f
push 0x8007000e
call fcn.00402e50
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x40507c
push 0x8007000e
call fcn.00402e50
lea edx, [ebp - 0x2c]
push edx
mov dword [ebp - 0x2c], ebx
mov ecx, dword [eax]
push 9
push eax
mov eax, dword [ecx + 0x28]
call eax
mov esi, eax
mov eax, dword [ebp - 0x18]
cmp eax, ebx
je 0x405126
mov dword [ebp - 0x18], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x2c]
cmp esi, ebx
jge 0x405151
cmp ecx, ebx
je 0x40513c
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 8]
call ecx
mov eax, dword [ebp - 0x18]
cmp eax, ebx
je 0x404f8e
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x404f8e
mov dword [ebp - 0x24], ebx
cmp ecx, ebx
je 0x4050b7
mov eax, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x24]
push edx
push 0x4cb8cc
push ecx
call eax
mov eax, dword [ebp - 0x24]
cmp eax, ebx
jne 0x40518a
mov eax, dword [ebp - 0x2c]
cmp eax, ebx
je 0x405182
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
jmp 0x4050b7
mov ecx, dword [eax]
mov edx, dword [ecx + 0x4c]
push 0xffffffffffffffff
push eax
call edx
mov edi, dword [ebp - 0x24]
push 0x4cb7e4
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x4051b2
push 0x8007000e
call fcn.00402e50
mov eax, dword [edi]
mov ecx, dword [eax + 0x24]
push esi
push edi
call ecx
push esi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp word [0x4f7310], 0
mov ebx, dword [ebp - 0x24]
mov dword [ebp - 0x54], ebx
jne 0x4051ea
lea edx, [ebp - 0x34]
push edx
push 0x4f7310
push 2
mov dword [ebp - 0x34], 0x100
call dword [sym.imp.Secur32.dll_GetUserNameExW]
mov eax, dword [0x4f36ec]
mov edx, dword [eax + 0xc]
mov ecx, 0x4f36ec
call edx
lea esi, [eax + 0x10]
mov eax, 0x4f7310
shr eax, 0x10
mov dword [ebp - 0x5c], eax
test eax, eax
mov dword [ebp - 4], esi
mov eax, 0x4f7310
jne 0x40522c
movzx edi, ax
call fcn.00402ee0
test eax, eax
je 0x405255
push eax
mov eax, edi
lea edi, [ebp - 4]
call fcn.004034e0
jmp 0x405252
lea edx, [eax + 2]
nop
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405230
sub eax, edx
sar eax, 1
push 0x4f7310
lea ecx, [ebp - 4]
push ecx
mov ebx, eax
call fcn.00403580
mov ebx, dword [ebp - 0x54]
mov esi, dword [ebp - 4]
test esi, esi
jne 0x405316
xor edi, edi
mov edx, dword [ebx]
mov eax, dword [edx + 0x5c]
push edi
push ebx
call eax
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
add esi, 0xfffffff0
lea ecx, [esi + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x40528b
mov ecx, dword [esi]
mov eax, dword [ecx]
mov edx, dword [eax + 4]
push esi
call edx
mov eax, dword [0x4f36ec]
mov edx, dword [eax + 0xc]
mov ecx, 0x4f36ec
call edx
add eax, 0x10
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + 0x10]
cdq
mov ecx, 0x3c
idiv ecx
lea edi, [ebp - 0x1c]
push edx
push eax
push str.PT_dM_dS
call fcn.00404650
mov eax, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x24]
xor ebx, ebx
add esp, 0xc
cmp eax, ebx
jne 0x405331
xor esi, esi
mov edx, dword [edi]
mov eax, dword [edx + 0x54]
push esi
push edi
call eax
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0x24]
cmp eax, ebx
je 0x4052f2
mov dword [ebp - 0x24], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp edi, ebx
jge 0x405348
lea eax, [ebp - 0x1c]
call fcn.004033a0
mov eax, dword [ebp - 0x24]
cmp eax, ebx
je 0x405173
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x405173
push esi
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x40525f
push 0x8007000e
call fcn.00402e50
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov esi, eax
cmp esi, ebx
jne 0x4052ce
push 0x8007000e
call fcn.00402e50
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 0x28]
mov dword [ebp - 0x28], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x44]
call eax
test eax, eax
mov eax, dword [ebp - 0x28]
jns 0x40536f
cmp eax, ebx
je 0x4052f6
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x4052f6
lea edx, [ebp - 0x3c]
push edx
mov dword [ebp - 0x3c], ebx
mov ecx, dword [eax]
push ebx
push eax
mov eax, dword [ecx + 0x30]
call eax
mov esi, eax
mov eax, dword [ebp - 0x28]
cmp eax, ebx
je 0x405396
mov dword [ebp - 0x28], ebx
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x3c]
cmp esi, ebx
jge 0x4053c1
cmp ecx, ebx
je 0x4053ac
mov eax, dword [ecx]
push ecx
mov ecx, dword [eax + 8]
call ecx
mov eax, dword [ebp - 0x28]
cmp eax, ebx
je 0x4052f6
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
jmp 0x4052f6
mov dword [ebp - 0x30], ebx
cmp ecx, ebx
je 0x405361
mov eax, dword [ecx]
mov eax, dword [eax]
lea edx, [ebp - 0x30]
push edx
push str.MbLk
push ecx
call eax
cmp dword [ebp - 0x30], ebx
jne 0x4053f4
mov eax, dword [ebp - 0x3c]
cmp eax, ebx
je 0x4053ec
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
jmp 0x405361
mov eax, dword [0x4f36ec]
mov edx, dword [eax + 0xc]
mov ecx, 0x4f36ec
call edx
add eax, 0x10
mov dword [ebp - 4], eax
mov eax, 0x4cb80c
test eax, 0xffff0000
jne 0x405430
mov ecx, eax
movzx edi, cx
call fcn.00402ee0
cmp eax, ebx
je 0x405443
push eax
mov eax, edi
lea edi, [ebp - 4]
call fcn.004034e0
jmp 0x405443
push 0x4cb80c
lea edx, [ebp - 4]
push edx
mov ebx, 1
call fcn.00403580
mov esi, dword [ebp + 0xc]
mov eax, dword [esi]
mov ecx, dword [eax - 0xc]
push ecx
push eax
lea ebx, [ebp - 4]
call fcn.00404530
push 1
push 0x4cb80c
call fcn.00404530
mov eax, dword [ebp - 4]
mov ebx, dword [ebp - 0x30]
test eax, eax
jne 0x40559e
xor edi, edi
mov edx, dword [ebx]
mov eax, dword [edx + 0x2c]
push edi
push ebx
call eax
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 4]
mov ebx, dword [ebp - 0x30]
test eax, eax
jne 0x4055b9
xor edi, edi
mov ecx, dword [ebx]
mov edx, dword [ecx + 0x3c]
push edi
push ebx
call edx
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [esi + 8]
mov ebx, dword [ebp - 0x30]
test eax, eax
jne 0x4055d4
xor edi, edi
mov eax, dword [ebx]
mov ecx, dword [eax + 0x34]
push edi
push ebx
call ecx
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebp - 0xc]
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x40], 0
mov edx, dword [eax]
mov edx, dword [edx + 0x3c]
push ecx
push eax
call edx
test eax, eax
jns 0x4055ef
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x4054ee
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 4]
call fcn.004033a0
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x405505
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x405514
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x405523
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x1c]
call fcn.004033a0
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x40553a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x405549
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x405558
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x405567
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x405576
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x405585
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x405594
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 8]
test eax, eax
jmp 0x404cd6
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x405471
push 0x8007000e
call fcn.00402e50
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x405491
push 0x8007000e
call fcn.00402e50
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x4054b1
push 0x8007000e
call fcn.00402e50
cmp word [0x4f7110], 0
mov esi, dword [ebp - 0x40]
jne 0x405612
lea eax, [ebp - 0x34]
push eax
push 0x4f7110
mov dword [ebp - 0x34], 0x100
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov edx, dword [0x4f36ec]
mov eax, dword [edx + 0xc]
mov ecx, 0x4f36ec
call eax
cmp dword [ebp - 0x58], 0
lea ebx, [eax + 0x10]
mov dword [ebp + 0xc], ebx
jne 0x40564c
mov ecx, 0x4f7110
movzx edi, cx
call fcn.00402ee0
test eax, eax
je 0x405676
push eax
mov eax, edi
lea edi, [ebp + 0xc]
call fcn.004034e0
jmp 0x405673
mov eax, 0x4f7110
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405654
sub eax, edx
sar eax, 1
push 0x4f7110
lea edx, [ebp + 0xc]
push edx
mov ebx, eax
call fcn.00403580
mov ebx, dword [ebp + 0xc]
test ebx, ebx
jne 0x4056c6
xor edi, edi
mov eax, dword [esi]
mov ecx, dword [eax + 0x20]
push edi
push esi
call ecx
push edi
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea eax, [ebx - 0x10]
lea edx, [eax + 0xc]
or ecx, 0xffffffff
lock xadd dword [edx], ecx
dec ecx
test ecx, ecx
jg 0x4056a8
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov ebx, dword [ebp - 0x40]
push 0x4cb810
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x4056dd
push 0x8007000e
call fcn.00402e50
push ebx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x40567c
push 0x8007000e
call fcn.00402e50
mov ecx, dword [ebx]
mov edx, dword [ecx + 0x40]
push edi
push ebx
call edx
mov esi, dword [sym.imp.OLEAUT32.dll_SysStringLen]
push edi
call esi
mov eax, dword [ebp - 0x40]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x48]
push 1
push eax
call edx
mov eax, dword [ebp - 0x30]
xor edi, edi
cmp eax, edi
je 0x405710
mov dword [ebp - 0x30], edi
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
lea edx, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x2c]
call eax
test eax, eax
mov eax, dword [ebp - 0x38]
jns 0x4057f8
cmp eax, edi
je 0x405739
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x40]
cmp eax, edi
je 0x405748
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 4]
call fcn.004033a0
mov eax, dword [ebp - 0x30]
cmp eax, edi
je 0x40575f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x3c]
cmp eax, edi
je 0x40576e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
cmp eax, edi
je 0x40577d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea eax, [ebp - 0x1c]
call fcn.004033a0
mov eax, dword [ebp - 0x24]
cmp eax, edi
je 0x405794
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x2c]
cmp eax, edi
je 0x4057a3
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
cmp eax, edi
je 0x4057b2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x14]
cmp eax, edi
je 0x4057c1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
cmp eax, edi
je 0x4057d0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x20]
cmp eax, edi
je 0x4057df
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x10]
cmp eax, edi
je 0x4057ee
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 8]
cmp eax, edi
jmp 0x404cd6
mov ecx, dword [eax]
mov edx, dword [ecx + 0x40]
push edi
push eax
call edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x48]
push edi
push eax
call edx
mov eax, dword [ebp - 0x38]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x50]
push edi
push eax
call edx
mov ebx, dword [ebp - 0x38]
push str.PT0S
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x405837
push 0x8007000e
call fcn.00402e50
mov eax, dword [ebx]
mov ecx, dword [eax + 0x70]
push edi
push ebx
call ecx
push edi
call esi
mov eax, dword [ebp - 0x38]
xor esi, esi
lea ecx, [ebp - 0x98]
mov dword [ebp - 0x98], esi
mov edx, dword [eax]
mov edx, dword [edx + 0x9c]
push ecx
push eax
call edx
test eax, eax
js 0x405873
mov eax, dword [ebp - 0x98]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x30]
push esi
push eax
call edx
mov eax, dword [ebp - 0x38]
cmp eax, esi
je 0x405885
mov dword [ebp - 0x38], esi
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov edi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 0x94], esi
call edi
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0x9c]
lea edx, [ebp - 0xb8]
push edx
mov dword [ebp - 0x68], eax
mov dword [ebp - 0x64], ecx
call edi
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], eax
cmp word [0x4f7110], si
jne 0x405916
lea ecx, [ebp - 0x34]
push ecx
push 0x4f7110
mov dword [ebp - 0x34], 0x100
call dword [sym.imp.ADVAPI32.dll_GetUserNameW]
mov edx, dword [0x4f36ec]
mov eax, dword [edx + 0xc]
mov ecx, 0x4f36ec
call eax
cmp dword [ebp - 0x58], 0
lea esi, [eax + 0x10]
mov dword [ebp + 0xc], esi
jne 0x405950
mov ecx, 0x4f7110
movzx edi, cx
call fcn.00402ee0
test eax, eax
je 0x405982
push eax
mov eax, edi
lea edi, [ebp + 0xc]
call fcn.004034e0
jmp 0x40597f
mov eax, 0x4f7110
lea edx, [eax + 2]
jmp 0x405960
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405960
sub eax, edx
sar eax, 1
push 0x4f7110
lea edx, [ebp + 0xc]
push edx
mov ebx, eax
call fcn.00403580
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x50]
xor eax, eax
push ecx
mov word [ebp - 0x50], ax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jns 0x40599c
push eax
call fcn.00402e50
mov edx, 8
push esi
mov word [ebp - 0x50], dx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x48], eax
test eax, eax
jne 0x4059d1
test esi, esi
je 0x4059d1
mov eax, 0xa
mov word [ebp - 0x50], ax
mov dword [ebp - 0x48], 0x8007000e
push 0x8007000e
call fcn.00402e50
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x7c], edx
mov dword [ebp + 0xc], ecx
test eax, eax
jne 0x405b8b
xor edi, edi
mov ecx, dword [ebp - 0x70]
lea eax, [ebp - 0x94]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [ebp - 0x6c]
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x68]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x64]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebp - 0x90]
push 3
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [ebp - 0x8c]
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x88]
mov edx, dword [ebx]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x84]
mov dword [eax + 0xc], ecx
mov ecx, dword [ebp - 0x80]
sub esp, 0x10
mov eax, esp
mov dword [eax], ecx
mov ecx, dword [ebp - 0x7c]
mov dword [eax + 4], ecx
mov ecx, dword [ebp - 0x78]
mov dword [eax + 8], ecx
mov ecx, dword [ebp - 0x74]
mov dword [eax + 0xc], ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [edx + 0x44]
push 6
push eax
push edi
push ebx
call ecx
push edi
mov ebx, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea edx, [ebp - 0x50]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esi - 0x10]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x405aa3
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [ebp - 0xb8]
push ecx
call esi
lea edx, [ebp - 0xa8]
push edx
call esi
test ebx, ebx
jns 0x405d46
mov esi, dword [sym.imp.OLEAUT32.dll_VariantClear]
lea eax, [ebp - 0xa8]
push eax
call esi
mov edx, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x80], ecx
mov ecx, dword [ebp - 0x9c]
lea edx, [ebp - 0xb8]
push edx
mov dword [ebp - 0x78], eax
mov dword [ebp - 0x74], ecx
call esi
cmp word [0x4f7310], 0
mov eax, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0xb0]
mov dword [ebp - 0x90], eax
mov eax, dword [ebp - 0xac]
mov dword [ebp - 0x8c], ecx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], eax
jne 0x405b51
lea ecx, [ebp - 0x34]
push ecx
push 0x4f7310
push 2
mov dword [ebp - 0x34], 0x100
call dword [sym.imp.Secur32.dll_GetUserNameExW]
mov edx, dword [0x4f36ec]
mov eax, dword [edx + 0xc]
mov ecx, 0x4f36ec
call eax
cmp dword [ebp - 0x5c], 0
lea esi, [eax + 0x10]
mov dword [ebp + 0xc], esi
jne 0x405ba6
mov ecx, 0x4f7310
movzx edi, cx
call fcn.00402ee0
test eax, eax
je 0x405bd2
push eax
mov eax, edi
lea edi, [ebp + 0xc]
call fcn.004034e0
jmp 0x405bcf
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
jne 0x4059fc
push 0x8007000e
call fcn.00402e50
mov eax, 0x4f7310
lea edx, [eax + 2]
mov edi, edi
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x405bb0
sub eax, edx
sar eax, 1
push 0x4f7310
lea edx, [ebp + 0xc]
push edx
mov ebx, eax
call fcn.00403580
mov esi, dword [ebp + 0xc]
lea ecx, [ebp - 0x50]
xor eax, eax
push ecx
mov word [ebp - 0x50], ax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
test eax, eax
jns 0x405bec
push eax
call fcn.00402e50
mov edx, 8
push esi
mov word [ebp - 0x50], dx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov dword [ebp - 0x48], eax
test eax, eax
jne 0x405c0b
test esi, esi
jne 0x4059b7
cmp dword [ebp + 8], 0
mov ecx, dword [ebp - 0x50]
mov edx, dword [ebp - 0x4c]
mov ebx, dword [ebp - 0x10]
mov dword [ebp - 0x70], ecx
mov ecx, dword [ebp - 0xc]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x44]
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x64], eax
mov dword [ebp + 0xc], ecx
jne 0x405c33
xor edi, edi
jmp 0x405c47
mov edx, dword [ebp + 8]
push edx
call dword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov edi, eax
test edi, edi
je 0x4059c7
lea edx, [ebp - 0x94]
push edx
mov edx, dword [ebp - 0x80]
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [ebp - 0x7c]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x78]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x74]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x90]
push 3
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [ebp - 0x8c]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x88]
mov ecx, dword [ebx]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x84]
mov ecx, dword [ecx + 0x44]
mov dword [eax + 0xc], edx
mov edx, dword [ebp - 0x70]
sub esp, 0x10
mov eax, esp
mov dword [eax], edx
mov edx, dword [ebp - 0x6c]
mov dword [eax + 4], edx
mov edx, dword [ebp - 0x68]
mov dword [eax + 8], edx
mov edx, dword [ebp - 0x64]
push 6
mov dword [eax + 0xc], edx
mov eax, dword [ebp + 0xc]
push eax
push edi
push ebx
call ecx
push edi
mov ebx, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea edx, [ebp - 0x50]
push edx
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea eax, [esi - 0x10]
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x405cee
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov esi, dword [sym.imp.OLEAUT32.dll_VariantCopy]
lea ecx, [ebp - 0xb8]
push ecx
call esi
lea edx, [ebp - 0xa8]
push edx
call esi
test ebx, ebx
jns 0x405d46
mov eax, dword [ebp - 0x94]
test eax, eax
je 0x405d1c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x98]
test eax, eax
je 0x405d2e
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x4054df
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x4054df
mov eax, dword [ebp - 0x94]
mov dword [ebp - 0xc8], 1
test eax, eax
je 0x405d62
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x98]
test eax, eax
je 0x405d74
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x38]
test eax, eax
je 0x405d83
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x40]
test eax, eax
je 0x405d92
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 4]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x405db1
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x30]
test eax, eax
je 0x405dc0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x3c]
test eax, eax
je 0x405dcf
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x28]
test eax, eax
je 0x405dde
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
lea ecx, [eax + 0xc]
or edx, 0xffffffff
lock xadd dword [ecx], edx
dec edx
test edx, edx
jg 0x405dfd
mov ecx, dword [eax]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 4]
call eax
mov eax, dword [ebp - 0x24]
test eax, eax
je 0x405e0c
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x405e1b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x18]
test eax, eax
je 0x405e2a
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x14]
test eax, eax
je 0x405e39
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0xc]
test eax, eax
je 0x405e48
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x20]
test eax, eax
je 0x405e57
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 0x10]
test eax, eax
je 0x405e66
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp - 8]
test eax, eax
je 0x405e75
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [ebp + 8]
push eax
call fcn.00406510
call dword [sym.imp.ole32.dll_CoUninitialize]
mov eax, dword [ebp - 0xc8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 8