Function at 0x40f250
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4569c8
mov eax, dword fs:[0]
push eax
sub esp, 0xdc
mov eax, dword [0x47106c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xd8], ebx
lea eax, [ebp - 0x2c]
mov dword [ebp - 0xe4], 0
push eax
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [ebp - 0x28]
lea eax, [ecx + 0x18]
push eax
push dword [ebp - 0x24]
lea eax, [ebp - 0x4c]
push ecx
push dword [ebp - 0x2c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 4]
lea eax, [ebx + 0x70]
push eax
push 0x471e70
mov dword [ebx + 0x80], ebx
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x50]
push eax
push 1
push 0
push 0x52000000
push 0
lea eax, [ebp - 0x4c]
push eax
push esi
call fcn.00402410
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410a83
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x46611c
mov ecx, esi
mov dword [ebp - 4], 0
call fcn.00401d10
test al, al
jne 0x40f33c
push 3
push 0x46611c
mov ecx, esi
call fcn.00401e30
push 0x8d
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410a8d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466124
mov ecx, esi
mov dword [ebp - 4], 1
call fcn.00401d10
test al, al
jne 0x40f39b
push 4
push 0x466124
mov ecx, esi
call fcn.00401e30
push 0x8e
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410a97
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466130
mov ecx, esi
mov dword [ebp - 4], 2
call fcn.00401d10
test al, al
jne 0x40f3fa
push 4
push 0x466130
mov ecx, esi
call fcn.00401e30
push 0x93
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410aa1
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 3
call fcn.00401d10
test al, al
jne 0x40f459
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410aab
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x46613c
mov ecx, esi
mov dword [ebp - 4], 4
call fcn.00401d10
test al, al
jne 0x40f4b5
push 5
push 0x46613c
mov ecx, esi
call fcn.00401e30
push 0x90
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410ab5
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466148
mov ecx, esi
mov dword [ebp - 4], 5
call fcn.00401d10
test al, al
jne 0x40f514
push 0xd
push 0x466148
mov ecx, esi
call fcn.00401e30
push 0x91
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410abf
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 6
call fcn.00401d10
test al, al
jne 0x40f573
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410ac9
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466164
mov ecx, esi
mov dword [ebp - 4], 7
call fcn.00401d10
test al, al
jne 0x40f5cf
push 3
push 0x466164
mov ecx, esi
call fcn.00401e30
push 0x84
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410ad3
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x46616c
mov ecx, esi
mov dword [ebp - 4], 8
call fcn.00401d10
test al, al
jne 0x40f62e
push 4
push 0x46616c
mov ecx, esi
call fcn.00401e30
push 0x83
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410add
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466178
mov ecx, esi
mov dword [ebp - 4], 9
call fcn.00401d10
test al, al
jne 0x40f68d
push 5
push 0x466178
mov ecx, esi
call fcn.00401e30
push 0x97
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410ae7
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 0xa
call fcn.00401d10
test al, al
jne 0x40f6ec
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410af1
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Merge
mov ecx, esi
mov dword [ebp - 4], 0xb
call fcn.00401d10
test al, al
jne 0x40f748
push 5
push str.Merge
mov ecx, esi
call fcn.00401e30
push 0x8c
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410afb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Unmerge
mov ecx, esi
mov dword [ebp - 4], 0xc
call fcn.00401d10
test al, al
jne 0x40f7a7
push 7
push str.Unmerge
mov ecx, esi
call fcn.00401e30
push 0x96
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b05
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 0xd
call fcn.00401d10
test al, al
jne 0x40f806
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b0f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x4661a0
mov ecx, esi
mov dword [ebp - 4], 0xe
call fcn.00401d10
test al, al
jne 0x40f862
push 0xb
push 0x4661a0
mov ecx, esi
call fcn.00401e30
push 0x8b
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b19
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x4661b8
mov ecx, esi
mov dword [ebp - 4], 0xf
call fcn.00401d10
test al, al
jne 0x40f8c1
push 0xb
push 0x4661b8
mov ecx, esi
call fcn.00401e30
push 0x8a
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b23
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x4661d0
mov ecx, esi
mov dword [ebp - 4], 0x10
call fcn.00401d10
test al, al
jne 0x40f920
push 0xb
push 0x4661d0
mov ecx, esi
call fcn.00401e30
push 0x86
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b2d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x4661e8
mov ecx, esi
mov dword [ebp - 4], 0x11
call fcn.00401d10
test al, al
jne 0x40f97f
push 0xb
push 0x4661e8
mov ecx, esi
call fcn.00401e30
push 0x85
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b37
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 0x12
call fcn.00401d10
test al, al
jne 0x40f9de
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b41
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Set_Cell_Image
mov ecx, esi
mov dword [ebp - 4], 0x13
call fcn.00401d10
test al, al
jne 0x40fa3a
push 0xe
push str.Set_Cell_Image
mov ecx, esi
call fcn.00401e30
push 0x89
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b4b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.Properties
mov ecx, esi
mov dword [ebp - 4], 0x14
call fcn.00401d10
test al, al
jne 0x40fa99
push 0xa
push str.Properties
mov ecx, esi
call fcn.00401e30
push 0x92
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b55
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push str.About
mov ecx, esi
mov dword [ebp - 4], 0x15
call fcn.00401d10
test al, al
jne 0x40faf8
push 5
push str.About
mov ecx, esi
call fcn.00401e30
push 0x87
lea ecx, [ebx + 0x50]
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0
push dword [ebx + 0x54]
call dword [sym.imp.USER32.dll_InvalidateRect]
mov ecx, dword [ebp - 0x40]
lea eax, [ecx + 0x18]
push eax
push dword [ebp - 0x24]
lea eax, [ebp - 0x5c]
push ecx
push dword [ebp - 0x2c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 4]
lea edi, [ebx + 0xd8]
lea eax, [edi + 0x20]
mov dword [ebx + 0x108], ebx
push eax
push 0x471e70
call fcn.00402280
add esp, 8
movzx eax, ax
mov ecx, edi
push eax
push 2
push 0
push 0x52000000
push 0
lea eax, [ebp - 0x5c]
push eax
push esi
call fcn.00402410
push 0
push 0xec
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b5f
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 0x16
call fcn.00401d10
test al, al
jne 0x40fbc0
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b69
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466244
mov ecx, esi
mov dword [ebp - 4], 0x17
call fcn.00401d10
test al, al
jne 0x40fc1b
push 4
push 0x466244
mov ecx, esi
call fcn.00401e30
push 0x81
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b73
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466250
mov ecx, esi
mov dword [ebp - 4], 0x18
call fcn.00401d10
test al, al
jne 0x40fc79
push 6
push 0x466250
mov ecx, esi
call fcn.00401e30
push 0x88
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0x17
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b7d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x466260
mov ecx, esi
mov dword [ebp - 4], 0x19
call fcn.00401d10
test al, al
jne 0x40fcd7
push 9
push 0x466260
mov ecx, esi
call fcn.00401e30
push 0x95
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 1
push 5
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b87
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465914
mov ecx, esi
mov dword [ebp - 4], 0x1a
call fcn.00401d10
test al, al
jne 0x40fd35
push 0
push 0x465914
mov ecx, esi
call fcn.00401e30
push 0
mov ecx, edi
mov dword [ebp - 4], 0xffffffff
call fcn.0041de90
push 0
push 0
push dword [ebx + 0xdc]
call dword [sym.imp.USER32.dll_InvalidateRect]
push 0x16
push 0xb2
push 2
push 7
lea eax, [ebp - 0x6c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 0xdc]
lea eax, [ebx + 0x180]
push eax
push 0x471de0
mov byte [ebx + 0x200], 1
mov dword [ebx + 0x1ac], ebx
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x160]
push eax
push 3
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0x6c]
push eax
push esi
call fcn.00402410
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b91
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465834
mov ecx, esi
mov dword [ebp - 4], 0x1b
call fcn.00401d10
test al, al
jne 0x40fe00
push 6
push 0x465834
mov ecx, esi
call fcn.00401e30
lea ecx, [ebx + 0x160]
mov dword [ebp - 4], 0xffffffff
call fcn.0041d4b0
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_GetDC]
mov esi, eax
mov dword [ebp - 0x1c], 0
lea eax, [ebp - 0x1c]
mov dword [ebp - 0x18], 0
push eax
push 0x410be0
push 0
push esi
mov dword [ebp - 0x14], 0
call dword [sym.imp.GDI32.dll_EnumFontFamiliesW]
push esi
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_ReleaseDC]
mov eax, dword [0x474f60]
xor esi, esi
mov edx, dword [0x474f5c]
sub eax, edx
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
sar eax, 2
test eax, eax
jle 0x40fead
nop word [eax + eax]
mov ecx, dword [edx + esi*4]
cmp dword [ecx - 0xc], 0
jl 0x410bb4
cmp word [ecx], 0x40
je 0x40fe9e
mov eax, dword [ebx + 0x184]
test eax, eax
je 0x40fe9e
push ecx
push 0
push 0x180
push eax
call edi
mov edx, dword [0x474f5c]
mov eax, dword [0x474f60]
inc esi
sub eax, edx
sar eax, 2
cmp esi, eax
jl 0x40fe70
push 0x16
push 0xee
push 2
push 0xb6
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 0xdc]
lea eax, [ebx + 0x224]
push eax
push 0x471de0
mov byte [ebx + 0x2a4], 0
mov dword [ebx + 0x250], ebx
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x204]
push eax
push 4
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0x7c]
push eax
push esi
call fcn.00402410
push ecx
mov esi, esp
mov dword [ebp - 0xc0], esi
call fcn.00402120
mov ecx, eax
test ecx, ecx
je 0x410b9b
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [esi], eax
push 0x465e34
mov ecx, esi
mov dword [ebp - 4], 0x1c
call fcn.00401d10
test al, al
jne 0x40ff5b
push 1
push 0x465e34
mov ecx, esi
call fcn.00401e30
lea ecx, [ebx + 0x204]
mov dword [ebp - 4], 0xffffffff
call fcn.0041d4b0
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x466078
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x465e34
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x46607c
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x466080
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x466088
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x466090
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x466098
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660a0
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660a8
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660b0
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660b8
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660c0
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660c8
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660d0
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660d8
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660e0
push 0
push 0x180
push eax
call edi
mov eax, dword [ebx + 0x228]
test eax, eax
je 0x410146
push 0x4660e8
push 0
push 0x180
push eax
call edi
push 0x17
push 0x160
push 1
push 0x13d
lea eax, [ebp - 0x8c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 0xdc]
lea eax, [ebx + 0x2c8]
push eax
push 0x471d50
mov dword [ebx + 0x2fc], ebx
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x2a8]
push eax
push 5
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0x8c]
push eax
push esi
call fcn.00402410
push 0
push 0
push dword [ebx + 0x2ac]
call dword [sym.imp.USER32.dll_InvalidateRect]
push 0x17
push 0x185
push 1
push 0x162
lea eax, [ebp - 0x9c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
mov esi, dword [ebx + 0xdc]
lea eax, [ebx + 0x384]
push eax
push 0x471cc0
mov dword [ebx + 0x3b8], ebx
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x364]
push eax
push 6
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0x9c]
push eax
push esi
call fcn.00402410
push 0
push 0
push dword [ebx + 0x368]
call dword [sym.imp.USER32.dll_InvalidateRect]
push 0x17
push 0x1aa
push 1
push 0x187
lea eax, [ebp - 0xac]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
lea eax, [ebx + 0x440]
mov dword [ebx + 0x474], ebx
push eax
mov dword [ebx + 0x4c4], 1
mov esi, dword [ebx + 0xdc]
push 0x471c30
call fcn.00402280
add esp, 8
movzx eax, ax
push eax
push 7
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0xac]
push eax
push esi
lea ecx, [ebx + 0x420]
call fcn.00402410
lea eax, [ebp - 0xc4]
push eax
push 0
push 0xffffff
call dword [sym.imp.OLEAUT32.dll_OleLoadPictureFile]
mov eax, dword [ebp - 0xc4]
mov esi, dword [sym.imp.USER32.dll_InvalidateRect]
push 0
push 0
push dword [ebx + 0x424]
mov dword [ebx + 0x4cc], eax
call esi
push 0
push 0
push dword [ebx + 0x424]
call esi
push 0x17
push 0x1cf
push 1
push 0x1ac
lea eax, [ebp - 0xbc]
push eax
call dword [sym.imp.USER32.dll_SetRect]
push dword [ebp - 0xc0]
lea eax, [ebx + 0x5a0]
mov dword [ebx + 0x5d4], ebx
push eax
mov dword [ebx + 0x624], 2
mov esi, dword [ebx + 0xdc]
push 0x471c30
call fcn.00402280
add esp, 8
movzx eax, ax
lea ecx, [ebx + 0x580]
push eax
push 8
push 0
push 0x50000000
push 0x465914
lea eax, [ebp - 0xbc]
push eax
push esi
call fcn.00402410
push 0
push 0
push dword [ebx + 0x584]
call dword [sym.imp.USER32.dll_InvalidateRect]
call fcn.0041b670
mov ecx, dword [ebp - 0x20]
mov eax, dword [ebp - 0x50]
sub ecx, dword [ebx + 0x6f0]
cmp eax, ecx
cmovg ecx, eax
push ecx
push dword [ebp - 0x24]
push eax
push 0
lea eax, [ebp - 0x3c]
push eax
call dword [sym.imp.USER32.dll_SetRect]
mov eax, dword [ebp - 0x30]
mov edx, dword [ebp - 0x38]
sub eax, edx
mov ecx, dword [ebp - 0x3c]
push 0
push dword [0x473f84]
push 0xa
push dword [ebx + 4]
push eax
mov eax, dword [ebp - 0x34]
sub eax, ecx
push eax
push edx
push ecx
push 0x52000000
push 0x465914
push str.AtlAxWinLic140
push 0
call dword [sym.imp.USER32.dll_CreateWindowExW]
xor esi, esi
mov dword [ebx + 0x6e4], eax
mov dword [ebp - 0xd4], esi
mov dword [ebp - 4], 0x1d
mov dword [ebp - 0xc8], esi
push esi
push esi
mov byte [ebp - 4], 0x1f
push dword [0x474ee4]
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
xor ecx, ecx
test edi, edi
mov dword [ebp - 0xc0], edi
mov eax, 0x80004005
cmovne eax, ecx
mov dword [ebp - 0xcc], eax
je 0x410420
mov eax, dword [edi]
lea ecx, [ebp - 0xc8]
push ecx
push 0x4670f8
push edi
call dword [eax]
mov dword [ebp - 0xcc], eax
mov byte [ebp - 4], 0x1e
test edi, edi
je 0x41042e
mov ecx, dword [edi]
push edi
call dword [ecx + 8]
cmp dword [ebp - 0xcc], 0
jge 0x410473
mov edx, dword [ebx + 0x6e4]
lea eax, [ebp - 0xd4]
push 0
sub esp, 8
mov ecx, str.EF5E1653_275C_4AF4_8E65_5AFF22C03174
push eax
push 0
push 0
call fcn.0041b280
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x41046b
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov esi, dword [ebp - 0xd4]
jmp 0x4104ec
mov dword [ebp - 0xd0], 0
push 0
push 0
push 0x459480
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0xd0]
mov eax, dword [ebp - 0xc8]
push edx
push 0
push dword [ebx + 0x6e4]
mov ecx, dword [eax]
push str.EF5E1653_275C_4AF4_8E65_5AFF22C03174
push eax
call dword [ecx + 0x28]
test eax, eax
js 0x4104c4
mov esi, dword [ebp - 0xd0]
xor eax, eax
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0xd4], esi
jmp 0x4104ca
mov eax, dword [ebp - 0xd0]
mov byte [ebp - 4], 0x1e
test eax, eax
je 0x4104d8
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov byte [ebp - 4], 0x1d
mov eax, dword [ebp - 0xc8]
test eax, eax
je 0x4104ec
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test esi, esi
je 0x410a2c
lea edx, [ebx + 0x24]
cmp dword [edx + 0x28], 0xfefefefe
lea eax, [edx + 0x28]
jne 0x410ba5
push eax
push 0x46580c
mov ecx, esi
call fcn.00417560
mov eax, dword [ebx + 0x6e0]
lea edi, [ebx + 0x6e0]
mov dword [ebp - 0xc0], edi
mov dword [ebp - 0xc4], eax
cmp eax, esi
je 0x410555
mov eax, dword [esi]
push edi
push 0x4664cc
push esi
call dword [eax]
test eax, eax
jns 0x410545
mov dword [edi], 0
mov ecx, dword [ebp - 0xc4]
test ecx, ecx
je 0x410555
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
push ecx
push str.SOFTWAREFlexCell_TechnologiesFlexCell_for_ActiveX
lea ecx, [ebp - 0xd0]
mov byte [ebp - 4], 0x21
call fcn.0041ead0
mov eax, dword [ebp - 0xd0]
add esp, 8
mov dword [ebp - 0xe4], 1
cmp dword [eax - 0xc], 0x1d
je 0x410654
push ecx
push str.SOFTWAREWOW6432NodeFlexCell_TechnologiesFlexCell_for_ActiveX
lea ecx, [ebp - 0xe8]
call fcn.0041ead0
add esp, 8
mov byte [ebp - 4], 0x22
mov edx, dword [eax]
lea ecx, [edx - 0x10]
mov dword [ebp - 0xc4], ecx
lea eax, [edx - 0x10]
mov ecx, dword [ebp - 0xd0]
add ecx, 0xfffffff0
mov dword [ebp - 0xc8], ecx
cmp eax, ecx
je 0x41062c
cmp dword [ecx + 0xc], 0
lea ebx, [ecx + 0xc]
mov dword [ebp - 0xcc], ebx
mov ebx, dword [ebp - 0xd8]
jl 0x41061d
mov eax, dword [eax]
cmp eax, dword [ecx]
jne 0x41061d
mov ecx, dword [ebp - 0xc4]
call fcn.00404860
mov dword [ebp - 0xc4], eax
or ecx, 0xffffffff
mov eax, dword [ebp - 0xcc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x41060c
mov eax, dword [ebp - 0xc8]
push eax
mov ecx, dword [eax]
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [ebp - 0xc4]
add eax, 0x10
mov dword [ebp - 0xd0], eax
jmp 0x41062c
push dword [edx - 0xc]
lea ecx, [ebp - 0xd0]
push edx
call fcn.00401e30
mov byte [ebp - 4], 0x21
or eax, 0xffffffff
mov edx, dword [ebp - 0xe8]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x41064e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0xd0]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jle 0x41068d
push ecx
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov edx, eax
mov dword [ebp - 0xc4], edx
test edx, edx
je 0x410baf
mov eax, dword [edi]
push edx
push 0
push eax
mov ecx, dword [eax]
call dword [ecx + 0x33c]
push dword [ebp - 0xc4]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
mov eax, dword [ebx + 0x6ec]
lea edi, [ebx + 0x6ec]
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xc4], eax
cmp dword [eax - 0xc], 0
jle 0x4109ae
movzx eax, word [eax]
xor edi, edi
mov ecx, eax
test ax, ax
je 0x410763
mov ebx, dword [ebp - 0xc4]
nop dword [eax]
push ecx
call fcn.0044094e
add esp, 4
test eax, eax
je 0x4106e8
test edi, edi
mov eax, ebx
cmovne eax, edi
mov edi, eax
jmp 0x4106ea
xor edi, edi
movzx eax, word [ebx + 2]
add ebx, 2
mov ecx, eax
test ax, ax
jne 0x4106d0
mov ebx, dword [ebp - 0xd8]
test edi, edi
je 0x410763
mov eax, dword [ebx + 0x6ec]
sub edi, eax
sar edi, 1
mov dword [ebp - 0xc4], eax
js 0x410bb4
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, edi
or eax, ecx
jge 0x410743
push edi
lea ecx, [ebx + 0x6ec]
call fcn.004027e0
mov ecx, dword [ebx + 0x6ec]
lea eax, [ebx + 0x6ec]
jmp 0x41074f
mov ecx, dword [ebp - 0xc4]
lea eax, [ebx + 0x6ec]
cmp edi, dword [ecx - 8]
jg 0x410bb4
mov dword [ecx - 0xc], edi
xor ecx, ecx
mov eax, dword [eax]
mov word [eax + edi*2], cx
mov edi, dword [ebx + 0x6ec]
movzx eax, word [edi]
push eax
call fcn.0044094e
add esp, 4
test eax, eax
je 0x410794
nop dword [eax]
movzx eax, word [edi + 2]
add edi, 2
push eax
call fcn.0044094e
add esp, 4
test eax, eax
jne 0x410780
mov eax, dword [ebx + 0x6ec]
mov dword [ebp - 0xc8], eax
cmp edi, eax
je 0x410860
mov ecx, dword [eax - 0xc]
sub edi, eax
sar edi, 1
mov dword [ebp - 0xcc], ecx
test ecx, ecx
js 0x410bbe
mov ecx, 1
sub ecx, dword [eax - 4]
mov eax, dword [eax - 8]
sub eax, dword [ebp - 0xcc]
or eax, ecx
jge 0x4107f1
push dword [ebp - 0xcc]
lea ecx, [ebx + 0x6ec]
call fcn.004027e0
mov eax, dword [ebx + 0x6ec]
mov dword [ebp - 0xc8], eax
jmp 0x4107f7
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax - 0xc]
lea edx, [eax + edi*2]
mov eax, ecx
sub eax, edi
mov dword [ebp - 0xc4], eax
add eax, eax
mov dword [ebp - 0xcc], eax
add eax, 2
push eax
push edx
lea eax, [ecx*2 + 2]
push eax
push dword [ebp - 0xc8]
call fcn.00404c70
mov eax, dword [ebp - 0xc4]
add esp, 0x10
test eax, eax
js 0x410bb4
mov ecx, dword [ebx + 0x6ec]
lea edi, [ebx + 0x6ec]
cmp eax, dword [ecx - 8]
jg 0x410bb4
mov dword [ecx - 0xc], eax
xor edx, edx
mov eax, dword [edi]
mov ecx, dword [ebp - 0xcc]
mov word [ecx + eax], dx
jmp 0x410866
lea edi, [ebx + 0x6ec]
mov edx, dword [edi]
mov ecx, dword [edx - 0xc]
mov dword [ebp - 0xc4], ecx
test ecx, ecx
js 0x410bc8
mov eax, 1
sub eax, dword [edx - 4]
mov dword [ebp - 0xcc], eax
mov eax, dword [edx - 8]
sub eax, ecx
or eax, dword [ebp - 0xcc]
jge 0x4108a4
push ecx
mov ecx, edi
call fcn.004027e0
mov edx, dword [edi]
mov ecx, dword [ebp - 0xc4]
lea ebx, [edx + ecx*2]
mov eax, edx
mov dword [ebp - 0xc8], ebx
cmp edx, ebx
mov ebx, dword [ebp - 0xd8]
jae 0x410918
mov edi, dword [ebp - 0xc8]
nop
cmp word [edx], 0x22
lea ecx, [edx + 2]
mov dword [ebp - 0xcc], ecx
je 0x410906
lea ecx, [eax + 2]
xor edi, edi
mov dword [ebp - 0xdc], ecx
cmp eax, ecx
je 0x4108fa
nop
cmp edi, 1
jae 0x4108fa
mov cx, word [edx]
inc edi
mov word [eax], cx
add edx, 2
add eax, 2
cmp eax, dword [ebp - 0xdc]
jne 0x4108e0
mov edi, dword [ebp - 0xc8]
mov ecx, dword [ebp - 0xcc]
mov edx, ecx
cmp ecx, edi
jb 0x4108c0
mov ecx, dword [ebp - 0xc4]
lea edi, [ebx + 0x6ec]
sub edx, eax
xor ebx, ebx
sar edx, 1
sub ecx, edx
mov word [eax], bx
mov ebx, dword [ebp - 0xd8]
js 0x410bb4
mov eax, dword [edi]
cmp ecx, dword [eax - 8]
jg 0x410bb4
mov dword [eax - 0xc], ecx
xor edx, edx
mov eax, dword [edi]
mov word [eax + ecx*2], dx
push dword [edi]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x41099b
test al, 0x10
jne 0x41099b
mov eax, dword [edi]
push dword [eax - 0xc]
push eax
call dword [sym.imp.OLEAUT32.dll_SysReAllocStringLen]
mov ecx, eax
mov dword [ebp - 0xdc], ecx
test ecx, ecx
je 0x410bd2
mov eax, dword [ebx + 0x6e0]
lea edi, [ebp - 0xe0]
push edi
push ecx
push eax
mov edx, dword [eax]
call dword [edx + 0x330]
push dword [ebp - 0xdc]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
lea edi, [ebx + 0x6ec]
cmp word [ebp - 0xe0], 0xffff
jne 0x4109ae
mov ecx, ebx
call fcn.00411b00
jmp 0x410a08
push 0
push 0x465914
mov ecx, edi
call fcn.00401e30
mov ebx, dword [ebp - 0xc0]
push 0
mov eax, dword [ebx]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebx]
push 0x33
push eax
mov ecx, dword [eax]
call dword [ecx + 0x224]
mov eax, dword [ebx]
push 0xb
push eax
mov ecx, dword [eax]
call dword [ecx + 0xb4]
mov eax, dword [ebx]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x130]
mov eax, dword [ebx]
push 0xffffffffffffffff
push eax
mov ecx, dword [eax]
call dword [ecx + 0x40]
mov eax, dword [ebx]
push eax
mov ecx, dword [eax]
call dword [ecx + 0x338]
mov byte [ebp - 4], 0x1d
or eax, 0xffffffff
mov edx, dword [ebp - 0xd0]
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x410a52
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x410a52
push 0x10
push str.Error
push str.Can_not_create_control.
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_DestroyWindow]
push 0
call dword [sym.imp.USER32.dll_PostQuitMessage]
mov dword [ebp - 4], 0xffffffff
test esi, esi
je 0x410a63
mov eax, dword [esi]
push esi
call dword [eax + 8]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004360ea
mov esp, ebp
pop ebp
ret 0x10
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
push 0x80004005
call fcn.004028d0
call fcn.00402790
push 0x80070057
call fcn.004028d0
push 0x80070057
call fcn.004028d0
push 0x80070057
call fcn.004028d0
call fcn.00402790
int3