Function at 0x45d4e0
Capabilities:
Get graphical window text

Disassembly:
sub esp, 0x6c
push ebx
mov ebx, dword [esp + 0x7c]
mov al, byte [ebx + 4]
push ebp
mov ebp, dword [esp + 0x7c]
push esi
push edi
mov edi, ecx
mov dword [esp + 0x84], 0
cmp al, 0xa
je 0x45d510
cmp al, 2
je 0x45d510
lea eax, [ebx + 0x10]
mov dword [esp + 0x1c], eax
jmp 0x45d517
lea ecx, [ebp + 0x5c]
mov dword [esp + 0x1c], ecx
cmp byte [edi], 0
mov dword [esp + 0x14], edi
je 0x45f29a
mov al, byte [edi]
cmp al, 0x2d
jne 0x45d534
mov byte [esp + 0x84], 0
jmp 0x45d540
mov byte [esp + 0x84], 1
cmp al, 0x2b
jne 0x45d545
inc edi
mov dword [esp + 0x14], edi
mov cl, byte [edi]
test cl, cl
je 0x45f29a
mov edx, edi
mov esi, 0x495fdc
mov al, 0x20
cmp cl, al
je 0x45d5b3
mov al, byte [esi + 1]
inc esi
test al, al
jne 0x45d558
mov cl, byte [edx + 1]
inc edx
test cl, cl
jne 0x45d551
mov eax, edi
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x45d571
sub eax, edx
add eax, edi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x45f27b
mov dl, byte [eax]
push str.Section
push edi
mov byte [esp + 0x1b], dl
mov byte [eax], 0
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d5b9
mov byte [ebp + 0x18f], 1
jmp case.0x45ea39.7
mov dword [esp + 0x18], edx
jmp 0x45d580
push str.AltSubmit
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d5e7
cmp byte [ebx + 4], 0xc
je 0x45d5e7
cmp byte [esp + 0x84], al
je 0x45df7d
or byte [ebx + 5], 2
jmp case.0x45ea39.7
push 7
push str.Checked
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45d681
add edi, 7
push str.Gray
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d62b
movzx eax, byte [esp + 0x84]
neg eax
sbb eax, eax
and eax, 2
mov dword [ebp + 0x6c], eax
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xa
jne 0x45d64d
cmp byte [esp + 0x84], 0
je 0x45d644
or dword [ebp + 0x10], 4
jmp case.0x45ea39.7
and dword [ebp + 0x10], 0xfffffffb
jmp case.0x45ea39.7
cmp byte [edi], 0
je 0x45d671
mov esi, edi
call fcn.0040c870
mov dword [ebp + 0x6c], eax
cmp eax, 0xffffffff
jne case.0x45ea39.7
mov dword [ebp + 0x6c], 2
jmp case.0x45ea39.7
movzx ecx, byte [esp + 0x84]
mov dword [ebp + 0x6c], ecx
jmp case.0x45ea39.7
push 6
push str.Choose
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45d73d
cmp byte [esp + 0x84], al
je case.0x45ea39.7
movzx eax, byte [ebx + 4]
add edi, 6
sub eax, 0xd
je 0x45d6f9
dec eax
je 0x45d6d4
mov esi, edi
call fcn.0040c870
mov dword [ebp + 0x34], eax
cmp eax, 1
jge case.0x45ea39.7
mov dword [ebp + 0x34], 0
jmp case.0x45ea39.7
lea eax, [ebp + 0x140]
mov ecx, edi
call fcn.0046dfd0
mov dword [ebp + 0x180], eax
cmp eax, 3
jne case.0x45ea39.7
or dword [ebp], 2
jmp case.0x45ea39.7
push str.None
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d717
mov dword [ebp + 0x34], 2
jmp case.0x45ea39.7
push 1
lea esi, [ebp + 0x140]
mov eax, edi
call fcn.0046e050
add esp, 4
test eax, eax
je case.0x45ea39.7
mov dword [ebp + 0x34], 1
jmp case.0x45ea39.7
push str.Border
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d770
cmp byte [esp + 0x84], al
je 0x45d764
or dword [ebp], 0x800000
jmp case.0x45ea39.7
or dword [ebp + 4], 0x800000
jmp case.0x45ea39.7
push str.VScroll
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d7a3
cmp byte [esp + 0x84], al
je 0x45d797
or dword [ebp], 0x200000
jmp case.0x45ea39.7
or dword [ebp + 4], 0x200000
jmp case.0x45ea39.7
push 7
push str.HScroll
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45d814
cmp byte [ebx + 4], 0xb
jne 0x45d7d6
cmp byte [esp + 0x84], al
je 0x45dc9f
or dword [ebp + 4], 0x8000
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45d808
or dword [ebp], 0x100000
cmp byte [edi + 7], 0
je 0x45d7fd
lea esi, [edi + 7]
call fcn.0040c870
mov dword [ebp + 0x68], eax
jmp case.0x45ea39.7
or eax, 0xffffffff
mov dword [ebp + 0x68], eax
jmp case.0x45ea39.7
or dword [ebp + 4], 0x100000
jmp case.0x45ea39.7
push str.Tabstop
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d83b
cmp byte [esp + 0x84], al
je 0x45d856
or dword [ebp], 0x10000
jmp case.0x45ea39.7
push str.NoTab
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d862
cmp byte [esp + 0x84], al
je 0x45d82f
or dword [ebp + 4], 0x10000
jmp case.0x45ea39.7
push str.Group
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d88e
cmp byte [esp + 0x84], 0
je 0x45db31
or dword [ebp], 0x20000
jmp case.0x45ea39.7
push str.Redraw
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45d8ba
xor edx, edx
cmp byte [esp + 0x84], dl
sete dl
add edx, 3
mov dword [ebp + 0x188], edx
jmp case.0x45ea39.7
push 8
push str.Disabled
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45d931
cmp byte [edi + 8], al
lea esi, [edi + 8]
je 0x45d8f0
call fcn.0040c870
test eax, eax
jne 0x45d8f0
cmp byte [esp + 0x84], al
sete al
mov byte [esp + 0x84], al
mov ebx, dword [ebx]
test ebx, ebx
je 0x45d90f
xor ecx, ecx
cmp byte [esp + 0x84], cl
sete cl
push ecx
push ebx
call dword [sym.imp.USER32.dll_EnableWindow]
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45d925
or dword [ebp], 0x8000000
jmp case.0x45ea39.7
or dword [ebp + 4], 0x8000000
jmp case.0x45ea39.7
push 6
push str.Hidden
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45d9ac
cmp byte [edi + 6], al
lea esi, [edi + 6]
je 0x45d967
call fcn.0040c870
test eax, eax
jne 0x45d967
cmp byte [esp + 0x84], al
sete dl
mov byte [esp + 0x84], dl
mov ebx, dword [ebx]
test ebx, ebx
je 0x45d98a
xor eax, eax
cmp byte [esp + 0x84], al
setne al
dec eax
and eax, 4
push eax
push ebx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45d9a0
or dword [ebp + 4], 0x10000000
jmp case.0x45ea39.7
or dword [ebp], 0x10000000
jmp case.0x45ea39.7
push str.Wrap
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45da3a
movzx eax, byte [ebx + 4]
dec eax
cmp eax, 0x12
ja case.0x45ea39.7
movzx ecx, byte [eax + 0x45f968]
jmp dword [ecx*4 + 0x45f950]
cmp byte [esp + 0x84], 0
je 0x45d9ed
or dword [ebp + 4], 0x1f
jmp case.0x45ea39.7
mov edx, dword [ebp]
and edx, 0xffffffec
or edx, 0xc
mov dword [ebp], edx
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45da14
or dword [ebp + 4], 0x100080
jmp case.0x45ea39.7
or dword [ebp], 0x80
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45de7f
or dword [ebp], 0x200
jmp case.0x45ea39.7
push 0xa
push str.Background
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45daf7
movzx eax, byte [ebx + 4]
add eax, 0xfffffff6
add edi, 0xa
cmp eax, 0xe
ja case.0x45da68.12
movzx eax, byte [eax + 0x45f984]
jmp dword [eax*4 + 0x45f97c]
cmp byte [esp + 0x84], 0
je 0x45daa8
mov esi, edi
call fcn.0046f5c0
mov dword [ebp + 0x60], eax
cmp eax, 0xffffffff
jne case.0x45ea39.7
push 0x10
push 0
push edi
call fcn.004828b4
add esp, 0xc
mov ecx, eax
call fcn.0042e200
mov dword [ebp + 0x60], eax
jmp case.0x45ea39.7
mov dword [ebp + 0x60], 0xff000000
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45dae6
and byte [ebx + 5], 0xdf
push str.Trans
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dadd
or byte [ebx + 5], 0x40
jmp case.0x45ea39.7
and byte [ebx + 5], 0xbf
jmp case.0x45ea39.7
mov cl, byte [ebx + 5]
and cl, 0xbf
or cl, 0x20
mov byte [ebx + 5], cl
jmp case.0x45ea39.7
push str.Group
push edi
call fcn.00480f51
add esp, 8
test eax, eax
je 0x45d874
push str.Theme
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45db3d
mov dl, byte [esp + 0x84]
mov byte [ebp + 0x190], dl
jmp case.0x45ea39.7
or dword [ebp + 4], 0x20000
jmp case.0x45ea39.7
push 4
push str.Hwnd
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45db6a
push 3
push eax
add edi, 4
push edi
mov ecx, 0x4a7ce0
call fcn.0041f760
mov dword [ebp + 0x1c], eax
jmp case.0x45ea39.7
push 4
push str.Icon
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45dbc4
add edi, 4
cmp byte [ebx + 4], 0xa
jne 0x45dba7
push str.Small
push edi
call fcn.00480f51
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [ebp + 0x14], eax
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov dword [ebp + 0x70], eax
jmp case.0x45ea39.7
push str.Report
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dbe2
mov dword [ebp + 0x14], 1
jmp case.0x45ea39.7
push str.List
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dc00
mov dword [ebp + 0x14], 3
jmp case.0x45ea39.7
push str.Tile
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dc2a
cmp byte [0x4a84bb], al
je case.0x45ea39.7
mov dword [ebp + 0x14], 4
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xa
jne 0x45dcf0
push 0x499f04
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dc5f
cmp byte [esp + 0x84], al
je 0x45e033
or dword [ebp + 4], 0x4000
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xa
jne 0x45dcf0
push 6
push str.NoSort
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45dcbd
push 0x499f04
add edi, 6
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dcab
cmp byte [esp + 0x84], al
je 0x45d7ca
or dword [ebp], 0x8000
jmp case.0x45ea39.7
mov al, byte [esp + 0x84]
mov byte [ebp + 0x191], al
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xa
jne 0x45dcf0
push str.Grid
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dcf0
cmp byte [esp + 0x84], al
je 0x45dce7
or dword [ebp + 0x10], 1
jmp case.0x45ea39.7
and dword [ebp + 0x10], 0xfffffffe
jmp case.0x45ea39.7
push 5
push str.Count
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45dd14
lea esi, [edi + 5]
call fcn.0040c870
mov dword [ebp + 0x64], eax
jmp case.0x45ea39.7
mov esi, 2
push esi
push 0x49bbdc
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45dd67
push eax
push eax
push eax
add edi, esi
push eax
mov eax, edi
call fcn.0046e3c0
add esp, 0x10
test eax, eax
je case.0x45ea39.7
mov esi, edi
call fcn.004124c0
cmp byte [esp + 0x84], 0
je 0x45dd5d
or dword [ebp + 0x10], eax
jmp case.0x45ea39.7
not eax
and dword [ebp + 0x10], eax
jmp case.0x45ea39.7
push 9
push str.ImageList
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45dd9c
cmp byte [esp + 0x84], al
je case.0x45ea39.7
mov esi, dword [esp + 0x14]
add esi, 9
call fcn.004124c0
mov dword [ebp + 0x18], eax
jmp case.0x45ea39.7
cmp byte [ebx + 4], 4
jne 0x45ddcb
push str.Default
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45ddcb
cmp byte [esp + 0x84], 0
je case.0x45e7ff.11
or dword [ebp], 1
jmp case.0x45ea39.7
cmp byte [ebx + 4], 5
jne 0x45ddf9
push str.Check3
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45ddf9
cmp byte [esp + 0x84], al
je 0x45e364
or dword [ebp], 6
jmp case.0x45ea39.7
push str.ReadOnly
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dea2
movzx eax, byte [ebx + 4]
add eax, 0xfffffff7
cmp eax, 3
ja case.0x45ea39.7
jmp dword [eax*4 + 0x45f994]
mov ecx, dword [esp + 0x88]
mov eax, dword [ecx]
test eax, eax
je case.0x45dec4.9
movzx edx, byte [esp + 0x84]
push 0
push edx
push 0xcf
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45de65
or dword [ebp], 0x800
jmp case.0x45ea39.7
or dword [ebp + 4], 0x800
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45da2e
or dword [ebp + 4], 0x200
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45e066
or dword [ebp + 4], 8
jmp case.0x45ea39.7
push str.Multi
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45def1
movzx eax, byte [ebx + 4]
add eax, 0xfffffff7
cmp eax, 5
ja case.0x45ea39.7
jmp dword [eax*4 + 0x45f9a4]
cmp byte [esp + 0x84], 0
je 0x45dee8
or dword [ebp], 4
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45ded5
or dword [ebp + 4], 4
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xc
jne 0x45df86
push str.WantReturn
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45df2e
cmp byte [esp + 0x84], al
je 0x45df22
or dword [ebp], 0x1000
jmp case.0x45ea39.7
or dword [ebp + 4], 0x1000
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xc
jne 0x45df86
push str.WantTab
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45df58
cmp byte [esp + 0x84], al
je 0x45dfac
or byte [ebx + 5], 0x80
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xc
jne 0x45df86
push str.WantCtrlA
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45df86
cmp byte [esp + 0x84], al
je 0x45d5de
and byte [ebx + 5], 0xfd
jmp case.0x45ea39.7
mov al, byte [ebx + 4]
cmp al, 0xa
je 0x45df91
cmp al, 0xb
jne 0x45dfb5
push str.WantF2
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dfb5
cmp byte [esp + 0x84], al
je 0x45df4f
and byte [ebx + 5], 0x7f
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xc
jne 0x45dfe7
push str.Number
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45dfe7
cmp byte [esp + 0x84], 0
je 0x45e086
or dword [ebp], 0x2000
jmp case.0x45ea39.7
push str.Lowercase
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e03f
mov bl, byte [ebx + 4]
cmp bl, 0xc
jne 0x45e017
cmp byte [esp + 0x84], al
je 0x45e2a6
or dword [ebp], 0x10
jmp case.0x45ea39.7
cmp bl, 8
je case.0x45de1f.9
cmp bl, 7
jne case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45dc53
or dword [ebp], 0x4000
jmp case.0x45ea39.7
push str.Uppercase
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e092
mov bl, byte [ebx + 4]
cmp bl, 0xc
jne 0x45e06f
cmp byte [esp + 0x84], al
je case.0x45e7ff.16
or dword [ebp], 8
jmp case.0x45ea39.7
cmp bl, 8
je case.0x45d9d3.3
cmp bl, 7
jne case.0x45ea39.7
jmp case.0x45d9d3.3
or dword [ebp + 4], 0x2000
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0xc
jne 0x45e122
push 8
push str.Password
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e122
cmp byte [esp + 0x84], 0
mov al, byte [edi + 8]
mov byte [ebp + 0x18c], al
je 0x45e0ff
or dword [ebp], 0x20
cmp dword [ebx], 0
je case.0x45ea39.7
test al, al
jne 0x45e0db
mov byte [ebp + 0x18c], 0x2a
movsx ecx, byte [ebp + 0x18c]
mov edx, dword [esp + 0x88]
mov eax, dword [edx]
push 0
push ecx
push 0xcc
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x45ea39.7
or dword [ebp + 4], 0x20
mov ebx, dword [ebx]
test ebx, ebx
je case.0x45ea39.7
push 0
push 0
push 0xcc
push ebx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x45ea39.7
push 5
push str.Limit
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e16b
cmp byte [esp + 0x84], al
je 0x45e15f
cmp byte [edi + 5], al
je 0x45e154
lea esi, [edi + 5]
call fcn.0040c870
mov dword [ebp + 0x64], eax
jmp case.0x45ea39.7
or eax, 0xffffffff
mov dword [ebp + 0x64], eax
jmp case.0x45ea39.7
mov dword [ebp + 0x64], CreateStatusWindowA
jmp case.0x45ea39.7
cmp byte [ebx + 4], 8
jne 0x45e199
push str.Simple
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e199
cmp byte [esp + 0x84], al
je case.0x45e7ff.11
or dword [ebp], 1
jmp case.0x45ea39.7
push 4
push str.Sort
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e214
movzx eax, byte [ebx + 4]
add eax, 0xfffffff9
cmp eax, 3
ja case.0x45ea39.7
jmp dword [eax*4 + 0x45f9bc]
cmp byte [esp + 0x84], 0
je case.0x45e914.11
or dword [ebp], esi
jmp case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45e20b
mov ecx, dword [esp + 0x14]
add ecx, 4
push str.Desc
push ecx
call fcn.00480f51
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffff0
add eax, 0x20
or dword [ebp], eax
jmp case.0x45ea39.7
or dword [ebp + 4], 0x30
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x10
jne 0x45e24a
push str.Horz
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e24a
cmp byte [esp + 0x84], al
je 0x45e3df
mov edx, dword [ebp]
and edx, 0xffffffef
or edx, 0x40
mov dword [ebp], edx
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e2f6
push str.Invert
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e27c
cmp byte [esp + 0x84], al
je 0x45dfac
or byte [ebx + 5], 0x80
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e2f6
push str.NoTicks
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e2af
cmp byte [esp + 0x84], al
je 0x45e2a6
or dword [ebp], 0x10
jmp case.0x45ea39.7
or dword [ebp + 4], 0x10
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e2f6
push 0xc
push str.TickInterval
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e2f6
cmp byte [esp + 0x84], al
je 0x45e2e6
or dword [ebp], 1
lea esi, [edi + 0xc]
call fcn.0040c870
mov dword [ebp + 0x40], eax
jmp case.0x45ea39.7
or dword [ebp + 4], 1
mov dword [ebp + 0x40], 0xffffffff
jmp case.0x45ea39.7
push 4
push str.Line
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e36d
mov bl, byte [ebx + 4]
add edi, 4
mov dword [esp + 0x14], edi
cmp bl, 0x11
jne 0x45e335
cmp byte [esp + 0x84], al
je case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov dword [ebp + 0x44], eax
jmp case.0x45ea39.7
cmp bl, 0xb
jne case.0x45ea39.7
mov eax, dword [esp + 0x14]
mov al, byte [eax]
call fcn.00408ee0
cmp al, 0x53
jne case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45e364
or dword [ebp], 6
jmp case.0x45ea39.7
or dword [ebp + 4], 6
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e3e8
push 4
push str.Page
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e3a8
cmp byte [esp + 0x84], al
je case.0x45ea39.7
mov esi, dword [esp + 0x14]
add esi, 4
call fcn.0040c870
mov dword [ebp + 0x48], eax
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e3e8
push 5
push str.Thick
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e3e8
cmp byte [esp + 0x84], al
je 0x45e3df
or dword [ebp], 0x40
lea esi, [edi + 5]
call fcn.0040c870
mov dword [ebp + 0x4c], eax
jmp case.0x45ea39.7
or dword [ebp + 4], 0x40
jmp case.0x45ea39.7
push 7
push str.ToolTip
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e48b
cmp byte [ebx + 4], 0x11
jne case.0x45ea39.7
cmp byte [esp + 0x84], al
je 0x45ea6f
mov ecx, dword [esp + 0x14]
mov dword [ebp + 0x50], 0xffffffff
mov al, byte [ecx + 7]
call fcn.00408ee0
movsx eax, al
add eax, 0xffffffbe
cmp eax, 0x12
ja case.0x45e43c.67
movzx edx, byte [eax + 0x45f9e0]
jmp dword [edx*4 + 0x45f9cc]
mov dword [ebp + 0x50], 0
jmp case.0x45e43c.67
mov dword [ebp + 0x50], 1
jmp case.0x45e43c.67
mov dword [ebp + 0x50], esi
jmp case.0x45e43c.67
mov dword [ebp + 0x50], 3
mov eax, dword [ebp + 0x50]
test eax, eax
jns 0x45e47b
or dword [ebp], 0x100
mov dword [ebp + 0x50], 0
jmp case.0x45ea39.7
inc eax
or dword [ebp], 0x100
mov dword [ebp + 0x50], eax
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x11
jne 0x45e547
push 5
push str.Buddy
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e547
cmp byte [esp + 0x84], al
je case.0x45ea39.7
mov eax, dword [esp + 0x14]
mov bl, byte [eax + 5]
add eax, 5
mov dword [esp + 0x14], eax
test bl, bl
je case.0x45ea39.7
push 0
push 1
push 0
push 0
inc eax
push eax
mov ecx, 0x4a7ce0
call fcn.0041f7c0
test eax, eax
je case.0x45ea39.7
cmp byte [eax + 0x17], 0
jne 0x45e4f5
mov eax, dword [eax + 0xc]
test byte [eax + 0x16], 2
jne case.0x45ea39.7
mov ecx, dword [esp + 0x80]
mov ecx, dword [ecx + 0x10]
lea edx, [ecx - 1]
cmp edx, ecx
jae case.0x45ea39.7
mov edi, dword [esp + 0x80]
lea esi, [edx + edx*4]
add esi, esi
add esi, esi
mov ecx, dword [edi + 0x18]
add ecx, esi
cmp dword [ecx + 8], eax
jne 0x45e539
cmp bl, 0x31
jne 0x45e536
mov dword [ebp + 0x54], ecx
jmp 0x45e539
mov dword [ebp + 0x58], ecx
dec edx
sub esi, 0x14
cmp edx, dword [edi + 0x10]
jb 0x45e522
jmp case.0x45ea39.7
push str.Vertical
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e596
mov bl, byte [ebx + 4]
cmp bl, 0x11
jne 0x45e576
cmp byte [esp + 0x84], al
je case.0x45e914.11
or dword [ebp], esi
jmp case.0x45ea39.7
cmp bl, 0x12
jne case.0x45ea39.7
cmp byte [esp + 0x84], 0
je 0x45dee8
or dword [ebp], 4
jmp case.0x45ea39.7
push 5
push str.Range
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e671
cmp byte [esp + 0x84], al
je case.0x45ea39.7
mov eax, dword [esp + 0x14]
add eax, 5
cmp byte [eax], 0
mov dword [esp + 0x14], eax
je case.0x45ea39.7
mov edx, dword [esp + 0x88]
mov al, byte [edx + 4]
cmp al, 0xd
je 0x45e618
cmp al, 0xe
je 0x45e618
mov esi, dword [esp + 0x14]
mov byte [ebp + 0x18d], 1
call fcn.0040c870
push 0x2d
inc esi
push esi
mov dword [ebp + 0x38], eax
call fcn.00481f21
add esp, 8
test eax, eax
je case.0x45ea39.7
lea esi, [eax + 1]
call fcn.0040c870
mov dword [ebp + 0x3c], eax
jmp case.0x45ea39.7
mov ecx, dword [esp + 0x14]
lea esi, [ebp + 0x160]
mov eax, esi
call fcn.0046dfd0
mov dword [ebp + 0x184], eax
test eax, eax
je case.0x45ea39.7
mov ecx, dword [esp + 0x88]
mov ecx, dword [ecx]
test ecx, ecx
je case.0x45ea39.7
push esi
push eax
mov eax, dword [esp + 0x90]
xor edx, edx
cmp byte [eax + 4], 0xd
setne dl
dec edx
and edx, 0xfffffff2
add edx, 0x1012
push edx
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x12
jne 0x45e69f
push str.Smooth
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e69f
cmp byte [esp + 0x84], al
je case.0x45e7ff.11
or dword [ebp], 1
jmp case.0x45ea39.7
push str.Buttons
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e6f3
mov bl, byte [ebx + 4]
cmp bl, 0x13
jne 0x45e6d3
cmp byte [esp + 0x84], 0
je 0x45ea6f
or dword [ebp], 0x100
jmp case.0x45ea39.7
cmp bl, 0xb
jne case.0x45ea39.7
cmp byte [esp + 0x84], 0
je case.0x45e7ff.11
or dword [ebp], 1
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x13
jne 0x45e727
push str.Bottom
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e727
cmp byte [esp + 0x84], al
je case.0x45e914.11
or dword [ebp], esi
or dword [ebp + 4], 0x80
jmp case.0x45ea39.7
cmp byte [ebx + 4], 0x17
jne 0x45e781
push 5
push str.Class
push edi
call fcn.004819bb
add esp, 0xc
test eax, eax
jne 0x45e781
mov edx, dword [0x4a5c68]
lea ecx, [esp + 0x48]
push ecx
add edi, 5
push edi
push edx
call dword [sym.imp.USER32.dll_GetClassInfoExA]
mov word [ebp + 0x192], ax
test ax, ax
jne case.0x45ea39.7
push edi
push str.Unregistered_window_class.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
push str.Center
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e858
movzx eax, byte [ebx + 4]
dec eax
cmp byte [esp + 0x84], 0
je 0x45e7ef
cmp eax, 0x10
ja case.0x45ea39.7
movzx eax, byte [eax + 0x45fa08]
jmp dword [eax*4 + 0x45f9f4]
or dword [ebp], 8
or dword [ebp + 4], 4
jmp case.0x45ea39.7
or dword [ebp], 1
or dword [ebp + 4], 0x1e
jmp case.0x45ea39.7
or dword [ebp], 0x300
jmp case.0x45ea39.7
or dword [ebp], 1
or dword [ebp + 4], esi
jmp case.0x45ea39.7
cmp eax, 0x10
ja case.0x45ea39.7
movzx ecx, byte [eax + 0x45fa30]
jmp dword [ecx*4 + 0x45fa1c]
mov edx, dword [esp + 0x88]
mov eax, dword [edx]
test eax, eax
je 0x45e834
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
jne case.0x45ea39.7
or dword [ebp + 4], eax
jmp case.0x45ea39.7
mov eax, dword [ebp]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
jne case.0x45ea39.7
and eax, 0xfffffcff
mov dword [ebp], eax
jmp case.0x45ea39.7
push str.Right
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45e993
movzx eax, byte [ebx + 4]
dec eax
cmp byte [esp + 0x84], 0
je 0x45e904
cmp eax, 0x15
ja case.0x45ea39.7
movzx edx, byte [eax + 0x45fa64]
jmp dword [edx*4 + 0x45fa44]
or dword [ebp + 4], 8
or dword [ebp], 4
jmp case.0x45ea39.7
or dword [ebp], esi
or dword [ebp + 4], 0x1d
jmp case.0x45ea39.7
or dword [ebp], 0x200
or dword [ebp + 4], 0x100
mov eax, dword [esp + 0x88]
mov al, byte [eax + 4]
mov ecx, dword [ebp]
cmp al, 5
je 0x45e8d8
cmp al, 6
jne case.0x45ea39.7
or ecx, 0x20
mov dword [ebp], ecx
jmp case.0x45ea39.7
or dword [ebp], esi
or dword [ebp + 4], 1
jmp case.0x45ea39.7
or dword [ebp], 0x282
jmp case.0x45ea39.7
or dword [ebp], 0x20
jmp case.0x45ea39.7
cmp eax, 0x12
ja case.0x45ea39.7
movzx ecx, byte [eax + 0x45fa98]
jmp dword [ecx*4 + 0x45fa7c]
or dword [ebp + 4], 0x20
jmp case.0x45ea39.7
or dword [ebp], 4
or dword [ebp + 4], 8
jmp case.0x45ea39.7
mov edx, dword [esp + 0x88]
mov eax, dword [edx]
test eax, eax
je 0x45e963
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
je case.0x45ea39.7
or dword [ebp + 4], 0x200
jmp case.0x45ea39.7
mov eax, dword [ebp]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
je case.0x45ea39.7
and eax, 0xfffffdff
mov dword [ebp], eax
jmp case.0x45ea39.7
or dword [ebp + 4], 0x82
jmp case.0x45ea39.7
push str.Left
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45ea9f
cmp byte [esp + 0x84], 0
movzx eax, byte [ebx + 4]
je 0x45ea26
dec eax
cmp eax, 0x12
ja case.0x45ea39.7
movzx edx, byte [eax + 0x45facc]
jmp dword [edx*4 + 0x45faac]
or dword [ebp + 4], 4
or dword [ebp], 8
jmp case.0x45ea39.7
or dword [ebp + 4], 0x200
or dword [ebp], 0x100
mov eax, dword [esp + 0x88]
mov al, byte [eax + 4]
mov ecx, dword [ebp + 4]
cmp al, 5
je 0x45ea03
cmp al, 6
jne case.0x45ea39.7
or ecx, 0x20
mov dword [ebp + 4], ecx
jmp case.0x45ea39.7
or dword [ebp + 4], 3
jmp case.0x45ea39.7
or dword [ebp], 0x280
or dword [ebp + 4], esi
jmp case.0x45ea39.7
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x45ea39.7
movzx ecx, byte [eax + 0x45faf0]
jmp dword [ecx*4 + 0x45fae0]
or dword [ebp + 4], 0xc
jmp case.0x45ea39.7
mov edx, dword [esp + 0x88]
mov eax, dword [edx]
test eax, eax
je 0x45ea7b
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
je case.0x45ea39.7
or dword [ebp + 4], 0x100
jmp case.0x45ea39.7
mov eax, dword [ebp]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
je case.0x45ea39.7
and eax, 0xfffffeff
mov dword [ebp], eax
jmp case.0x45ea39.7
xor esi, esi
push esi
push esi
push 1
push esi
mov eax, edi
call fcn.0046e3c0
add esp, 0x10
test eax, eax
je 0x45eae9
mov esi, edi
call fcn.004124c0
cmp byte [esp + 0x84], 0
je 0x45ead7
or dword [ebp], eax
mov dl, byte [esp + 0x13]
mov eax, dword [esp + 0x18]
mov byte [eax], dl
jmp 0x45f27b
or dword [ebp + 4], eax
mov dl, byte [esp + 0x13]
mov eax, dword [esp + 0x18]
mov byte [eax], dl
jmp 0x45f27b
mov al, byte [edi]
inc edi
cmp byte [edi], 0
mov dword [esp + 0x14], edi
jne 0x45eb66
call fcn.00408ee0
cmp al, 0x43
je 0x45eb2e
cmp al, 0x47
je 0x45eb1c
cmp al, 0x56
jne 0x45f2da
mov cl, byte [esp + 0x13]
mov edx, dword [esp + 0x18]
mov dword [ebx + 8], esi
mov byte [edx], cl
jmp 0x45f27b
mov cl, byte [esp + 0x13]
mov edx, dword [esp + 0x18]
mov dword [ebx + 0xc], esi
mov byte [edx], cl
jmp 0x45f27b
cmp byte [esp + 0x84], 0
jne 0x45eb57
cmp byte [ebx + 4], 2
je 0x45eb57
mov eax, dword [esp + 0x1c]
cmp dword [eax], 0xff000000
je 0x45eb57
mov dword [eax], 0xff000000
mov byte [ebp + 0x18e], 1
mov cl, byte [esp + 0x13]
mov edx, dword [esp + 0x18]
mov byte [edx], cl
jmp 0x45f27b
call fcn.00408ee0
movsx eax, al
add eax, 0xffffffbd
cmp eax, 0x16
ja case.0x45eb81.68
movzx eax, byte [eax + 0x45fb2c]
jmp dword [eax*4 + 0x45fb04]
mov al, byte [ebx + 4]
cmp al, 3
je 0x45f324
cmp al, 0x12
je 0x45f324
mov eax, 0x4a7ce0
call fcn.004190e0
mov esi, eax
test esi, esi
jne 0x45ebc5
push 0x49b738
push edi
call fcn.00480f51
add esp, 8
test eax, eax
jne 0x45f2f5
or byte [ebx + 5], 1
mov al, byte [ebx + 4]
cmp al, 1
je 0x45ebd0
cmp al, 2
jne 0x45ebd7
or dword [ebp], 0x100
mov dword [ebx + 0xc], esi
jmp case.0x45ea39.7
cmp dword [ebp + 0x13c], 0x32
jae case.0x45ea39.7
mov esi, dword [esp + 0x14]
call fcn.004124c0
mov ecx, dword [ebp + 0x13c]
mov dword [ebp + ecx*4 + 0x74], eax
inc dword [ebp + 0x13c]
jmp case.0x45ea39.7
push 3
push esi
push edi
mov ecx, 0x4a7ce0
call fcn.0041f760
cmp eax, esi
je 0x45f343
cmp byte [eax + 0x17], 0
jne 0x45ec29
mov eax, dword [eax + 0xc]
mov dl, byte [eax + 0x16]
and dl, 0x22
cmp dl, 2
je 0x45f34f
mov esi, dword [esp + 0x80]
xor edx, edx
cmp dword [esi + 0x10], edx
jbe 0x45ec5d
mov ecx, dword [esi + 0x18]
add ecx, 8
cmp dword [ecx], eax
je 0x45f36a
inc edx
add ecx, 0x14
cmp edx, dword [esi + 0x10]
jb 0x45ec4c
mov dword [ebx + 8], eax
jmp case.0x45ea39.7
cmp byte [ebx + 4], 2
je case.0x45ea39.7
mov esi, dword [esp + 0x14]
call fcn.0046f5c0
cmp eax, 0xffffffff
jne 0x45ec91
push 0x10
push 0
push esi
call fcn.004828b4
add esp, 0xc
mov ecx, eax
call fcn.0042e200
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], eax
jne 0x45eca4
lea edx, [ebp + 0x5c]
cmp ecx, edx
jne case.0x45ea39.7
mov dword [ecx], eax
mov byte [ebp + 0x18e], 1
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x50
jne 0x45ecf5
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45ece5
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [esi + 0x88]
add edx, eax
mov dword [ebp + 0x28], edx
jmp case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov ecx, dword [esp + 0x80]
cmp byte [ecx + 0xc0], 0
je 0x45ed1c
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [ebp + 0x28], eax
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x50
jne 0x45ed67
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45ed57
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [esi + 0x8c]
add edx, eax
mov dword [ebp + 0x2c], edx
jmp case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov ecx, dword [esp + 0x80]
cmp byte [ecx + 0xc0], 0
je 0x45ed8e
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [ebp + 0x2c], eax
jmp case.0x45ea39.7
mov al, byte [edi]
cmp al, 0x2b
jne 0x45ee7f
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0x80]
mov bl, byte [eax + 6]
mov ecx, edi
call fcn.00464020
mov esi, eax
test esi, esi
je 0x45ee2e
mov ecx, dword [esp + 0x88]
mov al, byte [ecx + 7]
mov ecx, edi
call fcn.00464180
test eax, eax
jne 0x45ee2e
mov ebx, edi
push ebx
lea edi, [esp + 0x2c]
call fcn.004641b0
mov edx, dword [eax + 4]
mov esi, dword [esp + 0x14]
mov edi, dword [eax]
inc esi
mov dword [esp + 0x24], edx
call fcn.0040c870
cmp byte [ebx + 0xc0], 0
je 0x45ee0b
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
add eax, edi
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], eax
jne case.0x45ea39.7
mov edx, ebx
mov eax, dword [edx + 0x7c]
add eax, dword [esp + 0x24]
mov dword [ebp + 0x24], eax
jmp case.0x45ea39.7
mov esi, dword [esp + 0x14]
inc esi
call fcn.0040c870
cmp byte [edi + 0xc0], 0
je 0x45ee51
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [edi + 0x88]
add edx, dword [edi + 0x80]
add edx, eax
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], edx
jne case.0x45ea39.7
mov eax, edi
mov ecx, dword [eax + 0x84]
mov dword [ebp + 0x24], ecx
jmp case.0x45ea39.7
call fcn.00408ee0
cmp al, 0x4d
jne 0x45eed8
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45eeb0
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, dword [esi + 0x78]
add ecx, eax
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], ecx
jne case.0x45ea39.7
mov eax, esi
mov edx, dword [eax + 0x94]
add edx, dword [eax + 0x7c]
mov dword [ebp + 0x24], edx
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x50
jne 0x45ef33
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45ef0b
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [esi + 0x80]
add edx, eax
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], edx
jne case.0x45ea39.7
mov eax, esi
mov ecx, dword [eax + 0x84]
mov dword [ebp + 0x24], ecx
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x53
jne 0x45ef91
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45ef66
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, dword [esi + 0x98]
add ecx, eax
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], ecx
jne case.0x45ea39.7
mov eax, esi
mov edx, dword [eax + 0xa4]
add edx, dword [eax + 0x7c]
mov dword [ebp + 0x24], edx
jmp case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov ecx, dword [esp + 0x80]
cmp byte [ecx + 0xc0], 0
je 0x45efb8
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
cmp dword [ebp + 0x24], 0x80000000
mov dword [ebp + 0x20], eax
jne case.0x45ea39.7
mov eax, dword [esp + 0x80]
mov ecx, dword [eax + 0x94]
add ecx, dword [eax + 0x7c]
mov dword [ebp + 0x24], ecx
jmp case.0x45ea39.7
mov al, byte [edi]
cmp al, 0x2b
jne 0x45f0c5
mov edx, dword [esp + 0x88]
mov edi, dword [esp + 0x80]
mov bl, byte [edx + 6]
mov ecx, edi
call fcn.00464020
mov esi, eax
test esi, esi
je 0x45f076
mov eax, dword [esp + 0x88]
mov al, byte [eax + 7]
call fcn.00464180
test eax, eax
jne 0x45f076
mov ebx, edi
push ebx
lea edi, [esp + 0x34]
call fcn.004641b0
mov ecx, dword [eax]
mov esi, dword [esp + 0x14]
mov edi, dword [eax + 4]
inc esi
mov dword [esp + 0x20], ecx
call fcn.0040c870
cmp byte [ebx + 0xc0], 0
je 0x45f053
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
add eax, edi
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], eax
jne case.0x45ea39.7
mov eax, ebx
mov ecx, dword [eax + 0x78]
add ecx, dword [esp + 0x20]
mov dword [ebp + 0x20], ecx
jmp case.0x45ea39.7
mov esi, dword [esp + 0x14]
inc esi
call fcn.0040c870
cmp byte [edi + 0xc0], 0
je 0x45f099
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, dword [edi + 0x8c]
add ecx, dword [edi + 0x84]
add ecx, eax
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], ecx
jne case.0x45ea39.7
mov edx, dword [edi + 0x80]
mov dword [ebp + 0x20], edx
jmp case.0x45ea39.7
call fcn.00408ee0
cmp al, 0x4d
jne 0x45f11e
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45f0f6
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [esi + 0x7c]
add edx, eax
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], edx
jne case.0x45ea39.7
mov eax, esi
mov ecx, dword [eax + 0x90]
add ecx, dword [eax + 0x78]
mov dword [ebp + 0x20], ecx
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x50
jne 0x45f179
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45f151
mov edx, dword [0x4a7c84]
push 0x60
push edx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, dword [esi + 0x84]
add ecx, eax
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], ecx
jne case.0x45ea39.7
mov edx, esi
mov eax, dword [edx + 0x80]
mov dword [ebp + 0x20], eax
jmp case.0x45ea39.7
mov al, byte [edi]
call fcn.00408ee0
cmp al, 0x53
jne 0x45f1d7
lea esi, [edi + 1]
call fcn.0040c870
mov esi, dword [esp + 0x80]
cmp byte [esi + 0xc0], 0
je 0x45f1ac
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edx, dword [esi + 0x9c]
add edx, eax
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], edx
jne case.0x45ea39.7
mov eax, esi
mov ecx, dword [eax + 0xa0]
add ecx, dword [eax + 0x78]
mov dword [ebp + 0x20], ecx
jmp case.0x45ea39.7
mov esi, edi
call fcn.0040c870
mov edx, dword [esp + 0x80]
cmp byte [edx + 0xc0], 0
je 0x45f1fe
mov ecx, dword [0x4a7c84]
push 0x60
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
cmp dword [ebp + 0x20], 0x80000000
mov dword [ebp + 0x24], eax
jne case.0x45ea39.7
mov eax, dword [esp + 0x80]
mov edx, dword [eax + 0x90]
add edx, dword [eax + 0x78]
mov dword [ebp + 0x20], edx
jmp case.0x45ea39.7
mov esi, edi
call fcn.004124f0
fstp dword [ebp + 0x30]
jmp case.0x45ea39.7
mov al, byte [edi - 1]
call fcn.00408ee0
cmp al, 0x45
jne 0x45f2da
push esi
push esi
push esi
push esi
mov eax, edi
call fcn.0046e3c0
add esp, 0x10
test eax, eax
je 0x45f2da
mov esi, edi
call fcn.004124c0
cmp byte [esp + 0x84], 0
je 0x45f267
or dword [ebp + 8], eax
jmp case.0x45ea39.7
or dword [ebp + 0xc], eax
mov eax, dword [esp + 0x18]
mov cl, byte [esp + 0x13]
mov ebx, dword [esp + 0x88]
mov byte [eax], cl
mov edi, dword [esp + 0x18]
nop
mov al, byte [edi]
cmp al, 0x20
je 0x45f28a
cmp al, 9
jne 0x45f28d
inc edi
jmp 0x45f280
cmp byte [edi], 0
mov dword [esp + 0x14], edi
jne 0x45d524
mov eax, dword [ebx]
test eax, eax
je 0x45f93f
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [ebp]
mov edx, dword [ebp + 4]
mov edi, eax
or eax, ecx
not edx
and eax, edx
mov dword [esp + 0x14], eax
movzx eax, byte [ebx + 4]
add eax, 0xfffffffe
mov dword [esp + 0x18], edi
cmp eax, 8
ja case.0x45f2d3.9
jmp dword [eax*4 + 0x45fb44]
dec edi
push edi
push str.Invalid_option.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
cmp dword [ebx], 0
je 0x45f309
call fcn.00408f90
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
dec edi
push edi
push str.Target_label_does_not_exist.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
cmp dword [ebx], esi
jne 0x45f2fa
dec edi
push edi
push str.This_control_type_should_not_have_an_associated_subroutine.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
dec edi
push edi
push str.A_controls_variable_must_be_global_or_static.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
cmp dword [ebx], 0
jne 0x45f2fa
dec edi
push edi
push str.The_same_variable_cannot_be_used_for_more_than_one_control.
mov ecx, 0x4a7ce0
call fcn.0042cde0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
mov eax, dword [esp + 0x14]
mov edx, eax
xor edx, edi
and edx, 0xf
xor eax, edx
mov dword [esp + 0x14], eax
jmp case.0x45f2d3.9
mov eax, dword [esp + 0x14]
and eax, 0xfffffff7
or eax, 7
mov dword [esp + 0x14], eax
jmp case.0x45f2d3.9
mov eax, dword [esp + 0x14]
test al, 1
je 0x45f3c3
and eax, 0xfffffff1
or eax, 1
jmp 0x45f3c6
and eax, 0xfffffff0
mov edi, dword [esp + 0x80]
mov dword [esp + 0x14], eax
mov eax, dword [edi + 0x1c]
cmp dword [esp + 0x8c], eax
jne 0x45f411
test byte [ebp + 4], 1
je 0x45f529
mov ecx, dword [edi + 4]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
push 0
push 1
push 0x401
push ecx
mov dword [edi + 0x1c], 0xffffffff
call esi
or dword [esp + 0x18], 1
mov edi, dword [esp + 0x18]
jmp 0x45f533
test cl, 1
je 0x45f529
cmp eax, dword [edi + 0x10]
jae 0x45f455
lea edx, [eax + eax*4]
mov eax, dword [edi + 0x18]
mov ecx, dword [eax + edx*4]
push 1
push 0xfffffffffffffff0
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
and eax, 0xfffe
push eax
mov eax, dword [edi + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [edi + 0x18]
mov ecx, dword [eax + edx*4]
push 0xf4
push ecx
call esi
jmp 0x45f45b
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esp + 0x8c]
mov edx, dword [edi + 4]
push 0
mov dword [edi + 0x1c], eax
add eax, 3
push eax
push 0x401
push edx
call esi
mov edi, dword [esp + 0x18]
jmp 0x45f533
mov eax, dword [esp + 0x14]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, eax
and ecx, 6
cmp cl, 6
jne 0x45f4a2
and eax, 0xfffffff6
or eax, 6
mov dword [esp + 0x14], eax
jmp 0x45f533
and eax, 0xfffffff3
or eax, 3
mov dword [esp + 0x14], eax
jmp 0x45f533
mov edx, dword [esp + 0x14]
and edx, 0xfffffff9
or edx, 9
mov dword [esp + 0x14], edx
jmp case.0x45f2d3.9
or dword [esp + 0x14], 3
jmp case.0x45f2d3.9
mov eax, dword [esp + 0x14]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
test al, 1
je 0x45f4e2
and eax, 0xfffffff1
or eax, 1
mov dword [esp + 0x14], eax
jmp 0x45f533
and eax, 0xfffffff2
or eax, 2
mov dword [esp + 0x14], eax
jmp 0x45f533
mov eax, dword [ebp + 0x14]
cmp eax, 0xffffffff
je case.0x45f2d3.9
cmp byte [0x4a84bb], 0
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
je 0x45f512
push 0
push eax
mov eax, dword [ebx]
push 0x108e
push eax
call esi
mov eax, dword [ebp + 0x14]
cmp eax, 4
je 0x45f533
mov ecx, dword [esp + 0x14]
and ecx, 0xfffffffc
or ecx, eax
mov dword [esp + 0x14], ecx
jmp 0x45f533
mov edi, dword [esp + 0x18]
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp + 0x64]
test eax, eax
je 0x45f59d
mov cl, byte [ebx + 4]
cmp cl, 0xc
jne 0x45f579
push 0
test eax, eax
jns 0x45f56e
mov edx, dword [ebx]
push 0
push 0xc5
push edx
call esi
cmp dword [ebp + 0x64], 0x80000000
je 0x45f59d
test byte [esp + 0x14], 4
jne 0x45f59d
and dword [esp + 0x14], 0xffefff7f
jmp 0x45f59d
push eax
mov eax, dword [ebx]
push 0xc5
push eax
jmp 0x45f59b
cmp cl, 0xf
jne 0x45f59d
test eax, eax
jns 0x45f590
mov ecx, dword [ebx]
push 0
push 0
push 0x403
push ecx
jmp 0x45f59b
mov edx, dword [ebx]
push 6
push eax
push 0x403
push edx
call esi
mov ecx, dword [esp + 0x14]
mov byte [esp + 0x88], 0
cmp edi, ecx
je 0x45f68f
mov al, byte [ebx + 4]
mov byte [esp + 0x88], 1
mov byte [esp + 0x8c], 0
cmp al, 4
je 0x45f640
cmp al, 9
je 0x45f5e8
cmp al, 0x12
jne 0x45f652
mov eax, dword [ebx]
push 0
push 0
push 0x408
push eax
call esi
mov dword [esp + 0x1c], eax
jmp 0x45f652
mov eax, ecx
and eax, 0x100000
je 0x45f628
test edi, 0x100000
jne 0x45f628
cmp dword [ebp + 0x68], 0
jge 0x45f61b
mov edx, dword [ebx]
lea ecx, [esp + 0x38]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x40]
sub eax, dword [esp + 0x38]
lea eax, [eax + eax*2]
mov dword [ebp + 0x68], eax
mov ecx, dword [ebp + 0x68]
push 0
push ecx
push 0x194
jmp 0x45f64d
test eax, eax
jne 0x45f652
test edi, 0x100000
je 0x45f652
push eax
push eax
mov eax, dword [ebx]
push 0x194
push eax
jmp 0x45f650
movzx ecx, word [esp + 0x14]
push 1
push ecx
push 0xf4
mov edx, dword [ebx]
push edx
call esi
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov eax, dword [esp + 0x14]
mov ecx, dword [ebx]
push eax
push 0xfffffffffffffff0
push ecx
call dword [sym.imp.USER32.dll_SetWindowLongA]
test eax, eax
jne 0x45f678
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x45f68f
mov edx, dword [ebx]
push 0xfffffffffffffff0
push edx
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp eax, edi
je 0x45f68f
mov byte [esp + 0x8c], 1
mov eax, dword [ebx]
push 0xffffffffffffffec
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edi, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
or edi, eax
not ecx
and edi, ecx
mov dword [esp + 0x84], eax
cmp eax, edi
je 0x45f709
cmp byte [esp + 0x88], 0
jne 0x45f6cb
mov byte [esp + 0x88], 1
mov byte [esp + 0x8c], 0
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov edx, dword [ebx]
push edi
push 0xffffffffffffffec
push edx
call dword [sym.imp.USER32.dll_SetWindowLongA]
test eax, eax
jne 0x45f6ed
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x45f709
mov eax, dword [ebx]
push 0xffffffffffffffec
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
cmp eax, dword [esp + 0x84]
je 0x45f709
mov byte [esp + 0x8c], 1
cmp byte [ebx + 4], 0xa
jne 0x45f767
mov ecx, dword [ebx]
push 0
push 0
push 0x1037
push ecx
call esi
mov edi, eax
mov eax, dword [ebp + 0x10]
cmp edi, eax
je 0x45f767
cmp byte [esp + 0x88], 0
jne 0x45f740
mov byte [esp + 0x88], 1
mov byte [esp + 0x8c], 0
mov edx, dword [ebx]
push eax
push 0
push 0x1036
push edx
call esi
mov eax, dword [ebx]
push 0
push 0
push 0x1037
push eax
call esi
cmp eax, edi
je 0x45f767
mov byte [esp + 0x8c], 1
cmp byte [esp + 0x88], 0
je 0x45f783
cmp byte [esp + 0x8c], 0
mov byte [esp + 0x84], 1
jne 0x45f78b
mov byte [esp + 0x84], 0
movzx eax, byte [ebx + 4]
add eax, 0xfffffff7
cmp eax, 0xf
ja case.0x45f7a2.13
movzx ecx, byte [eax + 0x45fb8c]
jmp dword [ecx*4 + 0x45fb68]
cmp byte [ebp + 0x18d], 0
je case.0x45f7a2.13
mov ecx, ebp
mov eax, ebx
call fcn.00463820
jmp case.0x45f7a2.13
mov eax, ebp
mov esi, ebx
call fcn.00463900
test dword [ebp + 4], 0x100
je case.0x45f7a2.13
mov edx, dword [ebx]
push 0
push 0
push 0x41d
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x45f7a2.13
mov eax, ebp
mov edi, ebx
call fcn.004639e0
jmp case.0x45f7a2.13
mov edi, ebp
mov esi, ebx
call fcn.00463a90
jmp case.0x45f7a2.13
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x80]
push eax
push ecx
mov eax, ebp
mov ecx, ebx
call fcn.00463ae0
mov edx, dword [esp + 0x18]
cmp edx, dword [esp + 0x14]
je case.0x45f7a2.13
mov eax, dword [esp + 0x1c]
mov ecx, dword [ebx]
push 0
push eax
push 0x402
push ecx
jmp 0x45f897
mov eax, dword [ebp + 0x13c]
test eax, eax
je case.0x45f7a2.13
lea edx, [ebp + 0x74]
push edx
push eax
mov eax, dword [ebx]
push 0xcb
push eax
call esi
mov byte [esp + 0x84], 1
jmp case.0x45f7a2.13
mov eax, dword [ebp + 0x13c]
test eax, eax
je case.0x45f7a2.13
mov edx, dword [ebx]
lea ecx, [ebp + 0x74]
push ecx
push eax
push 0x192
push edx
call esi
mov byte [esp + 0x84], 1
jmp case.0x45f7a2.13
mov eax, dword [ebp + 0x60]
cmp eax, 0xffffffff
je case.0x45f7a2.13
push eax
mov eax, dword [ebx]
push 0
push 0x2001
push eax
call esi
mov eax, dword [ebp + 0x188]
test eax, eax
je 0x45f8c8
mov edx, dword [ebx]
xor ecx, ecx
cmp eax, 3
sete cl
push 0
push ecx
push 0xb
push edx
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [ebp + 0x188], 3
jne 0x45f8c8
cmp byte [ebx + 4], 0xb
jne 0x45f8d2
cmp byte [esp + 0x84], 0
je 0x45f8df
mov eax, dword [ebx]
push 1
push 0
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
cmp byte [esp + 0x88], 0
je 0x45f93f
cmp byte [esp + 0x8c], 0
jne 0x45f93f
mov ecx, dword [0x4a2440]
cmp byte [ecx + 0xe4], 0
jne 0x45f928
mov edx, dword [0x4a6474]
push 1
push 0
push 0xffffffffffffffff
push 0x495ec8
push edx
call fcn.00471040
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x6c
ret 0x10
mov ecx, dword [0x4a8048]
push 0x4947f9
push 0
push 0x495ec8
call fcn.0042c870
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x6c
ret 0x10