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

Disassembly:
sub esp, 0x60
push ebx
push ebp
mov ebp, dword [esp + 0x74]
push esi
mov esi, dword [esp + 0x74]
push edi
mov al, byte [ebp + 4]
mov dword [esp + 0x10], ecx
cmp al, 0xa
je 0x45eff7
cmp al, 2
je 0x45eff7
lea ecx, [ebp + 0x10]
mov dword [esp + 0x18], ecx
jmp 0x45effe
lea eax, [esi + 0x5c]
mov dword [esp + 0x18], eax
mov edi, dword [esp + 0x74]
mov byte [esp + 0x14], 0
cmp byte [edi], 0
je 0x460a8c
mov al, byte [edi]
cmp al, 0x2d
jne 0x45f01a
xor bl, bl
jmp 0x45f020
mov bl, 1
cmp al, 0x2b
jne 0x45f021
inc edi
mov dl, byte [edi]
test dl, dl
je 0x460a8c
mov eax, edi
mov dword [esp + 0x74], edi
mov ecx, 0x49e8b4
mov al, 0x20
cmp dl, al
je 0x45f06a
mov al, byte [ecx + 1]
inc ecx
test al, al
jne 0x45f038
mov eax, dword [esp + 0x74]
inc eax
mov dword [esp + 0x74], eax
mov dl, byte [eax]
test dl, dl
jne 0x45f031
mov ecx, edi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x45f058
sub ecx, edx
lea eax, [ecx + edi]
mov dword [esp + 0x74], eax
jmp 0x45f06e
mov eax, dword [esp + 0x74]
cmp eax, edi
je 0x460a74
mov cl, byte [eax]
push str.Section
push edi
mov byte [esp + 0x80], cl
mov byte [eax], 0
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f0a0
mov byte [esi + 0x18f], 1
jmp case.0x4602d2.7
push str.AltSubmit
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f0c9
cmp byte [ebp + 4], 0xc
je 0x45f0c9
test bl, bl
je 0x45f948
or byte [ebp + 5], 2
jmp case.0x4602d2.7
push 7
push str.Checked
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f14f
add edi, 7
push str.Gray
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f104
test bl, bl
mov ecx, 2
cmovne eax, ecx
mov dword [esi + 0x6c], eax
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xa
jne 0x45f120
test bl, bl
je 0x45f117
or dword [esi + 0x10], 4
jmp case.0x4602d2.7
and dword [esi + 0x10], 0xfffffffb
jmp case.0x4602d2.7
cmp byte [edi], 0
je 0x45f144
mov ecx, edi
call fcn.0040dd10
mov dword [esi + 0x6c], eax
cmp eax, 0xffffffff
jne case.0x4602d2.7
mov dword [esi + 0x6c], 2
jmp case.0x4602d2.7
movzx eax, bl
mov dword [esi + 0x6c], eax
jmp case.0x4602d2.7
push 6
push str.Choose
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f203
test bl, bl
je case.0x4602d2.7
movzx eax, byte [ebp + 4]
add edi, 6
sub eax, 0xd
je 0x45f1bf
mov ecx, edi
dec eax
je 0x45f19d
call fcn.0040dd10
mov dword [esi + 0x34], eax
cmp eax, 1
jge case.0x4602d2.7
mov dword [esi + 0x34], 0
jmp case.0x4602d2.7
lea edx, [esi + 0x140]
call fcn.00471060
mov dword [esi + 0x180], eax
cmp eax, 3
jne case.0x4602d2.7
or dword [esi], 2
jmp case.0x4602d2.7
push str.None
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f1dd
mov dword [esi + 0x34], 2
jmp case.0x4602d2.7
push 1
lea edx, [esi + 0x140]
mov ecx, edi
call fcn.004710e0
add esp, 4
test eax, eax
je case.0x4602d2.7
mov dword [esi + 0x34], 1
jmp case.0x4602d2.7
push str.Border
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f230
test bl, bl
je 0x45f224
or dword [esi], 0x800000
jmp case.0x4602d2.7
or dword [esi + 4], 0x800000
jmp case.0x4602d2.7
push str.VScroll
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f25d
test bl, bl
je 0x45f251
or dword [esi], 0x200000
jmp case.0x4602d2.7
or dword [esi + 4], 0x200000
jmp case.0x4602d2.7
push 7
push str.HScroll
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f2c2
cmp byte [ebp + 4], 0xb
jne 0x45f28b
test bl, bl
je 0x45f6d9
or dword [esi + 4], 0x8000
jmp case.0x4602d2.7
test bl, bl
je 0x45f2b6
or dword [esi], 0x100000
cmp byte [edi + 7], 0
je 0x45f2ab
lea ecx, [edi + 7]
call fcn.0040dd10
mov dword [esi + 0x68], eax
jmp case.0x4602d2.7
or eax, 0xffffffff
mov dword [esi + 0x68], eax
jmp case.0x4602d2.7
or dword [esi + 4], 0x100000
jmp case.0x4602d2.7
push str.Tabstop
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f2e3
test bl, bl
je 0x45f2f9
or dword [esi], 0x10000
jmp case.0x4602d2.7
push str.NoTab
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f305
test bl, bl
je 0x45f2d8
or dword [esi + 4], 0x10000
jmp case.0x4602d2.7
push str.Group
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f32a
test bl, bl
je 0x45f56e
or dword [esi], 0x20000
jmp case.0x4602d2.7
push str.Redraw
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f34f
test bl, bl
sete al
add eax, 3
mov dword [esi + 0x188], eax
jmp case.0x4602d2.7
push 8
push str.Disabled
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f3b8
cmp byte [edi + 8], al
lea ecx, [edi + 8]
je 0x45f379
call fcn.0040dd10
test eax, eax
jne 0x45f379
test bl, bl
sete bl
mov ecx, dword [ebp]
test ecx, ecx
je 0x45f391
xor eax, eax
test bl, bl
sete al
push eax
push ecx
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x45f39b
test bl, bl
je 0x45f3a8
or dword [esi], 0x8000000
test bl, bl
je 0x45f3af
or byte [ebp + 5], 0x10
jmp case.0x4602d2.7
or dword [esi + 4], 0x8000000
and byte [ebp + 5], 0xef
jmp case.0x4602d2.7
push 6
push str.Hidden
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f426
cmp byte [edi + 6], al
lea ecx, [edi + 6]
je 0x45f3e2
call fcn.0040dd10
test eax, eax
jne 0x45f3e2
test bl, bl
sete bl
mov ecx, dword [ebp]
test ecx, ecx
je 0x45f3ff
xor edx, edx
mov eax, 4
test bl, bl
cmovne eax, edx
push eax
push ecx
call dword [sym.imp.USER32.dll_ShowWindow]
jmp 0x45f40a
test bl, bl
je 0x45f417
or dword [esi + 4], 0x10000000
test bl, bl
je 0x45f41d
or byte [ebp + 5], 8
jmp case.0x4602d2.7
or dword [esi], 0x10000000
and byte [ebp + 5], 0xf7
jmp case.0x4602d2.7
push str.Wrap
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f49e
movzx eax, byte [ebp + 4]
dec eax
cmp eax, 0x12
ja case.0x4602d2.7
movzx eax, byte [eax + 0x46111c]
jmp dword [eax*4 + 0x461104]
test bl, bl
je 0x45f461
or dword [esi + 4], 0x1f
jmp case.0x4602d2.7
mov eax, dword [esi]
and eax, 0xffffffec
or eax, 0xc
mov dword [esi], eax
jmp case.0x4602d2.7
test bl, bl
je 0x45f480
or dword [esi + 4], 0x100080
jmp case.0x4602d2.7
or dword [esi], 0x80
jmp case.0x4602d2.7
test bl, bl
je 0x45f871
or dword [esi], 0x200
jmp case.0x4602d2.7
push 0xa
push str.Background
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f54d
movzx eax, byte [ebp + 4]
add edi, 0xa
add eax, 0xfffffff6
cmp eax, 0xf
ja case.0x45f4cc.12
movzx eax, byte [eax + 0x461138]
jmp dword [eax*4 + 0x461130]
test bl, bl
je 0x45f506
mov ecx, edi
call fcn.004726e0
mov dword [esi + 0x60], eax
cmp eax, 0xffffffff
jne case.0x4602d2.7
push 0x10
push 0
push edi
call fcn.004860e0
add esp, 0xc
mov ecx, eax
call fcn.0042e540
mov dword [esi + 0x60], eax
jmp case.0x4602d2.7
mov dword [esi + 0x60], 0xff000000
jmp case.0x4602d2.7
test bl, bl
je 0x45f53e
and byte [ebp + 5], 0xdf
push str.Trans
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f535
or byte [ebp + 5], 0x40
jmp case.0x4602d2.7
and byte [ebp + 5], 0xbf
jmp case.0x4602d2.7
mov al, byte [ebp + 5]
and al, 0xbf
or al, 0x20
mov byte [ebp + 5], al
jmp case.0x4602d2.7
push str.Group
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f57a
test bl, bl
je 0x45f56e
or dword [esi], 0x20000
jmp case.0x4602d2.7
or dword [esi + 4], 0x20000
jmp case.0x4602d2.7
push str.Theme
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f597
mov byte [esi + 0x190], bl
jmp case.0x4602d2.7
push 4
push str.Hwnd
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f5c4
push 3
push eax
lea eax, [edi + 4]
mov ecx, 0x4ae9b0
push eax
call fcn.00420800
mov dword [esi + 0x1c], eax
jmp case.0x4602d2.7
push 4
push str.Icon
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f618
add edi, 4
cmp byte [ebp + 4], 0xa
jne 0x45f601
push str.Small
push edi
call fcn.00484212
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [esi + 0x14], eax
jmp case.0x4602d2.7
test bl, bl
je case.0x4602d2.7
mov ecx, edi
call fcn.0040dd10
mov dword [esi + 0x70], eax
jmp case.0x4602d2.7
push str.Report
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f636
mov dword [esi + 0x14], 1
jmp case.0x4602d2.7
push str.List
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f654
mov dword [esi + 0x14], 3
jmp case.0x4602d2.7
push str.Tile
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f672
mov dword [esi + 0x14], 4
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xa
jne 0x45f71d
push 0x4a2820
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f6a2
test bl, bl
je 0x45f9e3
or dword [esi + 4], 0x4000
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xa
jne 0x45f71d
push 6
push str.NoSort
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f6ef
lea eax, [edi + 6]
push 0x4a2820
push eax
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f6e4
test bl, bl
je 0x45f27f
or dword [esi], 0x8000
jmp case.0x4602d2.7
mov byte [esi + 0x191], bl
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xa
jne 0x45f71d
push str.Grid
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f71d
test bl, bl
je 0x45f714
or dword [esi + 0x10], 1
jmp case.0x4602d2.7
and dword [esi + 0x10], 0xfffffffe
jmp case.0x4602d2.7
push 5
push str.Count
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f741
lea ecx, [edi + 5]
call fcn.0040dd10
mov dword [esi + 0x64], eax
jmp case.0x4602d2.7
push 2
push 0x4a363c
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f78b
push eax
push eax
push eax
xor edx, edx
lea ecx, [edi + 2]
call fcn.00471460
add esp, 0xc
test eax, eax
je case.0x4602d2.7
lea ecx, [edi + 2]
call fcn.004133c0
test bl, bl
je 0x45f781
or dword [esi + 0x10], eax
jmp case.0x4602d2.7
not eax
and dword [esi + 0x10], eax
jmp case.0x4602d2.7
push 9
push str.ImageList
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45f7b7
test bl, bl
je case.0x4602d2.7
lea ecx, [edi + 9]
call fcn.004133c0
mov dword [esi + 0x18], eax
jmp case.0x4602d2.7
cmp byte [ebp + 4], 4
jne 0x45f7df
push str.Default
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f7df
test bl, bl
je case.0x4600da.11
or dword [esi], 1
jmp case.0x4602d2.7
cmp byte [ebp + 4], 5
jne 0x45f807
push str.Check3
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f807
test bl, bl
je 0x45fccf
or dword [esi], 6
jmp case.0x4602d2.7
push str.ReadOnly
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f88e
movzx eax, byte [ebp + 4]
add eax, 0xfffffff7
cmp eax, 3
ja case.0x4602d2.7
jmp dword [eax*4 + 0x461148]
mov ecx, dword [ebp]
test ecx, ecx
je case.0x45f8b0.9
push 0
movzx eax, bl
push eax
push 0xcf
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x4602d2.7
test bl, bl
je 0x45f85d
or dword [esi], 0x800
jmp case.0x4602d2.7
or dword [esi + 4], 0x800
jmp case.0x4602d2.7
test bl, bl
je 0x45f493
or dword [esi + 4], 0x200
jmp case.0x4602d2.7
test bl, bl
je 0x45fa0f
or dword [esi + 4], 8
jmp case.0x4602d2.7
push str.Multi
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f8d0
movzx eax, byte [ebp + 4]
add eax, 0xfffffff7
cmp eax, 5
ja case.0x4602d2.7
jmp dword [eax*4 + 0x461158]
test bl, bl
je 0x45f8c7
or dword [esi], 4
jmp case.0x4602d2.7
test bl, bl
je 0x45f8bb
or dword [esi + 4], 4
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xc
jne 0x45f951
push str.WantReturn
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f903
test bl, bl
je 0x45f8f7
or dword [esi], 0x1000
jmp case.0x4602d2.7
or dword [esi + 4], 0x1000
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xc
jne 0x45f951
push str.WantTab
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f928
test bl, bl
je 0x45f972
or byte [ebp + 5], 0x80
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xc
jne 0x45f951
push str.WantCtrlA
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f951
test bl, bl
je 0x45f0c0
and byte [ebp + 5], 0xfd
jmp case.0x4602d2.7
mov al, byte [ebp + 4]
cmp al, 0xa
je 0x45f95c
cmp al, 0xb
jne 0x45f97b
push str.WantF2
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f97b
test bl, bl
je 0x45f91f
and byte [ebp + 5], 0x7f
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xc
jne 0x45f9a6
push str.Number
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f9a6
test bl, bl
je 0x45fa32
or dword [esi], 0x2000
jmp case.0x4602d2.7
push str.Lowercase
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45f9ee
mov al, byte [ebp + 4]
cmp al, 0xc
jne 0x45f9cf
test bl, bl
je 0x45fc2e
or dword [esi], 0x10
jmp case.0x4602d2.7
cmp al, 8
je case.0x45f829.9
cmp al, 7
jne case.0x4602d2.7
test bl, bl
je 0x45f696
or dword [esi], 0x4000
jmp case.0x4602d2.7
push str.Uppercase
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fa3e
mov al, byte [ebp + 4]
cmp al, 0xc
jne 0x45fa17
test bl, bl
je case.0x4600da.16
or dword [esi], 8
jmp case.0x4602d2.7
cmp al, 8
je 0x45fa23
cmp al, 7
jne case.0x4602d2.7
test bl, bl
je 0x45fa32
or dword [esi], 0x2000
jmp case.0x4602d2.7
or dword [esi + 4], 0x2000
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0xc
jne 0x45fad3
push 8
push str.Password
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fad3
mov al, byte [edi + 8]
mov byte [esi + 0x18c], al
test bl, bl
je 0x45faae
or dword [esi], 0x20
mov ecx, dword [ebp]
test ecx, ecx
je 0x45fac9
push 0
test al, al
jne 0x45fa94
push 0x25cf
push 0xcc
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov byte [esp + 0x14], 1
jmp case.0x4602d2.7
movsx eax, al
push eax
push 0xcc
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
mov byte [esp + 0x14], 1
jmp case.0x4602d2.7
or dword [esi + 4], 0x20
mov eax, dword [ebp]
test eax, eax
je 0x45fac9
push 0
push 0
push 0xcc
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
mov byte [esp + 0x14], 1
jmp case.0x4602d2.7
push 5
push str.Limit
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fb17
test bl, bl
je 0x45fb0b
cmp byte [edi + 5], al
je 0x45fb00
lea ecx, [edi + 5]
call fcn.0040dd10
mov dword [esi + 0x64], eax
jmp case.0x4602d2.7
or eax, 0xffffffff
mov dword [esi + 0x64], eax
jmp case.0x4602d2.7
mov dword [esi + 0x64], CreateStatusWindowA
jmp case.0x4602d2.7
cmp byte [ebp + 4], 8
jne 0x45fb3f
push str.Simple
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fb3f
test bl, bl
je case.0x4600da.11
or dword [esi], 1
jmp case.0x4602d2.7
push 4
push str.Sort
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fbae
movzx eax, byte [ebp + 4]
add eax, 0xfffffff9
cmp eax, 3
ja case.0x4602d2.7
jmp dword [eax*4 + 0x461170]
test bl, bl
je case.0x4601c5.11
or dword [esi], 2
jmp case.0x4602d2.7
test bl, bl
je 0x45fba5
lea eax, [edi + 4]
push str.Desc
push eax
call fcn.00484212
add esp, 8
mov ecx, 0x20
test eax, eax
mov eax, 0x10
cmovne ecx, eax
or dword [esi], ecx
jmp case.0x4602d2.7
or dword [esi + 4], 0x30
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x10
jne 0x45fbdd
push str.Horz
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fbdd
test bl, bl
je 0x45fd3b
mov eax, dword [esi]
and eax, 0xffffffef
or eax, 0x40
mov dword [esi], eax
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fc78
push str.Invert
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fc0a
test bl, bl
je 0x45f972
or byte [ebp + 5], 0x80
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fc78
push str.NoTicks
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fc37
test bl, bl
je 0x45fc2e
or dword [esi], 0x10
jmp case.0x4602d2.7
or dword [esi + 4], 0x10
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fc78
push 0xc
push str.TickInterval
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fc78
test bl, bl
je 0x45fc68
or dword [esi], 1
lea ecx, [edi + 0xc]
call fcn.0040dd10
mov dword [esi + 0x40], eax
jmp case.0x4602d2.7
or dword [esi + 4], 1
mov dword [esi + 0x40], 0xffffffff
jmp case.0x4602d2.7
push 4
push str.Line
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fcd8
mov al, byte [ebp + 4]
cmp al, 0x11
jne 0x45fcab
test bl, bl
je case.0x4602d2.7
lea ecx, [edi + 4]
call fcn.0040dd10
mov dword [esi + 0x44], eax
jmp case.0x4602d2.7
cmp al, 0xb
jne case.0x4602d2.7
mov cl, byte [edi + 4]
call fcn.00409810
cmp al, 0x53
jne case.0x4602d2.7
test bl, bl
je 0x45fccf
or dword [esi], 6
jmp case.0x4602d2.7
or dword [esi + 4], 6
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fd44
push 4
push str.Page
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fd0a
test bl, bl
je case.0x4602d2.7
lea ecx, [edi + 4]
call fcn.0040dd10
mov dword [esi + 0x48], eax
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fd44
push 5
push str.Thick
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fd44
test bl, bl
je 0x45fd3b
or dword [esi], 0x40
lea ecx, [edi + 5]
call fcn.0040dd10
mov dword [esi + 0x4c], eax
jmp case.0x4602d2.7
or dword [esi + 4], 0x40
jmp case.0x4602d2.7
push 7
push str.ToolTip
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fde0
cmp byte [ebp + 4], 0x11
jne case.0x4602d2.7
test bl, bl
je 0x460302
mov dword [esi + 0x50], 0xffffffff
mov cl, byte [edi + 7]
call fcn.00409810
movsx eax, al
add eax, 0xffffffbe
cmp eax, 0x12
ja case.0x45fd8f.67
movzx eax, byte [eax + 0x461194]
jmp dword [eax*4 + 0x461180]
mov dword [esi + 0x50], 0
jmp case.0x45fd8f.67
mov dword [esi + 0x50], 1
jmp case.0x45fd8f.67
mov dword [esi + 0x50], 2
jmp case.0x45fd8f.67
mov dword [esi + 0x50], 3
mov eax, dword [esi + 0x50]
test eax, eax
jns 0x45fdd1
or dword [esi], 0x100
mov dword [esi + 0x50], 0
jmp case.0x4602d2.7
inc eax
or dword [esi], 0x100
mov dword [esi + 0x50], eax
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x11
jne 0x45fe8a
push 5
push str.Buddy
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45fe8a
test bl, bl
je case.0x4602d2.7
mov bl, byte [edi + 5]
test bl, bl
je case.0x4602d2.7
push eax
push 1
push eax
push eax
lea eax, [edi + 6]
mov ecx, 0x4ae9b0
push eax
call fcn.00420860
mov edi, eax
test edi, edi
je case.0x4602d2.7
cmp byte [edi + 0x17], 0
jne 0x45fe3b
mov edi, dword [edi + 0xc]
test byte [edi + 0x16], 2
jne case.0x4602d2.7
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
lea ecx, [eax - 1]
cmp ecx, eax
jae case.0x4602d2.7
mov ebp, dword [esp + 0x10]
lea edx, [ecx + ecx*4]
shl edx, 2
mov eax, dword [ebp + 0x18]
add eax, edx
cmp dword [eax + 8], edi
jne 0x45fe78
cmp bl, 0x31
jne 0x45fe75
mov dword [esi + 0x54], eax
jmp 0x45fe78
mov dword [esi + 0x58], eax
dec ecx
sub edx, 0x14
cmp ecx, dword [ebp + 0x10]
jb 0x45fe61
mov ebp, dword [esp + 0x7c]
jmp case.0x4602d2.7
push str.Vertical
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45fecb
mov al, byte [ebp + 4]
cmp al, 0x11
jne 0x45feb3
test bl, bl
je case.0x4601c5.11
or dword [esi], 2
jmp case.0x4602d2.7
cmp al, 0x12
jne case.0x4602d2.7
test bl, bl
je 0x45f8c7
or dword [esi], 4
jmp case.0x4602d2.7
push 5
push str.Range
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x45ff80
test bl, bl
je case.0x4602d2.7
cmp byte [edi + 5], al
je case.0x4602d2.7
mov al, byte [ebp + 4]
cmp al, 0xd
je 0x45ff37
cmp al, 0xe
je 0x45ff37
lea ecx, [edi + 5]
mov byte [esi + 0x18d], 1
call fcn.0040dd10
mov dword [esi + 0x38], eax
lea eax, [edi + 6]
push 0x2d
push eax
call fcn.004855e4
add esp, 8
test eax, eax
je case.0x4602d2.7
lea ecx, [eax + 1]
call fcn.0040dd10
mov dword [esi + 0x3c], eax
jmp case.0x4602d2.7
lea ebx, [esi + 0x160]
mov edx, ebx
lea ecx, [edi + 5]
call fcn.00471060
mov dword [esi + 0x184], eax
test eax, eax
je case.0x4602d2.7
mov ecx, dword [ebp]
test ecx, ecx
je case.0x4602d2.7
cmp byte [ebp + 4], 0xd
mov edx, 0x1004
push ebx
push eax
mov eax, 0x1012
cmove eax, edx
push eax
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x12
jne 0x45ffa8
push str.Smooth
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45ffa8
test bl, bl
je case.0x4600da.11
or dword [esi], 1
jmp case.0x4602d2.7
push str.Buttons
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x45ffec
mov al, byte [ebp + 4]
cmp al, 0x13
jne 0x45ffd4
test bl, bl
je 0x460302
or dword [esi], 0x100
jmp case.0x4602d2.7
cmp al, 0xb
jne case.0x4602d2.7
test bl, bl
je case.0x4600da.11
or dword [esi], 1
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x13
jne 0x46001b
push str.Bottom
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x46001b
test bl, bl
je case.0x4601c5.11
or dword [esi], 2
or dword [esi + 4], 0x80
jmp case.0x4602d2.7
cmp byte [ebp + 4], 0x18
jne 0x460065
push 5
push str.Class
push edi
call fcn.00484c8d
add esp, 0xc
test eax, eax
jne 0x460065
lea eax, [esp + 0x40]
add edi, 5
push eax
push edi
push dword [0x4ad120]
call dword [sym.imp.USER32.dll_GetClassInfoExA]
mov word [esi + 0x194], ax
test ax, ax
jne case.0x4602d2.7
push edi
push str.Unregistered_window_class.
jmp 0x460b25
push str.Center
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x46012a
movzx eax, byte [ebp + 4]
dec eax
test bl, bl
je 0x4600ca
cmp eax, 0x10
ja case.0x4602d2.7
movzx eax, byte [eax + 0x4611bc]
jmp dword [eax*4 + 0x4611a8]
or dword [esi], 8
or dword [esi + 4], 4
jmp case.0x4602d2.7
or dword [esi], 1
or dword [esi + 4], 0x1e
jmp case.0x4602d2.7
or dword [esi], 0x300
jmp case.0x4602d2.7
or dword [esi], 1
or dword [esi + 4], 2
jmp case.0x4602d2.7
cmp eax, 0x10
ja case.0x4602d2.7
movzx eax, byte [eax + 0x4611e4]
jmp dword [eax*4 + 0x4611d0]
mov eax, dword [ebp]
test eax, eax
je 0x460109
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
jne case.0x4602d2.7
or dword [esi + 4], eax
jmp case.0x4602d2.7
mov ecx, dword [esi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
jne case.0x4602d2.7
and ecx, 0xfffffcff
mov dword [esi], ecx
jmp case.0x4602d2.7
push str.Right
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x46023a
movzx eax, byte [ebp + 4]
dec eax
test bl, bl
je 0x4601b5
cmp eax, 0x16
ja case.0x4602d2.7
movzx eax, byte [eax + 0x461218]
jmp dword [eax*4 + 0x4611f8]
or dword [esi + 4], 8
or dword [esi], 4
jmp case.0x4602d2.7
or dword [esi], 2
or dword [esi + 4], 0x1d
jmp case.0x4602d2.7
or dword [esi], 0x200
or dword [esi + 4], 0x100
mov cl, byte [ebp + 4]
cmp cl, 5
je case.0x460159.12
cmp cl, 6
jne case.0x4602d2.7
or dword [esi], 0x20
jmp case.0x4602d2.7
or dword [esi], 2
or dword [esi + 4], 1
jmp case.0x4602d2.7
or dword [esi], 0x282
jmp case.0x4602d2.7
cmp eax, 0x12
ja case.0x4602d2.7
movzx eax, byte [eax + 0x46124c]
jmp dword [eax*4 + 0x461230]
or dword [esi + 4], 0x20
jmp case.0x4602d2.7
or dword [esi], 4
or dword [esi + 4], 8
jmp case.0x4602d2.7
mov eax, dword [ebp]
test eax, eax
je 0x46020d
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
je case.0x4602d2.7
or dword [esi + 4], 0x200
jmp case.0x4602d2.7
mov ecx, dword [esi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x4602d2.7
and ecx, 0xfffffdff
mov dword [esi], ecx
jmp case.0x4602d2.7
or dword [esi + 4], 0x82
jmp case.0x4602d2.7
push str.Left
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x46032f
movzx eax, byte [ebp + 4]
test bl, bl
je 0x4602bf
dec eax
cmp eax, 0x12
ja case.0x4602d2.7
movzx eax, byte [eax + 0x461280]
jmp dword [eax*4 + 0x461260]
or dword [esi + 4], 4
or dword [esi], 8
jmp case.0x4602d2.7
or dword [esi], 0x100
or dword [esi + 4], 0x200
mov cl, byte [ebp + 4]
cmp cl, 5
je case.0x460269.13
cmp cl, 6
jne case.0x4602d2.7
or dword [esi + 4], 0x20
jmp case.0x4602d2.7
or dword [esi + 4], 3
jmp case.0x4602d2.7
or dword [esi], 0x280
or dword [esi + 4], 2
jmp case.0x4602d2.7
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x4602d2.7
movzx eax, byte [eax + 0x4612a4]
jmp dword [eax*4 + 0x461294]
or dword [esi + 4], 0xc
jmp case.0x4602d2.7
mov eax, dword [ebp]
test eax, eax
je 0x46030e
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
and eax, 0x300
cmp eax, 0x300
je case.0x4602d2.7
or dword [esi + 4], 0x100
jmp case.0x4602d2.7
mov ecx, dword [esi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x4602d2.7
and ecx, 0xfffffeff
mov dword [esi], ecx
jmp case.0x4602d2.7
push 0
push 0
push 1
xor edx, edx
mov ecx, edi
call fcn.00471460
add esp, 0xc
test eax, eax
je 0x46035f
mov ecx, edi
call fcn.004133c0
test bl, bl
je 0x460357
or dword [esi], eax
jmp case.0x4602d2.7
or dword [esi + 4], eax
jmp case.0x4602d2.7
inc edi
cmp byte [edi], 0
jne 0x4603f8
test bl, bl
je 0x460387
mov eax, dword [esp + 0x84]
test eax, eax
je 0x460387
cmp byte [eax + 0x17], 0
jne 0x460381
mov eax, dword [eax + 0xc]
test byte [eax + 0x15], 2
jne 0x4603f8
mov cl, byte [edi - 1]
call fcn.00409810
cmp al, 0x43
je 0x4603c4
cmp al, 0x47
je 0x4603ab
cmp al, 0x56
jne 0x460b1c
mov dword [ebp + 8], 0
jmp case.0x4602d2.7
mov ecx, dword [ebp + 0xc]
test ecx, ecx
je 0x4603b8
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov dword [ebp + 0xc], 0
jmp case.0x4602d2.7
test bl, bl
jne case.0x4602d2.7
cmp byte [ebp + 4], 2
je case.0x4602d2.7
mov eax, dword [esp + 0x18]
cmp dword [eax], 0xff000000
je case.0x4602d2.7
mov dword [eax], 0xff000000
mov byte [esi + 0x18e], 1
jmp case.0x4602d2.7
mov cl, byte [edi - 1]
call fcn.00409810
movsx eax, al
add eax, 0xffffffbd
cmp eax, 0x16
ja case.0x460416.68
movzx eax, byte [eax + 0x4612e0]
jmp dword [eax*4 + 0x4612b8]
mov al, byte [ebp + 4]
cmp al, 3
je 0x460acd
cmp al, 0x12
je 0x460acd
push 4
push dword [esp + 0x88]
mov ecx, 0x4ae9b0
push edi
call fcn.00419e10
mov ebx, eax
test ebx, ebx
jne 0x460464
push 0x4a314c
push edi
call fcn.00484212
add esp, 8
test eax, eax
jne 0x460ac6
or byte [ebp + 5], 1
mov al, byte [ebp + 4]
cmp al, 1
je 0x46046f
cmp al, 2
jne 0x460475
or dword [esi], 0x100
push ebx
lea ecx, [ebp + 0xc]
call fcn.004015d0
jmp case.0x4602d2.7
cmp dword [esi + 0x13c], 0x32
jae case.0x4602d2.7
mov ecx, edi
call fcn.004133c0
mov ecx, dword [esi + 0x13c]
mov dword [esi + ecx*4 + 0x74], eax
inc dword [esi + 0x13c]
jmp case.0x4602d2.7
push 3
push 0
push edi
mov ecx, 0x4ae9b0
call fcn.00420800
mov edx, eax
test edx, edx
je 0x460b2f
cmp byte [edx + 0x17], 0
jne 0x4604ce
mov edx, dword [edx + 0xc]
mov al, byte [edx + 0x16]
and al, 0x22
cmp al, 2
je 0x460b11
mov eax, dword [esp + 0x10]
xor ecx, ecx
mov ebx, dword [eax + 0x10]
test ebx, ebx
je 0x460500
mov eax, dword [eax + 0x18]
add eax, 8
mov edi, edi
cmp dword [eax], edx
je 0x460ad4
inc ecx
add eax, 0x14
cmp ecx, ebx
jb 0x4604f0
mov dword [ebp + 8], edx
jmp case.0x4602d2.7
cmp byte [ebp + 4], 2
je case.0x4602d2.7
mov ecx, edi
call fcn.004726e0
mov ecx, eax
cmp ecx, 0xffffffff
jne 0x460536
push 0x10
push 0
push edi
call fcn.004860e0
add esp, 0xc
mov ecx, eax
call fcn.0042e540
mov ecx, eax
mov edx, dword [esp + 0x18]
cmp dword [edx], ecx
jne 0x460549
lea eax, [esi + 0x5c]
cmp edx, eax
jne case.0x4602d2.7
mov dword [edx], ecx
mov byte [esi + 0x18e], 1
jmp case.0x4602d2.7
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x50
jne 0x46059a
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x46058a
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x88]
add eax, ecx
mov dword [esi + 0x28], eax
jmp case.0x4602d2.7
mov ecx, edi
call fcn.0040dd10
mov ecx, dword [esp + 0x10]
push eax
call fcn.00458850
mov dword [esi + 0x28], eax
jmp case.0x4602d2.7
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x50
jne 0x4605f6
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x4605e6
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x8c]
add eax, ecx
mov dword [esi + 0x2c], eax
jmp case.0x4602d2.7
mov ecx, edi
call fcn.0040dd10
mov ecx, dword [esp + 0x10]
push eax
call fcn.00458850
mov dword [esi + 0x2c], eax
jmp case.0x4602d2.7
mov cl, byte [edi]
cmp cl, 0x2b
jne 0x4606e4
mov cl, byte [edi + 1]
call fcn.00409810
cmp al, 0x4d
jne 0x46062f
mov ecx, dword [esp + 0x10]
mov edi, dword [ecx + 0x78]
jmp 0x460659
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov edi, eax
cmp byte [ebx + 0xc0], 0
je 0x460657
push 0x60
push dword [0x4ae95c]
push edi
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edi, eax
mov ecx, ebx
mov bl, byte [ebp + 6]
push ebx
call fcn.00465860
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4606b4
movzx ecx, byte [ebp + 7]
push ecx
push ebx
mov ebx, dword [esp + 0x18]
mov ecx, ebx
call fcn.004659c0
test eax, eax
jne 0x4606b8
push dword [esp + 0x1c]
lea eax, [esp + 0x24]
mov ecx, ebx
push eax
call fcn.00465ae0
cmp dword [esi + 0x24], 0x80000000
mov ecx, dword [eax]
mov edx, dword [eax + 4]
lea eax, [ecx + edi]
mov dword [esi + 0x20], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x7c]
add eax, edx
mov dword [esi + 0x24], eax
jmp case.0x4602d2.7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x88]
add eax, dword [ebx + 0x80]
add eax, edi
cmp dword [esi + 0x24], 0x80000000
mov dword [esi + 0x20], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x84]
mov dword [esi + 0x24], eax
jmp case.0x4602d2.7
call fcn.00409810
cmp al, 0x4d
jne 0x46071f
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x460715
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x78]
add eax, ecx
jmp 0x4607f7
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x50
jne 0x460778
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x460752
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x80]
add eax, ecx
cmp dword [esi + 0x24], 0x80000000
mov dword [esi + 0x20], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x84]
mov dword [esi + 0x24], eax
jmp case.0x4602d2.7
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x53
jne 0x4607d4
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x4607ab
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x98]
add eax, ecx
cmp dword [esi + 0x24], 0x80000000
mov dword [esi + 0x20], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0xa4]
add eax, dword [ebx + 0x7c]
mov dword [esi + 0x24], eax
jmp case.0x4602d2.7
mov ecx, edi
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
cmp byte [ebx + 0xc0], 0
je 0x4607f7
push 0x60
push dword [0x4ae95c]
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
cmp dword [esi + 0x24], 0x80000000
mov dword [esi + 0x20], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x94]
add eax, dword [ebx + 0x7c]
mov dword [esi + 0x24], eax
jmp case.0x4602d2.7
mov cl, byte [edi]
cmp cl, 0x2b
jne 0x4608ee
mov cl, byte [edi + 1]
call fcn.00409810
cmp al, 0x4d
jne 0x460838
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x7c]
jmp 0x460860
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov edi, eax
cmp byte [ebx + 0xc0], 0
je 0x460860
push 0x60
push dword [0x4ae95c]
push edi
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov edi, eax
mov bl, byte [ebp + 6]
mov ecx, dword [esp + 0x10]
push ebx
call fcn.00465860
mov dword [esp + 0x1c], eax
test eax, eax
je 0x4608be
movzx ecx, byte [ebp + 7]
push ecx
push ebx
mov ebx, dword [esp + 0x18]
mov ecx, ebx
call fcn.004659c0
test eax, eax
jne 0x4608c2
push dword [esp + 0x1c]
lea eax, [esp + 0x2c]
mov ecx, ebx
push eax
call fcn.00465ae0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
add eax, edi
cmp dword [esi + 0x20], 0x80000000
mov dword [esi + 0x24], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x78]
add eax, ecx
mov dword [esi + 0x20], eax
jmp case.0x4602d2.7
mov ebx, dword [esp + 0x10]
mov eax, dword [ebx + 0x8c]
add eax, dword [ebx + 0x84]
add eax, edi
cmp dword [esi + 0x20], 0x80000000
mov dword [esi + 0x24], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x80]
mov dword [esi + 0x20], eax
jmp case.0x4602d2.7
call fcn.00409810
cmp al, 0x4d
jne 0x460929
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x46091f
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x7c]
add eax, ecx
jmp 0x460a01
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x50
jne 0x460982
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x46095c
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x84]
add eax, ecx
cmp dword [esi + 0x20], 0x80000000
mov dword [esi + 0x24], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x80]
mov dword [esi + 0x20], eax
jmp case.0x4602d2.7
mov cl, byte [edi]
call fcn.00409810
cmp al, 0x53
jne 0x4609de
lea ecx, [edi + 1]
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
mov ecx, eax
cmp byte [ebx + 0xc0], 0
je 0x4609b5
push 0x60
push dword [0x4ae95c]
push ecx
call dword [sym.imp.KERNEL32.dll_MulDiv]
mov ecx, eax
mov eax, dword [ebx + 0x9c]
add eax, ecx
cmp dword [esi + 0x20], 0x80000000
mov dword [esi + 0x24], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0xa0]
add eax, dword [ebx + 0x78]
mov dword [esi + 0x20], eax
jmp case.0x4602d2.7
mov ecx, edi
call fcn.0040dd10
mov ebx, dword [esp + 0x10]
cmp byte [ebx + 0xc0], 0
je 0x460a01
push 0x60
push dword [0x4ae95c]
push eax
call dword [sym.imp.KERNEL32.dll_MulDiv]
cmp dword [esi + 0x20], 0x80000000
mov dword [esi + 0x24], eax
jne case.0x4602d2.7
mov eax, dword [ebx + 0x90]
add eax, dword [ebx + 0x78]
mov dword [esi + 0x20], eax
jmp case.0x4602d2.7
mov ecx, edi
call fcn.00413430
cvtsd2ss xmm0, xmm0
movss dword [esi + 0x30], xmm0
jmp case.0x4602d2.7
mov cl, byte [edi - 1]
call fcn.00409810
cmp al, 0x45
jne 0x460b1c
push 0
push 0
push 0
xor edx, edx
mov ecx, edi
call fcn.00471460
add esp, 0xc
test eax, eax
je 0x460b1c
mov ecx, edi
call fcn.004133c0
test bl, bl
je 0x460a67
or dword [esi + 8], eax
jmp case.0x4602d2.7
or dword [esi + 0xc], eax
mov eax, dword [esp + 0x74]
mov dl, byte [esp + 0x78]
mov byte [eax], dl
mov edi, eax
mov al, byte [edi]
cmp al, 0x20
je 0x460a80
cmp al, 9
jne 0x460a83
inc edi
jmp 0x460a76
cmp byte [edi], 0
jne 0x45f010
mov eax, dword [ebp]
test eax, eax
je 0x4610f5
push 0xfffffffffffffff0
push eax
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edx, dword [esi + 4]
mov edi, eax
movzx eax, byte [ebp + 4]
mov ebx, edi
or ebx, dword [esi]
mov ecx, edx
not ecx
add eax, 0xfffffffe
and ebx, ecx
cmp eax, 8
ja case.0x460abf.9
jmp dword [eax*4 + 0x4612f8]
mov ecx, str.Target_label_does_not_exist.
jmp 0x460ad9
mov ecx, str.This_control_type_should_not_have_an_associated_subroutine.
jmp 0x460ad9
mov ecx, str.The_same_variable_cannot_be_used_for_more_than_one_control.
mov eax, dword [esp + 0x74]
mov dl, byte [esp + 0x78]
mov byte [eax], dl
cmp dword [ebp], 0
je 0x460af8
call fcn.004099f0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 0x14
lea eax, [edi - 1]
push eax
push ecx
mov ecx, 0x4ae9b0
call fcn.0042ce80
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 0x14
lea eax, [edi - 1]
push eax
push str.A_controls_variable_must_be_global_or_static.
jmp 0x460b25
lea eax, [edi - 1]
push eax
push str.Invalid_option.
mov ecx, 0x4ae9b0
call fcn.0042ce80
mov eax, dword [esp + 0x74]
mov dl, byte [esp + 0x78]
mov byte [eax], dl
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 0x14
mov eax, ebx
xor eax, edi
and eax, 0xf
xor ebx, eax
jmp case.0x460abf.9
and ebx, 0xfffffff7
or ebx, 7
jmp case.0x460abf.9
test bl, 1
je 0x460b65
and ebx, 0xfffffff1
or ebx, 1
jmp 0x460b68
and ebx, 0xfffffff0
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x80]
mov eax, dword [ecx + 0x1c]
cmp ebp, eax
jne 0x460bf1
test dl, 1
je 0x460b9b
push 0
push 1
push 0x401
push dword [ecx + 4]
mov dword [ecx + 0x1c], 0xffffffff
call dword [sym.imp.USER32.dll_SendMessageA]
or edi, 1
mov ebp, dword [esp + 0x7c]
mov eax, dword [esi + 0x64]
test eax, eax
je 0x460cf3
mov cl, byte [ebp + 4]
cmp cl, 0xc
jne 0x460cd3
push 0
test eax, eax
jns 0x460ccb
push 0
push 0xc5
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
cmp dword [esi + 0x64], 0x80000000
je 0x460cf3
test bl, 4
jne 0x460cf3
and ebx, 0xffefff7f
jmp 0x460cf3
test byte [esi], 1
je 0x460b9b
cmp eax, dword [ecx + 0x10]
jae 0x460c37
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0x10]
push 1
push 0xfffffffffffffff0
mov eax, dword [eax + 0x18]
push dword [eax + ecx*4]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edx, dword [esp + 0x14]
and eax, 0xfffe
push eax
push 0xf4
mov eax, dword [edx + 0x1c]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x18]
push dword [eax + ecx*4]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esp + 0x10]
push 0
lea eax, [ebp + 3]
mov dword [ecx + 0x1c], ebp
push eax
push 0x401
push dword [ecx + 4]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp 0x460b9b
mov eax, ebx
and eax, 6
cmp al, 6
jne 0x460c67
and ebx, 0xfffffff6
or ebx, 6
jmp case.0x460abf.9
and ebx, 0xfffffff3
or ebx, 3
jmp case.0x460abf.9
and ebx, 0xfffffff9
or ebx, 9
jmp case.0x460abf.9
test bl, 1
je 0x460c8d
and ebx, 0xfffffff1
or ebx, 1
jmp case.0x460abf.9
and ebx, 0xfffffff2
or ebx, 2
jmp case.0x460abf.9
mov eax, dword [esi + 0x14]
cmp eax, 0xffffffff
je case.0x460abf.9
push 0
push eax
push 0x108e
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esi + 0x14]
cmp eax, 4
je case.0x460abf.9
and ebx, 0xfffffffc
or ebx, eax
jmp case.0x460abf.9
push eax
push 0xc5
jmp 0x460cea
cmp cl, 0xf
jne 0x460cf3
test eax, eax
jns 0x460ce2
push 0
push 0
jmp 0x460ce5
push 6
push eax
push 0x403
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
mov byte [esp + 0x84], 0
cmp edi, ebx
je 0x460dea
mov al, byte [ebp + 4]
mov byte [esp + 0x84], 1
mov byte [esp + 0x78], 0
cmp al, 4
je 0x460d92
cmp al, 9
je 0x460d3e
cmp al, 0x12
jne 0x460da6
push 0
push 0
push 0x408
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
mov dword [esp + 0x80], eax
jmp 0x460da6
mov eax, ebx
and eax, 0x100000
je 0x460d7d
test edi, 0x100000
jne 0x460d7d
cmp dword [esi + 0x68], 0
jge 0x460d71
lea eax, [esp + 0x30]
push eax
push dword [ebp]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x38]
sub eax, dword [esp + 0x30]
lea eax, [eax + eax*2]
mov dword [esi + 0x68], eax
push 0
push dword [esi + 0x68]
push 0x194
jmp 0x460d9d
test eax, eax
jne 0x460da6
test edi, 0x100000
je 0x460da6
push eax
push eax
push 0x194
jmp 0x460d9d
push 1
movzx eax, bx
push eax
push 0xf4
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
push ebx
push 0xfffffffffffffff0
push dword [ebp]
call dword [sym.imp.USER32.dll_SetWindowLongA]
test eax, eax
jne 0x460dc8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x460df2
push 0xfffffffffffffff0
push dword [ebp]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ecx, dword [esp + 0x78]
cmp eax, edi
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [esp + 0x78], ecx
jmp 0x460df2
mov al, byte [esp + 0x7c]
mov dword [esp + 0x78], eax
push 0xffffffffffffffec
push dword [ebp]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov ebp, dword [esi + 8]
mov ecx, dword [esi + 0xc]
or ebp, eax
not ecx
mov dword [esp + 0x74], eax
and ebp, ecx
cmp eax, ebp
je 0x460e75
cmp byte [esp + 0x84], 0
jne 0x460e28
mov byte [esp + 0x84], 1
mov byte [esp + 0x78], 0
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
push ebp
mov ebp, dword [esp + 0x80]
push 0xffffffffffffffec
push dword [ebp]
call dword [sym.imp.USER32.dll_SetWindowLongA]
test eax, eax
jne 0x460e51
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x460e79
push 0xffffffffffffffec
push dword [ebp]
call dword [sym.imp.USER32.dll_GetWindowLongA]
mov edx, dword [esp + 0x78]
cmp eax, dword [esp + 0x74]
mov eax, 1
movzx ecx, dl
cmovne ecx, eax
mov byte [esp + 0x78], cl
jmp 0x460e79
mov ebp, dword [esp + 0x7c]
cmp byte [ebp + 4], 0xa
jne 0x460ef6
push 0
push 0
push 0x1037
push dword [ebp]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ebp, eax
mov eax, dword [esi + 0x10]
cmp ebp, eax
je 0x460f01
cmp byte [esp + 0x84], 0
jne 0x460eb1
mov byte [esp + 0x84], 1
mov byte [esp + 0x78], 0
push eax
mov eax, dword [esp + 0x80]
push 0
push 0x1036
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [esp + 0x7c]
push 0
push 0
push 0x1037
push dword [eax]
call dword [sym.imp.USER32.dll_SendMessageA]
mov edx, dword [esp + 0x78]
cmp eax, ebp
movzx ecx, dl
mov edx, 1
cmovne ecx, edx
mov al, cl
mov dword [esp + 0x78], eax
jmp 0x460f0a
mov eax, dword [esp + 0x78]
mov edx, 1
jmp 0x460f0e
mov eax, dword [esp + 0x78]
mov edx, 1
mov ebp, dword [esp + 0x7c]
cmp byte [esp + 0x84], 0
je 0x460f28
mov ecx, dword [esp + 0x14]
test al, al
movzx ecx, cl
cmovne ecx, edx
mov dword [esp + 0x14], ecx
movzx eax, byte [ebp + 4]
add eax, 0xfffffff7
cmp eax, 0x10
ja case.0x460f3b.13
movzx eax, byte [eax + 0x461340]
jmp dword [eax*4 + 0x46131c]
cmp byte [esi + 0x18d], 0
je case.0x460f3b.13
push esi
mov ecx, ebp
call fcn.00465030
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [esi + 0x188]
test ecx, ecx
je 0x460f84
xor eax, eax
cmp ecx, 3
push 0
sete al
push eax
push 0xb
push dword [ebp]
call ebx
cmp dword [esi + 0x188], 3
jne 0x460f84
cmp byte [ebp + 4], 0xb
jne 0x460f8b
cmp byte [esp + 0x14], 0
je 0x460f98
push 1
push 0
push dword [ebp]
call dword [sym.imp.USER32.dll_InvalidateRect]
cmp byte [esp + 0x84], 0
je 0x4610f5
mov edx, dword [esp + 0x78]
test dl, dl
jne 0x4610f5
mov eax, dword [0x4aa1d8]
test byte [eax + 0xe0], 1
jne 0x4610de
mov ecx, dword [0x4ad0c8]
push 1
push 0
push 0xffffffffffffffff
push 0x49e628
call fcn.004744e0
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x60
ret 0x14
push esi
push ebp
call fcn.00465120
test dword [esi + 4], 0x100
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
je 0x460f59
push 0
push 0
push 0x41d
push dword [ebp]
call ebx
jmp 0x460f59
push esi
push ebp
call fcn.004651f0
jmp case.0x460f3b.13
push esi
push ebp
call fcn.004652a0
jmp case.0x460f3b.13
mov ecx, dword [esp + 0x10]
push ebx
push esi
push ebp
call fcn.00465300
cmp edi, ebx
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
je 0x460f59
push 0
push dword [esp + 0x84]
push 0x402
push dword [ebp]
call ebx
jmp 0x460f59
mov ecx, dword [esi + 0x13c]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
test ecx, ecx
je 0x460f59
lea eax, [esi + 0x74]
push eax
push ecx
push 0xcb
push dword [ebp]
call ebx
mov byte [esp + 0x14], 1
jmp 0x460f59
mov ecx, dword [esi + 0x13c]
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
test ecx, ecx
je 0x460f59
lea eax, [esi + 0x74]
push eax
push ecx
push 0x192
push dword [ebp]
call ebx
mov byte [esp + 0x14], 1
jmp 0x460f59
mov eax, dword [esi + 0x60]
cmp eax, 0xffffffff
je case.0x460f3b.13
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push eax
push 0
push 0x2001
push dword [ebp]
call ebx
jmp 0x460f59
mov ecx, dword [0x4aed20]
push 0x49bc4d
push 0
push 0x49e628
call fcn.0042c8f0
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x60
ret 0x14