Function at 0x44810c
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffcbc
push ebx
push esi
push edi
mov edi, dword [ebp + 0xc]
xor eax, eax
mov dword [ebp - 4], eax
push 0xffffffffffffffeb
mov eax, dword [ebp + 8]
push eax
call sub.user32.dll_GetWindowLongA
mov ebx, eax
test bx, bx
jne 0x448161
mov eax, dword [0x4be874]
movsx eax, word [eax]
push eax
push 0xffffffffffffffeb
mov eax, dword [ebp + 8]
push eax
call sub.user32.dll_SetWindowLongA
mov ebx, dword [0x4be874]
mov bx, word [ebx]
movsx eax, bx
mov edx, dword [0x4be754]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp + 8]
mov dword [eax], edx
mov eax, dword [0x4be530]
cmp byte [eax], 0
jbe 0x4481d4
cmp edi, 0x114
jne 0x4481d4
mov eax, dword [0x4be6c0]
cmp byte [eax], 0
jne 0x4481d4
mov eax, dword [0x4be6c0]
mov byte [eax], 1
mov eax, dword [0x4be4ec]
mov ax, word [eax]
test ax, ax
jle 0x4481cc
mov word [ebp - 0x1a], ax
mov word [ebp - 6], 1
mov esi, dword [0x4be754]
mov eax, dword [esi]
test eax, eax
je 0x4481bf
cmp bx, word [ebp - 6]
je 0x4481bf
mov edx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edx
push edi
mov eax, dword [eax]
push eax
call fcn.0044810c
inc word [ebp - 6]
add esi, 4
dec word [ebp - 0x1a]
jne 0x4481a2
mov eax, dword [0x4be6c0]
mov byte [eax], 0
movsx eax, bx
mov edx, dword [0x4be754]
cmp dword [edx + eax*4 - 4], 0
je case.0x4483b9.1037
mov edx, dword [0x4be754]
mov esi, dword [edx + eax*4 - 4]
cmp byte [esi + 0x446], 0
je case.0x4483b9.1037
mov eax, edi
cmp eax, 0x207
jg 0x44831c
je 0x448bbd
cmp eax, 0x102
jg 0x4482b9
je 0x448c1d
cmp eax, 0x24
jg 0x448282
je 0x44841c
cmp eax, 0x10
ja case.0x4483b9.1037
jmp dword [eax*4 + 0x44823e]
cmp eax, 0x4e
jg 0x4482a2
je 0x44914b
sub eax, 0x2b
je 0x448484
dec eax
je 0x448461
jmp case.0x4483b9.1037
sub eax, 0x100
je 0x448bf5
dec eax
je 0x448c06
jmp case.0x4483b9.1037
cmp eax, 0x200
jg 0x4482ef
je 0x448b8e
add eax, 0xfffffeef
cmp eax, 4
ja case.0x4483b9.1037
jmp dword [eax*4 + 0x4482db]
add eax, 0xfffffdff
cmp eax, 5
ja case.0x4483b9.1037
jmp dword [eax*4 + 0x448304]
cmp eax, 0x40a
jg 0x4483ab
je 0x44902a
cmp eax, 0x404
jg 0x448382
je 0x448f72
cmp eax, 0x401
jg 0x44836b
je 0x448edd
sub eax, 0x214
je 0x4484c3
sub eax, 0xe
je 0x448d09
sub eax, 0x1de
je 0x448eb8
jmp case.0x4483b9.1037
sub eax, 0x402
je 0x448efb
dec eax
je 0x448f55
jmp case.0x4483b9.1037
add eax, 0xfffffbfb
cmp eax, 4
ja case.0x4483b9.1037
jmp dword [eax*4 + 0x448397]
add eax, 0xfffffbf5
cmp eax, 0xc
ja case.0x4483b9.1037
jmp dword [eax*4 + 0x4483c0]
mov eax, esi
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
call fcn.00473f14
mov dword [ebp - 4], eax
jmp 0x449261
mov eax, dword [ebp + 0x14]
mov dx, word [eax + 0x10]
mov eax, esi
call fcn.0046c23c
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
mov edx, dword [0x4becac]
movsx edx, word [edx]
mov ecx, dword [0x4be5e4]
movzx ecx, byte [ecx]
add ecx, ecx
add edx, ecx
mov dword [eax + 0x20], edx
mov edx, dword [0x4be52c]
movsx edx, word [edx]
mov ecx, dword [0x4bec48]
movzx ecx, byte [ecx]
add edx, ecx
mov ecx, dword [0x4be5e4]
movzx ecx, byte [ecx]
add ecx, ecx
add edx, ecx
mov dword [eax + 0x24], edx
jmp case.0x4483b9.1037
cmp dword [ebp + 0x10], 0x1e240
jne case.0x4483b9.1037
mov eax, dword [0x4bedec]
movzx eax, byte [eax]
add eax, 0x11
mov edx, dword [ebp + 0x14]
mov dword [edx + 0x10], eax
jmp case.0x4483b9.1037
cmp dword [ebp + 0x10], 0x1e240
jne 0x4484b3
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0xc], 4
ja case.0x4483b9.1037
xor ecx, ecx
mov cl, byte [esi + 0x43d]
add ecx, 7
mov edx, dword [esi + 0x4c]
xchg edx, eax
call fcn.004b78e8
jmp case.0x4483b9.1037
mov edx, dword [ebp + 0x14]
mov eax, dword [ebp + 0x10]
call fcn.004b6a1c
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
mov edx, dword [eax + 4]
mov eax, dword [0x4bec48]
movzx eax, byte [eax]
add edx, eax
mov eax, dword [0x4be5e4]
movzx eax, byte [eax]
add eax, eax
add edx, eax
add edx, 0x16
movsx eax, word [esi + 0x58]
add edx, eax
mov eax, dword [0x4be324]
movsx eax, word [eax]
add eax, eax
add edx, eax
add edx, 2
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0xc]
call fcn.004aa578
mov edx, dword [ebp + 0x14]
mov dword [edx + 0xc], eax
mov eax, esi
call fcn.0046ec34
jmp case.0x4483b9.1037
mov eax, dword [0x4be830]
cmp byte [eax], 0
jne 0x449261
mov eax, dword [0x4bea74]
cmp dword [eax], 0
je 0x44853c
mov eax, dword [0x4bea74]
mov eax, dword [eax]
cmp eax, dword [ebp + 8]
jne 0x449261
mov eax, dword [ebp + 0x14]
call fcn.004066d0
movzx eax, ax
mov edx, dword [0x4be6b0]
mov dword [edx], eax
movzx eax, word [ebp + 0x14]
mov dword [ebp - 0x344], eax
fild dword [ebp - 0x344]
mov eax, dword [0x4be4c4]
fistp qword [eax]
wait
cmp byte [esi + 0x449], 0
jne case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
call fcn.004066d0
test ax, ax
je case.0x4483b9.1037
cmp word [ebp + 0x14], 0
je case.0x4483b9.1037
mov ax, word [ebp + 0x14]
mov word [esi + 0x54], ax
mov eax, dword [ebp + 0x14]
call fcn.004066d0
movzx edx, ax
mov eax, 0x28
call fcn.004aa578
mov word [esi + 0x56], ax
cmp byte [esi + 0x442], 0
jle 0x448699
push 0x10
movsx eax, word [esi + 0x56]
movsx edx, word [esi + 0x58]
sub eax, edx
push eax
mov eax, dword [0x4be83c]
movzx eax, byte [eax]
push eax
movsx eax, word [esi + 0x58]
push eax
movsx eax, word [esi + 0x54]
mov edx, dword [0x4be3e0]
movsx edx, word [edx]
sub edx, 0x10
cmp eax, edx
setg al
and eax, 0x7f
add eax, eax
movsx edx, word [esi + 0x54]
mov ecx, dword [0x4be83c]
movzx ecx, byte [ecx]
sub edx, ecx
sub edx, eax
push edx
push 0
mov eax, dword [esi + 0x48]
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [esi + 0x4c]
test eax, eax
je 0x448635
push 0x10
movsx edx, word [esi + 0x58]
sub edx, 0xf
sub edx, 2
push edx
movsx edx, word [esi + 0x54]
push edx
push 0xf
push 0
push 0
push eax
call sub.user32.dll_SetWindowPos
mov eax, dword [esi + 0x1e4]
test eax, eax
je 0x448690
push 0x10
movsx edx, word [esi + 0x56]
movsx ecx, word [esi + 0x58]
sub edx, ecx
mov ecx, dword [0x4be3f0]
movzx ecx, byte [ecx]
add ecx, ecx
add edx, ecx
push edx
movsx edx, word [esi + 0x54]
mov ecx, dword [0x4be3f0]
movzx ecx, byte [ecx]
add ecx, ecx
add edx, ecx
push edx
movsx edx, word [esi + 0x58]
mov ecx, dword [0x4be3f0]
movzx ecx, byte [ecx]
sub edx, ecx
dec edx
push edx
mov edx, dword [0x4be3f0]
movzx edx, byte [edx]
neg edx
push edx
push 0
push eax
call sub.user32.dll_SetWindowPos
mov eax, esi
xor edx, edx
call fcn.00453834
movzx eax, word [esi + 0x3fc]
mov dword [ebp - 0x344], eax
fild dword [ebp - 0x344]
mov eax, dword [0x4be4c4]
fistp qword [eax]
wait
movsx eax, word [esi + 0x56]
sub eax, 0x16
movsx edx, word [esi + 0x58]
sub eax, edx
mov dword [ebp - 0x344], eax
fild dword [ebp - 0x344]
mov eax, dword [0x4be324]
fild word [eax]
fdivp st(1)
call fcn.004028f4
mov edx, 0x80
call fcn.004aa570
mov word [ebp - 8], ax
mov ax, word [esi + 0x3fc]
cmp ax, word [ebp - 8]
je 0x44876f
mov eax, esi
call fcn.0044f5d0
mov ax, word [ebp - 8]
mov word [esi + 0x3fc], ax
cmp ax, word [esi + 0x42c]
jae 0x44874b
movzx edx, word [esi + 0x42c]
movzx eax, ax
sub edx, eax
mov eax, dword [0x4beee0]
movzx eax, word [eax]
imul edx, eax
mov dword [ebp - 0x344], edx
fild dword [ebp - 0x344]
fild qword [esi + 0x3c]
faddp st(1)
fistp qword [esi + 0x3c]
wait
mov ax, word [esi + 0x3fc]
mov word [esi + 0x42c], ax
mov eax, esi
call fcn.00417aa0
mov eax, esi
call fcn.0046ee24
movsx eax, word [esi + 0x424]
mov edx, dword [0x4bec7c]
cmp eax, dword [edx]
jne 0x44876f
call fcn.00427d08
mov eax, dword [0x4beb04]
cmp byte [eax], 0
je case.0x4483b9.1037
mov eax, dword [0x4beb04]
mov byte [eax], 0
jmp 0x449261
cmp dword [ebp + 0x10], 3
jne 0x44883a
mov eax, dword [0x4be67c]
cmp byte [eax], 2
jne 0x4487d7
push 0
push 1
push 0x115
mov eax, dword [esi]
push eax
call sub.user32.dll_SendMessageA
movzx eax, word [esi + 0x3fe]
mov dword [ebp - 0x344], eax
fild dword [ebp - 0x344]
fild qword [esi + 0x3c]
faddp st(1)
fsub dword [0x449270]
mov eax, dword [0x4be4c4]
fistp qword [eax]
wait
jmp 0x4487f8
push 0
push 0
push 0x115
mov eax, dword [esi]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [0x4be4c4]
mov edx, dword [esi + 0x3c]
mov dword [eax], edx
mov edx, dword [esi + 0x40]
mov dword [eax + 4], edx
mov eax, dword [0x4bee7c]
fild qword [eax]
fcomp dword [0x449274]
fnstsw ax
sahf
jbe 0x44883a
mov eax, dword [0x4be4c4]
push dword [eax + 4]
push dword [eax]
mov eax, dword [esi + 0xc]
fild qword [eax + 0x10]
fsub dword [0x449270]
add esp, 0xfffffff8
fistp qword [esp]
wait
call fcn.004aa590
add esp, 0xfffffff8
fistp qword [esp]
wait
mov eax, esi
call fcn.00458074
cmp dword [ebp + 0x10], 4
jne 0x4489a1
lea ecx, [ebp - 0x33e]
lea edx, [ebp - 0x23e]
mov al, byte [esi + 0x442]
call fcn.004a1ee4
mov eax, dword [0x4be784]
cmp byte [eax + 0x18f5], 0
jne 0x44888f
lea eax, [ebp - 0x23e]
call fcn.004b1914
test al, al
je 0x448933
lea eax, [ebp - 0x33e]
call fcn.004b1914
test al, al
je 0x448933
lea ecx, [esi + 0x15c]
mov al, byte [esi + 0x442]
xor edx, edx
call fcn.004a7190
test al, al
jbe 0x448933
mov eax, dword [0x4be9c0]
mov word [eax], 0
cmp byte [esi + 0x449], 0
jne 0x4488d9
mov eax, esi
call fcn.0046fbdc
add esp, 0xfffffff8
fistp qword [esp]
wait
mov dx, word [esi + 0x424]
mov al, 1
call fcn.00425aac
mov eax, dword [0x4be784]
cmp byte [eax + 0x185a], 0
jne 0x4488f5
mov eax, dword [0x4be784]
cmp byte [eax + 0x185b], 0
je 0x448933
movsx eax, byte [esi + 0x442]
mov edx, dword [0x4be4fc]
cmp byte [edx + eax - 1], 0xff
je 0x44891a
lea eax, [esi + 0x15c]
xor edx, edx
call fcn.004a3734
test eax, eax
je 0x448933
mov eax, dword [0x4bec7c]
mov eax, dword [eax]
movsx edx, word [esi + 0x424]
cmp eax, edx
jne 0x448933
mov eax, esi
call fcn.0044f078
movsx eax, byte [esi + 0x442]
mov edx, dword [0x4be4fc]
cmp byte [edx + eax - 1], 0xff
je 0x44896f
movsx eax, byte [esi + 0x442]
mov edx, dword [0x4be48c]
cmp dword [edx + eax*4 - 4], 0
je 0x4489a1
movsx eax, byte [esi + 0x442]
mov edx, dword [0x4be5f4]
cmp dword [edx + eax*4 - 4], 0
je 0x4489a1
mov eax, dword [0x4be570]
cmp byte [eax], 0
jne 0x4489a1
mov eax, dword [0x4be784]
cmp byte [eax + 0x193d], 0
je 0x4489a1
cmp dword [esi + 0x4c], 0
jne 0x4489a1
push 1
push 0xac
push 0x111
mov eax, dword [esi]
push eax
call sub.user32.dll_PostMessageA
cmp dword [ebp + 0x10], 0xc
jne 0x448a1f
push 0xc
mov eax, dword [esi]
push eax
call sub.user32.dll_KillTimer
mov ax, 0x312
call fcn.004aa600
mov edx, eax
mov eax, dword [0x4bedb0]
call fcn.004b81b0
mov ax, 0x373
call fcn.004aa600
push eax
mov eax, dword [0x4bedb0]
push eax
call sub.kernel32.dll_lstrcatA
mov eax, dword [esi + 0xc]
mov eax, dword [eax + 0xc]
call fcn.004aed10
mov edx, eax
mov eax, dword [0x4bedb0]
mov ecx, 4
call fcn.004b12b8
mov eax, dword [0x4bed48]
mov byte [eax], 1
mov eax, dword [0x4beecc]
cmp byte [eax], 0
je 0x448a0e
call fcn.004adbe0
push 0
push 0x1f4
push 0xd
mov eax, dword [esi]
push eax
call sub.user32.dll_SetTimer
cmp dword [ebp + 0x10], 0xd
jne 0x448a4d
push 0xd
mov eax, dword [esi]
push eax
call sub.user32.dll_KillTimer
mov eax, dword [0x4be9c8]
mov byte [eax], 1
push 0
push 0
push 0x10
mov eax, dword [esi]
push eax
call sub.user32.dll_SendMessageA
mov eax, dword [0x4be9c8]
mov byte [eax], 0
cmp dword [ebp + 0x10], 0xe
jne 0x448a97
push 0xe
mov eax, dword [esi]
push eax
call sub.user32.dll_KillTimer
cmp byte [esi + 0x1f6], 0
je 0x448a83
mov byte [esi + 0x1f8], 1
push 0
push 0xfa
push 0xe
mov eax, dword [esi]
push eax
call sub.user32.dll_SetTimer
jmp 0x449261
cmp dword [esi + 0x1e4], 0
je 0x448a97
mov eax, esi
xor ecx, ecx
xor edx, edx
call fcn.00453e9c
cmp dword [ebp + 0x10], 0x10
jne 0x448ae4
push 0x10
mov eax, dword [esi]
push eax
call sub.user32.dll_KillTimer
cmp byte [esi + 0x1f6], 0
je 0x448acd
mov byte [esi + 0x1f8], 1
push 0
push 0xfa
push 0x10
mov eax, dword [esi]
push eax
call sub.user32.dll_SetTimer
jmp 0x449261
cmp dword [esi + 0x1e4], 0
je 0x448ae4
mov eax, esi
xor ecx, ecx
mov edx, 1
call fcn.00453e9c
cmp dword [ebp + 0x10], 0xf
jne case.0x4483b9.1037
push 0xf
mov eax, dword [esi]
push eax
call sub.user32.dll_KillTimer
mov ax, 0x283
call fcn.004aa600
mov edx, dword [esi + 0xc]
mov edx, dword [edx + 0xc]
call fcn.004ae1b0
mov eax, dword [0x4bedb0]
mov edx, 0x24
call fcn.004b12a8
mov eax, dword [0x4bec68]
cmp byte [eax], 0
je case.0x4483b9.1037
mov eax, dword [0x4be784]
mov byte [eax + 0x1984], 1
jmp case.0x4483b9.1037
mov eax, esi
xor ecx, ecx
mov edx, dword [ebp + 0x14]
call fcn.00458f4c
jmp case.0x4483b9.1037
mov eax, esi
mov edx, dword [ebp + 0x14]
call fcn.00458de8
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x10]
call fcn.004066d0
mov ecx, eax
mov eax, esi
mov dx, word [ebp + 0x10]
call fcn.0046e174
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x10]
call fcn.004066d0
mov ecx, eax
mov eax, esi
mov dx, word [ebp + 0x10]
call fcn.0046e5a0
jmp case.0x4483b9.1037
mov eax, dword [0x4beecc]
cmp byte [eax], 0
jne case.0x4483b9.1037
mov eax, esi
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
call fcn.00458260
jmp case.0x4483b9.1037
mov eax, esi
mov edx, dword [ebp + 0x14]
call fcn.0045a5a0
jmp case.0x4483b9.1037
mov eax, esi
mov edx, dword [ebp + 0x14]
call fcn.0045a474
jmp case.0x4483b9.1037
mov eax, esi
call fcn.00473a4c
jmp case.0x4483b9.1037
mov eax, esi
mov cl, 1
mov edx, dword [ebp + 0x14]
call fcn.00458f4c
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046d99c
jmp case.0x4483b9.1037
mov eax, esi
xor ecx, ecx
mov edx, dword [ebp + 0x10]
call fcn.0044ded8
jmp case.0x4483b9.1037
cmp dword [ebp + 0x10], 0x10
jne case.0x4483b9.1037
mov eax, dword [0x4be6f8]
mov byte [eax], 0
jmp case.0x4483b9.1037
mov eax, esi
mov ecx, dword [ebp + 0x14]
mov edx, dword [ebp + 0x10]
call fcn.0044e910
jmp case.0x4483b9.1037
mov eax, dword [0x4be6f8]
mov byte [eax], 0
mov eax, dword [0x4bec3c]
cmp byte [eax], 0
jne 0x448c68
call sub.user32.dll_DestroyCaret
mov eax, esi
call fcn.0044cc0c
mov word [esi + 0x156], 0
mov eax, dword [0x4bee7c]
mov dword [eax], 0xffffffff
mov dword [eax + 4], 0xffffffff
cmp dword [0x4c1374], 0
je case.0x4483b9.1037
mov eax, dword [0x4c1374]
push eax
call sub.user32.dll_DestroyWindow
mov eax, 1
call fcn.004ae058
xor eax, eax
mov dword [0x4c1374], eax
mov dword [0x4c1378], 0xffffffff
mov dword [0x4c137c], 0xffffffff
jmp case.0x4483b9.1037
mov eax, dword [0x4bebc4]
mov word [eax], 0
cmp dword [esi + 0x4c], 0
je 0x448cd1
mov eax, dword [0x4be784]
cmp byte [eax + 0xa45], 0
je 0x448cd1
mov eax, dword [esi + 0x4c]
push eax
call sub.user32.dll_SetFocus
cmp byte [esi + 0x448], 0
je case.0x4483b9.1037
cmp byte [esi + 0x449], 0
jne case.0x4483b9.1037
mov eax, dword [0x4be570]
cmp byte [eax], 0
jne case.0x4483b9.1037
movsx eax, bx
mov edx, dword [0x4bec7c]
mov dword [edx], eax
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
cmp eax, dword [ebp + 8]
jne case.0x4483b9.1037
mov eax, dword [0x4be8bc]
cmp byte [eax], 0
jne case.0x4483b9.1037
movsx eax, word [esi + 0x424]
mov edx, dword [0x4bec7c]
mov dword [edx], eax
mov eax, dword [0x4bea74]
xor edx, edx
mov dword [eax], edx
mov eax, dword [esi]
push eax
call sub.user32.dll_IsZoomed
test eax, eax
je 0x448d4e
mov byte [esi + 0x449], 0
mov eax, dword [0x4bec7c]
mov ax, word [eax]
call fcn.00447e94
mov eax, dword [0x4be8e4]
cmp dword [eax], 0
jbe 0x448d86
push 0
movsx eax, word [esi + 0x424]
call fcn.00472710
push eax
push 0x130c
mov eax, dword [0x4be8e4]
mov eax, dword [eax]
push eax
call sub.user32.dll_SendMessageA
cmp dword [esi + 0x4c], 0
je 0x448da2
push 8
push 0xac
mov eax, dword [0x4be75c]
mov eax, dword [eax]
push eax
call sub.user32.dll_CheckMenuItem
jmp 0x448db6
push 0
push 0xac
mov eax, dword [0x4be75c]
mov eax, dword [eax]
push eax
call sub.user32.dll_CheckMenuItem
mov eax, dword [0x4be384]
mov ecx, 1
mov edx, 0x80
call fcn.00402ff0
call fcn.00427d08
mov eax, esi
call fcn.0046fbdc
add esp, 0xfffffff8
fistp qword [esp]
wait
mov dx, word [esi + 0x424]
xor eax, eax
call fcn.00429764
mov eax, dword [0x4bef50]
cmp dword [eax], 0
je case.0x4483b9.1037
mov eax, dword [0x4bed5c]
cmp byte [eax], 0
jne case.0x4483b9.1037
mov eax, dword [0x4be5c8]
mov byte [eax], 1
mov eax, dword [esi + 0x80]
call fcn.00480908
mov eax, dword [0x4be5c8]
mov byte [eax], 0
jmp case.0x4483b9.1037
mov eax, dword [0x4beecc]
cmp byte [eax], 0
je 0x448e3f
mov eax, dword [0x4be4bc]
cmp byte [eax], 0
jne 0x449261
cmp dword [ebp + 0x10], 0xf020
jne 0x448e4f
mov byte [esi + 0x449], 1
cmp dword [ebp + 0x10], 0xf120
je 0x448e77
cmp dword [ebp + 0x10], 0xf122
je 0x448e77
cmp dword [ebp + 0x10], 0xf030
je 0x448e77
cmp dword [ebp + 0x10], 0xf032
jne case.0x4483b9.1037
mov eax, esi
call fcn.0044f5d0
test al, al
je 0x449261
mov eax, dword [0x4be810]
mov byte [eax], 0x13
mov byte [esi + 0x449], 0
jmp case.0x4483b9.1037
mov eax, esi
call fcn.00472968
and eax, 0xff
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x449261
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046ee24
cmp byte [esi + 0x443], 0
jne case.0x4483b9.1037
mov eax, esi
call fcn.0044dab4
call fcn.00427d08
jmp case.0x4483b9.1037
mov eax, dword [0x4be784]
mov al, byte [eax + 0x18f1]
mov edx, dword [esi + 0xc]
mov byte [edx + 0xd2], al
call fcn.00427d08
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046fbdc
fistp qword [ebp - 0x10]
wait
mov eax, dword [0x4bedbc]
mov edx, dword [ebp + 0x10]
movzx edx, byte [eax + edx]
mov ecx, dword [0x4be924]
mov eax, esi
call fcn.0044e5e4
push dword [ebp - 0xc]
push dword [ebp - 0x10]
mov eax, esi
xor edx, edx
call fcn.0046fc28
mov eax, dword [0x4be868]
mov byte [eax], 0
mov eax, esi
call fcn.0046fbdc
add esp, 0xfffffff8
fistp qword [esp]
wait
mov ax, word [esi + 0x424]
call fcn.004291dc
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
push eax
push 0
mov ecx, dword [ebp + 0x10]
mov dl, 0xf
mov eax, ebx
call fcn.00430df8
and eax, 0x7f
mov dword [ebp - 4], eax
jmp 0x449261
mov eax, esi
call fcn.0044ef30
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046fbdc
add esp, 0xfffffff8
fistp qword [esp]
wait
mov ax, word [esi + 0x424]
call fcn.004291dc
jmp case.0x4483b9.1037
mov eax, dword [0x4be4c4]
push dword [eax + 4]
push dword [eax]
mov eax, esi
mov dl, 1
call fcn.0046fc28
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046fbdc
add esp, 0xfffffff8
fistp qword [esp]
wait
mov dx, word [esi + 0x424]
xor eax, eax
call fcn.00429764
jmp case.0x4483b9.1037
push 0
push 0
mov ax, word [esi + 0x424]
xor ecx, ecx
mov dl, 0x10
call fcn.00430df8
and eax, 0x7f
mov dword [ebp - 4], eax
jmp 0x449261
mov eax, esi
call fcn.0046fbdc
fistp qword [ebp - 0x10]
wait
fld xword [0x449278]
fild qword [ebp - 0x10]
fcompp
fnstsw ax
sahf
jbe 0x44901a
xor eax, eax
mov dword [ebp - 4], eax
jmp 0x449261
fild qword [ebp - 0x10]
call fcn.004028e8
mov dword [ebp - 4], eax
jmp 0x449261
mov eax, esi
mov edx, dword [ebp + 0x14]
call fcn.00465a7c
jmp case.0x4483b9.1037
mov eax, dword [0x4be784]
cmp byte [eax + 0x188c], 0
jne 0x44905a
mov eax, dword [0x4be590]
mov eax, dword [eax]
mov edx, 4
call fcn.004b12a8
jmp 0x44906b
mov eax, dword [0x4beac8]
mov eax, dword [eax]
mov edx, 4
call fcn.004b12a8
push 0
push 0x8a
push 0x111
mov eax, dword [esi]
push eax
call sub.user32.dll_SendMessageA
jmp case.0x4483b9.1037
xor eax, eax
mov dword [esi + 0x50], eax
jmp case.0x4483b9.1037
mov eax, esi
xor ecx, ecx
mov edx, dword [ebp + 0x14]
call fcn.00473bf0
jmp case.0x4483b9.1037
mov eax, esi
mov dx, word [ebp + 0x10]
call fcn.00459d40
jmp case.0x4483b9.1037
mov eax, dword [0x4be570]
cmp byte [eax], 0
jne case.0x4483b9.1037
mov eax, esi
call fcn.0046d694
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
call fcn.0042a224
jmp case.0x4483b9.1037
mov eax, esi
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp + 0x14]
call fcn.00455348
jmp case.0x4483b9.1037
mov eax, esi
mov cx, word [ebp + 0x10]
mov edx, dword [ebp + 0x14]
call fcn.004554dc
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0046ee24
jmp case.0x4483b9.1037
mov eax, esi
call fcn.0044f5d0
and eax, 0x7f
mov dword [ebp - 4], eax
jmp 0x449261
cmp byte [esi + 0x43b], 0
je 0x449130
mov eax, esi
call fcn.00451ec8
mov byte [esi + 0x43b], 0
push 0
push 0
push 1
mov edx, dword [0x4be3a4]
mov eax, esi
or ecx, 0xffffffff
call fcn.004545d8
jmp case.0x4483b9.1037
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xffffff94
jne 0x449170
mov eax, dword [ebp + 0x14]
mov al, byte [eax + 0x10]
mov edx, dword [0x4be784]
cmp al, byte [edx + 0x189a]
je 0x449170
mov edx, esi
xchg edx, eax
call fcn.0045308c
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xffffff9b
jne 0x4491b1
mov eax, dword [ebp + 0x14]
cmp dword [eax + 0xc], 0xffffffff
jle 0x4491b1
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x14]
and eax, 2
cmp eax, 2
jne 0x4491b1
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0xc]
mov dword [esi + 0x74], eax
cmp byte [esi + 0x1f9], 0
jne 0x4491b1
push 0
push 1
push 0xe
mov eax, dword [ebp + 8]
push eax
call sub.user32.dll_SetTimer
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffffb
jne 0x4491c1
mov eax, esi
call fcn.004593a8
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffffd
je 0x4491d3
mov eax, dword [ebp + 0x14]
cmp dword [eax + 8], 0xfffffffc
jne case.0x4483b9.1037
mov eax, esi
xor edx, edx
call fcn.00459d40
cmp edi, 2
jne 0x44920e
movsx esi, bx
mov eax, dword [0x4be754]
mov eax, dword [0x4be754]
mov eax, dword [eax + esi*4 - 4]
mov edx, 0x44d
call fcn.00402524
mov eax, dword [0x4be754]
xor edx, edx
mov dword [eax + esi*4 - 4], edx
xor eax, eax
call fcn.00468d20
mov eax, dword [ebp + 0x14]
push eax
mov eax, dword [ebp + 0x10]
push eax
push edi
mov eax, dword [ebp + 8]
push eax
call sub.user32.dll_DefMDIChildProcA
mov dword [ebp - 4], eax
movsx eax, bx
mov edx, dword [0x4be754]
cmp dword [edx + eax*4 - 4], 0
je 0x44925b
mov edx, dword [0x4bed38]
cmp byte [edx], 0
je 0x44925b
cmp edi, 0x14
jne 0x44925b
mov edx, dword [0x4be754]
mov eax, dword [edx + eax*4 - 4]
cmp byte [eax + 0x44b], 0
jne 0x449261
call fcn.0046f544
cmp edi, 0x202
mov eax, dword [ebp - 4]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x10