Function at 0x460039
Capabilities:
Print debug messages

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x224
mov eax, dword [0x536260]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push edi
mov edi, dword [ebp + 8]
mov eax, dword [ebx]
call dword [eax + 0x108]
test al, al
jne 0x46008a
mov eax, dword [edi]
sub eax, 9
cmp eax, 0xc
ja 0x46008a
mov ecx, dword [ebx + 0x48]
push edi
test ecx, ecx
je 0x46007e
mov eax, dword [ecx]
call dword [eax + pe_nt_image_headers32]
jmp 0x460709
mov ecx, ebx
call fcn.0045666e
jmp 0x460709
cmp dword [edi], 0xd
push esi
je 0x460522
cmp dword [edi], 0x13
je 0x460522
cmp dword [edi], 0xe
je 0x4600ab
cmp dword [edi], 0x10
jne 0x46025f
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x100]
test al, al
je 0x46025f
mov eax, dword [ebx + 0x618]
mov esi, dword [ebx + 0x584]
test al, 0x40
je 0x4600d6
and eax, 0xffffffbf
mov dword [ebx + 0x618], eax
lea eax, [ebp - 0x214]
mov ecx, ebx
push eax
call fcn.0046078d
push dword [edi + 0x10]
lea eax, [ebp - 0x214]
push dword [edi + 0xc]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x4601eb
push str.get_mouse_in_thumb_rect_n
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp byte [ebx + 0x579], 0
je 0x46017f
mov eax, dword [ebx + 0x610]
mov ecx, dword [edi + 0xc]
mov edi, dword [ebx + 0x160]
mov dword [ebp - 0x21c], eax
cdq
sub eax, edx
mov edx, eax
mov eax, edi
sar edx, 1
sub eax, edx
cmp ecx, eax
jl 0x460142
mov esi, dword [ebx + 0x57c]
jmp 0x460236
mov eax, dword [ebx + 0x158]
mov esi, dword [ebx + 0x580]
add eax, edx
cmp ecx, eax
jle 0x460236
mov eax, dword [ebx + 0x57c]
sub ecx, edx
mov edx, dword [ebx + 0x158]
sub eax, esi
sub ecx, edx
sub edi, edx
sub edi, dword [ebp - 0x21c]
imul eax, ecx
cdq
idiv edi
add esi, eax
jmp 0x460236
mov eax, dword [ebx + 0x614]
mov dword [ebp - 0x220], eax
cdq
sub eax, edx
mov edx, dword [ebx + 0x164]
sar eax, 1
sub edx, eax
cmp dword [edi + 0x10], edx
jl 0x4601a8
mov esi, dword [ebx + 0x580]
jmp 0x460236
mov ecx, dword [ebx + 0x15c]
add eax, ecx
mov esi, dword [ebx + 0x57c]
mov dword [ebp - 0x21c], ecx
cmp dword [edi + 0x10], eax
jle 0x460236
sub edx, dword [edi + 0x10]
mov ecx, dword [ebx + 0x580]
sub esi, ecx
mov edi, dword [ebx + 0x164]
sub edi, dword [ebp - 0x21c]
sub edi, dword [ebp - 0x220]
imul esi, edx
mov eax, esi
cdq
idiv edi
lea esi, [ecx + eax]
jmp 0x460236
cmp byte [ebx + 0x579], 0
je 0x460209
mov eax, dword [edi + 0xc]
cmp eax, dword [ebp - 0x214]
jl 0x46022a
cmp eax, dword [ebp - 0x20c]
jle 0x460236
jmp 0x460214
mov eax, dword [edi + 0x10]
cmp eax, dword [ebp - 0x210]
jge 0x460222
mov esi, dword [ebx + 0x61c]
add esi, dword [ebx + 0x584]
jmp 0x460236
cmp eax, dword [ebp - 0x208]
jle 0x460236
mov esi, dword [ebx + 0x584]
sub esi, dword [ebx + 0x61c]
cmp esi, dword [ebx + 0x580]
jl 0x4606fe
cmp esi, dword [ebx + 0x57c]
jg 0x4606fe
cmp esi, dword [ebx + 0x584]
je 0x4606fe
jmp 0x4606de
cmp dword [edi], 0x14
je 0x460708
xor esi, esi
cmp dword [edi], 0x15
jne 0x4602f6
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x100]
test al, al
je 0x4602f6
movzx eax, word [edi + 0x18]
sub eax, esi
je 0x4602ac
sub eax, 1
jne 0x4602f6
mov ecx, ebx
call fcn.0043c9de
mov ecx, ebx
mov edi, eax
call fcn.00460720
mov ecx, ebx
mov esi, eax
call fcn.0043c9de
sub eax, esi
push eax
jmp 0x4602c8
mov ecx, ebx
call fcn.0043c9de
mov ecx, ebx
mov edi, eax
call fcn.00460720
mov ecx, ebx
mov esi, eax
call fcn.0043c9de
add esi, eax
push esi
mov ecx, ebx
call fcn.00460bc9
mov ecx, ebx
call fcn.0043c9de
cmp edi, eax
je 0x460708
mov ecx, dword [ebx + 0x44]
xor eax, eax
push eax
push eax
push eax
push str.valuechanged
push ebx
call fcn.0043837b
jmp 0x460708
cmp dword [edi], 9
jne 0x4604b4
test byte [ebx + 0x618], 0x40
je 0x460478
push dword [edi + 0x10]
lea eax, [ebp - 0x204]
push dword [edi + 0xc]
push str.on_UIEVENT_MOUSEMOVE_x__d__y__d__n_n
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
cmp byte [ebx + 0x579], 0
je 0x4603c2
mov eax, dword [ebx + 0x610]
mov ecx, dword [ebx + 0x160]
mov dword [ebp - 0x224], eax
cdq
sub eax, edx
sar eax, 1
sub ecx, eax
mov dword [ebp - 0x220], eax
cmp dword [edi + 0xc], ecx
jl 0x460370
mov edx, dword [ebx + 0x57c]
jmp 0x46043f
mov ecx, dword [ebx + 0x158]
add eax, ecx
mov edx, dword [ebx + 0x580]
mov dword [ebp - 0x21c], ecx
cmp dword [edi + 0xc], eax
jle 0x46043f
mov eax, dword [edi + 0xc]
sub eax, dword [ebp - 0x220]
sub eax, ecx
mov ecx, dword [ebx + 0x57c]
sub ecx, edx
imul eax, ecx
mov ecx, dword [ebx + 0x160]
sub ecx, dword [ebp - 0x21c]
sub ecx, dword [ebp - 0x224]
cdq
idiv ecx
mov edx, dword [ebx + 0x580]
add edx, eax
jmp 0x46043f
mov eax, dword [ebx + 0x614]
mov ecx, dword [ebx + 0x164]
mov dword [ebp - 0x21c], eax
cdq
sub eax, edx
sar eax, 1
sub ecx, eax
mov dword [ebp - 0x224], ecx
cmp dword [edi + 0x10], ecx
jl 0x4603ee
mov edx, dword [ebx + 0x580]
jmp 0x46043f
mov ecx, dword [ebx + 0x15c]
add eax, ecx
mov edx, dword [ebx + 0x57c]
mov dword [ebp - 0x220], ecx
cmp dword [edi + 0x10], eax
jle 0x46043f
mov eax, dword [ebp - 0x224]
sub eax, dword [edi + 0x10]
mov ecx, dword [ebx + 0x580]
sub edx, ecx
imul edx, eax
mov eax, dword [ebx + 0x164]
sub eax, dword [ebp - 0x220]
sub eax, dword [ebp - 0x21c]
mov dword [ebp - 0x224], eax
mov eax, edx
cdq
idiv dword [ebp - 0x224]
lea edx, [ecx + eax]
cmp edx, dword [ebx + 0x584]
je 0x460471
cmp byte [ebx + 0x830], 0
mov dword [ebx + 0x584], edx
je 0x460471
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x174]
mov ecx, dword [ebx + 0x44]
push esi
push esi
push esi
push str.movevaluechanged
push ebx
call fcn.0043837b
mov ecx, ebx
call fcn.0043de9b
lea eax, [ebp - 0x214]
mov ecx, ebx
push eax
call fcn.0046078d
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x100]
test al, al
je 0x460504
push dword [edi + 0x10]
lea eax, [ebp - 0x214]
push dword [edi + 0xc]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x460504
or dword [ebx + 0x618], 8
jmp 0x46050b
cmp dword [edi], 0x1a
jne 0x4604ed
lea eax, [ebp - 0x214]
mov ecx, ebx
push eax
call fcn.0046078d
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x100]
test al, al
je 0x4604ed
push 0x7f89
push esi
call dword [sym.imp.USER32.dll_LoadCursorW]
push eax
call dword [sym.imp.USER32.dll_SetCursor]
jmp 0x460708
cmp dword [edi], 0xa
mov ecx, ebx
jne 0x460517
mov eax, dword [ebx]
call dword [eax + 0x100]
test al, al
je 0x460708
and dword [ebx + 0x618], 0xfffffff7
mov ecx, ebx
call fcn.0043de9b
jmp 0x460708
push edi
call fcn.0043d61e
jmp 0x460708
push dword [edi + 0x10]
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x204]
push dword [edi + 0xc]
push str.on_UIEVENT_BUTTONDOWN_x__d__y__d__n
push eax
call esi
add esp, 0x10
lea eax, [ebp - 0x204]
push eax
call dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea eax, [ebp - 0x214]
mov ecx, ebx
push eax
call fcn.0046078d
push dword [ebp - 0x208]
lea eax, [ebp - 0x204]
mov byte [ebp - 0x215], 0
push dword [ebp - 0x20c]
push dword [ebp - 0x210]
push dword [ebp - 0x214]
push str.thumb_rect_left__d__top__d__right__d__bottom__d__n
push eax
call esi
mov esi, dword [sym.imp.KERNEL32.dll_OutputDebugStringW]
lea eax, [ebp - 0x204]
add esp, 0x18
push eax
call esi
push dword [edi + 0x10]
lea eax, [ebp - 0x214]
push dword [edi + 0xc]
push eax
call dword [sym.imp.USER32.dll_PtInRect]
test eax, eax
je 0x4605be
push str.get_mouse_in_thumb_rect_n
call esi
mov byte [ebp - 0x215], 1
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x100]
test al, al
je 0x460708
cmp byte [ebp - 0x215], 0
je 0x460708
or dword [ebx + 0x618], 0x40
push str.UISTATE_CAPTURED_n
call esi
cmp byte [ebx + 0x579], 0
je 0x46065f
mov eax, dword [ebx + 0x610]
mov dword [ebp - 0x21c], eax
cdq
sub eax, edx
mov edx, dword [edi + 0xc]
mov edi, dword [ebx + 0x160]
mov ecx, edi
sar eax, 1
sub ecx, eax
mov dword [ebp - 0x224], eax
cmp edx, ecx
jl 0x460627
mov esi, dword [ebx + 0x57c]
jmp 0x4606c6
mov ecx, dword [ebx + 0x158]
add eax, ecx
mov esi, dword [ebx + 0x580]
cmp edx, eax
jle 0x4606c6
sub edx, dword [ebp - 0x224]
sub edi, ecx
mov eax, dword [ebx + 0x57c]
sub edx, ecx
sub edi, dword [ebp - 0x21c]
sub eax, esi
imul eax, edx
cdq
idiv edi
add esi, eax
jmp 0x4606c6
mov eax, dword [ebx + 0x614]
mov dword [ebp - 0x220], eax
cdq
sub eax, edx
mov edx, dword [ebx + 0x164]
sar eax, 1
sub edx, eax
cmp dword [edi + 0x10], edx
jl 0x460685
mov esi, dword [ebx + 0x580]
jmp 0x4606c6
mov ecx, dword [ebx + 0x15c]
add eax, ecx
mov esi, dword [ebx + 0x57c]
mov dword [ebp - 0x224], ecx
cmp dword [edi + 0x10], eax
jle 0x4606c6
sub edx, dword [edi + 0x10]
mov ecx, dword [ebx + 0x580]
sub esi, ecx
mov edi, dword [ebx + 0x164]
sub edi, dword [ebp - 0x224]
sub edi, dword [ebp - 0x220]
imul esi, edx
mov eax, esi
cdq
idiv edi
lea esi, [ecx + eax]
cmp dword [ebx + 0x584], esi
je 0x4606fe
cmp esi, dword [ebx + 0x580]
jl 0x4606fe
cmp esi, dword [ebx + 0x57c]
jg 0x4606fe
mov ecx, dword [ebx + 0x44]
xor eax, eax
push eax
push eax
push eax
push str.valuechanged
push ebx
mov dword [ebx + 0x584], esi
call fcn.0043837b
mov ecx, ebx
call fcn.0043de9b
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x174]
pop esi
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop ebx
call fcn.00495b3a
leave
ret 4