Function at 0x408c90
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ecx
push 0x46d398
lea eax, [esp + 4]
push eax
mov dword [esp + 8], 0x8007000e
call fcn.0043ac1b
int3
push 0xffffffffffffffff
push 0x459eb9
mov eax, dword fs:[0]
push eax
sub esp, 0xc8
mov eax, dword [0x473564]
xor eax, esp
mov dword [esp + 0xc0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x473564]
xor eax, esp
push eax
lea eax, [esp + 0xdc]
mov dword fs:[0], eax
xor ebx, ebx
push 0x150a
lea esi, [esp + 0xa0]
mov dword [esp + 0xe8], ebx
mov byte [esp + 0x1b], bl
call fcn.00408940
add esp, 4
push 0x150b
lea esi, [esp + 0x4c]
mov byte [esp + 0xe8], 1
call fcn.00408940
add esp, 4
mov ecx, 0x45fd0b
lea eax, [esp + 0x9c]
mov byte [esp + 0xe4], 2
call fcn.00403620
test eax, eax
mov esi, dword [esp + 0x60]
mov edi, dword [esp + 0x4c]
lea ebp, [ebx + 0x10]
je 0x40941a
cmp esi, ebp
mov eax, edi
jae 0x408d3b
lea eax, [esp + 0x4c]
push eax
xor eax, eax
mov ecx, 0x45fd0b
call fcn.00401040
add esp, 4
cmp eax, ebx
jne 0x408d60
xor eax, eax
cmp dword [esp + 0x5c], ebx
setne al
cmp eax, ebx
je 0x40941a
call fcn.00408a40
cmp dword [esp + 0x104], ebp
mov eax, dword [esp + 0xf0]
jae 0x408d7c
lea eax, [esp + 0xf0]
push 0x5c
push eax
call fcn.004389b0
mov esi, eax
add esp, 8
cmp esi, ebx
jne 0x408da1
cmp dword [esp + 0x60], ebp
jb 0x409427
mov eax, dword [esp + 0x4c]
push eax
jmp 0x40941f
mov ebp, 0xf
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], ebx
mov byte [esp + 0x84], bl
mov byte [esp + 0xe4], 4
mov edx, dword [esp + 0x104]
mov eax, dword [esp + 0xf0]
mov edi, 0x10
cmp edx, edi
mov ecx, eax
jae 0x408df1
lea ecx, [esp + 0xf0]
mov eax, ecx
mov edx, esi
sub edx, ecx
push edx
push eax
lea ecx, [esp + 0x6c]
call fcn.00403c00
lea ecx, [esi + 1]
mov eax, ecx
lea esi, [eax + 1]
mov dl, byte [eax]
add eax, 1
cmp dl, bl
jne 0x408e08
sub eax, esi
push eax
push ecx
lea ecx, [esp + 0x88]
call fcn.00403c00
mov dword [esp + 0x18], ebx
lea eax, [esp + 0x18]
push eax
push 0x45d34c
push 5
push ebx
push 0x45d33c
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, ebx
je 0x408ee3
mov byte [esp + 0xe4], 4
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x408e5d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [esp + 0x98], edi
jb 0x408e76
mov eax, dword [esp + 0x84]
push eax
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x7c], edi
mov dword [esp + 0x98], ebp
mov dword [esp + 0x94], ebx
mov byte [esp + 0x84], bl
jb 0x408e9e
mov ecx, dword [esp + 0x68]
push ecx
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x60], edi
mov dword [esp + 0x7c], ebp
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
jb 0x408ebd
mov edx, dword [esp + 0x4c]
push edx
call fcn.0043870c
add esp, 4
cmp dword [esp + 0xb4], edi
mov dword [esp + 0x60], ebp
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
jb 0x409450
mov eax, dword [esp + 0xa0]
push eax
jmp 0x409448
mov dword [esp + 0x24], ebx
mov byte [esp + 0xe4], 6
cmp dword [esp + 0x7c], edi
mov eax, dword [esp + 0x68]
jae 0x408efd
lea eax, [esp + 0x68]
push eax
mov word [esp + 0x38], 8
call fcn.00455280
mov dword [esp + 0x3c], eax
mov byte [esp + 0xe4], 7
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x18]
mov esi, dword [edx]
lea ecx, [esp + 0x24]
push ecx
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov edi, dword [esp + 0x4c]
mov dword [ecx + 4], edi
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x54]
mov dword [ecx + 0xc], eax
mov ecx, dword [esi + 0x24]
push edx
call ecx
lea edx, [esp + 0x34]
push edx
mov esi, eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp esi, ebx
je 0x409013
mov byte [esp + 0xe4], 5
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x408f70
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 4
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x408f88
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov esi, 0x10
cmp dword [esp + 0x98], esi
jb 0x408fa6
mov eax, dword [esp + 0x84]
push eax
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x7c], esi
mov byte [esp + 0x84], bl
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebp
jb 0x408fce
mov ecx, dword [esp + 0x68]
push ecx
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x60], esi
mov byte [esp + 0x68], bl
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ebp
jb 0x408fed
mov edx, dword [esp + 0x4c]
push edx
call fcn.0043870c
add esp, 4
mov dword [esp + 0x60], ebp
cmp dword [esp + 0xb4], esi
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
jb 0x409450
mov eax, dword [esp + 0xa0]
push eax
jmp 0x409448
mov dword [esp + 0x28], ebx
mov byte [esp + 0xe4], 8
cmp dword [esp + 0x98], 0x10
mov edi, dword [esp + 0x24]
jb 0x409050
mov eax, dword [esp + 0x84]
cmp eax, ebx
je 0x409059
push eax
call fcn.00408560
mov esi, eax
add esp, 4
cmp esi, ebx
mov dword [esp + 0x1c], esi
jne 0x40905f
jmp 0x4085d0
lea eax, [esp + 0x84]
jmp 0x409038
xor esi, esi
mov dword [esp + 0x1c], esi
lea edx, [esp + 0x28]
push edx
mov byte [esp + 0xe8], 9
mov ecx, dword [edi]
mov eax, dword [ecx + 0x30]
push esi
push edi
call eax
push esi
mov edi, eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp edi, ebx
je 0x4090a3
mov byte [esp + 0xe4], 6
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x408f58
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x408f58
mov dword [esp + 0x2c], ebx
mov byte [esp + 0xe4], 0xa
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
lea edx, [esp + 0x2c]
push edx
push eax
mov eax, dword [ecx + 0x58]
call eax
cmp eax, ebx
je 0x409157
mov byte [esp + 0xe4], 8
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x4090e0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 6
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x4090f8
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 5
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x409110
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 4
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x409128
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [esp + 0x80]
call fcn.004035b0
lea ecx, [esp + 0x64]
call fcn.004035b0
lea ecx, [esp + 0x48]
call fcn.004035b0
lea ecx, [esp + 0x9c]
call fcn.004035b0
jmp 0x409450
mov eax, dword [esp + 0x2c]
lea edx, [esp + 0x30]
mov dword [esp + 0x30], ebx
mov ecx, dword [eax]
push edx
push eax
mov eax, dword [ecx + 0x1c]
call eax
cmp eax, ebx
jne 0x4090c8
xor ebp, ebp
cmp dword [esp + 0x30], ebx
jle 0x409347
mov dword [esp + 0x20], ebx
mov ecx, ebp
mov word [esp + 0x34], 3
mov dword [esp + 0x3c], ecx
mov byte [esp + 0xe4], 0xc
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x2c]
mov esi, dword [edx]
lea eax, [esp + 0x20]
push eax
sub esp, 0x10
mov eax, esp
mov dword [eax], edi
mov edi, dword [esp + 0x4c]
mov dword [eax + 4], edi
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x54]
push edx
mov edx, dword [esi + 0x28]
mov dword [eax + 0xc], ecx
call edx
mov esi, eax
lea eax, [esp + 0x34]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp esi, ebx
jne 0x40932f
mov dword [esp + 0x1c], ebx
mov byte [esp + 0xe4], 0xd
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
lea edx, [esp + 0x1c]
push edx
push eax
mov eax, dword [ecx + 0x24]
call eax
cmp eax, ebx
jne 0x409324
mov ecx, dword [esp + 0x1c]
push ecx
lea edi, [esp + 0xbc]
call fcn.00414530
add esp, 4
mov byte [esp + 0xe4], 0xe
cmp dword [esp + 0x60], 0x10
mov ecx, dword [esp + 0x4c]
jae 0x40922b
lea ecx, [esp + 0x4c]
mov esi, dword [esp + 0xd0]
cmp esi, 0x10
mov edi, dword [esp + 0xbc]
mov eax, edi
jae 0x409247
lea eax, [esp + 0xbc]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x409267
cmp dl, bl
je 0x409263
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x409267
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x409247
xor eax, eax
jmp 0x40926c
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x409313
cmp dword [esp + 0xb4], 0x10
mov ecx, dword [esp + 0xa0]
jae 0x40928c
lea ecx, [esp + 0xa0]
cmp esi, 0x10
mov eax, edi
jae 0x4092a0
lea eax, [esp + 0xbc]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4092c0
cmp dl, bl
je 0x4092bc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4092c0
add eax, 2
add ecx, 2
cmp dl, bl
jne 0x4092a0
xor eax, eax
jmp 0x4092c5
sbb eax, eax
sbb eax, 0xffffffff
cmp eax, ebx
je 0x409307
lea ecx, [esp + 0xb8]
call fcn.004035b0
mov edx, dword [esp + 0x1c]
push edx
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [esp + 0xe4], 0xa
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x4092f8
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
add ebp, 1
cmp ebp, dword [esp + 0x30]
jl 0x409180
jmp 0x409347
mov eax, dword [esp + 0x20]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x28]
push eax
call edx
lea ecx, [esp + 0xb8]
mov byte [esp + 0x17], 1
call fcn.004035b0
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov byte [esp + 0xe4], 0xa
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x409347
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 8
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x40935f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 6
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x409377
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 5
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x40938f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov byte [esp + 0xe4], 4
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4093a7
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov esi, 0x10
cmp dword [esp + 0x98], esi
jb 0x4093c5
mov eax, dword [esp + 0x84]
push eax
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x7c], esi
mov edi, 0xf
mov dword [esp + 0x98], edi
mov dword [esp + 0x94], ebx
mov byte [esp + 0x84], bl
jb 0x4093f2
mov ecx, dword [esp + 0x68]
push ecx
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x60], esi
mov dword [esp + 0x7c], edi
mov dword [esp + 0x78], ebx
mov byte [esp + 0x68], bl
jb 0x409411
mov edx, dword [esp + 0x4c]
push edx
call fcn.0043870c
add esp, 4
mov dword [esp + 0x60], edi
jmp 0x408ff1
cmp esi, ebp
jb 0x409427
push edi
call fcn.0043870c
add esp, 4
cmp dword [esp + 0xb4], ebp
mov byte [esp + 0x4c], bl
mov dword [esp + 0x5c], ebx
mov dword [esp + 0x60], 0xf
jb 0x409450
mov ecx, dword [esp + 0xa0]
push ecx
call fcn.0043870c
add esp, 4
cmp dword [esp + 0x104], 0x10
jb 0x40946a
mov edx, dword [esp + 0xf0]
push edx
call fcn.0043870c
add esp, 4
mov al, byte [esp + 0x17]
mov ecx, dword [esp + 0xdc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xc0]
xor ecx, esp
call fcn.00438866
add esp, 0xd4
ret