Function at 0x45f670
Capabilities:
Get graphical window text
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov edx, dword [ebp + 0x14]
mov cl, byte [edx + 4]
mov eax, dword [ebp + 0xc]
sub esp, 0x3c
push ebx
push esi
push edi
cmp cl, 0xa
je 0x45f69b
cmp cl, 2
je 0x45f69b
mov edi, dword [ebp + 0x10]
add edx, 0x10
mov dword [esp + 0x1c], edx
jmp 0x45f6a5
mov edi, dword [ebp + 0x10]
lea ecx, [edi + 0x5c]
mov dword [esp + 0x1c], ecx
cmp word [eax], 0
mov dword [esp + 0x14], eax
jne 0x45f6f4
mov esi, dword [ebp + 0x14]
mov eax, dword [esi]
test eax, eax
je 0x461772
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, dword [edi]
mov edx, dword [edi + 4]
mov dword [esp + 0x18], eax
mov ebx, ecx
or ebx, eax
mov eax, edx
not eax
and ebx, eax
movzx eax, byte [esi + 4]
add eax, 0xfffffffe
cmp eax, 8
ja case.0x45f6e8.9
jmp dword [eax*4 + 0x461780]
mov eax, dword [esp + 0x14]
movzx ecx, word [eax]
cmp ecx, 0x2d
jne 0x45f703
mov byte [esp + 0x11], 0
jmp 0x45f70d
mov byte [esp + 0x11], 1
cmp ecx, 0x2b
jne 0x45f714
add eax, 2
mov dword [esp + 0x14], eax
cmp word [eax], 0
je 0x45f6af
mov esi, dword [esp + 0x14]
mov ebx, 0x49f4d4
mov eax, esi
call fcn.00409140
mov dword [esp + 0x18], eax
test eax, eax
jne 0x45f74f
mov eax, esi
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x45f737
sub eax, edx
sar eax, 1
lea edx, [esi + eax*2]
mov dword [esp + 0x18], edx
mov eax, edx
cmp eax, esi
je 0x461180
movzx ecx, word [eax]
xor edx, edx
push str.Section
push esi
mov dword [esp + 0x2c], ecx
mov word [eax], dx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f781
mov byte [edi + 0x190], 1
jmp case.0x460abe.7
push str.AltSubmit
push esi
call fcn.00488ac9
mov esi, dword [ebp + 0x14]
add esp, 8
test eax, eax
jne 0x45f7af
cmp byte [esi + 4], 0xc
je 0x45f7af
cmp byte [esp + 0x11], al
je 0x4600d3
or byte [esi + 5], 2
jmp case.0x460abe.7
mov ebx, dword [esp + 0x14]
push 7
push str.Checked
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45f84b
add ebx, 0xe
push str.Gray
push ebx
mov dword [esp + 0x1c], ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f7f8
movzx eax, byte [esp + 0x11]
neg eax
sbb eax, eax
and eax, 2
mov dword [edi + 0x6c], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 0xa
jne 0x45f817
cmp byte [esp + 0x11], 0
je 0x45f80e
or dword [edi + 0x10], 4
jmp case.0x460abe.7
and dword [edi + 0x10], 0xfffffffb
jmp case.0x460abe.7
cmp word [ebx], 0
je 0x45f83e
mov esi, dword [esp + 0x14]
call fcn.0040cbe0
mov dword [edi + 0x6c], eax
cmp eax, 0xffffffff
jne case.0x460abe.7
mov dword [edi + 0x6c], 2
jmp case.0x460abe.7
movzx ecx, byte [esp + 0x11]
mov dword [edi + 0x6c], ecx
jmp case.0x460abe.7
push 6
push str.Choose
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45f909
cmp byte [esp + 0x11], al
je case.0x460abe.7
movzx eax, byte [esi + 4]
add ebx, 0xc
sub eax, 0xd
mov dword [esp + 0x14], ebx
je 0x45f8c3
dec eax
je 0x45f89f
mov esi, ebx
call fcn.0040cbe0
mov dword [edi + 0x34], eax
cmp eax, 1
jge case.0x460abe.7
mov dword [edi + 0x34], 0
jmp case.0x460abe.7
lea eax, [edi + 0x140]
mov ecx, ebx
call fcn.0046f800
mov dword [edi + 0x180], eax
cmp eax, 3
jne case.0x460abe.7
or dword [edi], 2
jmp case.0x460abe.7
push str.None
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f8e1
mov dword [edi + 0x34], 2
jmp case.0x460abe.7
mov eax, dword [esp + 0x14]
push 1
lea esi, [edi + 0x140]
call fcn.0046f890
add esp, 4
test eax, eax
je case.0x460abe.7
mov dword [edi + 0x34], 1
jmp case.0x460abe.7
push str.Border
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f938
cmp byte [esp + 0x11], al
je 0x45f92c
or dword [edi], 0x800000
jmp case.0x460abe.7
or dword [edi + 4], 0x800000
jmp case.0x460abe.7
push str.VScroll
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f967
cmp byte [esp + 0x11], al
je 0x45f95b
or dword [edi], 0x200000
jmp case.0x460abe.7
or dword [edi + 4], 0x200000
jmp case.0x460abe.7
push 7
push str.HScroll
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45f9d7
cmp byte [esi + 4], 0xb
jne 0x45f997
cmp byte [esp + 0x11], al
je 0x45fe27
or dword [edi + 4], 0x8000
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45f9cb
or dword [edi], 0x100000
add ebx, 0xe
cmp word [ebx], 0
mov dword [esp + 0x14], ebx
je 0x45f9c0
mov esi, ebx
call fcn.0040cbe0
mov dword [edi + 0x68], eax
jmp case.0x460abe.7
or eax, 0xffffffff
mov dword [edi + 0x68], eax
jmp case.0x460abe.7
or dword [edi + 4], 0x100000
jmp case.0x460abe.7
push str.Tabstop
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45f9fa
cmp byte [esp + 0x11], al
je 0x45fa12
or dword [edi], 0x10000
jmp case.0x460abe.7
push str.NoTab
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fa1e
cmp byte [esp + 0x11], al
je 0x45f9ef
or dword [edi + 4], 0x10000
jmp case.0x460abe.7
push str.Group
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fa46
cmp byte [esp + 0x11], 0
je 0x45fcc0
or dword [edi], 0x20000
jmp case.0x460abe.7
push str.Redraw
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fa6f
xor edx, edx
cmp byte [esp + 0x11], dl
sete dl
add edx, 3
mov dword [edi + 0x188], edx
jmp case.0x460abe.7
push 8
push str.Disabled
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fada
cmp word [ebx + 0x10], ax
lea esi, [ebx + 0x10]
je 0x45fa9e
call fcn.0040cbe0
test eax, eax
jne 0x45fa9e
cmp byte [esp + 0x11], al
sete cl
jmp 0x45faa2
mov cl, byte [esp + 0x11]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
test eax, eax
je 0x45fabf
xor edx, edx
test cl, cl
sete dl
push edx
push eax
call dword [sym.imp.USER32.dll_EnableWindow]
jmp case.0x460abe.7
test cl, cl
je 0x45face
or dword [edi], 0x8000000
jmp case.0x460abe.7
or dword [edi + 4], 0x8000000
jmp case.0x460abe.7
push 6
push str.Hidden
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fb49
cmp word [ebx + 0xc], ax
lea esi, [ebx + 0xc]
je 0x45fb09
call fcn.0040cbe0
test eax, eax
jne 0x45fb09
cmp byte [esp + 0x11], al
sete cl
jmp 0x45fb0d
mov cl, byte [esp + 0x11]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
test eax, eax
je 0x45fb2e
xor edx, edx
test cl, cl
setne dl
dec edx
and edx, 4
push edx
push eax
call dword [sym.imp.USER32.dll_ShowWindow]
jmp case.0x460abe.7
test cl, cl
je 0x45fb3e
or dword [edi + 4], 0x10000000
jmp case.0x460abe.7
or dword [edi], 0x10000000
jmp case.0x460abe.7
push str.Wrap
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fbca
movzx eax, byte [esi + 4]
dec eax
cmp eax, 0x12
ja case.0x460abe.7
movzx eax, byte [eax + 0x4617bc]
jmp dword [eax*4 + 0x4617a4]
cmp byte [esp + 0x11], 0
je 0x45fb87
or dword [edi + 4], 0x1f
jmp case.0x460abe.7
mov ecx, dword [edi]
and ecx, 0xffffffec
or ecx, 0xc
mov dword [edi], ecx
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45fba9
or dword [edi + 4], 0x100080
jmp case.0x460abe.7
or dword [edi], 0x80
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45ffe9
or dword [edi], 0x200
jmp case.0x460abe.7
push 0xa
push str.Background
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fc89
movzx eax, byte [esi + 4]
add ebx, 0x14
add eax, 0xfffffff6
mov dword [esp + 0x14], ebx
cmp eax, 0xd
ja case.0x45fbfc.12
movzx edx, byte [eax + 0x4617d8]
jmp dword [edx*4 + 0x4617d0]
cmp byte [esp + 0x11], 0
je 0x45fc3d
mov esi, dword [esp + 0x14]
call fcn.00470ef0
mov dword [edi + 0x60], eax
cmp eax, 0xffffffff
jne case.0x460abe.7
push 0x10
mov eax, esi
push 0
push eax
call fcn.0048a0eb
add esp, 0xc
mov ecx, eax
call fcn.00430910
mov dword [edi + 0x60], eax
jmp case.0x460abe.7
mov dword [edi + 0x60], 0xff000000
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45fc78
and byte [esi + 5], 0xdf
push str.Trans
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fc6f
or byte [esi + 5], 0x40
jmp case.0x460abe.7
and byte [esi + 5], 0xbf
jmp case.0x460abe.7
mov cl, byte [esi + 5]
and cl, 0xbf
or cl, 0x20
mov byte [esi + 5], cl
jmp case.0x460abe.7
push str.Group
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
je 0x45fa30
push str.Theme
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fccc
mov dl, byte [esp + 0x11]
mov byte [edi + 0x191], dl
jmp case.0x460abe.7
or dword [edi + 4], 0x20000
jmp case.0x460abe.7
push 4
push str.Hwnd
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fcf9
push 3
push eax
add ebx, 8
push ebx
mov ecx, 0x4c3fc0
call fcn.004205f0
mov dword [edi + 0x1c], eax
jmp case.0x460abe.7
push 4
push str.Icon
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fd56
add ebx, 8
cmp byte [esi + 4], 0xa
mov dword [esp + 0x14], ebx
jne 0x45fd3a
push str.Small
push ebx
call fcn.00488ac9
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [edi + 0x14], eax
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je case.0x460abe.7
mov esi, dword [esp + 0x14]
call fcn.0040cbe0
mov dword [edi + 0x70], eax
jmp case.0x460abe.7
push str.Report
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fd74
mov dword [edi + 0x14], 1
jmp case.0x460abe.7
push str.List
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fd92
mov dword [edi + 0x14], 3
jmp case.0x460abe.7
push str.Tile
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fdbc
cmp byte [0x4c4de3], al
je case.0x460abe.7
mov dword [edi + 0x14], 4
jmp case.0x460abe.7
cmp byte [esi + 4], 0xa
jne 0x45fe71
push 0x4a6560
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fdee
cmp byte [esp + 0x11], al
je 0x460179
or dword [edi + 4], 0x4000
jmp case.0x460abe.7
cmp byte [esi + 4], 0xa
jne 0x45fe71
push 6
push str.NoSort
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fe41
push 0x4a6560
add ebx, 0xc
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fe32
cmp byte [esp + 0x11], al
je 0x45f98b
or dword [edi], 0x8000
jmp case.0x460abe.7
mov al, byte [esp + 0x11]
mov byte [edi + 0x192], al
jmp case.0x460abe.7
cmp byte [esi + 4], 0xa
jne 0x45fe71
push str.Grid
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45fe71
cmp byte [esp + 0x11], al
je 0x45fe68
or dword [edi + 0x10], 1
jmp case.0x460abe.7
and dword [edi + 0x10], 0xfffffffe
jmp case.0x460abe.7
push 5
push str.Count
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45fe99
mov esi, dword [esp + 0x14]
add esi, 0xa
call fcn.0040cbe0
mov dword [edi + 0x64], eax
jmp case.0x460abe.7
push 2
push 0x4b7c24
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45feea
push eax
push eax
push eax
add ebx, 4
push eax
mov eax, ebx
mov dword [esp + 0x24], ebx
call fcn.0046fc10
add esp, 0x10
test eax, eax
je case.0x460abe.7
mov esi, ebx
call fcn.00412960
cmp byte [esp + 0x11], 0
je 0x45fee0
or dword [edi + 0x10], eax
jmp case.0x460abe.7
not eax
and dword [edi + 0x10], eax
jmp case.0x460abe.7
push 9
push str.ImageList
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x45ff1c
cmp byte [esp + 0x11], al
je case.0x460abe.7
mov esi, dword [esp + 0x14]
add esi, 0x12
call fcn.00412960
mov dword [edi + 0x18], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 4
jne 0x45ff47
push str.Default
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45ff47
cmp byte [esp + 0x11], 0
je case.0x4608ab.11
or dword [edi], 1
jmp case.0x460abe.7
cmp byte [esi + 4], 5
jne 0x45ff71
push str.Check3
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x45ff71
cmp byte [esp + 0x11], al
je 0x46048a
or dword [edi], 6
jmp case.0x460abe.7
push str.ReadOnly
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460009
movzx eax, byte [esi + 4]
add eax, 0xfffffff7
cmp eax, 3
ja case.0x460abe.7
jmp dword [eax*4 + 0x4617e8]
mov ecx, dword [ebp + 0x14]
mov eax, dword [ecx]
test eax, eax
je case.0x46002b.9
movzx edx, byte [esp + 0x11]
push 0
push edx
push 0xcf
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45ffd2
or dword [edi], 0x800
jmp case.0x460abe.7
or dword [edi + 4], 0x800
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45fbbf
or dword [edi + 4], 0x200
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x4601a8
or dword [edi + 4], 8
jmp case.0x460abe.7
push str.Multi
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460051
movzx eax, byte [esi + 4]
add eax, 0xfffffff7
cmp eax, 5
ja case.0x460abe.7
jmp dword [eax*4 + 0x4617f8]
cmp byte [esp + 0x11], 0
je 0x460048
or dword [edi], 4
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x460039
or dword [edi + 4], 4
jmp case.0x460abe.7
cmp byte [esi + 4], 0xc
jne 0x4600dc
push str.WantReturn
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x46008a
cmp byte [esp + 0x11], al
je 0x46007e
or dword [edi], 0x1000
jmp case.0x460abe.7
or dword [edi + 4], 0x1000
jmp case.0x460abe.7
cmp byte [esi + 4], 0xc
jne 0x4600dc
push str.WantTab
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4600b1
cmp byte [esp + 0x11], al
je 0x4600ff
or byte [esi + 5], 0x80
jmp case.0x460abe.7
cmp byte [esi + 4], 0xc
jne 0x4600dc
push str.WantCtrlA
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4600dc
cmp byte [esp + 0x11], al
je 0x45f7a6
and byte [esi + 5], 0xfd
jmp case.0x460abe.7
mov al, byte [esi + 4]
cmp al, 0xa
je 0x4600e7
cmp al, 0xb
jne 0x460108
push str.WantF2
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460108
cmp byte [esp + 0x11], al
je 0x4600a8
and byte [esi + 5], 0x7f
jmp case.0x460abe.7
cmp byte [esi + 4], 0xc
jne 0x460136
push str.Number
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460136
cmp byte [esp + 0x11], 0
je 0x4601c5
or dword [edi], 0x2000
jmp case.0x460abe.7
push str.Lowercase
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460184
mov al, byte [esi + 4]
cmp al, 0xc
jne 0x460162
cmp byte [esp + 0x11], 0
je 0x4603d1
or dword [edi], 0x10
jmp case.0x460abe.7
cmp al, 8
je case.0x45ff97.9
cmp al, 7
jne case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x45fde2
or dword [edi], 0x4000
jmp case.0x460abe.7
push str.Uppercase
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4601d1
mov al, byte [esi + 4]
cmp al, 0xc
jne 0x4601b0
cmp byte [esp + 0x11], 0
je case.0x4608ab.16
or dword [edi], 8
jmp case.0x460abe.7
cmp al, 8
je case.0x45fb70.3
cmp al, 7
jne case.0x460abe.7
jmp case.0x45fb70.3
or dword [edi + 4], 0x2000
jmp case.0x460abe.7
cmp byte [esi + 4], 0xc
jne 0x460261
push 8
push str.Password
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x460261
cmp byte [esp + 0x11], 0
mov ax, word [ebx + 0x10]
mov word [edi + 0x18c], ax
je 0x46023e
or dword [edi], 0x20
cmp dword [esi], 0
je case.0x460abe.7
test ax, ax
jne 0x46021e
mov ecx, 0x2a
mov word [edi + 0x18c], cx
movzx edx, word [edi + 0x18c]
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax]
push 0
push edx
push 0xcc
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x460abe.7
or dword [edi + 4], 0x20
mov esi, dword [esi]
test esi, esi
je case.0x460abe.7
push 0
push 0
push 0xcc
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x460abe.7
push 5
push str.Limit
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x4602ad
cmp byte [esp + 0x11], al
je 0x4602a1
add ebx, 0xa
mov dword [esp + 0x14], ebx
cmp word [ebx], ax
je 0x460296
mov esi, ebx
call fcn.0040cbe0
mov dword [edi + 0x64], eax
jmp case.0x460abe.7
or eax, 0xffffffff
mov dword [edi + 0x64], eax
jmp case.0x460abe.7
mov dword [edi + 0x64], SysStringLen
jmp case.0x460abe.7
cmp byte [esi + 4], 8
jne 0x4602d7
push str.Simple
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4602d7
cmp byte [esp + 0x11], al
je case.0x4608ab.11
or dword [edi], 1
jmp case.0x460abe.7
push 4
push str.Sort
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x46034b
movzx eax, byte [esi + 4]
add eax, 0xfffffff9
cmp eax, 3
ja case.0x460abe.7
jmp dword [eax*4 + 0x461810]
cmp byte [esp + 0x11], 0
je case.0x4609a9.11
or dword [edi], 2
jmp case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x460342
mov edx, dword [esp + 0x14]
add edx, 8
push str.Desc
push edx
call fcn.00488ac9
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffff0
add eax, 0x20
or dword [edi], eax
jmp case.0x460abe.7
or dword [edi + 4], 0x30
jmp case.0x460abe.7
cmp byte [esi + 4], 0x10
jne 0x46037c
push str.Horz
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x46037c
cmp byte [esp + 0x11], al
je 0x460502
mov eax, dword [edi]
and eax, 0xffffffef
or eax, 0x40
mov dword [edi], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x460421
push str.Invert
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4603ab
cmp byte [esp + 0x11], al
je 0x4600ff
or byte [esi + 5], 0x80
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x460421
push str.NoTicks
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4603da
cmp byte [esp + 0x11], al
je 0x4603d1
or dword [edi], 0x10
jmp case.0x460abe.7
or dword [edi + 4], 0x10
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x460421
push 0xc
push str.TickInterval
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x460421
cmp byte [esp + 0x11], al
je 0x460411
mov esi, dword [esp + 0x14]
or dword [edi], 1
add esi, 0x18
call fcn.0040cbe0
mov dword [edi + 0x40], eax
jmp case.0x460abe.7
or dword [edi + 4], 1
mov dword [edi + 0x40], 0xffffffff
jmp case.0x460abe.7
push 4
push str.Line
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x460493
mov al, byte [esi + 4]
add ebx, 8
mov dword [esp + 0x14], ebx
cmp al, 0x11
jne 0x46045d
cmp byte [esp + 0x11], 0
je case.0x460abe.7
mov esi, ebx
call fcn.0040cbe0
mov dword [edi + 0x44], eax
jmp case.0x460abe.7
cmp al, 0xb
jne case.0x460abe.7
mov ecx, dword [esp + 0x14]
mov ax, word [ecx]
call fcn.00409110
cmp ax, 0x53
jne case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x46048a
or dword [edi], 6
jmp case.0x460abe.7
or dword [edi + 4], 6
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x46050b
push 4
push str.Page
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x4604cb
cmp byte [esp + 0x11], al
je case.0x460abe.7
mov esi, dword [esp + 0x14]
add esi, 8
call fcn.0040cbe0
mov dword [edi + 0x48], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x46050b
push 5
push str.Thick
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x46050b
cmp byte [esp + 0x11], al
je 0x460502
mov esi, dword [esp + 0x14]
or dword [edi], 0x40
add esi, 0xa
call fcn.0040cbe0
mov dword [edi + 0x4c], eax
jmp case.0x460abe.7
or dword [edi + 4], 0x40
jmp case.0x460abe.7
push 7
push str.ToolTip
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x4605ae
cmp byte [esi + 4], 0x11
jne case.0x460abe.7
cmp byte [esp + 0x11], al
je 0x460af0
mov edx, dword [esp + 0x14]
mov dword [edi + 0x50], 0xffffffff
mov ax, word [edx + 0xe]
call fcn.00409110
movzx eax, ax
add eax, 0xffffffbe
cmp eax, 0x12
ja case.0x46055d.67
movzx eax, byte [eax + 0x461834]
jmp dword [eax*4 + 0x461820]
mov dword [edi + 0x50], 0
jmp case.0x46055d.67
mov dword [edi + 0x50], 1
jmp case.0x46055d.67
mov dword [edi + 0x50], 2
jmp case.0x46055d.67
mov dword [edi + 0x50], 3
mov eax, dword [edi + 0x50]
test eax, eax
jns 0x46059f
or dword [edi], 0x100
mov dword [edi + 0x50], 0
jmp case.0x460abe.7
inc eax
or dword [edi], 0x100
mov dword [edi + 0x50], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 0x11
jne 0x46067c
push 5
push str.Buddy
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x46067c
cmp byte [esp + 0x11], al
je case.0x460abe.7
mov eax, dword [esp + 0x14]
add eax, 0xa
mov dword [esp + 0x14], eax
movzx eax, word [eax]
mov dword [esp + 0x20], eax
test ax, ax
je case.0x460abe.7
mov ecx, dword [esp + 0x14]
push 0
push 1
push 0
add ecx, 2
push 0
push ecx
mov ecx, 0x4c3fc0
call fcn.00420650
mov ebx, eax
mov dword [esp + 0x14], eax
test ebx, ebx
je case.0x460abe.7
cmp byte [ebx + 0x17], 0
jne 0x46062a
mov ebx, dword [ebx + 0xc]
mov dword [esp + 0x14], ebx
test byte [ebx + 0x16], 2
jne case.0x460abe.7
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
lea edx, [ecx - 1]
cmp edx, ecx
jae case.0x460abe.7
lea esi, [edx + edx*4]
add esi, esi
add esi, esi
lea esp, [esp]
mov ecx, dword [eax + 0x18]
add ecx, esi
cmp dword [ecx + 8], ebx
jne 0x46066e
cmp word [esp + 0x20], 0x31
mov ebx, dword [esp + 0x14]
jne 0x46066b
mov dword [edi + 0x54], ecx
jmp 0x46066e
mov dword [edi + 0x58], ecx
dec edx
sub esi, 0x14
cmp edx, dword [eax + 0x10]
jb 0x460650
jmp case.0x460abe.7
push str.Vertical
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4606c3
mov al, byte [esi + 4]
cmp al, 0x11
jne 0x4606a8
cmp byte [esp + 0x11], 0
je case.0x4609a9.11
or dword [edi], 2
jmp case.0x460abe.7
cmp al, 0x12
jne case.0x460abe.7
cmp byte [esp + 0x11], 0
je 0x460048
or dword [edi], 4
jmp case.0x460abe.7
push 5
push str.Range
push ebx
call fcn.00489302
add esp, 0xc
test eax, eax
jne 0x460792
cmp byte [esp + 0x11], al
je case.0x460abe.7
mov eax, dword [esp + 0x14]
add eax, 0xa
cmp word [eax], 0
mov dword [esp + 0x14], eax
je case.0x460abe.7
mov edx, dword [ebp + 0x14]
mov al, byte [edx + 4]
cmp al, 0xd
je 0x460741
cmp al, 0xe
je 0x460741
mov esi, dword [esp + 0x14]
mov byte [edi + 0x18e], 1
call fcn.0040cbe0
push 0x2d
add esi, 2
push esi
mov dword [edi + 0x38], eax
call fcn.00489891
add esp, 8
test eax, eax
je case.0x460abe.7
lea esi, [eax + 2]
call fcn.0040cbe0
mov dword [edi + 0x3c], eax
jmp case.0x460abe.7
mov ecx, dword [esp + 0x14]
lea esi, [edi + 0x160]
mov eax, esi
call fcn.0046f800
mov dword [edi + 0x184], eax
test eax, eax
je case.0x460abe.7
mov ecx, dword [ebp + 0x14]
mov ecx, dword [ecx]
test ecx, ecx
je case.0x460abe.7
push esi
push eax
mov eax, dword [ebp + 0x14]
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_SendMessageW]
jmp case.0x460abe.7
cmp byte [esi + 4], 0x12
jne 0x4607bc
push str.Smooth
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4607bc
cmp byte [esp + 0x11], al
je case.0x4608ab.11
or dword [edi], 1
jmp case.0x460abe.7
push str.Buttons
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460806
mov al, byte [esi + 4]
cmp al, 0x13
jne 0x4607eb
cmp byte [esp + 0x11], 0
je 0x460af0
or dword [edi], 0x100
jmp case.0x460abe.7
cmp al, 0xb
jne case.0x460abe.7
cmp byte [esp + 0x11], 0
je case.0x4608ab.11
or dword [edi], 1
jmp case.0x460abe.7
cmp byte [esi + 4], 0x13
jne 0x460833
push str.Bottom
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460833
cmp byte [esp + 0x11], al
je case.0x4609a9.11
or dword [edi], 2
or dword [edi + 4], 0x80
jmp case.0x460abe.7
push str.Center
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4608fe
movzx eax, byte [esi + 4]
dec eax
cmp byte [esp + 0x11], 0
je 0x46089b
cmp eax, 0x10
ja case.0x460abe.7
movzx ecx, byte [eax + 0x46185c]
jmp dword [ecx*4 + 0x461848]
or dword [edi], 8
or dword [edi + 4], 4
jmp case.0x460abe.7
or dword [edi], 1
or dword [edi + 4], 0x1e
jmp case.0x460abe.7
or dword [edi], 0x300
jmp case.0x460abe.7
or dword [edi], 1
or dword [edi + 4], 2
jmp case.0x460abe.7
cmp eax, 0x10
ja case.0x460abe.7
movzx edx, byte [eax + 0x461884]
jmp dword [edx*4 + 0x461870]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax]
test eax, eax
je 0x4608dc
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0x300
cmp eax, 0x300
jne case.0x460abe.7
or dword [edi + 4], eax
jmp case.0x460abe.7
mov eax, dword [edi]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
jne case.0x460abe.7
and eax, 0xfffffcff
mov dword [edi], eax
jmp case.0x460abe.7
push str.Right
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460a21
movzx eax, byte [esi + 4]
dec eax
cmp byte [esp + 0x11], 0
je 0x460999
cmp eax, 0x15
ja case.0x460abe.7
movzx edx, byte [eax + 0x4618b8]
jmp dword [edx*4 + 0x461898]
or dword [edi + 4], 8
or dword [edi], 4
jmp case.0x460abe.7
or dword [edi], 2
or dword [edi + 4], 0x1d
jmp case.0x460abe.7
or dword [edi], 0x200
or dword [edi + 4], 0x100
mov eax, dword [ebp + 0x14]
mov al, byte [eax + 4]
mov ecx, dword [edi]
cmp al, 5
je 0x460970
cmp al, 6
jne case.0x460abe.7
or ecx, 0x20
mov dword [edi], ecx
jmp case.0x460abe.7
or dword [edi], 2
or dword [edi + 4], 1
jmp case.0x460abe.7
or dword [edi], 0x282
jmp case.0x460abe.7
or dword [edi], 0x20
jmp case.0x460abe.7
cmp eax, 0x12
ja case.0x460abe.7
movzx ecx, byte [eax + 0x4618ec]
jmp dword [ecx*4 + 0x4618d0]
or dword [edi + 4], 0x20
jmp case.0x460abe.7
or dword [edi], 4
or dword [edi + 4], 8
jmp case.0x460abe.7
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
test eax, eax
je 0x4609f3
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0x300
cmp eax, 0x300
je case.0x460abe.7
or dword [edi + 4], 0x200
jmp case.0x460abe.7
mov eax, dword [edi]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
je case.0x460abe.7
and eax, 0xfffffdff
mov dword [edi], eax
jmp case.0x460abe.7
or dword [edi + 4], 0x82
jmp case.0x460abe.7
push str.Left
push ebx
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x460b1e
cmp byte [esp + 0x11], 0
movzx eax, byte [esi + 4]
je 0x460aab
dec eax
cmp eax, 0x12
ja case.0x460abe.7
movzx edx, byte [eax + 0x461920]
jmp dword [edx*4 + 0x461900]
or dword [edi + 4], 4
or dword [edi], 8
jmp case.0x460abe.7
or dword [edi + 4], 0x200
or dword [edi], 0x100
mov eax, dword [ebp + 0x14]
mov al, byte [eax + 4]
mov ecx, dword [edi + 4]
cmp al, 5
je 0x460a88
cmp al, 6
jne case.0x460abe.7
or ecx, 0x20
mov dword [edi + 4], ecx
jmp case.0x460abe.7
or dword [edi + 4], 3
jmp case.0x460abe.7
or dword [edi], 0x280
or dword [edi + 4], 2
jmp case.0x460abe.7
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x460abe.7
movzx ecx, byte [eax + 0x461944]
jmp dword [ecx*4 + 0x461934]
or dword [edi + 4], 0xc
jmp case.0x460abe.7
mov edx, dword [ebp + 0x14]
mov eax, dword [edx]
test eax, eax
je 0x460afc
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
and eax, 0x300
cmp eax, 0x300
je case.0x460abe.7
or dword [edi + 4], 0x100
jmp case.0x460abe.7
mov eax, dword [edi]
mov ecx, eax
and ecx, 0x300
cmp ecx, 0x300
je case.0x460abe.7
and eax, 0xfffffeff
mov dword [edi], eax
jmp case.0x460abe.7
push 0
push 0
push 1
push 0
mov eax, ebx
call fcn.0046fc10
add esp, 0x10
test eax, eax
je 0x460b6b
mov esi, dword [esp + 0x14]
call fcn.00412960
cmp byte [esp + 0x11], 0
je 0x460b57
or dword [edi], eax
mov dx, word [esp + 0x24]
mov eax, dword [esp + 0x18]
mov word [eax], dx
jmp 0x461179
or dword [edi + 4], eax
mov dx, word [esp + 0x24]
mov eax, dword [esp + 0x18]
mov word [eax], dx
jmp 0x461179
mov ax, word [ebx]
add ebx, 2
cmp word [ebx], 0
mov dword [esp + 0x14], ebx
jne 0x460c01
call fcn.00409110
movzx eax, ax
cmp eax, 0x43
je 0x460bca
cmp eax, 0x47
je 0x460bb2
cmp eax, 0x56
jne 0x4611a5
mov cx, word [esp + 0x24]
mov edx, dword [esp + 0x18]
mov dword [esi + 8], 0
mov word [edx], cx
jmp 0x461179
mov cx, word [esp + 0x24]
mov edx, dword [esp + 0x18]
mov dword [esi + 0xc], 0
mov word [edx], cx
jmp 0x461179
cmp byte [esp + 0x11], 0
jne 0x460bf0
cmp byte [esi + 4], 2
je 0x460bf0
mov eax, dword [esp + 0x1c]
cmp dword [eax], 0xff000000
je 0x460bf0
mov dword [eax], 0xff000000
mov byte [edi + 0x18f], 1
mov cx, word [esp + 0x24]
mov edx, dword [esp + 0x18]
mov word [edx], cx
jmp 0x461179
call fcn.00409110
movzx eax, ax
add eax, 0xffffffbd
cmp eax, 0x16
ja case.0x460c1c.68
movzx eax, byte [eax + 0x461980]
jmp dword [eax*4 + 0x461958]
mov al, byte [esi + 4]
cmp al, 3
je 0x4611f3
cmp al, 0x12
je 0x4611f3
mov edi, ebx
mov eax, 0x4c3fc0
call fcn.00419c70
mov esi, eax
test esi, esi
jne 0x460c6b
mov edi, dword [esp + 0x14]
push 0x4b7418
push edi
call fcn.00488ac9
add esp, 8
test eax, eax
jne 0x4611c1
mov eax, dword [ebp + 0x14]
or byte [eax + 5], 1
jmp 0x460c6e
mov eax, dword [ebp + 0x14]
mov cl, byte [eax + 4]
cmp cl, 1
je 0x460c7b
cmp cl, 2
jne 0x460c84
mov ecx, dword [ebp + 0x10]
or dword [ecx], 0x100
mov edi, dword [ebp + 0x10]
mov dword [eax + 0xc], esi
jmp case.0x460abe.7
cmp dword [edi + 0x13c], 0x32
jae case.0x460abe.7
mov esi, dword [esp + 0x14]
call fcn.00412960
mov ecx, dword [edi + 0x13c]
mov dword [edi + ecx*4 + 0x74], eax
inc dword [edi + 0x13c]
jmp case.0x460abe.7
push 3
push 0
push ebx
mov ecx, 0x4c3fc0
call fcn.004205f0
mov dword [esp + 0x14], eax
test eax, eax
je 0x461214
cmp byte [eax + 0x17], 0
jne 0x460ce2
mov eax, dword [eax + 0xc]
mov dword [esp + 0x14], eax
mov dl, byte [eax + 0x16]
and dl, 0x22
cmp dl, 2
je 0x46121f
mov ecx, dword [ebp + 8]
xor edx, edx
cmp dword [ecx + 0x10], edx
jbe 0x460d19
mov ecx, dword [ecx + 0x18]
add ecx, 8
cmp dword [ecx], eax
je 0x46123b
mov eax, dword [ebp + 8]
inc edx
add ecx, 0x14
cmp edx, dword [eax + 0x10]
mov eax, dword [esp + 0x14]
jb 0x460d01
mov dword [esi + 8], eax
jmp case.0x460abe.7
cmp byte [esi + 4], 2
je case.0x460abe.7
mov esi, dword [esp + 0x14]
call fcn.00470ef0
cmp eax, 0xffffffff
jne 0x460d4d
push 0x10
push 0
push esi
call fcn.0048a0eb
add esp, 0xc
mov ecx, eax
call fcn.00430910
mov ecx, dword [esp + 0x1c]
cmp dword [ecx], eax
jne 0x460d60
lea edx, [edi + 0x5c]
cmp ecx, edx
jne case.0x460abe.7
mov dword [ecx], eax
mov byte [edi + 0x18f], 1
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
mov esi, dword [esp + 0x14]
cmp ax, 0x50
jne 0x460d99
add esi, 2
call fcn.0040cbe0
mov ecx, dword [ebp + 8]
add eax, dword [ecx + 0x88]
mov dword [edi + 0x28], eax
jmp case.0x460abe.7
call fcn.0040cbe0
mov dword [edi + 0x28], eax
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
mov esi, dword [esp + 0x14]
cmp ax, 0x50
jne 0x460dd1
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x8c]
mov dword [edi + 0x2c], eax
jmp case.0x460abe.7
call fcn.0040cbe0
mov dword [edi + 0x2c], eax
jmp case.0x460abe.7
movzx eax, word [ebx]
cmp eax, 0x2b
jne 0x460e91
mov bl, byte [esi + 6]
mov ecx, dword [ebp + 8]
call fcn.00465ca0
mov dword [esp + 0x20], eax
test eax, eax
je 0x460e56
mov al, byte [esi + 7]
call fcn.00465e20
test eax, eax
jne 0x460e56
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x20]
push eax
lea edi, [esp + 0x2c]
call fcn.00465e50
mov esi, dword [esp + 0x14]
mov edi, dword [eax]
mov ebx, dword [eax + 4]
add esi, 2
call fcn.0040cbe0
lea ecx, [edi + eax]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x24], 0x80000000
mov dword [eax + 0x20], ecx
jne 0x46116b
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x7c]
mov ecx, dword [ebp + 0x10]
add eax, ebx
mov dword [ecx + 0x24], eax
mov edi, ecx
jmp case.0x460abe.7
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, eax
mov eax, dword [ebp + 8]
add edx, dword [eax + 0x88]
add edx, dword [eax + 0x80]
cmp dword [edi + 0x24], 0x80000000
mov dword [edi + 0x20], edx
jne case.0x460abe.7
mov ecx, dword [eax + 0x84]
mov dword [edi + 0x24], ecx
jmp case.0x460abe.7
call fcn.00409110
cmp ax, 0x4d
jne 0x460ed1
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x78]
cmp dword [edi + 0x24], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0x94]
add ecx, dword [eax + 0x7c]
mov dword [edi + 0x24], ecx
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
cmp ax, 0x50
jne 0x460f14
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x80]
cmp dword [edi + 0x24], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0x84]
mov dword [edi + 0x24], ecx
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
mov esi, dword [esp + 0x14]
cmp ax, 0x53
jne 0x460f5a
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x98]
cmp dword [edi + 0x24], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0xa4]
add ecx, dword [eax + 0x7c]
mov dword [edi + 0x24], ecx
jmp case.0x460abe.7
call fcn.0040cbe0
cmp dword [edi + 0x24], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x460abe.7
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x94]
add edx, dword [eax + 0x7c]
mov dword [edi + 0x24], edx
jmp case.0x460abe.7
movzx eax, word [ebx]
cmp eax, 0x2b
jne 0x461036
mov bl, byte [esi + 6]
mov ecx, dword [ebp + 8]
call fcn.00465ca0
mov dword [esp + 0x20], eax
test eax, eax
je 0x460ffb
mov al, byte [esi + 7]
call fcn.00465e20
test eax, eax
jne 0x460ffb
mov eax, dword [ebp + 8]
mov esi, dword [esp + 0x20]
push eax
lea edi, [esp + 0x34]
call fcn.00465e50
mov esi, dword [esp + 0x14]
mov ebx, dword [eax]
mov edi, dword [eax + 4]
add esi, 2
call fcn.0040cbe0
lea ecx, [edi + eax]
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x20], 0x80000000
mov dword [eax + 0x24], ecx
jne 0x46116b
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x78]
mov ecx, dword [ebp + 0x10]
add eax, ebx
mov dword [ecx + 0x20], eax
mov edi, ecx
jmp case.0x460abe.7
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, eax
mov eax, dword [ebp + 8]
add edx, dword [eax + 0x8c]
add edx, dword [eax + 0x84]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x24], edx
jne case.0x460abe.7
mov ecx, dword [eax + 0x80]
mov dword [edi + 0x20], ecx
jmp case.0x460abe.7
call fcn.00409110
cmp ax, 0x4d
jne 0x461076
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x7c]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x24], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0x90]
add ecx, dword [eax + 0x78]
mov dword [edi + 0x20], ecx
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
cmp ax, 0x50
jne 0x4610b9
mov esi, dword [esp + 0x14]
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x84]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x24], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0x80]
mov dword [edi + 0x20], ecx
jmp case.0x460abe.7
mov ax, word [ebx]
call fcn.00409110
mov esi, dword [esp + 0x14]
cmp ax, 0x53
jne 0x4610fc
add esi, 2
call fcn.0040cbe0
mov edx, dword [ebp + 8]
add eax, dword [edx + 0x9c]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x24], eax
jne case.0x460abe.7
mov eax, edx
mov ecx, dword [eax + 0xa0]
add ecx, dword [eax + 0x78]
mov dword [edi + 0x20], ecx
jmp case.0x460abe.7
call fcn.0040cbe0
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x24], eax
jne case.0x460abe.7
mov eax, dword [ebp + 8]
mov edx, dword [eax + 0x90]
add edx, dword [eax + 0x78]
mov dword [edi + 0x20], edx
jmp case.0x460abe.7
mov esi, dword [esp + 0x14]
call fcn.00412990
fstp dword [edi + 0x30]
jmp case.0x460abe.7
mov ax, word [ebx - 2]
call fcn.00409110
cmp ax, 0x45
jne 0x4611a5
push 0
push 0
push 0
push 0
mov eax, ebx
call fcn.0046fc10
add esp, 0x10
test eax, eax
je 0x4611a5
mov esi, dword [esp + 0x14]
call fcn.00412960
cmp byte [esp + 0x11], 0
je 0x461166
or dword [edi + 8], eax
jmp case.0x460abe.7
or dword [edi + 0xc], eax
jmp case.0x460abe.7
mov edi, eax
mov ax, word [esp + 0x24]
mov ecx, dword [esp + 0x18]
mov word [ecx], ax
mov eax, dword [esp + 0x18]
lea ecx, [ecx]
movzx ecx, word [eax]
cmp ecx, 0x20
je 0x46118d
cmp ecx, 9
jne 0x461192
add eax, 2
jmp 0x461180
cmp word [eax], 0
mov dword [esp + 0x14], eax
jne 0x45f6f0
jmp 0x45f6af
add ebx, 0xfffffffe
push ebx
push str.Invalid_option.
mov ecx, 0x4c3fc0
call fcn.0042f410
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov edx, dword [ebp + 0x14]
cmp dword [edx], 0
je 0x4611d7
call fcn.004091d0
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
add edi, 0xfffffffe
push edi
push 0x49f2c8
mov ecx, 0x4c3fc0
call fcn.0042f410
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
cmp dword [esi], 0
jne 0x4611c9
add ebx, 0xfffffffe
push ebx
push str.This_control_type_should_not_have_an_associated_subroutine.
mov ecx, 0x4c3fc0
call fcn.0042f410
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
add ebx, 0xfffffffe
push ebx
push str.A_controls_variable_must_be_global_or_static.
mov ecx, 0x4c3fc0
call fcn.0042f410
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
cmp dword [esi], 0
jne 0x4611c9
add ebx, 0xfffffffe
push ebx
push str.The_same_variable_cannot_be_used_for_more_than_one_control.
mov ecx, 0x4c3fc0
call fcn.0042f410
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov ecx, ebx
xor ecx, dword [esp + 0x18]
and ecx, 0xf
xor ebx, ecx
jmp case.0x45f6e8.9
and ebx, 0xfffffff7
or ebx, 7
jmp case.0x45f6e8.9
test bl, 1
je 0x461284
and ebx, 0xfffffff1
or ebx, 1
jmp 0x461287
and ebx, 0xfffffff0
mov eax, dword [ebp + 8]
mov eax, dword [eax + 0x1c]
cmp dword [ebp + 0x18], eax
jne 0x4612c2
test dl, 1
je case.0x45f6e8.9
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push 0
push 1
push 0x401
push ecx
mov dword [eax + 0x1c], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageW]
or dword [esp + 0x18], 1
jmp case.0x45f6e8.9
test cl, 1
je case.0x45f6e8.9
mov edx, dword [ebp + 8]
cmp eax, dword [edx + 0x10]
jae 0x46130a
mov ecx, edx
mov edx, dword [ecx + 0x18]
push 1
lea eax, [eax + eax*4]
mov eax, dword [edx + eax*4]
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, dword [ebp + 8]
and eax, 0xfffe
push eax
mov eax, dword [ecx + 0x1c]
lea edx, [eax + eax*4]
mov eax, dword [ecx + 0x18]
mov ecx, dword [eax + edx*4]
push 0xf4
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [ebp + 8]
mov eax, dword [ebp + 0x18]
mov edx, dword [ecx + 4]
push 0
mov dword [ecx + 0x1c], eax
add eax, 3
push eax
push 0x401
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
jmp case.0x45f6e8.9
mov eax, ebx
and eax, 6
cmp al, 6
jne 0x46133b
and ebx, 0xfffffff6
or ebx, 6
jmp case.0x45f6e8.9
and ebx, 0xfffffff3
or ebx, 3
jmp case.0x45f6e8.9
and ebx, 0xfffffff9
or ebx, 9
jmp case.0x45f6e8.9
test bl, 1
je 0x461358
and ebx, 0xfffffff1
or ebx, 1
jmp case.0x45f6e8.9
and ebx, 0xfffffff2
or ebx, 2
jmp case.0x45f6e8.9
mov eax, dword [edi + 0x14]
cmp eax, 0xffffffff
je case.0x45f6e8.9
cmp byte [0x4c4de3], 0
je 0x461382
mov ecx, dword [esi]
push 0
push eax
push 0x108e
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi + 0x14]
cmp eax, 4
je case.0x45f6e8.9
and ebx, 0xfffffffc
or ebx, eax
mov eax, dword [edi + 0x64]
test eax, eax
je 0x4613fd
mov cl, byte [esi + 4]
cmp cl, 0xc
jne 0x4613d5
push 0
test eax, eax
jns 0x4613ca
mov edx, dword [esi]
push 0
push 0xc5
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [edi + 0x64], 0x80000000
je 0x4613fd
test bl, 4
jne 0x4613fd
and ebx, 0xffefff7f
jmp 0x4613fd
push eax
mov eax, dword [esi]
push 0xc5
push eax
jmp 0x4613f7
cmp cl, 0xf
jne 0x4613fd
test eax, eax
jns 0x4613ec
mov ecx, dword [esi]
push 0
push 0
push 0x403
push ecx
jmp 0x4613f7
mov edx, dword [esi]
push 6
push eax
push 0x403
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x11], 0
cmp ecx, ebx
je 0x4614eb
mov al, byte [esi + 4]
mov byte [esp + 0x11], 1
mov byte [esp + 0x12], 0
cmp al, 4
je 0x46149f
cmp al, 9
je 0x461447
cmp al, 0x12
jne 0x4614b3
mov eax, dword [esi]
push 0
push 0
push 0x408
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0x1c], eax
jmp 0x4614b3
mov eax, ebx
and eax, 0x100000
je 0x461487
test ecx, 0x100000
jne 0x461487
cmp dword [edi + 0x68], 0
jge 0x46147a
mov edx, dword [esi]
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 [edi + 0x68], eax
mov ecx, dword [edi + 0x68]
push 0
push ecx
push 0x194
jmp 0x4614aa
test eax, eax
jne 0x4614b3
test ecx, 0x100000
je 0x4614b3
push eax
push eax
mov eax, dword [esi]
push 0x194
push eax
jmp 0x4614ad
movzx ecx, bx
push 1
push ecx
push 0xf4
mov edx, dword [esi]
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
push 0
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov eax, dword [esi]
push ebx
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x4614d5
call dword [sym.imp.KERNEL32.DLL_GetLastError]
test eax, eax
jne 0x4614eb
mov ecx, dword [esi]
push 0xfffffffffffffff0
push ecx
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp eax, dword [esp + 0x18]
je 0x4614eb
mov byte [esp + 0x12], 1
mov edx, dword [esi]
push 0xffffffffffffffec
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
mov ecx, dword [edi + 8]
mov edx, dword [edi + 0xc]
or ecx, eax
not edx
and ecx, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], ecx
cmp eax, ecx
je 0x46155b
cmp byte [esp + 0x11], 0
jne 0x46151f
mov byte [esp + 0x11], 1
mov byte [esp + 0x12], 0
push 0
call dword [sym.imp.KERNEL32.DLL_SetLastError]
mov eax, dword [esp + 0x24]
mov ecx, dword [esi]
push eax
push 0xffffffffffffffec
push ecx
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x461545
call dword [sym.imp.KERNEL32.DLL_GetLastError]
test eax, eax
jne 0x46155b
mov edx, dword [esi]
push 0xffffffffffffffec
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
cmp eax, dword [esp + 0x20]
je 0x46155b
mov byte [esp + 0x12], 1
cmp byte [esi + 4], 0xa
jne 0x4615bd
mov eax, dword [esi]
push 0
push 0
push 0x1037
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov ecx, dword [edi + 0x10]
mov dword [esp + 0x24], eax
cmp eax, ecx
je 0x4615bd
cmp byte [esp + 0x11], 0
jne 0x46158f
mov byte [esp + 0x11], 1
mov byte [esp + 0x12], 0
push ecx
mov ecx, dword [esi]
push 0
push 0x1036
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edx, dword [esi]
push 0
push 0
push 0x1037
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp eax, dword [esp + 0x24]
je 0x4615bd
mov byte [esp + 0x12], 1
cmp byte [esp + 0x11], 0
je 0x4615d0
cmp byte [esp + 0x12], 0
mov byte [esp + 0x13], 1
jne 0x4615d5
mov byte [esp + 0x13], 0
movzx eax, byte [esi + 4]
add eax, 0xfffffff7
cmp eax, 0xe
ja case.0x4615ec.13
movzx eax, byte [eax + 0x4619bc]
jmp dword [eax*4 + 0x461998]
cmp byte [edi + 0x18e], 0
je case.0x4615ec.13
mov ecx, edi
mov eax, esi
call fcn.004654c0
jmp case.0x4615ec.13
mov eax, edi
call fcn.00465580
test dword [edi + 4], 0x100
je case.0x4615ec.13
mov ecx, dword [esi]
push 0
push 0
push 0x41d
push ecx
jmp 0x4616d1
mov eax, edi
mov edi, esi
call fcn.00465660
mov edi, dword [ebp + 0x10]
jmp case.0x4615ec.13
call fcn.00465710
mov edi, dword [ebp + 0x10]
jmp case.0x4615ec.13
mov edx, dword [ebp + 8]
push ebx
push edx
mov eax, edi
mov ecx, esi
call fcn.00465760
cmp dword [esp + 0x18], ebx
je case.0x4615ec.13
mov eax, dword [esp + 0x1c]
mov ecx, dword [esi]
push 0
push eax
push 0x402
push ecx
jmp 0x4616d1
mov eax, dword [edi + 0x13c]
test eax, eax
je case.0x4615ec.13
lea edx, [edi + 0x74]
push edx
push eax
mov eax, dword [esi]
push 0xcb
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov byte [esp + 0x13], 1
jmp case.0x4615ec.13
mov eax, dword [edi + 0x13c]
test eax, eax
je case.0x4615ec.13
mov edx, dword [esi]
lea ecx, [edi + 0x74]
push ecx
push eax
push 0x192
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov byte [esp + 0x13], 1
jmp case.0x4615ec.13
mov eax, dword [edi + 0x60]
cmp eax, 0xffffffff
je case.0x4615ec.13
push eax
mov eax, dword [esi]
push 0
push 0x2001
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [edi + 0x188]
test eax, eax
je 0x461706
mov edx, dword [esi]
xor ecx, ecx
cmp eax, 3
sete cl
push 0
push ecx
push 0xb
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [edi + 0x188], 3
jne 0x461706
cmp byte [esi + 4], 0xb
jne 0x46170d
cmp byte [esp + 0x13], 0
je 0x46171a
mov eax, dword [esi]
push 1
push 0
push eax
call dword [sym.imp.USER32.dll_InvalidateRect]
cmp byte [esp + 0x11], 0
je 0x461772
cmp byte [esp + 0x12], 0
jne 0x461772
mov ecx, dword [0x4be40c]
cmp byte [ecx + 0x104], 0
jne 0x46175b
mov ecx, dword [0x4c264c]
push 1
push 0
push 0xffffffffffffffff
push 0x49f2c4
call fcn.00472870
mov eax, 1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov ecx, dword [0x4c45e4]
push 0x49c820
push 0
push 0x49f2c4
call fcn.0042ee20
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x14