Function at 0x46d180
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c4
mov edx, dword [sym.imp.USER32.dll_SendMessageW]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp + 8]
push ebx
push esi
mov esi, dword [ebp + 0x10]
movzx eax, word [ecx]
mov dword [esp + 0xc], edx
mov edx, dword [sym.imp.USER32.dll_GetWindowLongW]
mov byte [esp + 0x18], 0
mov dword [esp + 0x28], edx
push edi
mov edi, dword [ebp + 0xc]
test ax, ax
je 0x46eec1
movss xmm0, dword [esp + 0x30]
mov edx, eax
mov eax, dword [sym.imp.USER32.dll_EnableWindow]
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0x48], eax
mov eax, dword [sym.imp.USER32.dll_ShowWindow]
mov dword [esp + 0x4c], eax
mov eax, dword [sym.imp.GDI32.dll_DeleteObject]
mov dword [esp + 0x50], eax
mov eax, dword [sym.imp.GDI32.dll_CreateSolidBrush]
mov dword [esp + 0x58], eax
mov eax, dword [sym.imp.USER32.dll_GetClassInfoExW]
mov dword [esp + 0x60], eax
mov eax, dword [sym.imp.KERNEL32.dll_MulDiv]
mov dword [esp + 0x44], eax
mov al, byte [esp + 0x17]
mov byte [esp + 0xf], al
movss dword [esp + 0x30], xmm0
mov dword [esp + 0x28], ebx
cmp dx, 0x2d
jne 0x46d21f
xor bl, bl
jmp 0x46d22a
movzx eax, dx
mov bl, 1
cmp dx, 0x2b
jne 0x46d231
movzx eax, word [ecx + 2]
add ecx, 2
test ax, ax
je 0x46eebd
mov edi, ecx
movzx edx, ax
nop
cmp dx, 0x20
je 0x46d25a
cmp dx, 9
je 0x46d25a
movzx eax, word [edi + 2]
add edi, 2
mov edx, eax
test ax, ax
jne 0x46d240
mov dword [esp + 0x40], edi
cmp edi, ecx
mov edi, dword [ebp + 0xc]
je case.0x46e69a.7
mov eax, dword [esp + 0x40]
mov esi, 0x101
sub eax, ecx
sar eax, 1
inc eax
cmp eax, esi
cmovb esi, eax
lea eax, [esp + 0x68]
dec esi
push esi
push ecx
push eax
call fcn.004afab4
add esp, 0xc
xor eax, eax
mov word [esp + esi*2 + 0x68], ax
lea eax, [esp + 0x68]
push str.Section
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d2b5
mov byte [edi + 0x18d], 1
jmp 0x46e79b
lea eax, [esp + 0x68]
push str.AltSubmit
push eax
call fcn.004a44b1
mov esi, dword [ebp + 0x10]
add esp, 8
test eax, eax
jne 0x46d2f1
cmp byte [esi + 0x38], 0xc
je 0x46d2f1
mov cl, byte [esi + 0x39]
mov al, cl
or cl, 2
and al, 0xfd
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x39], cl
jmp case.0x46e69a.7
push 7
lea eax, [esp + 0x6c]
push str.Checked
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d37e
lea eax, [esp + 0x76]
push str.Gray
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d32c
movzx eax, bl
add eax, eax
mov dword [edi + 0x68], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xa
jne 0x46d34a
mov ecx, dword [edi + 0x10]
mov eax, ecx
and eax, 0xfffffffb
or ecx, 4
test bl, bl
cmove ecx, eax
mov dword [edi + 0x10], ecx
jmp case.0x46e69a.7
cmp word [esp + 0x76], 0
je 0x46d373
lea ecx, [esp + 0x76]
call fcn.00487070
mov dword [edi + 0x68], eax
cmp eax, 0xffffffff
jne case.0x46e69a.7
mov dword [edi + 0x68], 2
jmp case.0x46e69a.7
movzx eax, bl
mov dword [edi + 0x68], eax
jmp case.0x46e69a.7
push 6
lea eax, [esp + 0x6c]
push str.Choose
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d411
test bl, bl
je case.0x46e69a.7
cmp byte [esi + 0x38], 0xd
je 0x46d3c5
lea ecx, [esp + 0x74]
call fcn.00487070
mov dword [edi + 0x30], eax
cmp eax, 1
jge case.0x46e69a.7
mov dword [edi + 0x30], 0
jmp case.0x46e69a.7
lea eax, [esp + 0x74]
push str.None
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d3e8
mov eax, 2
mov dword [edi + 0x30], eax
jmp case.0x46e69a.7
push 1
lea edx, [edi + 0x13c]
lea ecx, [esp + 0x78]
call fcn.00486490
add esp, 4
test eax, eax
je 0x46ee8c
mov eax, 1
mov dword [edi + 0x30], eax
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Border
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d442
test bl, bl
je 0x46d436
or dword [edi], 0x800000
jmp case.0x46e69a.7
or dword [edi + 4], 0x800000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.VScroll
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d473
test bl, bl
je 0x46d467
or dword [edi], 0x200000
jmp case.0x46e69a.7
or dword [edi + 4], 0x200000
jmp case.0x46e69a.7
push 7
lea eax, [esp + 0x6c]
push str.HScroll
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d4df
cmp byte [esi + 0x38], 0xb
jne 0x46d4a5
test bl, bl
je 0x46d9c0
or dword [edi + 4], 0x8000
jmp case.0x46e69a.7
test bl, bl
je 0x46d4d3
or dword [edi], 0x100000
cmp word [esp + 0x76], 0
je 0x46d4c8
lea ecx, [esp + 0x76]
call fcn.00487070
mov dword [edi + 0x64], eax
jmp case.0x46e69a.7
or eax, 0xffffffff
mov dword [edi + 0x64], eax
jmp case.0x46e69a.7
or dword [edi + 4], 0x100000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Tabstop
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d504
test bl, bl
je 0x46d51e
or dword [edi], 0x10000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.NoTab
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d52a
test bl, bl
je 0x46d4f9
or dword [edi + 4], 0x10000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.group
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d553
test bl, bl
je 0x46d85e
or dword [edi], 0x20000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Redraw
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d57d
movzx eax, bl
xor eax, 1
add eax, 3
mov dword [edi + 0x184], eax
jmp case.0x46e69a.7
push 8
lea eax, [esp + 0x6c]
push str.Disabled
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d5fc
cmp word [esp + 0x78], ax
je 0x46d5ac
lea ecx, [esp + 0x78]
call fcn.00487070
test eax, eax
jne 0x46d5ac
xor bl, 1
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x46d5d1
xor eax, eax
test bl, bl
sete al
push eax
push ecx
call dword [esp + 0x50]
mov al, byte [esi + 0x39]
test bl, bl
je 0x46d5f2
or al, 0x10
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
test bl, bl
je 0x46d5e8
or dword [edi], 0x8000000
mov al, byte [esi + 0x39]
or al, 0x10
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
or dword [edi + 4], 0x8000000
mov al, byte [esi + 0x39]
and al, 0xef
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
push 6
lea eax, [esp + 0x6c]
push str.Hidden
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d680
cmp word [esp + 0x74], ax
je 0x46d62b
lea ecx, [esp + 0x74]
call fcn.00487070
test eax, eax
jne 0x46d62b
xor bl, 1
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x46d655
xor edx, edx
mov eax, 4
test bl, bl
cmovne eax, edx
push eax
push ecx
call dword [esp + 0x54]
mov al, byte [esi + 0x39]
test bl, bl
je 0x46d676
or al, 8
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
test bl, bl
je 0x46d66d
or dword [edi + 4], 0x10000000
mov al, byte [esi + 0x39]
or al, 8
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
or dword [edi], 0x10000000
mov al, byte [esi + 0x39]
and al, 0xf7
mov byte [esi + 0x39], al
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Wrap
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d708
movzx eax, byte [esi + 0x38]
dec eax
cmp eax, 0x12
ja case.0x46e69a.7
movzx eax, byte [eax + 0x46f7a8]
jmp dword [eax*4 + 0x46f790]
test bl, bl
je 0x46d6bf
or dword [edi + 4], 0x1f
jmp case.0x46e69a.7
mov eax, dword [edi]
and eax, 0xffffffec
or eax, 0xc
mov dword [edi], eax
jmp case.0x46e69a.7
or dword [edi + 4], 0x2000
jmp case.0x46e69a.7
test bl, bl
je 0x46d6ea
or dword [edi + 4], 0x100080
jmp case.0x46e69a.7
or dword [edi], 0x80
jmp case.0x46e69a.7
test bl, bl
je 0x46e5b7
or dword [edi], 0x200
jmp case.0x46e69a.7
push 0xa
lea eax, [esp + 0x6c]
push str.Background
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d839
mov eax, dword [esi + 0x40]
mov dword [esi + 0x3c], 0xffffffff
test eax, eax
je 0x46d73e
push eax
call dword [esp + 0x54]
mov dword [esi + 0x40], 0
lea eax, [esp + 0x7c]
push str.Trans
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d77f
test bl, bl
je case.0x46e69a.7
movzx eax, byte [esi + 0x38]
test byte [eax + 0x4e095c], 1
jne 0x46d773
mov ecx, str.Not_supported_for_this_control_type.
jmp 0x46ee91
mov dword [esi + 0x3c], 0xff000001
jmp case.0x46e69a.7
test bl, bl
je 0x46d826
cmp word [esp + 0x7c], 0
je case.0x46e69a.7
movzx eax, byte [esi + 0x38]
test byte [eax + 0x4e095c], 2
jne 0x46d7aa
mov ecx, str.Not_supported_for_this_control_type.
jmp 0x46ee91
lea ecx, [esp + 0x7c]
call fcn.00487c50
mov edx, eax
mov dword [edi + 0x5c], edx
cmp edx, 0xffffffff
jne 0x46d7fe
push 0x10
lea eax, [esp + 0x58]
push eax
lea eax, [esp + 0x84]
push eax
call fcn.004a9f5d
movzx edx, al
add esp, 0xc
movzx ecx, ax
shl edx, 8
shr ecx, 8
or edx, ecx
shr eax, 0x10
shl edx, 8
movzx eax, al
or edx, eax
mov eax, dword [esp + 0x54]
mov dword [edi + 0x5c], edx
cmp word [eax], 0
jne 0x46ee8c
cmp edx, 0xff000000
je 0x46d81b
movzx eax, byte [esi + 0x38]
test byte [eax + 0x4e095c], 4
je 0x46d81b
push edx
call dword [esp + 0x5c]
mov dword [esi + 0x40], eax
mov eax, dword [edi + 0x5c]
mov dword [esi + 0x3c], eax
jmp case.0x46e69a.7
mov dword [esi + 0x3c], 0xff000000
mov dword [edi + 0x5c], 0xff000000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.group
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d86a
test bl, bl
je 0x46d85e
or dword [edi], 0x20000
jmp case.0x46e69a.7
or dword [edi + 4], 0x20000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Theme
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d88b
mov byte [edi + 0x18e], bl
jmp case.0x46e69a.7
push 4
lea eax, [esp + 0x6c]
push str.Icon
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d8e6
cmp byte [esi + 0x38], 0xa
jne 0x46d8cd
lea eax, [esp + 0x70]
push str.Small
push eax
call fcn.004a44b1
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffffe
add eax, 2
mov dword [edi + 0x14], eax
jmp case.0x46e69a.7
test bl, bl
je case.0x46e69a.7
lea ecx, [esp + 0x70]
call fcn.00487070
mov dword [edi + 0x6c], eax
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Report
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d908
mov dword [edi + 0x14], 1
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.List
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d92a
mov dword [edi + 0x14], 3
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Tile
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d94c
mov dword [edi + 0x14], 4
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xa
jne 0x46da18
lea eax, [esp + 0x68]
push 0x4da054
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d980
test bl, bl
je 0x46dd29
or dword [edi + 4], 0x4000
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xa
jne 0x46da18
push 6
lea eax, [esp + 0x6c]
push str.NoSort
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46d9e4
lea eax, [esp + 0x74]
push 0x4da054
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46d9cb
test bl, bl
je 0x46d499
or dword [edi], 0x8000
jmp case.0x46e69a.7
mov byte [edi + 0x18f], bl
mov eax, dword [esi + 0x44]
test eax, eax
je case.0x46e69a.7
mov byte [eax + 5], bl
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xa
jne 0x46da18
lea eax, [esp + 0x68]
push str.Grid
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46da18
mov ecx, dword [edi + 0x10]
mov eax, ecx
and eax, 0xfffffffe
or ecx, 1
test bl, bl
cmove ecx, eax
mov dword [edi + 0x10], ecx
jmp case.0x46e69a.7
push 5
lea eax, [esp + 0x6c]
push str.Count
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46da41
lea ecx, [esp + 0x72]
call fcn.00487070
mov dword [edi + 0x60], eax
jmp case.0x46e69a.7
push 2
lea eax, [esp + 0x6c]
push 0x4e06a4
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46da95
cmp word [esp + 0x6c], 0x2d
je 0x46da95
lea edx, [esp + 0x5c]
lea ecx, [esp + 0x6c]
call fcn.00486fc0
mov ecx, dword [esp + 0x5c]
cmp word [ecx], 0
jne 0x46da95
mov ecx, dword [edi + 0x10]
test bl, bl
je 0x46da89
or eax, ecx
mov dword [edi + 0x10], eax
jmp case.0x46e69a.7
not eax
and eax, ecx
mov dword [edi + 0x10], eax
jmp case.0x46e69a.7
push 9
lea eax, [esp + 0x6c]
push str.ImageList
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46dac6
test bl, bl
je case.0x46e69a.7
lea ecx, [esp + 0x7a]
call fcn.00487070
mov dword [edi + 0x18], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 4
jne 0x46daf2
lea eax, [esp + 0x68]
push 0x4d97bc
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46daf2
test bl, bl
je 0x46e55d
or dword [edi], 1
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 5
jne 0x46db1e
lea eax, [esp + 0x68]
push str.Check3
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46db1e
test bl, bl
je 0x46e067
or dword [edi], 6
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.ReadOnly
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46db8c
movzx eax, byte [esi + 0x38]
add eax, 0xfffffff7
cmp eax, 3
ja case.0x46e69a.7
jmp dword [eax*4 + 0x46f7bc]
mov ecx, dword [esi + 0x20]
test ecx, ecx
je case.0x46dbb4.9
push 0
movzx eax, bl
push eax
push 0xcf
push ecx
call dword [esp + 0x20]
jmp case.0x46e69a.7
test bl, bl
je 0x46d6fd
or dword [edi + 4], 0x200
jmp case.0x46e69a.7
test bl, bl
je 0x46e62e
or dword [edi + 4], 8
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Multi
push eax
call fcn.004a44b1
mov cl, byte [esi + 0x38]
add esp, 8
test eax, eax
jne 0x46dbe7
movzx eax, cl
add eax, 0xfffffff7
cmp eax, 5
ja case.0x46e69a.7
jmp dword [eax*4 + 0x46f7cc]
test bl, bl
je 0x46dbca
or dword [edi], 0x800
jmp case.0x46e69a.7
or dword [edi + 4], 0x800
jmp case.0x46e69a.7
test bl, bl
je 0x46e51b
or dword [edi + 4], 4
jmp case.0x46e69a.7
cmp cl, 0xc
jne 0x46dc1d
lea eax, [esp + 0x68]
push str.WantReturn
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46dc1d
test bl, bl
je 0x46dc11
or dword [edi], 0x1000
jmp case.0x46e69a.7
or dword [edi + 4], 0x1000
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xc
jne 0x46dc76
lea eax, [esp + 0x68]
push str.WantTab
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
je 0x46df44
cmp byte [esi + 0x38], 0xc
jne 0x46dc76
lea eax, [esp + 0x68]
push str.WantCtrlA
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46dc76
mov cl, byte [esi + 0x39]
mov al, cl
and cl, 0xfd
or al, 2
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x39], cl
jmp case.0x46e69a.7
mov al, byte [esi + 0x38]
cmp al, 0xa
je 0x46dc81
cmp al, 0xb
jne 0x46dcb4
lea eax, [esp + 0x68]
push str.WantF2
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46dcb4
mov cl, byte [esi + 0x39]
mov al, cl
and cl, 0x7f
or al, 0x80
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x39], cl
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0xc
jne 0x46dce3
lea eax, [esp + 0x68]
push str.Number
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46dce3
test bl, bl
je 0x46d6ce
or dword [edi], 0x2000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Lowercase
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46dd34
mov al, byte [esi + 0x38]
cmp al, 0xc
jne 0x46dd15
test bl, bl
je 0x46dd0c
or dword [edi], 0x10
jmp case.0x46e69a.7
or dword [edi + 4], 0x10
jmp case.0x46e69a.7
cmp al, 8
je case.0x46db44.9
cmp al, 7
jne case.0x46e69a.7
test bl, bl
je 0x46d974
or dword [edi], 0x4000
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Uppercase
push eax
call fcn.004a44b1
mov cl, byte [esi + 0x38]
add esp, 8
test eax, eax
jne 0x46dd83
cmp cl, 0xc
jne 0x46dd62
test bl, bl
je 0x46e639
or dword [edi], 8
jmp case.0x46e69a.7
cmp cl, 8
je case.0x46d6ab.3
cmp cl, 7
jne case.0x46e69a.7
test bl, bl
je 0x46d6ce
or dword [edi], 0x2000
jmp case.0x46e69a.7
cmp cl, 0xc
jne 0x46de19
push 8
lea eax, [esp + 0x6c]
push str.Password
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46de19
mov ax, word [esp + 0x78]
mov word [edi + 0x188], ax
test bl, bl
je 0x46ddf6
or dword [edi], 0x20
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x46de0f
push 0
test ax, ax
jne 0x46ddde
push 0x25cf
push 0xcc
push ecx
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46e69a.7
movzx eax, ax
push eax
push 0xcc
push ecx
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46e69a.7
or dword [edi + 4], 0x20
mov eax, dword [esi + 0x20]
test eax, eax
je 0x46de0f
push 0
push 0
push 0xcc
push eax
call dword [esp + 0x20]
mov byte [esp + 0x1c], 1
jmp case.0x46e69a.7
push 5
lea eax, [esp + 0x6c]
push str.Limit
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46de65
test bl, bl
je 0x46de58
cmp word [esp + 0x72], ax
je 0x46de4d
lea ecx, [esp + 0x72]
call fcn.00487070
mov dword [edi + 0x60], eax
jmp case.0x46e69a.7
or eax, 0xffffffff
mov dword [edi + 0x60], eax
jmp case.0x46e69a.7
mov eax, connect
mov dword [edi + 0x60], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 8
jne 0x46de91
lea eax, [esp + 0x68]
push str.Simple
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46de91
test bl, bl
je 0x46e55d
or dword [edi], 1
jmp case.0x46e69a.7
push 4
lea eax, [esp + 0x6c]
push str.Sort
push eax
call fcn.004a4632
mov cl, byte [esi + 0x38]
add esp, 0xc
test eax, eax
jne 0x46def2
movzx eax, cl
add eax, 0xfffffff9
cmp eax, 3
ja case.0x46e69a.7
jmp dword [eax*4 + 0x46f7e4]
test bl, bl
je 0x46dee9
lea eax, [esp + 0x70]
push str.Desc
push eax
call fcn.004a44b1
add esp, 8
neg eax
sbb eax, eax
and eax, 0xfffffff0
add eax, 0x20
or dword [edi], eax
jmp case.0x46e69a.7
or dword [edi + 4], 0x30
jmp case.0x46e69a.7
cmp cl, 0x10
jne 0x46df24
lea eax, [esp + 0x68]
push str.Horz
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46df24
test bl, bl
je 0x46e0dc
mov eax, dword [edi]
and eax, 0xffffffef
or eax, 0x40
mov dword [edi], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x11
jne 0x46dff1
lea eax, [esp + 0x68]
push str.Invert
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46df61
mov cl, byte [esi + 0x39]
mov al, cl
or cl, 0x80
and al, 0x7f
movzx ecx, cl
test bl, bl
movzx eax, al
cmove ecx, eax
mov byte [esi + 0x39], cl
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x11
jne 0x46dff1
lea eax, [esp + 0x68]
push str.NoTicks
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46df91
test bl, bl
je 0x46dd0c
or dword [edi], 0x10
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x11
jne 0x46dff1
push 0xc
lea eax, [esp + 0x6c]
push str.TickInterval
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46dff1
mov byte [edi + 0x18b], 1
test bl, bl
je 0x46dfe2
or dword [edi], 1
lea ecx, [esp + 0x80]
cmp word [esp + 0x80], ax
setne al
mov byte [edi + 0x18c], al
call fcn.00487070
mov dword [edi + 0x3c], eax
jmp case.0x46e69a.7
or dword [edi + 4], 1
or eax, 0xffffffff
mov dword [edi + 0x3c], eax
jmp case.0x46e69a.7
push 4
lea eax, [esp + 0x6c]
push str.Line
push eax
call fcn.004a4632
mov cl, byte [esi + 0x38]
add esp, 0xc
test eax, eax
jne 0x46e070
cmp cl, 0x11
jne 0x46e02a
test bl, bl
je case.0x46e69a.7
lea ecx, [esp + 0x70]
call fcn.00487070
mov dword [edi + 0x40], eax
jmp case.0x46e69a.7
cmp cl, 0xb
jne case.0x46e69a.7
movzx eax, word [esp + 0x70]
mov edx, eax
lea esi, [eax - 0x61]
and eax, 0xffdf
movzx ecx, ax
cmp si, 0x19
mov eax, edx
cmova ecx, eax
cmp cx, 0x53
jne 0x46e79b
mov esi, dword [ebp + 0x10]
test bl, bl
je 0x46e067
or dword [edi], 6
jmp case.0x46e69a.7
or dword [edi + 4], 6
jmp case.0x46e69a.7
cmp cl, 0x11
jne 0x46e0a6
push 4
lea eax, [esp + 0x6c]
push str.Page
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46e0a6
test bl, bl
je case.0x46e69a.7
lea ecx, [esp + 0x70]
call fcn.00487070
mov dword [edi + 0x44], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x11
jne 0x46e0e5
push 5
lea eax, [esp + 0x6c]
push str.Thick
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46e0e5
test bl, bl
je 0x46e0dc
or dword [edi], 0x40
lea ecx, [esp + 0x72]
call fcn.00487070
mov dword [edi + 0x48], eax
jmp case.0x46e69a.7
or dword [edi + 4], 0x40
jmp case.0x46e69a.7
push 7
lea eax, [esp + 0x6c]
push str.ToolTip
push eax
call fcn.004a4632
mov cl, byte [esi + 0x38]
add esp, 0xc
test eax, eax
jne 0x46e19e
cmp cl, 0x11
jne case.0x46e69a.7
test bl, bl
je 0x46e6c8
movzx eax, word [esp + 0x76]
mov edx, eax
add eax, 0xffffff9f
mov ecx, edx
and ecx, 0xffffffdf
cmp ax, 0x19
cmova ecx, edx
add ecx, 0xffffffbe
cmp ecx, 0x12
ja case.0x46e13a.67
movzx eax, byte [ecx + 0x46f808]
jmp dword [eax*4 + 0x46f7f4]
xor eax, eax
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46e69a.7
mov eax, 1
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46e69a.7
mov eax, 2
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46e69a.7
mov eax, 3
inc eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46e69a.7
xor eax, eax
mov dword [edi + 0x4c], eax
or dword [edi], 0x100
jmp case.0x46e69a.7
cmp cl, 0x11
jne 0x46e20a
push 5
lea eax, [esp + 0x6c]
push str.Buddy
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46e20a
test bl, bl
je case.0x46e69a.7
movzx esi, word [esp + 0x72]
test si, si
je 0x46e79b
mov ecx, dword [esp + 0x18]
lea eax, [esp + 0x74]
push eax
call fcn.00471720
mov edx, dword [esp + 0x18]
cmp eax, dword [edx + 0x64]
jae 0x46e79b
mov ecx, dword [edx + 0x34]
cmp esi, 0x31
mov esi, dword [ebp + 0x10]
mov eax, dword [ecx + eax*4]
jne 0x46e202
mov dword [edi + 0x50], eax
jmp case.0x46e69a.7
mov dword [edi + 0x54], eax
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Vertical
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e24f
mov al, byte [esi + 0x38]
cmp al, 0x11
jne 0x46e237
test bl, bl
je case.0x46e589.11
or dword [edi], 2
jmp case.0x46e69a.7
cmp al, 0x12
jne case.0x46e69a.7
test bl, bl
je 0x46e453
or dword [edi], 4
jmp case.0x46e69a.7
push 5
lea eax, [esp + 0x6c]
push str.Range
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46e311
test bl, bl
je case.0x46e69a.7
cmp word [esp + 0x72], ax
je case.0x46e69a.7
mov al, byte [esi + 0x38]
cmp al, 0xd
je 0x46e2c3
cmp al, 0xe
je 0x46e2c3
lea ecx, [esp + 0x72]
mov byte [edi + 0x18a], 1
call fcn.00487070
mov dword [edi + 0x34], eax
lea eax, [esp + 0x74]
push 0x2d
push eax
call fcn.004a203f
add esp, 8
test eax, eax
je case.0x46e69a.7
lea ecx, [eax + 2]
call fcn.00487070
mov dword [edi + 0x38], eax
jmp case.0x46e69a.7
lea esi, [edi + 0x15c]
mov edx, esi
lea ecx, [esp + 0x72]
call fcn.004863a0
mov dword [edi + 0x180], eax
test eax, eax
je case.0x46e984.68
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx + 0x20]
test ecx, ecx
je 0x46e79b
push esi
mov esi, dword [ebp + 0x10]
mov edx, 0x1004
push eax
mov eax, 0x1012
cmp byte [esi + 0x38], 0xd
cmove eax, edx
push eax
push ecx
call dword [esp + 0x20]
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x12
jne 0x46e33d
lea eax, [esp + 0x68]
push str.Smooth
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e33d
test bl, bl
je 0x46e55d
or dword [edi], 1
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Buttons
push eax
call fcn.004a44b1
mov cl, byte [esi + 0x38]
add esp, 8
test eax, eax
jne 0x46e387
cmp cl, 0x13
jne 0x46e36e
test bl, bl
je 0x46e6c8
or dword [edi], 0x100
jmp case.0x46e69a.7
cmp cl, 0xb
jne case.0x46e69a.7
test bl, bl
je 0x46e55d
or dword [edi], 1
jmp case.0x46e69a.7
cmp cl, 0x13
jne 0x46e3c4
lea eax, [esp + 0x68]
push str.Bottom
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e3c4
mov eax, dword [edi + 4]
test bl, bl
je 0x46e3b9
or dword [edi], 2
or eax, 0x80
mov dword [edi + 4], eax
jmp case.0x46e69a.7
or eax, 2
mov dword [edi + 4], eax
jmp case.0x46e69a.7
cmp byte [esi + 0x38], 0x18
jne 0x46e416
push 5
lea eax, [esp + 0x6c]
push str.Class
push eax
call fcn.004a4632
add esp, 0xc
test eax, eax
jne 0x46e416
lea eax, [esp + 0x2a0]
push eax
lea eax, [esp + 0x76]
push eax
push dword [0x4eee04]
call dword [esp + 0x6c]
movzx eax, ax
mov word [edi + 0x192], ax
test ax, ax
jne case.0x46e69a.7
mov ecx, str.Unrecognized_window_class.
jmp 0x46ee91
lea eax, [esp + 0x68]
push str.Center
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e4dd
movzx eax, byte [esi + 0x38]
dec eax
cmp eax, 0x10
ja case.0x46e69a.7
test bl, bl
je 0x46e47f
movzx eax, byte [eax + 0x46f830]
jmp dword [eax*4 + 0x46f81c]
or dword [edi + 4], 4
jmp case.0x46e69a.7
movzx eax, byte [eax + 0x46f858]
jmp dword [eax*4 + 0x46f844]
or dword [edi + 4], 0x1f
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Right
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e5f0
movzx eax, byte [esi + 0x38]
dec eax
test bl, bl
je 0x46e579
cmp eax, 0x16
ja case.0x46e69a.7
movzx eax, byte [eax + 0x46f88c]
jmp dword [eax*4 + 0x46f86c]
or dword [edi + 4], 8
or dword [edi], 4
jmp case.0x46e69a.7
or dword [edi], 2
or dword [edi + 4], 0x1d
jmp case.0x46e69a.7
mov eax, dword [edi]
or dword [edi + 4], 0x100
or eax, 0x200
mov dword [edi], eax
mov cl, byte [esi + 0x38]
cmp cl, 5
je 0x46e550
cmp cl, 6
jne case.0x46e69a.7
or eax, 0x20
mov dword [edi], eax
jmp case.0x46e69a.7
or dword [edi], 2
or dword [edi + 4], 1
jmp case.0x46e69a.7
or dword [edi], 0x282
jmp case.0x46e69a.7
or dword [edi], 0x20
jmp case.0x46e69a.7
cmp eax, 0x12
ja case.0x46e69a.7
movzx eax, byte [eax + 0x46f8c0]
jmp dword [eax*4 + 0x46f8a4]
or dword [edi + 4], 0x20
jmp case.0x46e69a.7
mov eax, dword [esi + 0x20]
test eax, eax
je 0x46e5c3
push 0xfffffffffffffff0
push eax
call dword [esp + 0x34]
and eax, 0x300
cmp eax, 0x300
je case.0x46e69a.7
or dword [edi + 4], 0x200
jmp case.0x46e69a.7
mov ecx, dword [edi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x46e69a.7
and ecx, 0xfffffdff
mov dword [edi], ecx
jmp case.0x46e69a.7
or dword [edi + 4], 0x82
jmp case.0x46e69a.7
lea eax, [esp + 0x68]
push str.Left
push eax
call fcn.004a44b1
add esp, 8
test eax, eax
jne 0x46e701
movzx eax, byte [esi + 0x38]
test bl, bl
je 0x46e687
dec eax
cmp eax, 0x12
ja case.0x46e69a.7
movzx eax, byte [eax + 0x46f8f4]
jmp dword [eax*4 + 0x46f8d4]
or dword [edi + 4], 4
or dword [edi], 8
jmp case.0x46e69a.7
or dword [edi], 4
or dword [edi + 4], 8
jmp case.0x46e69a.7
mov eax, dword [edi + 4]
or dword [edi], 0x100
or eax, 0x200
mov dword [edi + 4], eax
mov cl, byte [esi + 0x38]
cmp cl, 5
je 0x46e664
cmp cl, 6
jne case.0x46e69a.7
or eax, 0x20
mov dword [edi + 4], eax
jmp case.0x46e69a.7
or dword [edi + 4], 3
jmp case.0x46e69a.7
or dword [edi], 0x280
or dword [edi + 4], 2
jmp case.0x46e69a.7
add eax, 0xfffffffd
cmp eax, 0x10
ja case.0x46e69a.7
movzx eax, byte [eax + 0x46f918]
jmp dword [eax*4 + 0x46f908]
or dword [edi + 4], 0xc
jmp case.0x46e69a.7
mov eax, dword [esi + 0x20]
test eax, eax
je 0x46e6d4
push 0xfffffffffffffff0
push eax
call dword [esp + 0x34]
and eax, 0x300
cmp eax, 0x300
je case.0x46e69a.7
or dword [edi + 4], 0x100
jmp case.0x46e69a.7
mov ecx, dword [edi]
mov eax, ecx
and eax, 0x300
cmp eax, 0x300
je case.0x46e69a.7
and ecx, 0xfffffeff
mov dword [edi], ecx
jmp case.0x46e69a.7
or dword [edi + 4], 0x80
jmp case.0x46e69a.7
mov ax, word [esp + 0x68]
cmp ax, 0x2d
je 0x46e735
lea edx, [esp + 0x64]
lea ecx, [esp + 0x68]
call fcn.00486fc0
mov ecx, dword [esp + 0x64]
cmp word [ecx], 0
jne 0x46e730
test bl, bl
je 0x46e72b
or dword [edi], eax
jmp case.0x46e69a.7
or dword [edi + 4], eax
jmp case.0x46e69a.7
mov ax, word [esp + 0x68]
movzx eax, ax
mov esi, eax
add eax, 0xffffff9f
cmp ax, 0x19
ja 0x46e74b
and esi, 0xffdf
jmp 0x46e74e
movzx esi, si
cmp word [esp + 0x6a], 0
lea ecx, [esp + 0x6a]
mov dword [esp + 0x24], esi
movzx eax, si
mov dword [esp + 0x20], ecx
jne 0x46e7b8
cmp eax, 0x43
je 0x46e790
cmp si, 0x56
mov esi, dword [ebp + 0x10]
jne 0x46ee8c
mov eax, dword [esi + 0x24]
test eax, eax
je 0x46e787
push eax
call fcn.004a45b2
add esp, 4
mov dword [esi + 0x24], 0
jmp case.0x46e69a.7
test bl, bl
jne 0x46e79b
mov dword [edi + 0x58], 0xff000000
mov esi, dword [ebp + 0x10]
mov ecx, dword [esp + 0x40]
movzx eax, word [ecx]
cmp eax, 0x20
je 0x46e7b3
cmp eax, 9
jne 0x46eeb2
add ecx, 2
jmp 0x46e7a2
push esi
push str.XYWHTER
mov dword [esp + 0x3c], 0
call fcn.004a203f
add esp, 8
test eax, eax
je 0x46e95e
mov cx, word [esp + 0x6a]
movzx eax, cx
mov edx, eax
add eax, 0xffffff9f
cmp ax, 0x19
ja 0x46e7f1
and edx, 0xffdf
jmp 0x46e7f4
movzx edx, dx
movzx eax, si
add eax, 0xffffffb8
mov dword [esp + 0x28], edx
cmp eax, 0x11
ja case.0x46e80e.73
movzx eax, byte [eax + 0x46f938]
jmp dword [eax*4 + 0x46f92c]
cmp dx, 0x50
lea esi, [esp + 0x6a]
lea eax, [esp + 0x6c]
cmove esi, eax
mov dword [esp + 0x20], esi
jmp 0x46e892
cmp cx, 0x2b
jne 0x46e868
movzx eax, word [esp + 0x6c]
mov ecx, eax
lea edx, [eax - 0x61]
and eax, 0xffdf
movzx esi, ax
cmp dx, 0x19
mov eax, ecx
cmova esi, eax
mov eax, 0x4d
cmp ax, si
jne 0x46e864
lea esi, [esp + 0x6e]
mov byte [esp + 0xf], 1
mov dword [esp + 0x20], esi
jmp 0x46e892
mov edx, dword [esp + 0x28]
push edx
push str.MPS
mov byte [esp + 0x17], 0
call fcn.004a203f
add esp, 8
lea ecx, [esp + 0x6c]
test eax, eax
cmove ecx, dword [esp + 0x20]
mov esi, ecx
mov dword [esp + 0x20], esi
jmp 0x46e892
mov esi, dword [esp + 0x20]
push ecx
push 1
push 0
mov edx, 1
mov ecx, esi
call fcn.004866d0
add esp, 0xc
sub eax, 1
je 0x46e8f3
sub eax, 1
je 0x46e8cc
cmp word [esi], 0
jne 0x46e8bf
mov ecx, dword [esp + 0x28]
test cx, cx
jne 0x46e911
mov edx, dword [esp + 0x18]
xor esi, esi
mov ecx, esi
jmp 0x46e96e
push esi
call fcn.004ae522
mov ecx, dword [esp + 0x2c]
add esp, 4
fstp dword [esp + 0x30]
movss xmm0, dword [esp + 0x30]
cvttss2si eax, xmm0
movss dword [esp + 0x30], xmm0
mov dword [esp + 0x34], eax
jmp 0x46e915
mov ecx, esi
call fcn.00487070
mov ecx, dword [esp + 0x28]
mov dword [esp + 0x34], eax
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [esp + 0x30], xmm0
jmp 0x46e915
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x24]
cmp si, 0x58
je 0x46e93c
cmp si, 0x59
je 0x46e93c
cmp si, 0x57
je 0x46e931
cmp si, 0x48
jne 0x46e966
cmp eax, 0xffffffff
jne 0x46e93c
cmp cx, 0x50
jne 0x46e966
mov edx, dword [esp + 0x18]
cmp byte [edx + 0xce], 0
je 0x46e96a
push 0x60
push dword [0x4f003c]
push eax
call dword [esp + 0x50]
mov edx, dword [esp + 0x18]
mov ecx, eax
jmp 0x46e96e
mov edx, dword [esp + 0x18]
xor ecx, ecx
jmp 0x46e96e
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x34]
movzx eax, si
add eax, 0xffffffbd
cmp eax, 0x16
ja case.0x46e984.68
movzx eax, byte [eax + 0x46f974]
jmp dword [eax*4 + 0x46f94c]
mov eax, dword [edi + 0x138]
mov esi, dword [ebp + 0x10]
cmp eax, 0x32
jae case.0x46e69a.7
mov dword [edi + eax*4 + 0x70], ecx
inc dword [edi + 0x138]
jmp case.0x46e69a.7
mov esi, dword [esp + 0x20]
mov ecx, edx
push esi
mov esi, dword [ebp + 0x10]
push esi
call fcn.00466a60
cmp eax, 0xa0000000
je 0x46eea7
cmp eax, 0xa00e0001
jne case.0x46e69a.7
push dword [0x4eff1c]
mov ecx, 0x4f0050
push 0
push 0
push 0
push str.Out_of_memory.
call fcn.0040cc20
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov esi, dword [esp + 0x20]
cmp word [esi], 0
je 0x46e794
mov ecx, esi
call fcn.00487c50
mov dword [edi + 0x58], eax
cmp eax, 0xffffffff
jne 0x46e79b
push 0x10
lea eax, [esp + 0x40]
push eax
push esi
call fcn.004a9f5d
mov esi, dword [ebp + 0x10]
add esp, 0xc
movzx edx, al
movzx ecx, ax
shl edx, 8
shr ecx, 8
or edx, ecx
shr eax, 0x10
shl edx, 8
movzx eax, al
or edx, eax
mov eax, dword [esp + 0x3c]
mov dword [edi + 0x58], edx
cmp word [eax], 0
je case.0x46e69a.7
jmp 0x46ee8c
cmp word [esp + 0x28], 0x50
jne 0x46ea71
mov eax, dword [edx + 0x94]
add eax, ecx
mov dword [edi + 0x24], eax
jmp 0x46e79b
mov eax, ecx
mov dword [edi + 0x24], eax
jmp 0x46e79b
cmp word [esp + 0x28], 0x50
jne 0x46ea93
mov eax, dword [edx + 0x98]
add eax, ecx
mov dword [edi + 0x28], eax
jmp 0x46e79b
mov eax, ecx
mov dword [edi + 0x28], eax
jmp 0x46e79b
mov ebx, dword [esp + 0x28]
cmp bx, 0x2b
jne 0x46ebc8
cmp byte [esp + 0xf], 0
je 0x46eaba
mov eax, dword [edx + 0x84]
jmp 0x46eabc
xor eax, eax
mov esi, dword [ebp + 0x10]
add eax, ecx
mov dword [esp + 0x24], eax
mov ah, byte [esi + 0x3a]
mov byte [esp + 0x17], ah
cmp ah, 0xff
je 0x46eb0d
mov ecx, dword [esp + 0x18]
xor al, al
xor edx, edx
mov ebx, dword [ecx + 0x64]
test ebx, ebx
je 0x46eb0d
mov ecx, dword [ecx + 0x34]
mov dword [esp + 0x34], ecx
nop word [eax + eax]
mov esi, dword [ecx]
mov dword [esp + 0x20], esi
cmp byte [esi + 0x38], 0x13
jne 0x46eb02
cmp al, ah
je 0x46eb3f
inc al
inc edx
add ecx, 4
cmp edx, ebx
jb 0x46eaf0
mov esi, dword [ebp + 0x10]
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0x94]
add eax, dword [ebx + 0x8c]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne case.0x46e69a.7
mov eax, dword [ebx + 0x90]
mov dword [edi + 0x20], eax
jmp case.0x46e69a.7
test esi, esi
je 0x46eb0a
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov bh, byte [esp + 0x17]
xor eax, eax
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov bl, byte [ecx + 0x3b]
nop dword [eax]
mov ecx, dword [edi + eax*4]
cmp byte [ecx + 0x3b], bl
jne 0x46eb6e
cmp byte [ecx + 0x3a], bh
jne 0x46eb6e
inc edx
inc eax
cmp eax, dword [esi + 0x64]
jb 0x46eb60
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x20]
test edx, edx
jne 0x46eb0a
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0x270]
push eax
push dword [esi + 0x20]
mov ecx, ebx
call fcn.00474380
mov eax, dword [esp + 0x270]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x20], 0x80000000
mov ecx, dword [esp + 0x274]
mov esi, dword [ebp + 0x10]
mov dword [edi + 0x1c], eax
jne case.0x46e69a.7
add ecx, dword [ebx + 0x88]
mov dword [edi + 0x20], ecx
jmp case.0x46e69a.7
cmp bx, 0x4d
jne 0x46ebfd
mov eax, dword [edx + 0x84]
add eax, ecx
mov dword [edi + 0x1c], eax
cmp dword [edi + 0x20], 0x80000000
mov esi, dword [ebp + 0x10]
jne case.0x46e69a.7
mov eax, dword [edx + 0xa0]
add eax, dword [edx + 0x88]
mov dword [edi + 0x20], eax
jmp case.0x46e69a.7
cmp bx, 0x50
jne 0x46ec3f
mov eax, dword [edx + 0x8c]
add eax, ecx
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne 0x46e79b
mov ecx, dword [edx + 0x90]
cmp eax, dword [edx + 0x8c]
jne 0x46ec37
mov eax, dword [edx + 0x98]
add eax, dword [edx + 0x88]
add ecx, eax
mov dword [edi + 0x20], ecx
jmp 0x46e79b
cmp bx, 0x53
jne 0x46ec74
mov eax, dword [edx + 0xa4]
mov esi, dword [ebp + 0x10]
add eax, ecx
cmp dword [edi + 0x20], 0x80000000
mov dword [edi + 0x1c], eax
jne case.0x46e69a.7
mov eax, dword [edx + 0xb0]
add eax, dword [edx + 0x88]
mov dword [edi + 0x20], eax
jmp case.0x46e69a.7
mov dword [edi + 0x1c], ecx
jmp 0x46ebd9
mov ebx, dword [esp + 0x28]
cmp bx, 0x2b
jne 0x46edae
cmp byte [esp + 0xf], 0
je 0x46ec99
mov eax, dword [edx + 0x88]
jmp 0x46ec9b
xor eax, eax
mov esi, dword [ebp + 0x10]
add eax, ecx
mov dword [esp + 0x24], eax
mov ah, byte [esi + 0x3a]
mov byte [esp + 0x17], ah
cmp ah, 0xff
je 0x46ed80
mov ecx, dword [esp + 0x18]
xor al, al
xor edx, edx
mov ebx, dword [ecx + 0x64]
test ebx, ebx
je 0x46ed7e
mov ecx, dword [ecx + 0x34]
mov dword [esp + 0x34], ecx
nop
mov esi, dword [ecx]
mov dword [esp + 0x20], esi
cmp byte [esi + 0x38], 0x13
jne 0x46ece2
cmp al, ah
je 0x46ecf6
inc al
inc edx
add ecx, 4
cmp edx, ebx
jb 0x46ecd0
mov esi, dword [ebp + 0x10]
mov edx, dword [esp + 0x18]
jmp 0x46ed80
test esi, esi
je 0x46ecea
mov ecx, dword [ebp + 0x10]
xor edx, edx
mov bh, byte [esp + 0x17]
xor eax, eax
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x18]
mov bl, byte [ecx + 0x3b]
mov ecx, dword [edi + eax*4]
cmp byte [ecx + 0x3b], bl
jne 0x46ed1e
cmp byte [ecx + 0x3a], bh
jne 0x46ed1e
inc edx
inc eax
cmp eax, dword [esi + 0x64]
jb 0x46ed10
mov edi, dword [ebp + 0xc]
mov esi, dword [esp + 0x20]
test edx, edx
jne 0x46ecea
mov ebx, dword [esp + 0x18]
lea eax, [esp + 0x280]
push eax
push dword [esi + 0x20]
mov ecx, ebx
call fcn.00474380
mov eax, dword [esp + 0x284]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x1c], 0x80000000
mov ecx, dword [esp + 0x280]
mov esi, dword [ebp + 0x10]
mov dword [esp + 0x34], ecx
mov dword [edi + 0x20], eax
jne case.0x46e69a.7
mov eax, dword [ebx + 0x84]
add eax, ecx
mov dword [edi + 0x1c], eax
jmp case.0x46e69a.7
mov edx, ecx
mov eax, dword [edx + 0x98]
add eax, dword [edx + 0x90]
add eax, dword [esp + 0x24]
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x46e69a.7
mov eax, dword [edx + 0x8c]
mov dword [edi + 0x1c], eax
jmp case.0x46e69a.7
cmp bx, 0x4d
jne 0x46ede3
mov eax, dword [edx + 0x88]
add eax, ecx
mov dword [edi + 0x20], eax
cmp dword [edi + 0x1c], 0x80000000
mov esi, dword [ebp + 0x10]
jne case.0x46e69a.7
mov eax, dword [edx + 0x9c]
add eax, dword [edx + 0x84]
mov dword [edi + 0x1c], eax
jmp case.0x46e69a.7
cmp bx, 0x50
jne 0x46ee25
mov eax, dword [edx + 0x90]
add eax, ecx
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne 0x46e79b
mov ecx, dword [edx + 0x8c]
cmp eax, dword [edx + 0x90]
jne 0x46ee1d
mov eax, dword [edx + 0x94]
add eax, dword [edx + 0x88]
add ecx, eax
mov dword [edi + 0x1c], ecx
jmp 0x46e79b
cmp bx, 0x53
jne 0x46ee5a
mov eax, dword [edx + 0xa8]
mov esi, dword [ebp + 0x10]
add eax, ecx
cmp dword [edi + 0x1c], 0x80000000
mov dword [edi + 0x20], eax
jne case.0x46e69a.7
mov eax, dword [edx + 0xac]
add eax, dword [edx + 0x84]
mov dword [edi + 0x1c], eax
jmp case.0x46e69a.7
mov dword [edi + 0x20], ecx
jmp 0x46edbf
movss xmm0, dword [esp + 0x30]
movss dword [edi + 0x2c], xmm0
jmp 0x46e79b
mov esi, dword [ebp + 0x10]
test bl, bl
je 0x46ee81
or dword [edi + 8], ecx
jmp case.0x46e69a.7
or dword [edi + 0xc], ecx
jmp case.0x46e69a.7
mov esi, dword [ebp + 0x10]
mov ecx, str.Invalid_option.
push 9
lea edx, [esp + 0x6c]
call fcn.0040df00
add esp, 4
test eax, eax
jne case.0x46e69a.7
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov edx, eax
test ax, ax
jne 0x46d215
mov edx, dword [esp + 0x2c]
mov eax, dword [esi + 0x20]
test eax, eax
je 0x46f782
push 0xfffffffffffffff0
push eax
call edx
mov edx, dword [edi + 4]
mov esi, eax
mov ebx, esi
mov dword [esp + 0x24], esi
or ebx, dword [edi]
mov ecx, edx
not ecx
and ebx, ecx
mov ecx, dword [ebp + 0x10]
movzx eax, byte [ecx + 0x38]
add eax, 0xfffffffe
cmp eax, 8
ja case.0x46eef7.9
jmp dword [eax*4 + 0x46f98c]
mov eax, ebx
xor eax, esi
and eax, 0xf
xor ebx, eax
jmp case.0x46eef7.9
and ebx, 0xfffffff7
or ebx, 7
jmp case.0x46eef7.9
test bl, 1
je 0x46ef24
and ebx, 0xfffffff1
or ebx, 1
jmp 0x46ef27
and ebx, 0xfffffff0
mov eax, dword [esp + 0x18]
mov ecx, dword [eax + 0x6c]
cmp dword [ebp + 0x14], ecx
jne 0x46ef5f
test dl, 1
je case.0x46eef7.9
push 0
push 1
push 0x401
push dword [eax + 0x24]
mov dword [eax + 0x6c], 0xffffffff
call dword [esp + 0x20]
or esi, 1
mov dword [esp + 0x24], esi
jmp case.0x46eef7.9
test byte [edi], 1
je case.0x46eef7.9
cmp ecx, dword [eax + 0x64]
jae 0x46efa1
mov eax, dword [eax + 0x34]
push 1
push 0xfffffffffffffff0
mov eax, dword [eax + ecx*4]
push dword [eax + 0x20]
call dword [esp + 0x38]
and eax, 0xfffe
push eax
mov eax, dword [esp + 0x20]
push 0xf4
mov ecx, dword [eax + 0x6c]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + ecx*4]
push dword [eax + 0x20]
call dword [esp + 0x20]
mov eax, dword [esp + 0x18]
mov ecx, dword [ebp + 0x14]
mov dword [eax + 0x6c], ecx
push 0
lea eax, [ecx + 3]
push eax
mov eax, dword [esp + 0x20]
push 0x401
push dword [eax + 0x24]
call dword [esp + 0x20]
jmp case.0x46eef7.9
mov eax, ebx
and eax, 6
cmp al, 6
jne 0x46efd0
and ebx, 0xfffffff6
or ebx, 6
jmp case.0x46eef7.9
and ebx, 0xfffffff3
or ebx, 3
jmp case.0x46eef7.9
and ebx, 0xfffffff9
or ebx, 9
jmp case.0x46eef7.9
test bl, 1
je 0x46efed
and ebx, 0xfffffff1
or ebx, 1
jmp case.0x46eef7.9
and ebx, 0xfffffff2
or ebx, 2
jmp case.0x46eef7.9
mov eax, dword [edi + 0x14]
cmp eax, 0xffffffff
je case.0x46eef7.9
push 0
push eax
push 0x108e
push dword [ecx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x14]
cmp eax, 4
je case.0x46eef7.9
and ebx, 0xfffffffc
or ebx, eax
mov eax, dword [edi + 0x60]
mov edx, dword [ebp + 0x10]
test eax, eax
je 0x46f083
mov cl, byte [edx + 0x38]
cmp cl, 0xc
jne 0x46f061
mov ecx, dword [edx + 0x20]
push 0
test eax, eax
jns 0x46f059
push 0
push 0xc5
push ecx
call dword [esp + 0x20]
cmp dword [edi + 0x60], 0x80000000
mov edx, dword [ebp + 0x10]
je 0x46f083
test bl, 4
jne 0x46f083
and ebx, 0xffefff7f
jmp 0x46f083
push eax
push 0xc5
jmp 0x46f07b
cmp cl, 0xf
jne 0x46f083
mov ecx, dword [edx + 0x20]
test eax, eax
jns 0x46f073
push 0
push 0
jmp 0x46f076
push 6
push eax
push 0x403
push ecx
call dword [esp + 0x20]
mov edx, dword [ebp + 0x10]
mov byte [esp + 0xf], 0
cmp esi, ebx
je 0x46f178
mov al, byte [edx + 0x38]
mov byte [esp + 0xf], 1
mov byte [esp + 0x18], 0
cmp al, 4
je 0x46f11e
cmp al, 9
je 0x46f0c3
cmp al, 0x12
jne 0x46f130
push 0
push 0
push 0x408
push dword [edx + 0x20]
call dword [esp + 0x20]
mov dword [esp + 0x44], eax
jmp 0x46f130
mov eax, esi
and eax, 0x100000
test ebx, 0x100000
je 0x46f10f
test eax, eax
jne 0x46f130
mov eax, dword [edi + 0x64]
test eax, eax
jns 0x46f105
lea eax, [esp + 0x290]
push eax
push dword [edx + 0x20]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [esp + 0x298]
sub eax, dword [esp + 0x290]
mov edx, dword [ebp + 0x10]
lea eax, [eax + eax*2]
mov dword [edi + 0x64], eax
push 0
push eax
push 0x194
jmp 0x46f129
test eax, eax
je 0x46f130
push 0
push 0
push 0x194
jmp 0x46f129
push 1
movzx eax, bx
push eax
push 0xf4
push dword [edx + 0x20]
call dword [esp + 0x20]
push 0
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, dword [ebp + 0x10]
push ebx
push 0xfffffffffffffff0
push dword [ecx + 0x20]
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x46f155
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x46f180
mov eax, dword [ebp + 0x10]
push 0xfffffffffffffff0
push dword [eax + 0x20]
call dword [esp + 0x34]
mov ecx, dword [esp + 0x18]
cmp eax, esi
movzx ecx, cl
mov eax, 1
cmovne ecx, eax
mov dword [esp + 0x18], ecx
jmp 0x46f180
mov al, byte [esp + 0x17]
mov dword [esp + 0x18], eax
mov al, byte [esp + 0xf]
mov byte [esp + 0x17], al
mov eax, dword [ebp + 0x10]
push 0xffffffffffffffec
push dword [eax + 0x20]
call dword [esp + 0x34]
mov esi, dword [edi + 8]
mov ecx, dword [edi + 0xc]
or esi, eax
not ecx
mov dword [esp + 0x3c], eax
and esi, ecx
cmp eax, esi
je 0x46f21a
mov cl, byte [esp + 0xf]
movzx eax, cl
test cl, cl
mov ecx, 1
cmove eax, ecx
mov byte [esp + 0xf], al
mov eax, dword [esp + 0x18]
and al, byte [esp + 0x17]
push 0
mov dword [esp + 0x1c], eax
mov byte [esp + 0x1b], al
call dword [sym.imp.KERNEL32.dll_SetLastError]
push esi
mov esi, dword [ebp + 0x10]
push 0xffffffffffffffec
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_SetWindowLongW]
test eax, eax
jne 0x46f1fa
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
jne 0x46f21d
push 0xffffffffffffffec
push dword [esi + 0x20]
call dword [esp + 0x34]
cmp eax, dword [esp + 0x3c]
mov eax, 1
movzx ecx, byte [esp + 0x17]
cmovne ecx, eax
mov byte [esp + 0x18], cl
jmp 0x46f21d
mov esi, dword [ebp + 0x10]
cmp byte [esi + 0x38], 0xa
jne 0x46f27b
push 0
push 0
push 0x1037
push dword [esi + 0x20]
call dword [esp + 0x20]
mov esi, eax
mov eax, dword [edi + 0x10]
cmp esi, eax
je 0x46f27b
cmp byte [esp + 0xf], 0
jne 0x46f24d
mov byte [esp + 0xf], 1
mov byte [esp + 0x18], 0
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x1036
push dword [eax + 0x20]
call dword [esp + 0x20]
mov eax, dword [ebp + 0x10]
push 0
push 0
push 0x1037
push dword [eax + 0x20]
call dword [esp + 0x20]
cmp eax, esi
je 0x46f282
mov byte [esp + 0x18], 1
cmp byte [esp + 0xf], 0
je 0x46f29a
mov eax, dword [esp + 0x1c]
mov ecx, 1
cmp byte [esp + 0x18], 0
movzx eax, al
cmovne eax, ecx
mov dword [esp + 0x1c], eax
mov edx, dword [ebp + 0x10]
mov esi, dword [sym.imp.USER32.dll_GetSysColor]
movzx eax, byte [edx + 0x38]
add eax, 0xfffffff7
cmp eax, 0x10
ja case.0x46f2ba.13
movzx eax, byte [eax + 0x46f9d4]
jmp dword [eax*4 + 0x46f9b0]
cmp byte [edi + 0x18a], 0
je case.0x46f2ba.13
push dword [edi + 0x38]
push dword [edi + 0x34]
push 0x46f
jmp 0x46f643
cmp byte [edi + 0x18a], 0
mov ebx, dword [esp + 0x10]
je 0x46f30f
push dword [edi + 0x34]
push 0
push 0x407
push dword [edx + 0x20]
call ebx
push dword [edi + 0x38]
mov eax, dword [ebp + 0x10]
push 1
push 0x408
push dword [eax + 0x20]
call ebx
mov edx, dword [ebp + 0x10]
cmp byte [edi + 0x18b], 0
je 0x46f331
mov eax, dword [edi + 0x3c]
test eax, eax
jns 0x46f3db
push 0
push 1
push 0x409
push dword [edx + 0x20]
call ebx
mov ebx, dword [ebp + 0x10]
mov eax, dword [edi + 0x40]
test eax, eax
jle 0x46f34a
push eax
push 0
push 0x417
push dword [ebx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x44]
test eax, eax
jle 0x46f360
push eax
push 0
push 0x415
push dword [ebx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x48]
test eax, eax
jle 0x46f376
push 0
push eax
push 0x41b
push dword [ebx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x4c]
test eax, eax
je 0x46f38d
push 0
dec eax
push eax
push 0x41f
push dword [ebx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x50]
test eax, eax
je 0x46f3a5
push dword [eax + 0x20]
push 1
push 0x420
push dword [ebx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x54]
test eax, eax
je 0x46f3bd
push dword [eax + 0x20]
push 0
push 0x420
push dword [ebx + 0x20]
call dword [esp + 0x20]
test dword [edi + 4], 0x100
je case.0x46f2ba.13
push 0
push 0
push 0x41d
push dword [ebx + 0x20]
jmp 0x46f646
cmp byte [edi + 0x18c], 0
je 0x46f3f1
push 0
push eax
push 0x414
jmp 0x46f32c
cmp byte [edi + 0x18a], 0
jne 0x46f331
push 0
push 0
push 0x402
push dword [edx + 0x20]
call ebx
mov ebx, dword [ebp + 0x10]
push eax
push 1
push 0x408
push dword [ebx + 0x20]
call dword [esp + 0x20]
jmp 0x46f334
cmp dword [edi + 0x60], 0
mov ebx, dword [esp + 0x10]
je 0x46f465
push 0
push 0
push 0x1004
push dword [edx + 0x20]
call ebx
test eax, eax
jle 0x46f456
mov eax, dword [ebp + 0x10]
push 0
push dword [edi + 0x60]
push 0x102f
push dword [eax + 0x20]
call ebx
mov edx, dword [ebp + 0x10]
jmp 0x46f465
mov edx, dword [ebp + 0x10]
mov eax, dword [edi + 0x60]
mov ecx, dword [edx + 0x44]
mov dword [ecx + 0x3f4], eax
mov eax, dword [edi + 0x58]
cmp eax, 0xffffffff
jne 0x46f478
cmp dword [edi + 0x5c], eax
je case.0x46f2ba.13
jmp 0x46f48c
push eax
push 0
push 0x1024
push dword [edx + 0x20]
call ebx
mov dword [edi + 0x58], 0xffffffff
mov esi, dword [edi + 0x5c]
cmp esi, 0xffffffff
je 0x46f4c9
cmp esi, 0xff000000
jne 0x46f4a6
push 5
call dword [sym.imp.USER32.dll_GetSysColor]
mov esi, eax
mov ebx, dword [ebp + 0x10]
push esi
push 0
push 0x1026
push dword [ebx + 0x20]
call dword [esp + 0x20]
push esi
push 0
push 0x1001
push dword [ebx + 0x20]
call dword [esp + 0x20]
jmp 0x46f4cc
mov ebx, dword [ebp + 0x10]
push 1
push 0
push dword [ebx + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
call ebx
mov esi, dword [sym.imp.USER32.dll_GetSysColor]
jmp 0x46f650
mov eax, dword [edi + 0x58]
mov ebx, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x46f516
cmp eax, 0xff000000
mov ecx, 0xffffffff
cmove eax, ecx
push eax
push 0
push 0x111e
push dword [edx + 0x20]
call ebx
mov edx, dword [ebp + 0x10]
mov dword [edi + 0x58], 0xffffffff
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je case.0x46f2ba.13
cmp eax, 0xff000000
mov ecx, 0xffffffff
cmove eax, ecx
push eax
push 0
push 0x111d
push dword [edx + 0x20]
call ebx
jmp case.0x46f2ba.13
test dword [edi + 0x58], 0xff000000
je 0x46f558
test dword [edi + 0x5c], 0xff000000
je 0x46f558
test bl, 1
je 0x46f56e
push 0x4d3ee8
push 0x4d3ee8
push dword [edx + 0x20]
call dword [sym.imp.UxTheme.dll_SetWindowTheme]
mov edx, dword [ebp + 0x10]
mov eax, dword [edi + 0x34]
test eax, eax
jne 0x46f57a
cmp dword [edi + 0x38], eax
je 0x46f58a
push dword [edi + 0x38]
push eax
push 0x406
push dword [edx + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x58]
cmp eax, 0xffffffff
je 0x46f5a4
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x409
push dword [eax + 0x20]
call dword [esp + 0x20]
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je 0x46f5be
push eax
mov eax, dword [ebp + 0x10]
push 0
push 0x2001
push dword [eax + 0x20]
call dword [esp + 0x20]
cmp dword [esp + 0x24], ebx
je case.0x46f2ba.13
mov eax, dword [ebp + 0x10]
push 0
push dword [esp + 0x48]
push 0x402
push dword [eax + 0x20]
jmp 0x46f646
mov ecx, dword [edi + 0x138]
test ecx, ecx
je case.0x46f2ba.13
lea eax, [edi + 0x70]
push eax
push ecx
push 0xcb
push dword [edx + 0x20]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, 1
mov dword [esp + 0x1c], eax
jmp 0x46f654
mov ecx, dword [edi + 0x138]
test ecx, ecx
je case.0x46f2ba.13
lea eax, [edi + 0x70]
push eax
push ecx
push 0x192
push dword [edx + 0x20]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, 1
mov dword [esp + 0x1c], eax
jmp 0x46f654
mov eax, dword [edi + 0x5c]
cmp eax, 0xffffffff
je case.0x46f2ba.13
push eax
push 0
push 0x2001
push dword [edx + 0x20]
call dword [esp + 0x20]
mov ebx, dword [sym.imp.USER32.dll_InvalidateRect]
mov eax, dword [esp + 0x1c]
mov ecx, dword [edi + 0x58]
cmp ecx, 0xffffffff
je 0x46f70c
mov eax, dword [ebp + 0x10]
movzx eax, byte [eax + 0x38]
lea edx, [eax - 0xa]
cmp edx, 4
ja case.0x46f673.12
jmp dword [edx*4 + 0x46f9e8]
mov eax, dword [ebp + 0x10]
push ecx
push 0
push 0x1024
push dword [eax + 0x20]
call dword [esp + 0x20]
jmp 0x46f706
cmp ecx, 0xff000000
mov eax, 0xffffffff
cmove ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 0
push 0x111e
push dword [eax + 0x20]
call dword [esp + 0x20]
jmp 0x46f706
cmp ecx, 0xff000000
jne 0x46f6be
push 8
call esi
mov ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 1
push 0x1006
push dword [eax + 0x20]
call dword [esp + 0x20]
jmp 0x46f706
cmp ecx, 0xff000000
jne 0x46f6e0
push 8
call esi
mov ecx, eax
mov eax, dword [ebp + 0x10]
push ecx
push 1
push 0x100a
push dword [eax + 0x20]
call dword [esp + 0x20]
jmp 0x46f706
mov al, byte [eax + 0x4e095c]
not al
test al, 0x20
je 0x46f706
mov eax, dword [ebp + 0x10]
mov dword [eax + 0x44], ecx
mov al, 1
mov dword [esp + 0x1c], eax
mov ecx, dword [edi + 0x184]
mov esi, dword [ebp + 0x10]
test ecx, ecx
je 0x46f740
xor eax, eax
cmp ecx, 3
push 0
sete al
push eax
push 0xb
push dword [esi + 0x20]
call dword [esp + 0x20]
cmp dword [edi + 0x184], 3
jne 0x46f73c
cmp byte [esi + 0x38], 0xb
jne 0x46f744
mov eax, dword [esp + 0x1c]
test al, al
je 0x46f74d
push 1
push 0
push dword [esi + 0x20]
call ebx
cmp byte [esp + 0xf], 0
je 0x46f782
cmp byte [esp + 0x18], 0
jne 0x46f782
push 0
push 0
push dword [0x4f068c]
mov ecx, 0x4f0050
push 0x4d3ee8
push str.Failed
call fcn.0040c540
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10