Function at 0x490230
Capabilities:
Check for unmoving mouse cursor
Parse credit card information

Disassembly:
push 0xffffffffffffffff
push 0x4e7d49
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x158
mov eax, dword [esp + 0x170]
test eax, eax
push ebx
push ebp
push esi
mov ebp, ecx
push edi
mov dword [esp + 0x34], ebp
mov dword [esp + 0x38], 0
jne 0x490272
mov eax, dword [ebp + 0x2c]
mov dword [esp + 0x180], eax
mov ecx, dword [esp + 0x178]
lea edx, [esp + 0x50]
push edx
mov dword [esp + 0x54], ecx
call fcn.0043f2e0
mov eax, dword [esp + 0x54]
lea ecx, [esp + 0x7c]
xor ebx, ebx
mov edi, ecx
mov word [esp + 0x7c], bx
mov dword [esp + 0x14], ecx
mov cx, word [eax]
add esp, 4
test cx, cx
mov esi, eax
mov dword [esp + 0x4c], edi
je 0x4902d0
lea ecx, [ecx]
cmp cx, 0x3d
je 0x4902c4
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4902b0
jmp 0x4902d0
lea edi, [eax + 2]
mov word [eax], 0
mov dword [esp + 0x4c], edi
push esi
call fcn.0041e7c0
xor eax, eax
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x170], eax
mov al, byte [ebp + 0x8a]
test al, al
jne 0x490309
test byte [ebp + 0xb], 0xf
jne 0x490309
push 1
push 0
lea edx, [esp + 0x1c]
push edx
push esi
mov ecx, ebp
call fcn.004531a0
jmp 0x49031a
push 1
push 0
lea eax, [esp + 0x1c]
push eax
push esi
mov ecx, ebp
call fcn.00451c30
push 2
call fcn.00445f00
add esp, 4
test eax, eax
mov dword [esp + 0x1c], eax
je 0x490331
mov word [eax], 0
mov al, byte [ebp + 0x8a]
test al, al
mov byte [esp + 0x170], 1
jne 0x49035c
test byte [ebp + 0xb], 0xf
jne 0x49035c
push 1
push 0
lea ecx, [esp + 0x24]
push ecx
push edi
mov ecx, ebp
call fcn.004531a0
jmp 0x49036d
push 1
push 0
lea edx, [esp + 0x24]
push edx
push edi
mov ecx, ebp
call fcn.00451c30
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [sym.imp.KERNEL32.dll_lstrcmpiW]
mov dword [esp + 0x10], edi
cmp word [eax], 0x40
jne 0x4906a7
push str._DeskTopFresh
mov ecx, eax
push ecx
call esi
test eax, eax
jne 0x4905a4
mov ecx, dword [esp + 0x10]
mov ax, word [ecx]
test ax, ax
mov edx, ecx
mov dword [esp + 0x4c], edx
je 0x4903ea
lea ecx, [ecx]
cmp ax, 0x2c
je 0x4903d6
cmp ax, 0x3b
je 0x4903d6
cmp ax, 0x3a
je 0x4903d6
cmp ax, 0x23
je 0x4903d6
mov ax, word [edx + 2]
add edx, 2
test ax, ax
jne 0x4903b0
jmp 0x4903e6
mov word [edx], 0
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], edx
add edx, 2
mov dword [esp + 0x4c], edx
mov edx, str.clearicon
nop
mov al, byte [edx]
test al, al
mov ebx, dword [sym.imp.KERNEL32.dll_HeapFree]
jne 0x490402
cmp word [ecx], 0
je 0x490418
movzx esi, word [ecx]
movsx eax, al
or esi, 0x20
or eax, 0x20
add ecx, 2
inc edx
cmp eax, esi
je 0x4903f0
jmp 0x490491
push 2
call fcn.00445f00
add esp, 4
test eax, eax
mov dword [esp + 0x50], eax
je 0x49042f
mov word [eax], 0
mov ecx, 0x23
mov esi, str._userprofile_AppDataLocalMicrosoftWindowsExplorer_thumbcache.db
lea edi, [esp + 0xa0]
rep movsd dword es:[edi], dword [esi]
push 1
push 0
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0xac]
push edx
mov ecx, ebp
mov byte [esp + 0x180], 2
movsw word es:[edi], word [esi]
call fcn.00451c30
mov esi, dword [esp + 0x50]
push 1
push esi
call fcn.004324ec
add esp, 8
test esi, esi
mov byte [esp + 0x170], 1
je 0x49048d
mov eax, dword [0x51927c]
add esi, 0xfffffff8
push esi
push 0
push eax
call ebx
mov edi, dword [esp + 0x1c]
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x50]
push edx
mov dword [esp + 0x48], 0xfff80000
mov dword [esp + 0x4c], 0xffffffff
call fcn.00449970
add esp, 8
test eax, eax
jle 0x490585
mov ecx, dword [esp + 0x4c]
test ecx, ecx
je 0x4904dd
mov ax, word [ecx]
cmp ax, 9
jb 0x4904d2
cmp ax, 0xd
jbe 0x4904d8
cmp ax, 0x20
jne 0x4904dd
add ecx, 2
jmp 0x4904c3
mov eax, dword [esp + 0x40]
cmp eax, 2
jne 0x49051e
mov eax, dword [0x5192a0]
test eax, eax
jne 0x49051a
push str.USER32.DLL
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
test eax, eax
je 0x490513
push str.UpdatePerUserSystemParameters
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x5192a0], eax
call eax
jmp 0x490585
xor eax, eax
mov dword [0x5192a0], eax
call eax
jmp 0x490585
test eax, eax
jl 0x490585
push 0
push 0
push 0x1000
push 0x8000000
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
push 0
push str.Progman
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, dword [sym.imp.USER32.dll_FindWindowExW]
push 0
push str.SHELLDLL_DefView
push 0
push eax
call esi
push 0
push str.SysListView32
push 0
push eax
call esi
mov edi, dword [sym.imp.USER32.dll_PostMessageW]
push 0
push 0x74
mov esi, eax
push 0x100
push esi
call edi
push 0
push 0x74
push 0x101
push esi
call edi
mov edi, dword [esp + 0x1c]
test edi, edi
je 0x490597
mov eax, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push eax
call ebx
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff8
push ecx
jmp 0x492c7c
mov eax, dword [esp + 0x14]
push str._TaskIcoMenu
push eax
call esi
test eax, eax
jne 0x4906a7
mov esi, dword [esp + 0x10]
push esi
push 0x4f24f8
call fcn.00440490
add esp, 8
test al, al
jne 0x49063b
push esi
push 0x4f60a0
call fcn.00440490
add esp, 8
test al, al
jne 0x4905ff
push esi
push 0x4f1d60
call fcn.00440490
add esp, 8
test al, al
je 0x490677
mov al, byte [0x519074]
test al, al
je 0x49063b
push 0x5194ec
mov byte [0x519074], 0
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov al, byte [0x515720]
test al, al
je 0x490627
push 0x51572c
push 2
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
push 0x5194ec
mov byte [0x515720], 0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x490677
mov al, byte [0x51e003]
test al, al
je 0x490654
mov ecx, dword [0x519080]
mov byte [0x519074], 1
push ecx
jmp 0x49066f
mov eax, dword [0x51917c]
test eax, eax
je 0x490677
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x490677
mov byte [0x519074], 1
mov edx, dword [eax + 0x18]
push edx
call fcn.0041f64d
add esp, 4
test edi, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x49068f
add edi, 0xfffffff8
push edi
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push 0
push edx
call esi
jmp 0x492c87
mov eax, dword [esp + 0x14]
mov ax, word [eax]
test ax, ax
jne 0x4906ec
push ebp
call fcn.0041fca8
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 4
test edi, edi
je 0x4906d5
mov ecx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call esi
jmp 0x492c87
cmp ax, 0x40
je 0x490735
push ebp
call fcn.0041fca8
mov eax, dword [esp + 0x184]
add esp, 4
test eax, eax
jne 0x490740
test edi, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x4906d5
mov ecx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push eax
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call esi
jmp 0x492c87
mov eax, dword [esp + 0x180]
test eax, eax
je 0x490745
mov esi, dword [eax + 0x6c]
jmp 0x49074a
mov esi, 0x4ebd38
test esi, esi
mov ebp, dword [sym.imp.KERNEL32.dll_lstrlenW]
mov dword [esp + 0x20], 0
je 0x490785
push esi
call ebp
lea edi, [eax + eax + 2]
lea ecx, [edi + 2]
push ecx
call fcn.00445f00
mov ecx, edi
mov edx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
add esp, 4
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov dword [esp + 0x20], eax
mov edi, dword [esp + 0x14]
push edi
call ebp
lea esi, [eax + eax + 2]
lea eax, [esi + 2]
push eax
call fcn.00445f00
mov ecx, esi
mov edx, ecx
mov esi, edi
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
add esp, 4
mov dword [esp + 0x2c], eax
rep movsb byte es:[edi], byte [esi]
mov dword [esp + 0x68], eax
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov cx, word [eax]
test cx, cx
mov byte [esp + 0x170], 4
je 0x4907ea
mov edi, edi
cmp cx, 0x2e
jne 0x4907d8
mov ebx, eax
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x4907d0
test ebx, ebx
je 0x4907ea
mov eax, ebx
xor edx, edx
cmp word [eax], 0x2e
mov dword [esp + 0x64], edx
jne 0x490802
mov word [eax], dx
add eax, 2
mov edx, eax
mov dword [esp + 0x64], edx
test eax, eax
je 0x490820
mov cx, word [eax]
cmp cx, 9
jb 0x490815
cmp cx, 0xd
jbe 0x49081b
cmp cx, 0x20
jne 0x490820
add eax, 2
jmp 0x490806
test edx, edx
je 0x490853
mov cx, word [eax]
test cx, cx
mov dword [esp + 0x64], eax
je 0x49084e
cmp cx, 9
jb 0x49083c
cmp cx, 0xd
jbe 0x49084e
cmp cx, 0x20
je 0x49084e
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x490830
mov word [eax], 0
mov ebp, dword [esp + 0x17c]
xor bl, bl
xor dl, dl
test ebp, ebp
mov byte [esp + 0x4a], bl
mov byte [esp + 0x28], dl
mov edi, 0x2a
je 0x49090d
cmp word [ebp], 0
mov eax, ebp
je 0x49090d
mov esi, 0x7e
mov cx, word [eax]
cmp cx, 9
jb 0x490894
cmp cx, 0xd
jbe 0x490905
cmp cx, 0x20
je 0x490905
cmp cx, 0x2e
je 0x4908fa
cmp cx, 0x24
je 0x4908fa
cmp cx, 0x25
je 0x4908fa
cmp cx, di
jne 0x4908b6
or dl, 4
jmp 0x4908fc
cmp cx, si
jne 0x4908fc
cmp word [eax + 2], si
jne 0x4908c9
or dl, 2
add eax, 2
jmp 0x4908fc
cmp cx, si
jne 0x4908fc
cmp word [eax + 2], 0x2e
jne 0x4908dd
or dl, 8
add eax, 2
jmp 0x4908fc
cmp cx, si
jne 0x4908fc
cmp word [eax + 2], di
jne 0x4908f0
or dl, 0xa
add eax, 2
jmp 0x4908fc
cmp cx, si
jne 0x4908fc
or dl, 1
jmp 0x4908fc
mov bl, byte [eax]
add eax, 2
cmp word [eax], 0
jne 0x490885
mov byte [esp + 0x4a], bl
mov byte [esp + 0x28], dl
test dl, dl
mov dword [esp + 0x40], 0
je 0x490930
mov eax, dword [esp + 0x28]
push eax
lea ecx, [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.0046afa0
mov dword [esp + 0x10], eax
push 2
call fcn.00445f00
add esp, 4
test eax, eax
mov dword [esp + 0x24], eax
je 0x490947
mov word [eax], 0
test bl, bl
je 0x490968
cmp bl, 0x2e
je 0x490968
lea edx, [esp + 0x40]
push edx
push ebp
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x1c]
push ecx
call fcn.0045e7d0
add esp, 0x10
mov edi, dword [esp + 0x14]
push edi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [eax + eax + 2]
lea edx, [esi + 2]
push edx
call fcn.00445f00
mov ecx, esi
mov ebx, eax
mov eax, ecx
mov esi, edi
shr ecx, 2
mov edi, ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
add esp, 4
mov dword [esp + 0x3c], ebx
rep movsb byte es:[edi], byte [esi]
mov dword [esp + 0x6c], ebx
mov eax, dword [esp + 0x64]
xor ebp, ebp
cmp eax, ebp
mov byte [esp + 0x170], 6
mov dword [esp + 0x50], ebx
jne 0x4909bf
mov dword [esp + 0x64], 0x4ebd38
mov edi, dword [esp + 0x14]
cmp word [edi], 0x40
je 0x492275
push 0x5194ec
mov dword [esp + 0x44], ebp
mov dword [esp + 0x1c], 0x5194ec
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov ecx, dword [esp + 0x34]
mov byte [esp + 0x170], 0x10
mov byte [esp + 0x63], 1
mov byte [esp + 0x33], 0
mov byte [esp + 0x4b], 0
mov dword [esp + 0x58], ecx
mov al, byte [esp + 0x33]
test al, al
mov edi, dword [esp + 0x28]
lea ecx, [ecx]
je 0x490a17
mov byte [esp + 0x4b], 1
test ebx, ebx
mov esi, ebx
mov dword [esp + 0x70], esi
mov eax, ebx
je 0x490a42
xor ecx, ecx
mov cx, word [ebx]
test cx, cx
je 0x490a42
lea ecx, [ecx]
cmp cx, 0x3a
je 0x490a42
mov cx, word [eax + 2]
add eax, 2
test cx, cx
jne 0x490a30
cmp word [eax], 0x3a
mov byte [esp + 0x33], 0
jne 0x490a64
lea ebx, [eax + 2]
mov word [eax], 0
cmp word [ebx], 0
mov dword [esp + 0x50], ebx
je 0x490a64
mov byte [esp + 0x33], 1
mov al, byte [esp + 0x63]
test al, al
je 0x490aa2
mov eax, esi
mov edx, str.this
mov cl, byte [edx]
test cl, cl
jne 0x490a7f
cmp word [eax], 0
je 0x490a95
movzx ebp, word [eax]
movsx ecx, cl
or ebp, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, ebp
je 0x490a73
jmp 0x490aa2
mov esi, dword [esp + 0x20]
mov byte [esp + 0x4b], 1
mov dword [esp + 0x70], esi
mov edx, dword [esp + 0x58]
mov ebp, dword [edx + 0x2c]
mov byte [esp + 0x63], 0
mov eax, esi
mov ecx, 0x4efd08
mov dl, byte [ecx]
test dl, dl
jne 0x490ac1
cmp word [eax], 0
je 0x490ada
movzx esi, word [eax]
movsx edx, dl
or esi, 0x20
or edx, 0x20
add eax, 2
inc ecx
cmp edx, esi
je 0x490ab5
jmp 0x490b7e
mov eax, dword [esp + 0x58]
mov eax, dword [eax + 0x28]
mov ebp, dword [eax + 0x2c]
test ebp, ebp
mov dword [esp + 0x58], eax
je 0x490af1
lea eax, [ebp + 0x6c]
jmp 0x490b38
push 0x4ebd38
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea esi, [eax + eax + 2]
lea ecx, [esi + 2]
push ecx
call fcn.00445f00
mov ecx, esi
mov edx, ecx
shr ecx, 2
mov edi, eax
mov esi, 0x4ebd38
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov ecx, dword [esp + 0x3c]
add esp, 4
mov edi, eax
or ecx, 1
mov dword [esp + 0x28], edi
lea eax, [esp + 0x28]
mov dword [esp + 0x38], ecx
mov eax, dword [eax]
mov dword [esp + 0x70], eax
test byte [esp + 0x38], 1
je 0x490b6d
mov ecx, dword [esp + 0x38]
and ecx, 0xfffffffe
test edi, edi
mov dword [esp + 0x38], ecx
je 0x490b67
mov ecx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor edi, edi
mov dword [esp + 0x28], edi
mov al, byte [esp + 0x33]
test al, al
mov byte [esp + 0x4b], 1
jne 0x490a12
test ebp, ebp
je 0x490c81
cmp ebp, dword [esp + 0x40]
je 0x490c81
mov al, byte [esp + 0x33]
test al, al
jne 0x490baf
mov edx, dword [esp + 0x70]
mov eax, dword [ebp + 0x6c]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x490ccc
mov eax, dword [ebp + 0x74]
xor ebx, ebx
test eax, eax
jle 0x490c00
xor edi, edi
lea ebx, [ebx]
mov eax, dword [ebp + 0x70]
mov esi, dword [eax + edi + 4]
add eax, edi
test esi, esi
je 0x490bf5
mov ecx, dword [eax]
push ecx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x490bf5
mov eax, dword [esi + 0x6c]
test eax, eax
je 0x490bf5
mov edx, dword [esp + 0x70]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
je 0x490cca
mov eax, dword [ebp + 0x74]
inc ebx
add edi, 0x10
cmp ebx, eax
jl 0x490bc0
mov eax, dword [ebp + 0xac]
mov ecx, dword [eax]
xor ebx, ebx
test ecx, ecx
jle 0x490c55
mov edi, edi
mov ecx, dword [ebp + 0xa8]
mov edx, dword [ecx]
mov esi, dword [edx + ebx*4]
test esi, esi
je 0x490c48
mov eax, dword [esi + 8]
test eax, eax
je 0x490c48
mov ecx, dword [esp + 0x70]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_lstrcmpiW]
test eax, eax
jne 0x490c48
mov al, byte [esp + 0x33]
test al, al
je 0x491645
cmp dword [esi + 4], 0xf
je 0x490cb8
mov edx, dword [ebp + 0xac]
mov eax, dword [edx]
inc ebx
cmp ebx, eax
jl 0x490c10
mov al, byte [esp + 0x33]
test al, al
jne 0x4910a8
mov edx, dword [esp + 0x70]
push edx
lea eax, [ebp + 0x14c]
push eax
call fcn.00444dc0
mov ebx, eax
xor edi, edi
add esp, 8
cmp ebx, edi
jne 0x491165
mov al, byte [esp + 0x4b]
test al, al
jne 0x49158b
mov ecx, dword [esp + 0x58]
mov eax, dword [ecx + 0x28]
test eax, eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x40], ebp
je 0x49162d
cmp eax, 0x519150
je 0x49162d
mov ebx, dword [esp + 0x50]
jmp 0x490a03
mov eax, dword [esi + 0x1c]
mov ecx, dword [eax + 0x13c]
mov ebx, dword [esp + 0x50]
jmp 0x4909ff
mov ebp, esi
mov edi, dword [esp + 0x64]
mov eax, edi
mov edx, str.MouseCapture
xor ebx, ebx
lea esp, [esp]
mov cl, byte [edx]
test cl, cl
jne 0x490cef
cmp word [eax], bx
je 0x491671
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x490ce0
mov eax, edi
mov edx, str.POSTMSG
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x490d1f
cmp word [eax], bx
je 0x490de7
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x490d10
mov eax, edi
mov edx, str.SENDMSG
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x490d4f
cmp word [eax], bx
je 0x490e9c
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x490d40
mov eax, edi
mov edx, 0x4ef3cc
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x490d7f
cmp word [eax], bx
je 0x490f55
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x490d70
mov eax, edi
mov edx, 0x4f7204
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x490daf
cmp word [eax], bx
je 0x491916
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x490da0
push edi
push 0x4f7200
call fcn.00440490
add esp, 8
test al, al
je 0x49106c
mov ebp, dword [ebp + 0x18]
mov edi, dword [esp + 0x10]
xor ebx, ebx
jmp 0x491780
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x4c]
mov ecx, dword [ebp + 0xe0]
push ebx
push ebx
push edx
push ebp
push eax
call fcn.004a6d9e
mov edi, eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x490e10
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x490e2c
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push ecx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x490e42
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x490e57
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebx
push eax
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x490e6d
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push ecx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x490e83
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push ecx
call esi
mov eax, edi
jmp 0x492c89
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x4c]
lea edx, [esp + 0x18]
push edx
push 1
push eax
push ebp
push ecx
mov ecx, dword [ebp + 0xe0]
call fcn.004a6d9e
mov edi, eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x490eca
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x490ee6
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x490efb
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebx
push eax
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x490f11
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push ecx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x490f27
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x490f3c
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebx
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push ebx
push edx
call esi
mov eax, edi
jmp 0x492c89
mov eax, dword [esp + 0x4c]
mov edx, dword [ebp + 0xe0]
mov ecx, dword [esp + 0x34]
mov esi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
mov dword [esp + 0x84], edx
mov edx, dword [ebp + 0x18]
mov dword [esp + 0x7c], 3
mov dword [esp + 0x80], ebx
mov dword [esp + 0x8c], ecx
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], 1
mov dword [esp + 0x9c], ebx
je 0x490fbf
push eax
mov dword [esp + 0x1c], ebx
call esi
mov ecx, dword [ebp + 0x18]
lea eax, [esp + 0x7c]
push eax
push ebp
push 0x465
push ecx
call dword [sym.imp.USER32.dll_SendMessageW]
mov edi, eax
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x490fe1
push eax
call esi
mov eax, dword [esp + 0x3c]
cmp eax, ebx
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x490ffd
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x491012
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebx
push eax
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x491028
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push ecx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebx
je 0x49103e
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebx
push edx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x491053
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebx
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push ebx
push edx
call esi
mov eax, edi
jmp 0x492c89
mov eax, dword [esp + 0x18]
cmp eax, ebx
mov esi, dword [ebp + 0x18]
je 0x491082
push eax
mov dword [esp + 0x1c], ebx
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
push ebx
push ebp
push edx
push edi
push eax
push esi
push ecx
call fcn.0043f5f0
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 0x1c
jmp 0x491b8b
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4910b7
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x4910d3
mov edx, eax
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4910f0
mov edx, dword [0x51927c]
mov ecx, eax
add ecx, 0xfffffff8
push ecx
push 0
push edx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x49110b
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x20]
test eax, eax
je 0x491127
mov edx, eax
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x491144
mov edx, dword [0x51927c]
mov ecx, eax
add ecx, 0xfffffff8
push ecx
push 0
push edx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x14]
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, 0x80070057
jmp 0x492c89
mov esi, dword [esp + 0x64]
cmp word [esi], di
jne 0x49119b
mov edx, dword [esp + 0x10]
push edx
lea ecx, [ebx + 4]
call fcn.004575a0
mov ebx, dword [ebx + 0xc]
cmp word [ebx], di
je 0x491506
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x34]
push eax
push ebx
call fcn.00444550
jmp 0x491506
push esi
push str.Enable
call fcn.00440490
add esp, 8
test al, al
je 0x491373
mov ecx, dword [esp + 0x10]
mov ax, word [ecx]
xor esi, esi
cmp ax, 0x30
jb 0x4911ca
cmp ax, 0x39
jbe 0x491267
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x4911d9
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
cmp eax, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x4911f5
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push edx
call esi
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x49120a
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x2c]
cmp eax, edi
je 0x491220
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x491236
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push edx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x49124b
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push edi
push edx
call esi
mov eax, 0x80070057
jmp 0x492c89
mov eax, dword [ebp + 0x18]
push eax
call dword [sym.imp.USER32.dll_GetMenu]
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x14]
push edx
mov ebp, eax
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], edi
call fcn.00449970
add esp, 8
test eax, eax
jle 0x4912c2
mov ecx, dword [esp + 0x10]
cmp ecx, edi
je 0x4912be
lea esp, [esp]
mov ax, word [ecx]
cmp ax, 9
jb 0x4912af
cmp ax, 0xd
jbe 0x4912b5
cmp ax, 0x20
jne 0x4912be
add ecx, 2
mov dword [esp + 0x10], ecx
jmp 0x4912a0
mov esi, dword [esp + 0x40]
cmp ebp, edi
je 0x4912e5
mov ecx, dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
xor eax, eax
cmp esi, edi
setne al
dec eax
and eax, 3
or eax, 0x400
push eax
push ecx
push edx
call dword [sym.imp.USER32.dll_EnableMenuItem]
cmp esi, edi
mov al, byte [ebx]
je 0x4912ef
and al, 0xfe
jmp 0x4912f1
or al, 1
mov esi, dword [ebx + 0xc]
push esi
mov byte [ebx], al
call dword [sym.imp.KERNEL32.dll_lstrlenW]
lea edi, [eax + eax + 2]
push edi
call fcn.00445f00
mov ecx, edi
mov edx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
add esp, 4
rep movsb byte es:[edi], byte [esi]
mov dword [esp + 0x40], eax
push str..Enable
lea ecx, [esp + 0x44]
mov byte [esp + 0x174], 0x15
call fcn.004462e0
test byte [ebx], 1
mov eax, 0x4ee160
jne 0x491345
mov eax, 0x4ee164
mov esi, dword [esp + 0x40]
mov ecx, dword [esp + 0x34]
push eax
push esi
call fcn.004637c0
test esi, esi
je 0x491506
mov eax, dword [0x51927c]
add esi, 0xfffffff8
push esi
push 0
push eax
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x491506
push esi
push 0x4f71f4
call fcn.00440490
add esp, 8
test al, al
je 0x491506
mov ecx, dword [esp + 0x10]
cmp word [ecx], 0x3f
jne 0x49139c
mov eax, ecx
add eax, 2
mov dword [esp + 0x10], eax
push 2
mov dword [esp + 0x5c], edi
call fcn.00445f00
add esp, 4
cmp eax, edi
mov dword [esp + 0x58], eax
je 0x4913b5
mov word [eax], di
push 2
mov dword [esp + 0x3c], edi
call fcn.00445f00
add esp, 4
cmp eax, edi
mov dword [esp + 0x38], eax
je 0x4913ce
mov word [eax], di
push 2
mov dword [esp + 0x2c], edi
call fcn.00445f00
add esp, 4
cmp eax, edi
mov dword [esp + 0x28], eax
je 0x4913e7
mov word [eax], di
mov ebp, dword [esp + 0x34]
push 0x2c
push 0x3b
lea edx, [esp + 0x60]
push edx
lea eax, [esp + 0x1c]
push eax
mov ecx, ebp
mov byte [esp + 0x180], 0x18
call fcn.0043b730
push 0x2c
push 0x3b
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x1c]
push edx
mov ecx, ebp
call fcn.0043b730
push 0x2c
push 0x3b
lea eax, [esp + 0x30]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebp
call fcn.0043b730
mov edx, dword [ebx + 0x10]
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
push edx
lea eax, [esp + 0xa4]
push str.0x_p
push eax
call esi
mov edx, dword [esp + 0x64]
add esp, 0xc
lea ecx, [esp + 0xa0]
push ecx
push edx
mov ecx, ebp
call fcn.00444550
movzx eax, word [ebx + 2]
push eax
lea ecx, [esp + 0xa4]
push str.0x_X
push ecx
call esi
mov eax, dword [esp + 0x44]
add esp, 0xc
lea edx, [esp + 0xa0]
push edx
push eax
mov ecx, ebp
call fcn.00444550
mov ecx, dword [ebx + 0x14]
push ecx
lea edx, [esp + 0xa4]
push str.0x_X
push edx
call esi
mov ecx, dword [esp + 0x34]
add esp, 0xc
lea eax, [esp + 0xa0]
push eax
push ecx
mov ecx, ebp
call fcn.00444550
mov eax, dword [esp + 0x28]
cmp eax, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x4914d3
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push edx
call esi
mov eax, dword [esp + 0x38]
cmp eax, edi
mov dword [esp + 0x28], edi
je 0x4914ec
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x58]
cmp eax, edi
mov dword [esp + 0x38], edi
je 0x491506
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov eax, dword [esp + 0x18]
test eax, eax
je 0x491515
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491532
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x491548
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x49155f
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x491576
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x49068f
add eax, 0xfffffff8
push eax
jmp 0x490685
mov eax, dword [esp + 0x18]
test eax, eax
je 0x49159a
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x4915b6
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4915cd
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4915e4
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4915fa
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x491611
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call esi
mov eax, 0x80070057
jmp 0x492c89
mov eax, dword [esp + 0x18]
test eax, eax
je 0x492a2a
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x492a2a
mov edx, dword [esp + 0x64]
push edx
push str.MouseCapture
call fcn.00440490
mov edi, dword [esp + 0x18]
add esp, 8
test al, al
je 0x49175a
cmp word [edi], 0x23
je 0x49175a
mov ebp, esi
jmp 0x491675
mov edi, dword [esp + 0x10]
cmp word [edi], 0x23
sete bl
test bl, bl
je 0x491687
add edi, 2
mov dword [esp + 0x10], edi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x14]
or esi, 0xffffffff
push ecx
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
call fcn.00449970
add esp, 8
test eax, eax
jle 0x4916d2
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x4916ce
mov ax, word [ecx]
cmp ax, 9
jb 0x4916bf
cmp ax, 0xd
jbe 0x4916c5
cmp ax, 0x20
jne 0x4916ce
add ecx, 2
mov dword [esp + 0x10], ecx
jmp 0x4916b0
mov esi, dword [esp + 0x40]
test bl, bl
mov edi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
je 0x49172e
test esi, esi
jle 0x4916f4
mov edx, dword [ebp + 0x18]
mov ebx, dword [ebp + 0xe0]
push edx
call fcn.004422a0
add esp, 4
jmp 0x491746
jne 0x491746
push 0x5194ec
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x519420]
xor esi, esi
cmp eax, esi
je 0x491725
push eax
call dword [sym.imp.USER32.dll_UnhookWindowsHookEx]
mov dword [0x519420], esi
mov dword [0x519424], esi
mov dword [0x519428], esi
push 0x5194ec
call edi
jmp 0x491746
test esi, esi
jle 0x49173e
mov eax, dword [ebp + 0x18]
push eax
call dword [sym.imp.USER32.dll_SetCapture]
jmp 0x491746
jne 0x491746
call dword [sym.imp.USER32.dll_ReleaseCapture]
mov eax, dword [esp + 0x18]
test eax, eax
je 0x492a2a
push eax
call edi
jmp 0x492a2a
mov edx, dword [esp + 0x64]
push edx
push 0x4f7200
call fcn.00440490
add esp, 8
test al, al
je 0x4918f6
mov eax, dword [esi + 0x1c]
mov ebp, dword [eax + 0x18]
add ebx, 0x1000
test edi, edi
je 0x4917a2
mov ax, word [edi]
cmp ax, 9
jb 0x491793
cmp ax, 0xd
jbe 0x491799
cmp ax, 0x20
jne 0x4917a2
add edi, 2
mov dword [esp + 0x10], edi
jmp 0x491784
cmp word [edi], 0x3f
je 0x4917e5
mov eax, dword [esp + 0x18]
test eax, eax
je 0x4917bb
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x10]
test edi, edi
je 0x49266d
mov ax, word [edi]
cmp ax, 9
jb 0x4917d2
cmp ax, 0xd
jbe 0x4917dc
cmp ax, 0x20
jne 0x49266d
add edi, 2
mov dword [esp + 0x10], edi
jmp 0x4917c3
push 2
call fcn.00445f00
add esp, 4
test eax, eax
mov dword [esp + 0x50], eax
je 0x4917fc
mov word [eax], 0
mov edi, 2
push edi
call fcn.00445f00
mov esi, eax
add esp, 4
test esi, esi
mov dword [esp + 0x40], esi
je 0x491819
mov word [esi], 0
mov edx, dword [esp + 0x10]
push 0x2c
add edx, edi
push 0x3b
lea ecx, [esp + 0x58]
mov dword [esp + 0x18], edx
push ecx
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0x180], 0x1a
call fcn.00449430
mov eax, dword [esp + 0x20]
add esp, 0x10
cmp word [eax], 0
je 0x49186b
push 0x2c
push 0x3b
lea ecx, [esp + 0x48]
push ecx
lea edx, [esp + 0x1c]
add eax, edi
push edx
mov dword [esp + 0x20], eax
call fcn.00449430
mov esi, dword [esp + 0x50]
add esp, 0x10
mov edi, dword [esp + 0x50]
push str.0x_I64X
mov eax, ebp
mov ebp, dword [esp + 0x38]
cdq
push edi
push edx
push eax
push ebp
call fcn.00448a90
push ebx
lea eax, [esp + 0xb8]
push str.0x_X
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x20
lea ecx, [esp + 0xa0]
push ecx
push esi
mov ecx, ebp
call fcn.00444550
test esi, esi
je 0x4918c6
mov edx, dword [0x51927c]
add esi, 0xfffffff8
push esi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
push 0
push edx
call esi
jmp 0x4918cc
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
je 0x4918de
mov eax, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push eax
call esi
mov eax, dword [esp + 0x18]
test eax, eax
je 0x492a30
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
jmp 0x492a30
mov ebx, dword [esp + 0x64]
push ebx
push 0x4f7204
call fcn.00440490
add esp, 8
test al, al
je 0x491c23
mov ebp, esi
xor ebx, ebx
jmp 0x49191a
mov edi, dword [esp + 0x10]
cmp edi, ebx
je 0x49193e
mov edi, edi
mov ax, word [edi]
cmp ax, 9
jb 0x49192f
cmp ax, 0xd
jbe 0x491935
cmp ax, 0x20
jne 0x49193e
add edi, 2
mov dword [esp + 0x10], edi
jmp 0x491920
cmp word [edi], 0x3f
je 0x49194f
mov eax, dword [esp + 0x18]
cmp eax, ebx
jmp 0x4917ae
lea edx, [esp + 0x58]
push edx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x5c]
lea edx, [esp + 0x70]
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0x18]
push edx
push eax
mov dword [esp + 0x7c], ecx
call dword [sym.imp.USER32.dll_ScreenToClient]
push 2
call fcn.00445f00
add esp, 4
cmp eax, ebx
mov dword [esp + 0x38], eax
je 0x49198e
mov word [eax], bx
mov esi, 2
push esi
call fcn.00445f00
mov ebp, eax
add esp, 4
test ebp, ebp
mov dword [esp + 0x28], ebp
je 0x4919ac
mov word [ebp], 0
push esi
call fcn.00445f00
mov ebx, eax
add esp, 4
test ebx, ebx
mov dword [esp + 0x50], ebx
je 0x4919c4
mov word [ebx], 0
push esi
call fcn.00445f00
mov edi, eax
add esp, 4
test edi, edi
mov dword [esp + 0x40], edi
je 0x4919dc
mov word [edi], 0
mov edx, dword [esp + 0x10]
push 0x2c
add edx, esi
push 0x3b
lea ecx, [esp + 0x40]
mov dword [esp + 0x18], edx
push ecx
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0x180], 0x14
call fcn.00449430
mov eax, dword [esp + 0x20]
add esp, 0x10
cmp word [eax], 0
je 0x491a88
push 0x2c
push 0x3b
lea ecx, [esp + 0x30]
mov ebp, eax
push ecx
lea edx, [esp + 0x1c]
add ebp, esi
push edx
mov dword [esp + 0x20], ebp
call fcn.00449430
mov eax, dword [esp + 0x20]
add esp, 0x10
cmp word [eax], 0
je 0x491a84
mov edx, eax
push 0x2c
add edx, esi
push 0x3b
lea ecx, [esp + 0x58]
mov dword [esp + 0x18], edx
push ecx
lea edx, [esp + 0x1c]
push edx
call fcn.00449430
mov eax, dword [esp + 0x20]
add esp, 0x10
cmp word [eax], 0
je 0x491a80
push 0x2c
push 0x3b
lea ecx, [esp + 0x48]
mov ebx, eax
push ecx
lea edx, [esp + 0x1c]
add ebx, esi
push edx
mov dword [esp + 0x20], ebx
call fcn.00449430
mov edi, dword [esp + 0x50]
add esp, 0x10
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x28]
mov eax, dword [esp + 0x58]
mov esi, dword [sym.imp.USER32.dll_wsprintfW]
push eax
lea ecx, [esp + 0xa4]
push 0x4efae8
push ecx
call esi
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x40]
add esp, 0xc
lea edx, [esp + 0xa0]
push edx
push eax
call fcn.00444550
mov ecx, dword [esp + 0x5c]
push ecx
lea edx, [esp + 0xa4]
push 0x4efae8
push edx
call esi
mov ecx, dword [esp + 0x40]
add esp, 0xc
lea eax, [esp + 0xa0]
push eax
push ebp
call fcn.00444550
mov ecx, dword [esp + 0x70]
push ecx
lea edx, [esp + 0xa4]
push 0x4efae8
push edx
call esi
mov ecx, dword [esp + 0x40]
add esp, 0xc
lea eax, [esp + 0xa0]
push eax
push ebx
call fcn.00444550
mov ecx, dword [esp + 0x74]
push ecx
lea edx, [esp + 0xa4]
push 0x4efae8
push edx
call esi
mov ecx, dword [esp + 0x40]
add esp, 0xc
lea eax, [esp + 0xa0]
push eax
push edi
call fcn.00444550
test edi, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491b4f
mov ecx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push ecx
call esi
test ebx, ebx
je 0x491b62
mov edx, dword [0x51927c]
add ebx, 0xfffffff8
push ebx
push 0
push edx
call esi
test ebp, ebp
je 0x491b74
mov eax, dword [0x51927c]
add ebp, 0xfffffff8
push ebp
push 0
push eax
call esi
mov eax, dword [esp + 0x38]
test eax, eax
je 0x491b8b
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x18]
test eax, eax
je 0x491b9a
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x491bb1
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x491bc7
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x491bde
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x491bf5
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x491c0b
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push 0
push edx
call esi
jmp 0x492c87
mov eax, dword [esi + 4]
cmp eax, 3
je 0x491c30
cmp eax, 1
jne 0x491c66
cmp word [ebx], 0
jne 0x491c66
mov cl, byte [esp + 0x4a]
test cl, cl
jne 0x491c66
cmp eax, 3
mov ecx, 0x1000000
jne 0x491c4d
test dword [esi + 0x40], ecx
jne 0x491c57
cmp eax, 1
jne 0x491c66
test dword [esi + 0x58], ecx
je 0x491c66
push 0
push edi
call fcn.00422709
mov edi, dword [esp + 0x18]
add esp, 8
push ebx
push str.POSTMSG
call fcn.00440490
add esp, 8
test al, al
je 0x491d37
mov eax, dword [esp + 0x34]
mov ecx, dword [esi + 0x1c]
mov edx, dword [esp + 0x4c]
push 0
push 0
push eax
push ecx
push edx
lea ecx, [esi + 0x34]
call fcn.004a6d9e
mov edi, eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x491ca7
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491cc3
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x491cda
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x491cf1
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x491d07
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x491d1e
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call esi
mov eax, edi
jmp 0x492c89
push ebx
push str.SENDMSG
call fcn.00440490
add esp, 8
test al, al
je 0x491e0c
mov edx, dword [esp + 0x34]
mov eax, dword [esi + 0x1c]
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x50]
push 1
push edx
push eax
push ecx
lea ecx, [esi + 0x34]
call fcn.004a6d9e
mov edi, eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x491d7b
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491d98
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x491dae
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x491dc5
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x491ddc
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x491df2
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push 0
push edx
call esi
mov eax, edi
jmp 0x492c89
push ebx
push 0x4ef3cc
call fcn.00440490
add esp, 8
test al, al
je 0x491fde
mov eax, dword [esi + 0x1c]
xor edi, edi
cmp eax, edi
jne 0x491ecb
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x491e3e
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
cmp eax, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491e59
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x491e6f
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, edi
je 0x491e85
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push edx
call esi
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x491e9a
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x491eb0
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push edi
push eax
call esi
mov eax, 0x80070057
jmp 0x492c89
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0x34]
add esi, 0x34
mov dword [esp + 0x84], esi
mov esi, dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov dword [esp + 0x7c], 3
mov dword [esp + 0x80], edi
mov dword [esp + 0x88], ecx
mov dword [esp + 0x8c], edx
mov eax, dword [eax + 0x18]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x18]
cmp eax, edi
mov dword [esp + 0x94], edi
mov dword [esp + 0x98], 1
mov dword [esp + 0x9c], edi
je 0x491f32
push eax
mov dword [esp + 0x1c], edi
call esi
mov edx, dword [ebp + 0x18]
lea ecx, [esp + 0x7c]
push ecx
push ebp
push 0x465
push edx
call dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, eax
mov eax, dword [esp + 0x18]
cmp eax, edi
je 0x491f54
push eax
call esi
mov eax, dword [esp + 0x3c]
cmp eax, edi
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x491f6f
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x491f85
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, edi
je 0x491f9b
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push edx
call esi
mov eax, dword [esp + 0x20]
cmp eax, edi
je 0x491fb0
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push edi
push eax
call esi
mov eax, dword [esp + 0x1c]
cmp eax, edi
je 0x491fc6
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push edi
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push edi
push eax
call esi
mov eax, ebx
jmp 0x492c89
push ebx
push str.bkcolor
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push str.Cursor
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push 0x4f71d4
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push str.font
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push str.trans
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push str.style
call fcn.00440490
add esp, 8
test al, al
jne 0x492068
push ebx
push 0x4f71b8
call fcn.00440490
add esp, 8
test al, al
je 0x492117
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x10], edi
mov ebx, dword [esi + 0x1c]
test ebx, ebx
mov eax, dword [esp + 0x18]
jne 0x4921a2
test eax, eax
je 0x492082
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x49209f
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4920b6
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4920cc
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4920e3
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4920fa
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, 0x80070057
jmp 0x492c89
cmp dword [esi + 4], 9
jne 0x49213c
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x4c]
lea ecx, [esp + 0x18]
push ecx
mov ecx, dword [esp + 0x38]
push edx
push ebx
push edi
push eax
push ecx
mov ecx, esi
call fcn.00450380
jmp 0x492154
mov ecx, dword [esp + 0x2c]
mov edx, dword [esi]
lea eax, [esp + 0x18]
push eax
mov eax, dword [esp + 0x38]
push ecx
push ebx
push edi
push eax
mov ecx, esi
call dword [edx + 4]
mov esi, eax
mov eax, dword [esp + 0x18]
test eax, eax
je 0x492165
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea ecx, [esp + 0x6c]
call fcn.0043f290
lea ecx, [esp + 0x24]
call fcn.0043f290
lea ecx, [esp + 0x68]
call fcn.0043f290
lea ecx, [esp + 0x20]
call fcn.0043f290
lea ecx, [esp + 0x1c]
call fcn.0043f290
lea ecx, [esp + 0x14]
call fcn.0043f290
mov eax, esi
jmp 0x492c89
test eax, eax
mov ebp, dword [ebx + 0x18]
je 0x4921bc
push eax
mov dword [esp + 0x1c], 0
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x10]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x34]
push esi
push ebx
push edx
push eax
push edi
push ebp
push ecx
call fcn.0043f5f0
mov eax, dword [esp + 0x34]
add esp, 0x1c
test eax, eax
je 0x4921e6
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x492203
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x492219
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x492230
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x492247
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x49225d
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push 0
push edx
call esi
jmp 0x492c87
mov eax, edi
mov edx, str._Cur
lea esp, [esp]
mov cl, byte [edx]
test cl, cl
jne 0x49228f
cmp word [eax], bp
je 0x492462
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x492280
mov eax, edi
mov edx, str._EATEKEYS
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x4922bf
cmp word [eax], bp
je 0x4927ec
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x4922b0
mov eax, edi
mov edx, str._POSTMSG
lea ebx, [ebx]
mov cl, byte [edx]
test cl, cl
jne 0x4922ef
cmp word [eax], bp
je 0x49288e
movzx esi, word [eax]
movsx ecx, cl
or esi, 0x20
or ecx, 0x20
add eax, 2
inc edx
cmp ecx, esi
je 0x4922e0
push edi
push str._SENDMSG
call fcn.00440490
add esp, 8
test al, al
je 0x492898
mov byte [esp + 0x28], 1
xor ebp, ebp
push 2
mov dword [esp + 0x74], ebp
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x3c], ebp
call fcn.00445f00
mov ebx, eax
add esp, 4
cmp ebx, ebp
mov dword [esp + 0x50], ebx
je 0x492343
mov word [ebx], bp
mov edx, dword [esp + 0x10]
cmp word [edx], 0x3a
mov byte [esp + 0x170], 0xf
jne 0x49240d
mov eax, edx
add eax, 2
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
push eax
call fcn.0043f2e0
mov ecx, dword [esp + 0x14]
mov ax, word [ecx]
add esp, 4
cmp ax, bp
mov esi, ecx
je 0x4923a1
lea ecx, [ecx]
cmp ax, 0x2c
je 0x4923a1
cmp ax, 0x3b
je 0x4923a1
cmp ax, 0x3a
je 0x4923a1
add ecx, 2
mov dword [esp + 0x10], ecx
mov ax, word [ecx]
cmp ax, bp
jne 0x492380
sub ecx, esi
sar ecx, 1
mov edi, ecx
cmp edi, ebp
jge 0x4923b4
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, eax
lea eax, [edi + edi + 4]
push ebx
call fcn.00445f60
add esp, 4
cmp eax, ebp
mov dword [esp + 0x50], eax
je 0x4923ce
mov word [eax + edi*2 + 2], bp
lea edx, [edi + edi]
mov ecx, edx
mov ebx, ecx
shr ecx, 2
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov word [edx + eax], bp
mov ecx, dword [esp + 0x10]
cmp word [ecx], bp
je 0x4923f9
mov eax, ecx
add eax, 2
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x34]
push 1
lea edx, [esp + 0x54]
push edx
call fcn.004152c8
mov ebx, dword [esp + 0x50]
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x14]
push ecx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
call fcn.00449970
add esp, 8
test eax, eax
jle 0x492fb3
mov eax, dword [esp + 0x10]
cmp eax, ebp
je 0x492fa7
jmp 0x492440
mov cx, word [eax]
cmp cx, 9
jb 0x49244f
cmp cx, 0xd
jbe 0x492459
cmp cx, 0x20
jne 0x492fa7
add eax, 2
mov dword [esp + 0x10], eax
jmp 0x492440
mov edi, dword [esp + 0x10]
cmp word [edi], 0x3f
sete al
test al, al
je 0x4917bb
push 2
mov dword [esp + 0x3c], ebp
call fcn.00445f00
add esp, 4
cmp eax, ebp
mov dword [esp + 0x38], eax
je 0x49248e
mov word [eax], bp
push 2
mov dword [esp + 0x2c], ebp
call fcn.00445f00
add esp, 4
cmp eax, ebp
mov dword [esp + 0x28], eax
je 0x4924a7
mov word [eax], bp
push 2
mov dword [esp + 0x5c], ebp
call fcn.00445f00
add esp, 4
cmp eax, ebp
mov dword [esp + 0x58], eax
je 0x4924c0
mov word [eax], bp
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x34]
push 0x2c
push 0x3b
add ecx, 2
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], ecx
push eax
mov ecx, ebx
mov byte [esp + 0x180], 9
call fcn.0043b730
push 0x2c
push 0x3b
lea ecx, [esp + 0x30]
push ecx
lea edx, [esp + 0x1c]
push edx
mov ecx, ebx
call fcn.0043b730
push 0x2c
push 0x3b
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov ecx, ebx
call fcn.0043b730
lea edx, [esp + 0x40]
push edx
call dword [sym.imp.USER32.dll_GetCursorPos]
mov eax, dword [esp + 0x40]
mov edi, dword [sym.imp.USER32.dll_wsprintfW]
mov esi, dword [esp + 0x38]
push eax
lea ecx, [esp + 0xa4]
push 0x4efae8
push ecx
call edi
add esp, 0xc
lea edx, [esp + 0xa0]
push edx
push esi
mov ecx, ebx
call fcn.00444550
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x28]
push eax
lea ecx, [esp + 0xa4]
push 0x4efae8
push ecx
call edi
add esp, 0xc
lea edx, [esp + 0xa0]
push edx
push esi
mov ecx, ebx
call fcn.00444550
mov edx, dword [esp + 0x58]
push ebp
lea eax, [esp + 0x5c]
push eax
push 8
lea ecx, [esp + 0x4c]
push ecx
push edx
push ebx
call fcn.0045f260
mov eax, dword [esp + 0x70]
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 0x18
cmp eax, ebp
je 0x4925b3
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x28]
cmp eax, ebp
mov dword [esp + 0x58], ebp
je 0x4925cd
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x38]
cmp eax, ebp
mov dword [esp + 0x28], ebp
je 0x4925e7
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x3c]
cmp eax, ebp
mov dword [esp + 0x38], ebp
je 0x492600
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x492616
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x49262c
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x492641
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x492657
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push ebp
push eax
call esi
jmp 0x492c87
xor bl, bl
cmp word [edi], 0x2a
jne 0x49267e
mov bl, byte [edi]
add edi, 2
mov dword [esp + 0x10], edi
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x14]
or esi, 0xffffffff
push edx
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], esi
call fcn.00449970
add esp, 8
test eax, eax
jle 0x49275e
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x4926ce
jmp 0x4926b0
mov ax, word [ecx]
cmp ax, 9
jb 0x4926bf
cmp ax, 0xd
jbe 0x4926c5
cmp ax, 0x20
jne 0x4926ce
add ecx, 2
mov dword [esp + 0x10], ecx
jmp 0x4926b0
test bl, bl
je 0x4926ee
mov eax, dword [esp + 0x40]
test eax, eax
jl 0x49275e
xor ecx, ecx
test eax, eax
setne cl
push ecx
call dword [sym.imp.USER32.dll_ShowCursor]
jmp 0x49275e
mov ax, word [ecx]
test ax, ax
je 0x49275e
cmp ax, 0x30
jb 0x492702
cmp ax, 0x39
jbe 0x49275e
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x14]
add ecx, 2
push eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x58], esi
mov dword [esp + 0x5c], esi
call fcn.00449970
add esp, 8
test eax, eax
jle 0x49275e
mov ecx, dword [esp + 0x10]
test ecx, ecx
je 0x49274e
nop
mov ax, word [ecx]
cmp ax, 9
jb 0x49273f
cmp ax, 0xd
jbe 0x492745
cmp ax, 0x20
jne 0x49274e
add ecx, 2
mov dword [esp + 0x10], ecx
jmp 0x492730
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x40]
push ecx
push edx
call dword [sym.imp.USER32.dll_SetCursorPos]
mov eax, dword [esp + 0x3c]
test eax, eax
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x49277a
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x492791
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x4927a8
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4927be
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x4927d5
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push 0
push eax
call esi
jmp 0x492c87
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
push edx
push eax
call fcn.00464530
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
xor ecx, ecx
add esp, 8
test eax, eax
setl cl
cmp ebx, ebp
mov edi, ecx
je 0x49281f
mov edx, dword [0x51927c]
add ebx, 0xfffffff8
push ebx
push ebp
push edx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x492834
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x49284a
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x492860
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x492875
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push ebp
push edx
call esi
mov eax, edi
jmp 0x492c89
mov byte [esp + 0x28], 0
jmp 0x49231e
push edi
push str._percent
call fcn.00440490
add esp, 8
test al, al
je 0x49297d
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
call fcn.00449970
add esp, 8
test eax, eax
jle 0x4928d9
lea ecx, [esp + 0x10]
push ecx
call fcn.0043f2e0
add esp, 4
mov eax, dword [esp + 0x10]
cmp word [eax], bp
je 0x4928e9
add eax, 2
mov dword [esp + 0x10], eax
mov edx, dword [esp + 0x40]
push eax
push edx
push 0x519150
call fcn.0043c6a0
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 0xc
cmp ebx, ebp
je 0x492913
mov eax, dword [0x51927c]
add ebx, 0xfffffff8
push ebx
push ebp
push eax
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x492929
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x49293f
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x492954
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x49296a
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov edx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push ebp
push edx
call esi
jmp 0x492c87
push edi
push str._POS
call fcn.00440490
add esp, 8
test al, al
je 0x492aba
mov eax, dword [esp + 0x10]
cmp word [eax], 0x3f
sete bl
test bl, bl
je 0x4929a9
add eax, 2
mov dword [esp + 0x10], eax
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x20], 0xffffffff
call fcn.00449a90
mov edx, dword [esp + 0x20]
add esp, 8
test edx, edx
jle 0x49159a
mov eax, dword [esp + 0x10]
mov cx, word [eax]
test cx, cx
je 0x4929ee
cmp cx, 0x30
jb 0x4929e7
cmp cx, 0x39
jbe 0x4929ee
add eax, 2
mov dword [esp + 0x10], eax
test bl, bl
je 0x492a02
sub eax, 2
mov dword [esp + 0x10], eax
mov word [eax], 0x3f
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x180]
test ecx, ecx
je 0x492a15
mov ecx, dword [ecx + 0x148]
jmp 0x492a17
xor ecx, ecx
push ecx
mov ecx, dword [esp + 0x38]
push 0
push ecx
push ecx
push eax
push edx
call fcn.0045b630
add esp, 0x18
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x492a47
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x24]
test eax, eax
je 0x492a5e
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x492a74
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call esi
mov eax, dword [esp + 0x20]
test eax, eax
je 0x492a8b
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x492aa2
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call esi
jmp 0x492c87
mov ebp, dword [esp + 0x14]
push ebp
push str._RMENU
call fcn.00440490
mov ebx, dword [sym.imp.KERNEL32.dll_HeapFree]
add esp, 8
test al, al
je 0x492ca4
xor edi, edi
push 2
mov dword [esp + 0x2c], edi
call fcn.00445f00
add esp, 4
cmp eax, edi
mov dword [esp + 0x28], eax
je 0x492af5
mov word [eax], di
push 2
mov dword [esp + 0x5c], edi
call fcn.00445f00
add esp, 4
cmp eax, edi
mov dword [esp + 0x38], eax
je 0x492b0e
mov word [eax], di
push 0x3a
push 0x3b
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x1c]
push eax
mov byte [esp + 0x180], 0xb
call fcn.00449430
mov ecx, dword [esp + 0x20]
add esp, 0x10
cmp word [ecx], di
je 0x492b3e
mov eax, ecx
add eax, 2
mov dword [esp + 0x10], eax
lea edx, [esp + 0x10]
push edx
call fcn.0043f2e0
mov eax, dword [esp + 0x14]
push eax
call fcn.0042063d
push 2
mov dword [esp + 0x1c], eax
call fcn.00445f00
add esp, 0xc
cmp eax, edi
mov dword [esp + 0x50], eax
je 0x492b6b
mov word [eax], di
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x54]
push edx
push eax
mov byte [esp + 0x17c], 0xc
mov dword [esp + 0x4c], edi
call fcn.00454f50
mov eax, dword [esp + 0x4c]
mov esi, dword [esp + 0x5c]
add esp, 0xc
cmp eax, edi
je 0x492bb8
cmp word [eax], di
je 0x492bb8
push edi
lea ecx, [esp + 0x2c]
push ecx
lea edx, [esp + 0x60]
push edx
push eax
push esi
mov word [eax - 2], di
call fcn.00417dae
add esp, 0x14
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0x34]
push eax
push edi
call fcn.00444550
test esi, esi
je 0x492bde
mov ecx, dword [0x51927c]
add esi, 0xfffffff8
push esi
push 0
push ecx
call ebx
test edi, edi
je 0x492bf1
mov edx, dword [0x51927c]
add edi, 0xfffffff8
push edi
push 0
push edx
call ebx
mov eax, dword [esp + 0x28]
test eax, eax
je 0x492c07
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call ebx
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x492c1d
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call ebx
mov eax, dword [esp + 0x24]
test eax, eax
je 0x492c34
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call ebx
mov eax, dword [esp + 0x2c]
test eax, eax
je 0x492c4b
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push edx
call ebx
mov eax, dword [esp + 0x20]
test eax, eax
je 0x492c61
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push 0
push eax
call ebx
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x492c78
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push 0
push ecx
call ebx
add ebp, 0xfffffff8
push ebp
mov edx, dword [0x51927c]
push 0
push edx
call ebx
xor eax, eax
mov ecx, dword [esp + 0x168]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x164
ret 0xc
push ebp
push str._IsWindow
call fcn.00440490
add esp, 8
test al, al
je 0x492d66
lea ecx, [esp + 0x10]
push ecx
call fcn.0043f2e0
mov edx, dword [eax]
mov si, word [edx]
add esp, 4
cmp si, 0x3f
jne 0x492cd7
add dword [esp + 0x10], 2
lea eax, [esp + 0x18]
push eax
lea ecx, [esp + 0x14]
push ecx
mov dword [esp + 0x20], 0xffffffff
call fcn.00449a90
mov edx, dword [esp + 0x18]
mov ax, word [edx]
add esp, 8
cmp ax, 0x3b
je 0x492d04
cmp ax, 0x3a
jne 0x492d09
add dword [esp + 0x10], 2
cmp si, 0x3f
jne 0x492f1e
lea ecx, [esp + 0x50]
call fcn.00446250
push 0x3a
push 0x3b
lea eax, [esp + 0x58]
push eax
lea ecx, [esp + 0x1c]
push ecx
mov byte [esp + 0x180], 0xd
call fcn.00449430
mov edx, dword [esp + 0x60]
mov eax, dword [esp + 0x28]
add esp, 0x10
push edx
push eax
call dword [sym.imp.USER32.dll_IsWindow]
mov ecx, dword [esp + 0x38]
push eax
push ecx
call fcn.00448b20
add esp, 0xc
lea ecx, [esp + 0x50]
call fcn.0043f290
jmp 0x492c07
push ebp
push str._Enable
call fcn.00440490
add esp, 8
test al, al
je 0x492e66
lea edx, [esp + 0x10]
push edx
call fcn.0043f2e0
mov eax, dword [eax]
mov di, word [eax]
add esp, 4
cmp di, 0x3f
jne 0x492d99
add dword [esp + 0x10], 2
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x20], 0xffffffff
call fcn.00449a90
mov eax, dword [esp + 0x18]
mov ax, word [eax]
add esp, 8
cmp ax, 0x3b
je 0x492dc6
cmp ax, 0x3a
jne 0x492dcb
add dword [esp + 0x10], 2
mov esi, dword [esp + 0x18]
test esi, esi
jle 0x492f1e
cmp di, 0x3f
jne 0x492e2c
lea ecx, [esp + 0x50]
call fcn.00446250
push 0x3a
push 0x3b
lea ecx, [esp + 0x58]
push ecx
lea edx, [esp + 0x1c]
push edx
mov byte [esp + 0x180], 0xe
call fcn.00449430
mov eax, dword [esp + 0x60]
add esp, 0x10
push eax
push esi
call dword [sym.imp.USER32.dll_IsWindowEnabled]
mov ecx, dword [esp + 0x38]
push eax
push ecx
call fcn.00448b20
add esp, 0xc
lea ecx, [esp + 0x50]
call fcn.0043f290
jmp 0x492f6c
lea edx, [esp + 0x40]
push edx
lea eax, [esp + 0x14]
push eax
mov dword [esp + 0x48], 0xfffffc18
call fcn.00449a90
mov eax, dword [esp + 0x48]
add esp, 8
test eax, eax
jl 0x492c07
xor ecx, ecx
test eax, eax
setne cl
push ecx
push esi
call dword [sym.imp.USER32.dll_EnableWindow]
jmp 0x492c07
push ebp
push str._Visable
call fcn.00440490
add esp, 8
test al, al
je 0x492ee6
lea edx, [esp + 0x10]
push edx
call fcn.0043f2e0
mov eax, dword [eax]
mov si, word [eax]
add esp, 4
cmp si, 0x3f
jne 0x492e95
add dword [esp + 0x10], 2
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x20], 0xffffffff
call fcn.00449a90
mov eax, dword [esp + 0x18]
mov cx, word [eax]
add esp, 8
cmp cx, 0x3b
je 0x492ec2
cmp cx, 0x3a
jne 0x492ec9
add eax, 2
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x18]
test ecx, ecx
jle 0x492f1e
push esi
push eax
mov eax, dword [esp + 0x3c]
push ecx
push eax
call fcn.0045c4a0
add esp, 0x10
jmp 0x492c07
push ebp
push str._style
call fcn.00440490
add esp, 8
test al, al
je 0x492c07
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x20], 0xffffffff
call fcn.0043b880
mov eax, dword [esp + 0x20]
add esp, 8
test eax, eax
jg 0x492f5e
lea ecx, [esp + 0x6c]
call fcn.0043f290
lea ecx, [esp + 0x24]
call fcn.0043f290
lea ecx, [esp + 0x68]
call fcn.0043f290
lea ecx, [esp + 0x20]
call fcn.0043f290
lea ecx, [esp + 0x1c]
call fcn.0043f290
lea ecx, [esp + 0x14]
call fcn.0043f290
mov eax, 0x80070057
jmp 0x492c89
mov ecx, dword [esp + 0x10]
push ecx
push eax
call fcn.0045c7b0
add esp, 8
lea ecx, [esp + 0x6c]
call fcn.0043f290
lea ecx, [esp + 0x24]
call fcn.0043f290
lea ecx, [esp + 0x68]
call fcn.0043f290
lea ecx, [esp + 0x20]
call fcn.0043f290
lea ecx, [esp + 0x1c]
call fcn.0043f290
lea ecx, [esp + 0x14]
call fcn.0043f290
jmp 0x492c87
mov edi, dword [esp + 0x40]
cmp edi, ebp
jne 0x493052
cmp ebx, ebp
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x492fcb
mov edx, dword [0x51927c]
add ebx, 0xfffffff8
push ebx
push ebp
push edx
call esi
mov eax, dword [esp + 0x3c]
cmp eax, ebp
je 0x492fe0
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x492ff6
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x49300c
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x493021
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x493037
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov edx, dword [esp + 0x14]
mov eax, dword [0x51927c]
add edx, 0xfffffff8
push edx
push ebp
push eax
call esi
mov eax, 0x80070057
jmp 0x492c89
mov cx, word [eax]
cmp cx, 0x3b
je 0x493061
cmp cx, 0x3a
jne 0x4930ca
add eax, 2
mov dword [esp + 0x10], eax
xor esi, esi
cmp word [eax], 0x23
jne 0x49307c
add eax, 2
mov dword [esp + 0x10], eax
mov esi, 0x5000
lea ecx, [esp + 0x40]
push ecx
lea edx, [esp + 0x14]
push edx
mov dword [esp + 0x48], ebp
mov dword [esp + 0x4c], ebp
call fcn.00449970
add esp, 8
test eax, eax
mov eax, dword [esp + 0x10]
jle 0x4930ca
cmp eax, ebp
je 0x4930c0
mov cx, word [eax]
cmp cx, 9
jb 0x4930b1
cmp cx, 0xd
jbe 0x4930b7
cmp cx, 0x20
jne 0x4930c0
add eax, 2
mov dword [esp + 0x10], eax
jmp 0x4930a2
mov ecx, dword [esp + 0x40]
add ecx, esi
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x28]
mov esi, dword [esp + 0x34]
push edx
lea ecx, [esp + 0x3c]
push ecx
lea edx, [esp + 0x60]
push edx
push eax
push esi
call fcn.0044a050
add esp, 0x14
test eax, eax
je 0x49318f
cmp ebx, ebp
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
je 0x493106
mov eax, dword [0x51927c]
add ebx, 0xfffffff8
push ebx
push ebp
push eax
call esi
mov eax, dword [esp + 0x3c]
cmp eax, ebp
je 0x49311c
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x493132
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x493147
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x49315d
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x493173
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x14]
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, 0x80070057
jmp 0x492c89
mov al, byte [esp + 0x28]
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x70]
push edx
test al, al
mov eax, dword [esp + 0x5c]
push eax
push ecx
push edi
jne 0x4931af
call dword [sym.imp.USER32.dll_PostMessageW]
jmp 0x4931b5
call dword [sym.imp.USER32.dll_SendMessageW]
cmp word [ebx], bp
je 0x4931e1
push eax
lea edx, [esp + 0xa4]
push 0x4f4acc
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea eax, [esp + 0xa0]
push eax
push ebx
mov ecx, esi
call fcn.00444550
mov ecx, dword [0x51927c]
mov esi, dword [sym.imp.KERNEL32.dll_HeapFree]
add ebx, 0xfffffff8
push ebx
push ebp
push ecx
call esi
mov eax, dword [esp + 0x3c]
cmp eax, ebp
je 0x49320b
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x24]
cmp eax, ebp
je 0x493220
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov eax, dword [esp + 0x2c]
cmp eax, ebp
je 0x493236
mov ecx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push ecx
call esi
mov eax, dword [esp + 0x20]
cmp eax, ebp
je 0x49324c
mov edx, dword [0x51927c]
add eax, 0xfffffff8
push eax
push ebp
push edx
call esi
mov eax, dword [esp + 0x1c]
cmp eax, ebp
je 0x493261
add eax, 0xfffffff8
push eax
mov eax, dword [0x51927c]
push ebp
push eax
call esi
mov ecx, dword [esp + 0x14]
mov edx, dword [0x51927c]
add ecx, 0xfffffff8
push ecx
push ebp
push edx
call esi
jmp 0x492c87