Function at 0x447741
Capabilities:
Check for time delay via gettickcount
Resolve function by parsing pe exports

Disassembly:
push 0x168
mov eax, 0x4a406f
call fcn.00481132
mov ebx, ecx
mov dword [ebp - 0x144], ebx
cmp dword [ebx + 8], 0
mov eax, dword [ebp + 0xc]
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x138], edi
mov dword [ebp - 0x14c], eax
je 0x448b95
lea eax, [ebx + 0x11c]
push 0
mov ecx, eax
mov dword [ebp - 0x154], eax
call fcn.0044523a
mov esi, eax
test esi, esi
je 0x447835
lea eax, [ebx + 0xd4]
mov edi, eax
mov ecx, dword [ebp - 0x154]
push 0
call fcn.004454ea
mov ecx, dword [esi + 0x108]
test ecx, ecx
je 0x4477d6
add ecx, 0x38
call fcn.0045a229
test al, al
je 0x4477d6
mov ecx, dword [esi + 0x108]
push esi
add ecx, 0x38
call fcn.0045a23d
mov ecx, edi
xor ebx, ebx
call fcn.004452b3
test eax, eax
jle 0x4477fe
push ebx
mov ecx, edi
call fcn.0040d5f9
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx]
mov ecx, edi
inc ebx
call fcn.004452b3
cmp ebx, eax
jl 0x4477e3
mov ecx, esi
call fcn.00445f10
push 0x120
push esi
call fcn.0048109d
pop ecx
pop ecx
mov ecx, dword [ebp - 0x154]
push 0
call fcn.0044523a
mov esi, eax
test esi, esi
jne 0x4477a4
mov ebx, dword [ebp - 0x144]
mov edi, dword [ebp - 0x138]
and dword [ebp - 0x134], 0
lea ecx, [ebx + 0xf8]
call fcn.004452b3
mov esi, dword [ebp + 8]
test eax, eax
jle 0x4478a4
mov ecx, dword [ebp - 0x134]
push ecx
lea ecx, [ebx + 0xf8]
mov byte [ebp - 0x13d], 0
call fcn.0040d5f9
lea ecx, [ebp - 0x13d]
push ecx
push edi
push dword [ebp - 0x12c]
mov edx, dword [eax]
mov ecx, eax
push esi
call dword [edx]
cmp byte [ebp - 0x13d], 0
jne 0x447935
inc dword [ebp - 0x134]
lea ecx, [ebx + 0xf8]
call fcn.004452b3
mov ecx, dword [ebp - 0x134]
cmp ecx, eax
jl 0x447854
mov eax, 0x113
cmp esi, eax
ja 0x448299
je 0x4481a0
cmp esi, 0x4e
ja 0x447f6a
je 0x447f49
sub esi, 5
je 0x447ed7
sub esi, 0xa
je 0x447ac6
sub esi, 1
je 0x447a38
sub esi, 4
je 0x447a28
sub esi, 0xc
je 0x447944
sub esi, 4
jne 0x448af7
mov eax, dword [ebx + 0x88]
test eax, eax
jle 0x447905
mov dword [edi + 0x18], eax
mov eax, dword [ebx + 0x8c]
test eax, eax
jle 0x447912
mov dword [edi + 0x1c], eax
mov eax, dword [ebx + 0x90]
test eax, eax
jle 0x44791f
mov dword [edi + 0x20], eax
mov eax, dword [ebx + 0x94]
test eax, eax
jle 0x448af7
mov dword [edi + 0x24], eax
jmp 0x448af7
mov ecx, dword [ebp - 0x14c]
mov dword [ecx], eax
mov al, 1
jmp 0x448b97
xor eax, eax
inc eax
cmp di, ax
jne 0x448af7
cmp byte [ebx + 0xd1], 0
jne 0x448b97
lea eax, [ebp - 0x150]
xorps xmm0, xmm0
push eax
movlpd qword [ebp - 0x150], xmm0
call dword [sym.imp.USER32.dll_GetCursorPos]
lea eax, [ebp - 0x150]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
push dword [ebp - 0x14c]
mov ecx, ebx
push dword [ebp - 0x150]
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x448af7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x14]
test al, 2
je 0x448af7
mov eax, dword [ebp - 0x12c]
xorps xmm0, xmm0
and dword [ebp - 0x160], 0
mov dword [ebp - 0x15c], eax
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x168], eax
mov eax, dword [ebp - 0x14c]
movlpd qword [ebp - 0x170], xmm0
mov dword [ebp - 0x174], 0x17
mov dword [ebp - 0x158], edi
mov dword [ebp - 0x164], eax
call fcn.004476f5
mov word [ebp - 0x15e], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x16c], eax
lea ecx, [ebp - 0x174]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
xor eax, eax
inc eax
jmp 0x448b97
mov ecx, dword [ebp - 0x14c]
xor eax, eax
inc eax
mov dword [ecx], eax
jmp 0x448b97
mov eax, dword [ebx + 0x80]
xorps xmm0, xmm0
and dword [ebp - 0x14], 0
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x84]
movlpd qword [ebp - 0x30], xmm0
movlpd qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x20], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x74]
mov dword [ebp - 0x28], eax
test ecx, ecx
je 0x447a81
mov dword [ebp - 0x30], 0xa
lea edx, [ebp - 0x30]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x447a9e
mov dword [ebp - 0x30], 0xe
lea edx, [ebp - 0x30]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
push 0
mov ecx, ebx
call fcn.00449a03
push 4
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_GetWindow]
test eax, eax
je 0x448af7
push eax
call dword [sym.imp.USER32.dll_SetFocus]
jmp 0x448af7
xor eax, eax
lea edi, [ebp - 0x50]
stosd dword es:[edi], eax
push 0x40
push 0
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x64]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0xa4]
push eax
call fcn.00484300
add esp, 0xc
lea eax, [ebp - 0x50]
xor esi, esi
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_GetClientRect]
xor eax, eax
inc eax
cmp dword [ebx + 0x6c], esi
je 0x447b20
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x447b1d
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
je 0x447b24
xor eax, eax
inc eax
mov esi, eax
jmp 0x447b27
xor eax, eax
inc eax
cmp byte [ebx + 0xce], 0
je 0x447b38
push eax
mov ecx, ebx
call fcn.00449d60
lea eax, [ebp - 0x50]
mov ecx, ebx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.004470ce
test al, al
push 1
pop eax
cmove esi, eax
test esi, esi
je 0x447b5f
mov ecx, ebx
call fcn.00446898
jmp 0x44793d
cmp byte [ebx + 0xcd], 0
je 0x447b9a
mov ecx, dword [ebx + 0x6c]
mov byte [ebx + 0xcd], 0
call fcn.00452f7c
test al, al
je 0x447b8f
cmp byte [ebx + 0x2f9], 0
je 0x447b8f
lea eax, [ebx + 0x24]
mov ecx, ebx
push eax
call fcn.0044909b
lea eax, [ebp - 0x50]
mov ecx, ebx
push eax
call fcn.0044a0e9
lea eax, [ebp - 0xa4]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_BeginPaint]
cmp byte [ebx + 0xcf], 0
je 0x447e14
mov ecx, dword [ebp - 0x48]
lea edi, [ebx + 0x10]
mov eax, dword [ebp - 0x44]
sub ecx, dword [ebp - 0x50]
sub eax, dword [ebp - 0x4c]
cmp dword [edi], 0
mov dword [ebp - 0x134], ecx
mov dword [ebp - 0x144], eax
je 0x447be6
cmp dword [ebx + 0x1c], ecx
jne 0x447be6
cmp dword [ebx + 0x20], eax
jne 0x447be6
lea esi, [ebx + 0xc]
jmp 0x447c15
push edi
mov ecx, ebx
call fcn.0044909b
push edi
push dword [ebp - 0x144]
lea esi, [ebx + 0xc]
mov ecx, ebx
push dword [ebp - 0x134]
mov dword [ebp - 0x12c], esi
push dword [esi]
call fcn.004467da
test al, al
je 0x447e55
cmp byte [ebx + 0x2f9], 0
mov dword [ebp - 0x154], esi
je 0x447c95
lea ecx, [ebx + 0x274]
call fcn.00445402
test al, al
jne 0x447c95
lea edx, [ebx + 0x24]
mov dword [ebp - 0x12c], esi
cmp dword [edx], 0
mov ecx, esi
je 0x447c65
mov eax, dword [ebp - 0x134]
mov dword [ebp - 0x12c], esi
cmp dword [ebx + 0x30], eax
jne 0x447c65
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x12c], esi
cmp dword [ebx + 0x34], eax
je 0x447c95
push edx
mov ecx, ebx
call fcn.0044909b
lea eax, [ebx + 0x24]
mov ecx, ebx
push eax
push dword [ebp - 0x144]
push dword [ebp - 0x134]
push dword [esi]
call fcn.004467da
test al, al
je 0x447e55
mov byte [ebx + 0x2f8], 1
push dword [edi]
call dword [sym.imp.GDI32.dll_SaveDC]
cmp byte [ebx + 0x2f9], 0
mov dword [ebp - 0x138], eax
je 0x447ccf
movzx ecx, byte [ebx + 0x2f8]
lea eax, [ebx + 0x24]
push ecx
lea ecx, [ebp - 0x50]
push ecx
lea ecx, [ebp - 0x64]
push ecx
push eax
push edi
mov ecx, ebx
call fcn.004468e2
mov byte [ebx + 0x2f8], 0
sub esp, 0x10
lea esi, [ebp - 0x64]
mov edi, esp
mov ecx, ebx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
lea esi, [ebx + 0x10]
push dword [esi]
call fcn.00448d5c
mov al, byte [ebx + 0x2f9]
test al, al
je 0x447dc0
lea eax, [ebp - 0x50]
mov ecx, ebx
push eax
lea eax, [ebp - 0x64]
push eax
lea eax, [ebx + 0x24]
push eax
push esi
call fcn.004466b5
mov al, byte [ebx + 0x2f9]
test al, al
je 0x447dc0
xor eax, eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x20]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_GetWindowRect]
mov al, byte [ebx + 0x270]
xor ecx, ecx
mov byte [ebp - 0x132], al
mov eax, dword [ebp - 0x20]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x48]
sub eax, dword [ebp - 0x50]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x44]
sub eax, dword [ebp - 0x4c]
push 2
mov dword [ebp - 0x12c], eax
lea eax, [ebp - 0x134]
push eax
push ecx
lea eax, [ebp - 0x148]
mov word [ebp - 0x134], cx
push eax
push dword [esi]
mov esi, dword [ebp - 0x154]
lea eax, [ebp - 0x130]
push eax
lea eax, [ebp - 0x38]
mov byte [ebp - 0x131], 1
push eax
push dword [esi]
mov dword [ebp - 0x148], ecx
push dword [ebx + 8]
mov dword [ebp - 0x144], ecx
call dword [0x4d2350]
test eax, eax
jne 0x447db8
mov ecx, dword [ebx + 0x6c]
test ecx, ecx
je 0x447db8
call fcn.00452fd7
mov dword [ebp - 0x12c], esi
jmp 0x447e03
mov eax, dword [ebp - 0x58]
lea esi, [ebx + 0xc]
sub eax, dword [ebp - 0x60]
push 0xcc0020
push dword [ebp - 0x60]
mov dword [ebp - 0x12c], esi
push dword [ebp - 0x64]
push dword [ebx + 0x10]
push eax
mov eax, dword [ebp - 0x5c]
sub eax, dword [ebp - 0x64]
push eax
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push dword [esi]
call dword [sym.imp.GDI32.dll_BitBlt]
test eax, eax
jne 0x447e03
mov ecx, dword [ebx + 0x6c]
test ecx, ecx
je 0x447e03
call fcn.00452fd7
push dword [ebp - 0x138]
push dword [ebx + 0x10]
call dword [sym.imp.GDI32.dll_RestoreDC]
jmp 0x447e55
lea eax, [ebx + 0xc]
push dword [eax]
mov dword [ebp - 0x12c], eax
call dword [sym.imp.GDI32.dll_SaveDC]
sub esp, 0x10
mov ecx, dword [ebp - 0x144]
mov edi, esp
lea esi, [ebp - 0x64]
mov ebx, eax
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x12c]
push dword [esi]
call fcn.00448d5c
push ebx
push dword [esi]
call dword [sym.imp.GDI32.dll_RestoreDC]
mov ebx, dword [ebp - 0x144]
cmp byte [ebx + 0x68], 0
je 0x447eae
cmp byte [ebx + 0x2f9], 0
jne 0x447eae
push dword [0x4d2354]
mov edi, dword [sym.imp.GDI32.dll_SelectObject]
push dword [esi]
call edi
push 5
mov esi, eax
call dword [sym.imp.GDI32.dll_GetStockObject]
push eax
mov eax, dword [ebp - 0x12c]
push dword [eax]
call edi
push dword [ebp - 0x58]
mov eax, dword [ebp - 0x12c]
push dword [ebp - 0x5c]
push dword [ebp - 0x60]
push dword [ebp - 0x64]
push dword [eax]
call dword [sym.imp.GDI32.dll_Rectangle]
mov eax, dword [ebp - 0x12c]
push esi
push dword [eax]
call edi
lea eax, [ebp - 0xa4]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_EndPaint]
cmp byte [ebx + 0xcd], 0
je 0x44793d
mov ecx, ebx
call fcn.0044727b
jmp 0x44793d
xor eax, eax
inc eax
cmp dword [ebp - 0x12c], eax
je 0x447f3c
mov eax, dword [ebx + 0x70]
test eax, eax
je 0x447f1d
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0x16
movlpd qword [ebp - 0x28], xmm0
movlpd qword [ebp - 0x20], xmm0
movlpd qword [ebp - 0x18], xmm0
mov dword [ebp - 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x70]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x28], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x10c]
mov ecx, dword [ebx + 0x6c]
test ecx, ecx
je 0x447f29
call fcn.00452fd7
cmp byte [ebx + 0x2f9], 0
je 0x447f39
mov ecx, ebx
call fcn.0044727b
xor eax, eax
inc eax
mov ecx, dword [ebp - 0x14c]
mov dword [ecx], eax
jmp 0x448b95
test edi, edi
je 0x44793d
push edi
push dword [ebp - 0x12c]
push 0x204e
push dword [edi]
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x447935
sub esi, 0x7b
je 0x4480e9
push 3
pop ecx
sub esi, ecx
je 0x4480dd
sub esi, 0x82
je 0x448075
sub esi, 1
je 0x44800b
sub esi, 1
je 0x447fb4
sub esi, 0xf
jne 0x448af7
test edi, edi
je 0x448af7
push edi
push dword [ebp - 0x12c]
push 0x2111
push edi
jmp 0x447f5f
cmp dword [ebx + 0x70], 0
je 0x448af7
xor eax, eax
mov dword [ebp - 0x30], 5
mov word [ebp - 0x12], ax
xorps xmm0, xmm0
mov eax, dword [ebp - 0x12c]
mov word [ebp - 0x1c], ax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x84]
movlpd qword [ebp - 0x2c], xmm0
movlpd qword [ebp - 0x1a], xmm0
mov dword [ebp - 0x20], eax
call fcn.004476f5
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x70]
jmp 0x448285
cmp dword [ebx + 0x7c], 0
je 0x448af7
xor eax, eax
mov dword [ebp - 0x30], 4
mov word [ebp - 0x12], ax
xorps xmm0, xmm0
mov eax, dword [ebp - 0x12c]
mov word [ebp - 0x1c], ax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x84]
movlpd qword [ebp - 0x2c], xmm0
movlpd qword [ebp - 0x1a], xmm0
mov dword [ebp - 0x20], eax
call fcn.004476f5
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x7c]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x28], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x10c]
and dword [ebx + 0x7c], 0
jmp 0x448af7
cmp dword [ebx + 0x70], 0
je 0x448af7
xor eax, eax
mov dword [ebp - 0x30], ecx
mov word [ebp - 0x12], ax
xorps xmm0, xmm0
mov eax, dword [ebp - 0x12c]
mov word [ebp - 0x1c], ax
mov eax, dword [ebx + 0x80]
mov dword [ebp - 0x24], eax
mov eax, dword [ebx + 0x84]
movlpd qword [ebp - 0x2c], xmm0
movlpd qword [ebp - 0x1a], xmm0
mov dword [ebp - 0x20], eax
call fcn.004476f5
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x70]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x28], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x10c]
mov eax, dword [ebx + 0x70]
mov dword [ebx + 0x7c], eax
jmp 0x448af7
mov ecx, ebx
call fcn.0044727b
jmp 0x448af7
mov ecx, ebx
call fcn.00449089
movsx eax, di
mov dword [ebp - 0x13c], eax
shr edi, 0x10
movsx eax, di
mov dword [ebp - 0x138], eax
lea eax, [ebp - 0x13c]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov ecx, dword [ebx + 0x78]
mov eax, dword [ebp - 0x13c]
mov edx, dword [ebp - 0x138]
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x84], edx
test ecx, ecx
jne 0x448156
push edx
push eax
mov ecx, ebx
call fcn.00446a0c
mov ecx, eax
mov dword [ebx + 0x78], ecx
test ecx, ecx
je 0x448af7
mov edx, dword [ebp - 0x138]
mov eax, dword [ebp - 0x13c]
and dword [ebp - 0x28], 0
xor esi, esi
and dword [ebp - 0x18], esi
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x12c]
mov word [ebp - 0x1c], si
mov dword [ebp - 0x30], 0x11
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x20], edx
mov word [ebp - 0x1a], ax
mov dword [ebp - 0x14], ecx
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x78]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x28], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x10c]
and dword [ebx + 0x78], esi
jmp 0x448af7
mov eax, dword [ebp - 0x12c]
mov ecx, 0x2000
movzx eax, ax
mov dword [ebp - 0x138], eax
cmp ax, cx
jne 0x448206
cmp byte [ebx + 0x2f9], 0
je 0x448206
lea esi, [ebx + 0x2fc]
push esi
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x448206
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
jne 0x448af7
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x448af7
push 1
push esi
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp 0x448af7
lea esi, [ebx + 0xe0]
xor edi, edi
mov ecx, esi
call fcn.004452b3
test eax, eax
jle 0x448af7
push edi
mov ecx, esi
call fcn.0040d5f9
mov esi, eax
mov ecx, dword [esi + 8]
cmp ecx, dword [ebx + 8]
jne 0x448243
mov eax, dword [ebp - 0x138]
movzx ecx, ax
cmp dword [esi + 0xc], ecx
jne 0x448243
cmp byte [esi + 0x10], 0
je 0x44825a
lea esi, [ebx + 0xe0]
inc edi
mov ecx, esi
call fcn.004452b3
cmp edi, eax
jl 0x44821d
jmp 0x448af7
mov eax, dword [esi]
xorps xmm0, xmm0
and dword [ebp - 0x14], 0
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 4]
movlpd qword [ebp - 0x28], xmm0
movlpd qword [ebp - 0x20], xmm0
mov dword [ebp - 0x30], 0x18
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esi]
mov dword [ebp - 0x28], eax
mov eax, dword [ecx]
lea edx, [ebp - 0x30]
push edx
call dword [eax + 0x10c]
jmp 0x448af7
mov eax, 0x204
cmp esi, eax
ja 0x448691
je 0x448600
mov eax, esi
sub eax, 0x133
je 0x4485e5
sub eax, 5
je 0x4485e5
sub eax, 0xc8
je 0x44848e
sub eax, 1
je 0x4483ea
sub eax, 1
je 0x448386
sub eax, 1
jne 0x448af7
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_SetFocus]
movsx eax, di
mov ecx, ebx
shr edi, 0x10
movsx edi, di
push edi
push eax
mov dword [ebp - 0x138], eax
mov dword [ebx + 0x80], eax
mov dword [ebx + 0x84], edi
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x448af7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x448af7
mov ecx, ebx
call fcn.0044978c
and dword [ebp - 0x28], 0
xorps xmm0, xmm0
xor eax, eax
movlpd qword [ebp - 0x18], xmm0
mov word [ebp - 0x1c], ax
mov eax, dword [ebp - 0x138]
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x30], 0x10
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x2c], esi
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x30]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
mov dword [ebx + 0x78], esi
jmp 0x448af7
mov ecx, ebx
call fcn.00449089
mov eax, edi
movsx ecx, di
shr eax, 0x10
movsx edx, ax
mov eax, dword [ebx + 0x78]
mov dword [ebx + 0x80], ecx
mov dword [ebx + 0x84], edx
test eax, eax
je 0x448af7
and dword [ebp - 0x28], 0
xor esi, esi
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x12c]
mov word [ebp - 0x1c], si
mov dword [ebp - 0x30], 0xe
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], edx
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x78]
and dword [ebx + 0x78], esi
jmp 0x448285
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, edi
movsx ecx, di
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x138], ecx
mov dword [ebx + 0x80], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x84], eax
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x448af7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x448af7
mov dword [ebx + 0x78], esi
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0xf4]
mov ecx, ebx
call fcn.0044978c
mov ecx, dword [ebp - 0x138]
xor eax, eax
and dword [ebp - 0x28], 0
mov word [ebp - 0x1c], ax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0x30], 0xd
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], ecx
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
jmp 0x4485d8
cmp byte [ebx + 0xd0], 0
jne 0x4484de
cmp dword [ebx + 0x38], 0
mov eax, dword [ebx + 8]
push 3
pop ecx
mov dword [ebp - 0x50], 0x10
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x48], eax
jne 0x4484b9
mov dword [ebp - 0x44], 0x190
jmp 0x4484cd
push 0
push ecx
push 0x415
push dword [ebx + 0x38]
call dword [sym.imp.USER32.dll_SendMessageW]
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x50]
push eax
call dword [sym.imp.COMCTL32.dll__TrackMouseEvent]
mov byte [ebx + 0xd0], 1
mov eax, edi
movsx ecx, di
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x138], ecx
mov dword [ebx + 0x80], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x84], eax
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x44851d
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x448af7
mov eax, dword [ebp - 0x138]
and dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x144]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x18], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x74]
mov dword [ebp - 0x28], eax
mov eax, ecx
cmp esi, ecx
je 0x44858d
test ecx, ecx
je 0x44858d
mov dword [ebp - 0x30], 0xa
lea edx, [ebp - 0x30]
mov dword [ebp - 0x2c], ecx
mov eax, dword [ecx]
push edx
call dword [eax + 0x10c]
and dword [ebx + 0x74], 0
xor eax, eax
cmp dword [ebx + 0x38], eax
je 0x44858d
lea eax, [ebx + 0x3c]
push eax
push 0
push 0x411
push dword [ebx + 0x38]
call dword [sym.imp.USER32.dll_SendMessageW]
mov eax, dword [ebx + 0x74]
cmp esi, eax
je 0x4485b0
test esi, esi
je 0x4485b0
mov dword [ebp - 0x30], 0xb
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x2c], esi
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
mov dword [ebx + 0x74], esi
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x4485c6
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x2c], ecx
jmp 0x448288
test esi, esi
je 0x448af7
mov dword [ebp - 0x30], 9
mov dword [ebp - 0x2c], esi
mov eax, dword [esi]
lea ecx, [ebp - 0x30]
push ecx
mov ecx, esi
jmp 0x44828e
test edi, edi
je 0x448af7
push edi
push dword [ebp - 0x12c]
lea eax, [esi + 0x2000]
push eax
jmp 0x447fb1
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_SetFocus]
mov eax, edi
movsx ecx, di
shr eax, 0x10
cwde
push eax
mov dword [ebp - 0x138], ecx
mov dword [ebx + 0x80], ecx
push ecx
mov ecx, ebx
mov dword [ebp - 0x144], eax
mov dword [ebx + 0x84], eax
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x448af7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x448af7
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xf4]
mov ecx, ebx
call fcn.0044978c
and dword [ebp - 0x28], 0
xor eax, eax
mov ecx, dword [ebp - 0x138]
mov word [ebp - 0x1c], ax
mov eax, dword [ebp - 0x12c]
mov dword [ebp - 0x24], ecx
mov ecx, dword [ebp - 0x144]
mov dword [ebp - 0x30], 0xf
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x20], ecx
jmp 0x448360
sub esi, 0x20a
je 0x448a30
sub esi, 0x97
je 0x4488af
dec esi
sub esi, 1
je 0x448870
sub esi, 0x75
je 0x448709
sub esi, 0x7ce9
jne 0x448af7
lea esi, [ebx + 0x110]
xor edi, edi
mov ecx, esi
call fcn.004452b3
test eax, eax
jle 0x4486fd
push edi
mov ecx, esi
call fcn.0040d5f9
test eax, eax
je 0x4486eb
mov edx, dword [eax]
mov ecx, eax
push 1
call dword [edx]
mov ecx, esi
inc edi
call fcn.004452b3
cmp edi, eax
jl 0x4486d7
mov ebx, dword [ebp - 0x144]
mov ecx, esi
call fcn.00445058
jmp 0x448af7
xor eax, eax
lea edi, [ebp - 0x40]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x24]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x54]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x40]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_GetClientRect]
lea eax, [ebp - 0x40]
push eax
call dword [sym.imp.USER32.dll_IsRectEmpty]
test eax, eax
jne 0x44793d
cmp byte [ebx + 0xcd], al
je 0x448758
lea eax, [ebp - 0x40]
mov ecx, ebx
push eax
call fcn.0044a0e9
mov esi, dword [ebp - 0x12c]
lea eax, [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x34]
mov ecx, ebx
sub eax, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
push eax
push esi
call fcn.004467da
test al, al
je 0x448855
cmp byte [ebx + 0x2f9], 0
je 0x4487ba
lea ecx, [ebx + 0x274]
call fcn.00445402
test al, al
jne 0x4487ba
lea eax, [ebp - 0x54]
mov ecx, ebx
push eax
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
push eax
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
push eax
push esi
call fcn.004467da
test al, al
je 0x448855
push esi
call dword [sym.imp.GDI32.dll_SaveDC]
cmp byte [ebx + 0x2f9], 0
mov dword [ebp - 0x138], eax
je 0x4487e6
push 1
lea eax, [ebp - 0x40]
mov ecx, ebx
push eax
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004468e2
sub esp, 0x10
lea esi, [ebp - 0x40]
mov edi, esp
mov ecx, ebx
push dword [ebp - 0x24]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
call fcn.00448d5c
cmp byte [ebx + 0x2f9], 0
je 0x448819
lea eax, [ebp - 0x40]
mov ecx, ebx
push eax
push eax
lea eax, [ebp - 0x54]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004466b5
mov eax, dword [ebp - 0x34]
sub eax, dword [ebp - 0x3c]
mov esi, dword [ebp - 0x12c]
push 0xcc0020
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push dword [ebp - 0x24]
push eax
mov eax, dword [ebp - 0x38]
sub eax, dword [ebp - 0x40]
push eax
push dword [ebp - 0x3c]
push dword [ebp - 0x40]
push esi
call dword [sym.imp.GDI32.dll_BitBlt]
push dword [ebp - 0x138]
push esi
call dword [sym.imp.GDI32.dll_RestoreDC]
lea eax, [ebp - 0x24]
mov ecx, ebx
push eax
call fcn.0044909b
lea eax, [ebp - 0x54]
mov ecx, ebx
push eax
call fcn.0044909b
jmp 0x448af7
cmp dword [ebx + 0x38], 0
mov esi, dword [sym.imp.USER32.dll_SendMessageW]
je 0x44888c
lea eax, [ebx + 0x3c]
push eax
push 0
push 0x411
push dword [ebx + 0x38]
call esi
cmp byte [ebx + 0xd0], 0
je 0x4488a3
push 0xffffffffffffffff
push 0
push 0x200
push dword [ebx + 8]
call esi
mov byte [ebx + 0xd0], 0
jmp 0x448af7
movsx eax, di
mov ecx, ebx
shr edi, 0x10
movsx edi, di
push edi
push eax
mov byte [ebx + 0xd0], 0
mov dword [ebp - 0x138], eax
call fcn.00446a0c
mov esi, eax
mov dword [ebp - 0x144], esi
test esi, esi
je 0x448af7
mov eax, dword [ebx + 0x74]
test eax, eax
je 0x448923
mov ecx, dword [ebp - 0x138]
xorps xmm0, xmm0
and dword [ebp - 0x28], 0
and dword [ebp - 0x14], 0
movlpd qword [ebp - 0x1c], xmm0
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x20], edi
mov dword [ebp - 0x30], 0xc
mov dword [ebp - 0x2c], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [ebx + 0x74]
lea edx, [ebp - 0x30]
mov dword [ebp - 0x28], eax
push edx
mov eax, dword [ecx]
call dword [eax + 0x10c]
cmp byte [ebx + 4], 0
je 0x448af7
mov eax, dword [esi]
lea ecx, [ebp - 0x128]
push ecx
mov ecx, esi
call dword [eax + 0x9c]
and dword [ebp - 4], 0
lea ecx, [ebp - 0x128]
call fcn.00445402
test al, al
je 0x448961
lea ecx, [ebp - 0x128]
call fcn.00444d37
jmp 0x44793d
push 0x2c
lea edi, [ebx + 0x3c]
push 0
push edi
call fcn.00484300
mov eax, dword [ebx + 8]
lea ecx, [ebp - 0x128]
add esp, 0xc
mov dword [edi], 0x2c
mov dword [ebx + 0x40], 1
mov dword [ebx + 0x44], eax
mov dword [ebx + 0x48], eax
mov eax, dword [0x4d2330]
mov dword [ebx + 0x5c], eax
call fcn.0040d608
mov dword [ebx + 0x60], eax
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x30]
mov esi, eax
lea edi, [ebx + 0x4c]
xor ecx, ecx
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [sym.imp.USER32.dll_SendMessageW]
cmp dword [ebx + 0x38], ecx
jne 0x4489f3
push ecx
push dword [0x4d2330]
mov eax, SysReAllocStringLen
push ecx
push dword [ebx + 8]
push eax
push eax
push eax
push eax
push SysReAllocStringLen
push ecx
push str.tooltips_class32
push ecx
call dword [sym.imp.USER32.dll_CreateWindowExW]
lea esi, [ebx + 0x3c]
mov dword [ebx + 0x38], eax
push esi
push 0
push 0x432
push eax
call edi
jmp 0x4489f6
lea esi, [ebx + 0x3c]
mov ecx, dword [ebp - 0x144]
mov eax, dword [ecx]
call dword [eax + 0xa8]
push eax
push 0
push 0x418
push dword [ebx + 0x38]
call edi
push esi
push 0
push 0x436
push dword [ebx + 0x38]
call edi
push esi
push 1
push 0x411
push dword [ebx + 0x38]
call edi
jmp 0x448951
movsx eax, di
mov dword [ebp - 0x13c], eax
mov eax, edi
shr eax, 0x10
cwde
mov dword [ebp - 0x138], eax
lea eax, [ebp - 0x13c]
push eax
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_ScreenToClient]
mov eax, dword [ebp - 0x138]
mov ecx, dword [ebp - 0x13c]
push eax
mov dword [ebx + 0x80], ecx
push ecx
mov ecx, ebx
mov dword [ebx + 0x84], eax
call fcn.00446a0c
mov esi, eax
test esi, esi
je 0x448af7
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x1c]
cmp eax, ebx
jne 0x448af7
mov eax, dword [ebp - 0x12c]
xorps xmm0, xmm0
shr eax, 0x10
movzx eax, ax
shr eax, 0xf
movlpd qword [ebp - 0x28], xmm0
movlpd qword [ebp - 0x20], xmm0
mov dword [ebp - 0x30], 0x12
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], edi
call fcn.004476f5
mov word [ebp - 0x1a], ax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x28], eax
lea ecx, [ebp - 0x30]
mov eax, dword [esi]
push ecx
mov ecx, esi
call dword [eax + 0x10c]
movzx ecx, word [ebx + 0x84]
movzx eax, word [ebx + 0x80]
shl ecx, 0x10
or ecx, eax
push ecx
push 0
push 0x200
push dword [ebx + 8]
call dword [sym.imp.USER32.dll_SendMessageW]
lea edi, [ebx + 0x11c]
push 0
mov ecx, edi
call fcn.0044523a
mov esi, eax
test esi, esi
je 0x448b95
add ebx, 0xd4
push 0
mov ecx, edi
call fcn.004454ea
mov ecx, dword [esi + 0x108]
test ecx, ecx
je 0x448b44
add ecx, 0x38
call fcn.0045a229
test al, al
je 0x448b44
mov ecx, dword [esi + 0x108]
push esi
add ecx, 0x38
call fcn.0045a23d
mov ecx, ebx
xor edi, edi
call fcn.004452b3
test eax, eax
jle 0x448b6c
push edi
mov ecx, ebx
call fcn.0040d5f9
push esi
mov ecx, eax
mov edx, dword [eax]
call dword [edx]
mov ecx, ebx
inc edi
call fcn.004452b3
cmp edi, eax
jl 0x448b51
mov ecx, esi
call fcn.00445f10
push 0x120
push esi
call fcn.0048109d
mov edi, dword [ebp - 0x154]
pop ecx
pop ecx
push 0
mov ecx, edi
call fcn.0044523a
mov esi, eax
test esi, esi
jne 0x448b16
xor al, al
call fcn.004810dc
ret 0x10