Function at 0x405710
Capabilities:
Inspect section memory permissions
Parse pe header

Disassembly:
push ebp
sub esp, 0x70
lea ebp, [esp - 4]
mov eax, dword [0x5cd81c]
xor eax, ebp
mov dword [ebp + 0x70], eax
push 0x34
mov eax, 0x565a57
call fcn.00514047
xor esi, esi
mov dword [ebp + 0x30], esi
mov edi, ecx
mov dword [ebp + 0x28], esi
call fcn.00405418
push str.Value
add edi, 0xf90
push str.Property
push esi
mov ecx, edi
mov dword [ebp], edi
call fcn.004892ff
xor ebx, ebx
inc ebx
push ebx
mov ecx, edi
call fcn.004893ad
push ebx
mov ecx, edi
call fcn.00489f7e
push ebx
push ebx
mov ecx, edi
call fcn.0048a29b
mov edi, 0xe4
push edi
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], esi
cmp eax, esi
je 0x4057b0
push 0x57a2f8
lea ecx, [ebp + 0x1c]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
push esi
push esi
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], bl
mov dword [ebp + 0x30], ebx
call fcn.0048a943
mov dword [ebp + 0x20], eax
jmp 0x4057b3
mov dword [ebp + 0x20], esi
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x30], 1
je 0x4057cc
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xfffffffe
add ecx, 0xfffffff0
call fcn.00401188
push edi
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 3
cmp eax, esi
je 0x405840
push 0xb
pop eax
mov word [ebp + 4], ax
xor eax, eax
mov word [ebp + 0xc], ax
or dword [ebp + 0x30], 2
lea eax, [ebp + 4]
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 4
call fcn.0048f3e9
or dword [ebp + 0x30], 4
push 0x57a2ec
lea ecx, [ebp + 0x24]
mov dword [ebp - 4], 5
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], 8
push esi
push esi
push esi
push esi
push 0x57a2b8
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x24]
push eax
mov dword [ebp - 4], 6
call fcn.0048ec31
jmp 0x405842
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 9
call fcn.0048a476
test byte [ebp + 0x30], 8
je 0x405867
mov ecx, dword [ebp + 0x24]
and dword [ebp + 0x30], 0xfffffff7
add ecx, 0xfffffff0
call fcn.00401188
test byte [ebp + 0x30], 4
mov ebx, dword [sym.imp.OLEAUT32.dll_VariantCopy]
je 0x40587d
and dword [ebp + 0x30], 0xfffffffb
lea eax, [ebp - 0x1c]
push eax
call ebx
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x30], 2
je 0x405891
and dword [ebp + 0x30], 0xfffffffd
lea eax, [ebp + 4]
push eax
call ebx
push edi
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0xa
mov ebx, str.Dialog_Frame
cmp eax, esi
je 0x4058f7
xor eax, eax
push ebx
lea ecx, [ebp + 4]
mov word [ebp + 4], ax
call fcn.0048f5f9
or dword [ebp + 0x30], 0x10
push 0x57a2a0
lea ecx, [ebp + 0x24]
mov byte [ebp - 4], 0xb
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], 0x20
push esi
push esi
push esi
push esi
push 0x57a250
lea eax, [ebp + 4]
push eax
lea eax, [ebp + 0x24]
push eax
mov dword [ebp - 4], 0xc
call fcn.0048ec31
mov edi, eax
jmp 0x4058f9
xor edi, edi
test byte [ebp + 0x30], 0x20
je 0x40590e
mov ecx, dword [ebp + 0x24]
and dword [ebp + 0x30], 0xffffffdf
add ecx, 0xfffffff0
call fcn.00401188
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x30], 0x10
je 0x405926
and dword [ebp + 0x30], 0xffffffef
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
push 1
push 0x57a248
mov ecx, edi
call fcn.00487ce9
push 1
push str.Thin
mov ecx, edi
call fcn.00487ce9
push 1
push str.Resizable
mov ecx, edi
call fcn.00487ce9
push 1
push ebx
mov ecx, edi
call fcn.00487ce9
mov ecx, dword [ebp + 0x20]
push edi
mov dword [edi + 0x64], esi
call fcn.0048a476
push 0xe4
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0xf
cmp eax, esi
je 0x4059e1
push 0x57a22c
lea ecx, [ebp + 4]
call fcn.004052cb
or dword [ebp + 0x30], 0x40
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x10
call fcn.0048f3e9
or dword [ebp + 0x30], 0x80
push 0x57a224
lea ecx, [ebp + 0x24]
mov dword [ebp - 4], 0x11
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], 0x100
push esi
push esi
push esi
push esi
push 0x57a208
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x24]
push eax
mov dword [ebp - 4], 0x12
call fcn.0048ec31
jmp 0x4059e3
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x15
call fcn.0048a476
test dword [ebp + 0x30], 0x100
je 0x405a0e
mov ecx, dword [ebp + 0x24]
and dword [ebp + 0x30], 0xfffffeff
add ecx, 0xfffffff0
call fcn.00401188
test byte [ebp + 0x30], 0x80
je 0x405a25
and dword [ebp + 0x30], 0xffffff7f
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x30], 0x40
je 0x405a3d
and dword [ebp + 0x30], 0xffffffbf
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp]
push 1
push 1
push dword [ebp + 0x20]
call fcn.0048a712
mov ebx, 0xe4
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x16
mov edi, 0x200
cmp eax, esi
je 0x405a93
push 0x57a1fc
lea ecx, [ebp + 0x1c]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push 1
push esi
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 0x17
call fcn.0048a943
mov dword [ebp + 0x20], eax
jmp 0x405a96
mov dword [ebp + 0x20], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x405ab1
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xfffffdff
add ecx, 0xfffffff0
call fcn.00401188
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x19
mov edi, 0x1000
cmp eax, esi
je 0x405b33
push 3
pop eax
mov word [ebp + 4], ax
mov dword [ebp + 0xc], 0xfa
or dword [ebp + 0x30], 0x400
lea eax, [ebp + 4]
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x1a
call fcn.0048f3e9
or dword [ebp + 0x30], 0x800
push 0x57a1f4
lea ecx, [ebp + 0x18]
mov dword [ebp - 4], 0x1b
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
push esi
push esi
push 0x57a1e4
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x18]
push eax
mov dword [ebp - 4], 0x1c
call fcn.0048ec31
mov dword [ebp + 0x24], eax
jmp 0x405b36
mov dword [ebp + 0x24], esi
test dword [ebp + 0x30], edi
je 0x405b4d
mov ecx, dword [ebp + 0x18]
and dword [ebp + 0x30], 0xffffefff
add ecx, 0xfffffff0
call fcn.00401188
test dword [ebp + 0x30], 0x800
je 0x405b67
and dword [ebp + 0x30], 0xfffff7ff
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], 0x400
je 0x405b85
and dword [ebp + 0x30], 0xfffffbff
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp + 0x24]
push 0x12c
push 0x32
push 1
call fcn.00487d32
push dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
call fcn.0048a476
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x20
mov ebx, 0x4000
mov edi, 0x8000
cmp eax, esi
je 0x405c24
push 3
pop eax
mov word [ebp + 4], ax
mov dword [ebp + 0xc], 0x96
or dword [ebp + 0x30], 0x2000
lea eax, [ebp + 4]
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x21
call fcn.0048f3e9
or dword [ebp + 0x30], ebx
push 0x57a1dc
lea ecx, [ebp + 0x18]
mov dword [ebp - 4], 0x22
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
push esi
push esi
push 0x57a1cc
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x18]
push eax
mov dword [ebp - 4], 0x23
call fcn.0048ec31
mov dword [ebp + 0x24], eax
jmp 0x405c27
mov dword [ebp + 0x24], esi
test dword [ebp + 0x30], edi
je 0x405c3e
mov ecx, dword [ebp + 0x18]
and dword [ebp + 0x30], 0xffff7fff
add ecx, 0xfffffff0
call fcn.00401188
test dword [ebp + 0x30], ebx
je 0x405c54
and dword [ebp + 0x30], 0xffffbfff
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], 0x2000
je 0x405c72
and dword [ebp + 0x30], 0xffffdfff
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp + 0x24]
push 0xc8
push 0x32
push 1
call fcn.00487d32
push dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
call fcn.0048a476
mov ecx, dword [ebp]
push 1
push 1
push dword [ebp + 0x20]
call fcn.0048a712
push 0xe4
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x27
mov ebx, 0x57a1c4
mov edi, 0x10000
cmp eax, esi
je 0x405ce3
push ebx
lea ecx, [ebp + 0x18]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp + 0x18]
push eax
mov byte [ebp - 4], 0x28
call fcn.0048a943
mov dword [ebp + 0x20], eax
jmp 0x405ce6
mov dword [ebp + 0x20], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x405d01
mov ecx, dword [ebp + 0x18]
and dword [ebp + 0x30], 0xfffeffff
add ecx, 0xfffffff0
call fcn.00401188
push 0x11
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
call fcn.0043275f
lea ecx, [ebp + 0x34]
push ecx
push 0x3c
push dword [eax + 4]
call dword [sym.imp.GDI32.dll_GetObjectA]
push 0x57a1b8
lea eax, [ebp + 0x50]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyA]
push 0x164
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x2a
mov edi, 0x20000
cmp eax, esi
je 0x405d7a
push ebx
lea ecx, [ebp + 0x1c]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push 0xffffffffffffffff
push esi
push 0x57a1a4
push 0x101
lea eax, [ebp + 0x34]
push eax
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 0x2b
call fcn.0048f04f
jmp 0x405d7c
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x2c
call fcn.0048a476
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x405da7
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xfffdffff
add ecx, 0xfffffff0
call fcn.00401188
push 0xe4
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x2d
mov ebx, 0x80000
mov edi, 0x100000
cmp eax, esi
je 0x405e2b
push 0xb
pop eax
mov word [ebp + 4], ax
or eax, 0xffffffff
mov word [ebp + 0xc], ax
or dword [ebp + 0x30], 0x40000
lea eax, [ebp + 4]
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x2e
call fcn.0048f3e9
or dword [ebp + 0x30], ebx
push 0x57a194
lea ecx, [ebp + 0x1c]
mov dword [ebp - 4], 0x2f
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
push esi
push esi
push 0x57a170
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x1c]
push eax
mov dword [ebp - 4], 0x30
call fcn.0048ec31
jmp 0x405e2d
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x33
call fcn.0048a476
test dword [ebp + 0x30], edi
je 0x405e54
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xffefffff
add ecx, 0xfffffff0
call fcn.00401188
test dword [ebp + 0x30], ebx
je 0x405e6a
and dword [ebp + 0x30], 0xfff7ffff
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], 0x40000
je 0x405e88
and dword [ebp + 0x30], 0xfffbffff
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp]
push 1
push 1
push dword [ebp + 0x20]
call fcn.0048a712
mov ebx, 0xe4
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x34
mov edi, 0x200000
cmp eax, esi
je 0x405edd
push 0x57a168
lea ecx, [ebp + 0x18]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp + 0x18]
push eax
mov byte [ebp - 4], 0x35
call fcn.0048a943
mov dword [ebp + 0x20], eax
jmp 0x405ee0
mov dword [ebp + 0x20], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x405efb
mov ecx, dword [ebp + 0x18]
and dword [ebp + 0x30], 0xffdfffff
add ecx, 0xfffffff0
call fcn.00401188
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x37
mov ebx, 0x400000
mov edi, 0x800000
cmp eax, esi
je 0x405f65
xor eax, eax
push 0x57a15c
lea ecx, [ebp + 4]
mov word [ebp + 4], ax
call fcn.0048f5f9
or dword [ebp + 0x30], ebx
push 0x57a154
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x38
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
push esi
push esi
push esi
lea eax, [ebp + 4]
push eax
lea eax, [ebp + 0x1c]
push eax
mov dword [ebp - 4], 0x39
call fcn.0048ec31
mov dword [ebp + 0x24], eax
jmp 0x405f68
mov dword [ebp + 0x24], esi
test dword [ebp + 0x30], edi
je 0x405f7f
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xff7fffff
add ecx, 0xfffffff0
call fcn.00401188
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], ebx
je 0x405f99
and dword [ebp + 0x30], 0xffbfffff
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp + 0x24]
push esi
call fcn.004886f1
push dword [ebp + 0x24]
mov ecx, dword [ebp + 0x20]
call fcn.0048a476
push 0x118
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x3c
mov edi, 0x1000000
cmp eax, esi
je 0x406001
push 0x57a148
lea ecx, [ebp + 0x1c]
mov dword [ebp - 0x20], 0xfec0d2
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push 0x57a134
push esi
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp + 0x1c]
push eax
mov byte [ebp - 4], 0x3d
call fcn.0048ee54
mov ebx, eax
jmp 0x406003
xor ebx, ebx
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x40601e
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xfeffffff
add ecx, 0xfffffff0
call fcn.00401188
push 1
push 1
push 0x57a12c
mov ecx, ebx
call fcn.0048e977
push 1
push 0xf
call dword [sym.imp.USER32.dll_GetSysColor]
push eax
push 0x57a124
mov ecx, ebx
call fcn.0048e947
mov ecx, dword [ebp + 0x20]
push ebx
call fcn.0048a476
push 0xf8
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x3f
mov ebx, 0x2000000
mov edi, 0x4000000
cmp eax, esi
je 0x4060c1
push 0x577c70
lea ecx, [ebp + 0x24]
call fcn.004056cc
or dword [ebp + 0x30], ebx
push 0x57a11c
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x40
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push 0x57a10c
push 0x5c95f0
push esi
push 0x57a108
lea eax, [ebp + 0x24]
push eax
push 1
lea eax, [ebp + 0x1c]
push eax
mov dword [ebp - 4], 0x41
call fcn.0048ef97
jmp 0x4060c3
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x43
call fcn.0048a476
test dword [ebp + 0x30], edi
je 0x4060ea
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xfbffffff
add ecx, 0xfffffff0
call fcn.00401188
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], ebx
je 0x406105
mov ecx, dword [ebp + 0x24]
and dword [ebp + 0x30], 0xfdffffff
add ecx, 0xfffffff0
call fcn.00401188
push 0xf8
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x44
mov ebx, 0x8000000
mov edi, 0x10000000
cmp eax, esi
je 0x406167
push 0x57a104
lea ecx, [ebp + 0x24]
call fcn.004056cc
or dword [ebp + 0x30], ebx
push 0x57a0fc
lea ecx, [ebp + 0x1c]
mov byte [ebp - 4], 0x45
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp + 0x24]
push eax
lea eax, [ebp + 0x1c]
push eax
mov dword [ebp - 4], 0x46
call fcn.0048ef22
jmp 0x406169
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x48
call fcn.0048a476
test dword [ebp + 0x30], edi
je 0x406190
mov ecx, dword [ebp + 0x1c]
and dword [ebp + 0x30], 0xefffffff
add ecx, 0xfffffff0
call fcn.00401188
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], ebx
je 0x4061ab
mov ecx, dword [ebp + 0x24]
and dword [ebp + 0x30], 0xf7ffffff
add ecx, 0xfffffff0
call fcn.00401188
mov ecx, dword [ebp]
push 1
push 1
push dword [ebp + 0x20]
call fcn.0048a712
mov ebx, 0xe4
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x49
mov edi, 0x20000000
cmp eax, esi
je 0x406200
push 0x57a0f0
lea ecx, [ebp + 0x18]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp + 0x18]
push eax
mov byte [ebp - 4], 0x4a
call fcn.0048a943
mov dword [ebp + 0x24], eax
jmp 0x406203
mov dword [ebp + 0x24], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x40621e
mov ecx, dword [ebp + 0x18]
and dword [ebp + 0x30], 0xdfffffff
add ecx, 0xfffffff0
call fcn.00401188
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x4c
mov edi, 0x40000000
cmp eax, esi
je 0x40625f
push 0x57a0e4
lea ecx, [ebp + 0x14]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp + 0x14]
push eax
mov byte [ebp - 4], 0x4d
call fcn.0048a943
mov dword [ebp + 0x1c], eax
jmp 0x406262
mov dword [ebp + 0x1c], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x40627d
mov ecx, dword [ebp + 0x14]
and dword [ebp + 0x30], 0xbfffffff
add ecx, 0xfffffff0
call fcn.00401188
push dword [ebp + 0x1c]
mov ecx, dword [ebp + 0x24]
call fcn.0048a476
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x4f
mov edi, SysReAllocString
cmp eax, esi
je 0x4062c9
push 0x57a0d8
lea ecx, [ebp - 0x20]
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x30], edi
push esi
push esi
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0x50
call fcn.0048a943
mov dword [ebp + 0x20], eax
jmp 0x4062cc
mov dword [ebp + 0x20], esi
or dword [ebp - 4], 0xffffffff
test dword [ebp + 0x30], edi
je 0x4062e0
mov ecx, dword [ebp - 0x20]
add ecx, 0xfffffff0
call fcn.00401188
push dword [ebp + 0x20]
mov ecx, dword [ebp + 0x1c]
call fcn.0048a476
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x52
mov edi, 0x57a0cc
cmp eax, esi
je 0x406366
push 0x57a0c4
lea ecx, [ebp + 4]
call fcn.004052cb
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x53
mov dword [ebp + 0x28], 1
call fcn.0048f3e9
push 0x57a0bc
lea ecx, [ebp + 0x14]
mov dword [ebp - 4], 0x54
mov dword [ebp + 0x28], 3
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
push esi
push esi
push esi
push esi
push edi
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x14]
push eax
mov dword [ebp - 4], 0x55
mov dword [ebp + 0x28], 7
call fcn.0048ec31
jmp 0x406368
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x58
call fcn.0048a476
test byte [ebp + 0x28], 4
je 0x40638d
mov ecx, dword [ebp + 0x14]
and dword [ebp + 0x28], 0xfffffffb
add ecx, 0xfffffff0
call fcn.00401188
test byte [ebp + 0x28], 2
je 0x4063a1
and dword [ebp + 0x28], 0xfffffffd
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x28], 1
je 0x4063b9
and dword [ebp + 0x28], 0xfffffffe
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x2c], eax
mov dword [ebp - 4], 0x59
cmp eax, esi
je 0x406426
push 0x57a0b4
lea ecx, [ebp + 4]
call fcn.004052cb
or dword [ebp + 0x28], 8
push eax
lea ecx, [ebp - 0x1c]
mov byte [ebp - 4], 0x5a
call fcn.0048f3e9
or dword [ebp + 0x28], 0x10
push 0x57a0ac
lea ecx, [ebp + 0x14]
mov dword [ebp - 4], 0x5b
call fcn.004056cc
mov ecx, dword [ebp + 0x2c]
or dword [ebp + 0x28], 0x20
push esi
push esi
push esi
push esi
push edi
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp + 0x14]
push eax
mov dword [ebp - 4], 0x5c
call fcn.0048ec31
jmp 0x406428
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x5f
call fcn.0048a476
test byte [ebp + 0x28], 0x20
je 0x40644d
mov ecx, dword [ebp + 0x14]
and dword [ebp + 0x28], 0xffffffdf
add ecx, 0xfffffff0
call fcn.00401188
test byte [ebp + 0x28], 0x10
je 0x406461
and dword [ebp + 0x28], 0xffffffef
lea eax, [ebp - 0x1c]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test byte [ebp + 0x28], 8
je 0x406479
and dword [ebp + 0x28], 0xfffffff7
lea eax, [ebp + 4]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
push ebx
call fcn.0040a21e
pop ecx
mov dword [ebp + 0x14], eax
mov dword [ebp - 4], 0x60
cmp eax, esi
je 0x4064ec
push 0x57a0a4
lea ecx, [ebp - 0x40]
call fcn.004052cb
or dword [ebp + 0x28], 0x40
push eax
lea ecx, [ebp - 0x30]
mov byte [ebp - 4], 0x61
call fcn.0048f3e9
or dword [ebp + 0x28], 0x80
push 0x57a09c
lea ecx, [ebp + 0x2c]
mov dword [ebp - 4], 0x62
call fcn.004056cc
mov ecx, dword [ebp + 0x14]
or dword [ebp + 0x28], 0x100
push esi
push esi
push esi
push esi
push edi
lea eax, [ebp - 0x30]
push eax
lea eax, [ebp + 0x2c]
push eax
mov dword [ebp - 4], 0x63
call fcn.0048ec31
jmp 0x4064ee
xor eax, eax
mov ecx, dword [ebp + 0x20]
push eax
mov dword [ebp - 4], 0x66
call fcn.0048a476
mov ebx, dword [ebp + 0x28]
test ebx, 0x100
je 0x40651a
mov ecx, dword [ebp + 0x2c]
add ecx, 0xfffffff0
and ebx, 0xfffffeff
call fcn.00401188
test bl, bl
jns 0x40652e
lea eax, [ebp - 0x30]
push eax
and ebx, 0xffffff7f
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
or dword [ebp - 4], 0xffffffff
test bl, 0x40
je 0x406541
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
mov ecx, dword [ebp + 0x24]
push esi
call fcn.00488526
mov ecx, dword [ebp]
push 1
push 1
push dword [ebp + 0x24]
call fcn.0048a712
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp + 0x70]
xor ecx, ebp
call fcn.00514038
add ebp, 0x74
leave
ret