4505a8:	8b 10                	mov    (%eax),%edx
4505aa:	ff 52 2c             	call   *0x2c(%edx)
4505ad:	8b 55 08             	mov    0x8(%ebp),%edx
4505b0:	8b 52 f8             	mov    -0x8(%edx),%edx
4505b3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4505b6:	8b 59 f0             	mov    -0x10(%ecx),%ebx
4505b9:	2b d3                	sub    %ebx,%edx
4505bb:	2b d0                	sub    %eax,%edx
4505bd:	d1 fa                	sar    $1,%edx
4505bf:	79 03                	jns    0x4505c4
4505c1:	83 d2 00             	adc    $0x0,%edx
4505c4:	8b 45 08             	mov    0x8(%ebp),%eax
4505c7:	03 d3                	add    %ebx,%edx
4505c9:	42                   	inc    %edx
4505ca:	8b 45 08             	mov    0x8(%ebp),%eax
4505cd:	8b 40 d8             	mov    -0x28(%eax),%eax
4505d0:	59                   	pop    %ecx
4505d1:	e8 b6 d7 fc ff       	call   0x41dd8c
4505d6:	8b 45 08             	mov    0x8(%ebp),%eax
4505d9:	8b 50 b8             	mov    -0x48(%eax),%edx
4505dc:	8b 45 08             	mov    0x8(%ebp),%eax
4505df:	8b 40 d8             	mov    -0x28(%eax),%eax
4505e2:	8b 40 0c             	mov    0xc(%eax),%eax
4505e5:	e8 de cc fc ff       	call   0x41d2c8
4505ea:	33 c0                	xor    %eax,%eax
4505ec:	5a                   	pop    %edx
4505ed:	59                   	pop    %ecx
4505ee:	59                   	pop    %ecx
4505ef:	64 89 10             	mov    %edx,%fs:(%eax)
4505f2:	68 14 07 45 00       	push   $0x450714
4505f7:	8b 45 08             	mov    0x8(%ebp),%eax
4505fa:	8b 40 b4             	mov    -0x4c(%eax),%eax
4505fd:	e8 46 2c fb ff       	call   0x403248
450602:	c3                   	ret
450603:	e9 94 33 fb ff       	jmp    0x40399c
450608:	eb ed                	jmp    0x4505f7
45060a:	8b 45 08             	mov    0x8(%ebp),%eax
45060d:	8b 55 08             	mov    0x8(%ebp),%edx
450610:	8d 70 f0             	lea    -0x10(%eax),%esi
450613:	8d 7a a4             	lea    -0x5c(%edx),%edi
450616:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450617:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450618:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450619:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45061a:	8b 45 08             	mov    0x8(%ebp),%eax
45061d:	8b 40 c8             	mov    -0x38(%eax),%eax
450620:	8b 40 4c             	mov    0x4c(%eax),%eax
450623:	8b 10                	mov    (%eax),%edx
450625:	ff 52 2c             	call   *0x2c(%edx)
450628:	8b 55 08             	mov    0x8(%ebp),%edx
45062b:	8b 52 f8             	mov    -0x8(%edx),%edx
45062e:	8b 4d 08             	mov    0x8(%ebp),%ecx
450631:	2b 51 f0             	sub    -0x10(%ecx),%edx
450634:	3b c2                	cmp    %edx,%eax
450636:	7d 4a                	jge    0x450682
450638:	8b 45 08             	mov    0x8(%ebp),%eax
45063b:	8b 40 c8             	mov    -0x38(%eax),%eax
45063e:	8b 40 4c             	mov    0x4c(%eax),%eax
450641:	8b 10                	mov    (%eax),%edx
450643:	ff 52 2c             	call   *0x2c(%edx)
450646:	8b 55 08             	mov    0x8(%ebp),%edx
450649:	8b 52 f8             	mov    -0x8(%edx),%edx
45064c:	8b 4d 08             	mov    0x8(%ebp),%ecx
45064f:	2b 51 f0             	sub    -0x10(%ecx),%edx
450652:	2b d0                	sub    %eax,%edx
450654:	d1 fa                	sar    $1,%edx
450656:	79 03                	jns    0x45065b
450658:	83 d2 00             	adc    $0x0,%edx
45065b:	8b 45 08             	mov    0x8(%ebp),%eax
45065e:	03 50 f0             	add    -0x10(%eax),%edx
450661:	42                   	inc    %edx
450662:	8b 45 08             	mov    0x8(%ebp),%eax
450665:	89 50 f0             	mov    %edx,-0x10(%eax)
450668:	8b 45 08             	mov    0x8(%ebp),%eax
45066b:	8b 40 c8             	mov    -0x38(%eax),%eax
45066e:	8b 40 4c             	mov    0x4c(%eax),%eax
450671:	8b 10                	mov    (%eax),%edx
450673:	ff 52 2c             	call   *0x2c(%edx)
450676:	8b 55 08             	mov    0x8(%ebp),%edx
450679:	03 42 f0             	add    -0x10(%edx),%eax
45067c:	8b 55 08             	mov    0x8(%ebp),%edx
45067f:	89 42 f8             	mov    %eax,-0x8(%edx)
450682:	8b 45 08             	mov    0x8(%ebp),%eax
450685:	8b 40 c8             	mov    -0x38(%eax),%eax
450688:	8b 40 4c             	mov    0x4c(%eax),%eax
45068b:	8b 10                	mov    (%eax),%edx
45068d:	ff 52 20             	call   *0x20(%edx)
450690:	8b 55 08             	mov    0x8(%ebp),%edx
450693:	8b 52 fc             	mov    -0x4(%edx),%edx
450696:	8b 4d 08             	mov    0x8(%ebp),%ecx
450699:	2b 51 f4             	sub    -0xc(%ecx),%edx
45069c:	3b c2                	cmp    %edx,%eax
45069e:	7d 4a                	jge    0x4506ea
4506a0:	8b 45 08             	mov    0x8(%ebp),%eax
4506a3:	8b 40 c8             	mov    -0x38(%eax),%eax
4506a6:	8b 40 4c             	mov    0x4c(%eax),%eax
4506a9:	8b 10                	mov    (%eax),%edx
4506ab:	ff 52 20             	call   *0x20(%edx)
4506ae:	8b 55 08             	mov    0x8(%ebp),%edx
4506b1:	8b 52 fc             	mov    -0x4(%edx),%edx
4506b4:	8b 4d 08             	mov    0x8(%ebp),%ecx
4506b7:	2b 51 f4             	sub    -0xc(%ecx),%edx
4506ba:	2b d0                	sub    %eax,%edx
4506bc:	d1 fa                	sar    $1,%edx
4506be:	79 03                	jns    0x4506c3
4506c0:	83 d2 00             	adc    $0x0,%edx
4506c3:	8b 45 08             	mov    0x8(%ebp),%eax
4506c6:	03 50 f4             	add    -0xc(%eax),%edx
4506c9:	42                   	inc    %edx
4506ca:	8b 45 08             	mov    0x8(%ebp),%eax
4506cd:	89 50 f4             	mov    %edx,-0xc(%eax)
4506d0:	8b 45 08             	mov    0x8(%ebp),%eax
4506d3:	8b 40 c8             	mov    -0x38(%eax),%eax
4506d6:	8b 40 4c             	mov    0x4c(%eax),%eax
4506d9:	8b 10                	mov    (%eax),%edx
4506db:	ff 52 20             	call   *0x20(%edx)
4506de:	8b 55 08             	mov    0x8(%ebp),%edx
4506e1:	03 42 f4             	add    -0xc(%edx),%eax
4506e4:	8b 55 08             	mov    0x8(%ebp),%edx
4506e7:	89 42 fc             	mov    %eax,-0x4(%edx)
4506ea:	8b 45 08             	mov    0x8(%ebp),%eax
4506ed:	8b 40 c8             	mov    -0x38(%eax),%eax
4506f0:	8b 48 4c             	mov    0x4c(%eax),%ecx
4506f3:	8b 45 08             	mov    0x8(%ebp),%eax
4506f6:	8d 50 f0             	lea    -0x10(%eax),%edx
4506f9:	8b 45 08             	mov    0x8(%ebp),%eax
4506fc:	8b 40 d8             	mov    -0x28(%eax),%eax
4506ff:	e8 b8 d8 fc ff       	call   0x41dfbc
450704:	8b 45 08             	mov    0x8(%ebp),%eax
450707:	8b 55 08             	mov    0x8(%ebp),%edx
45070a:	8d 70 a4             	lea    -0x5c(%eax),%esi
45070d:	8d 7a f0             	lea    -0x10(%edx),%edi
450710:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450711:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450712:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450713:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450714:	8b 45 08             	mov    0x8(%ebp),%eax
450717:	8b 40 c8             	mov    -0x38(%eax),%eax
45071a:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
45071e:	74 6b                	je     0x45078b
450720:	8b 45 08             	mov    0x8(%ebp),%eax
450723:	ff 48 f8             	decl   -0x8(%eax)
450726:	8b 45 08             	mov    0x8(%ebp),%eax
450729:	ff 48 fc             	decl   -0x4(%eax)
45072c:	eb 5d                	jmp    0x45078b
45072e:	8b 45 08             	mov    0x8(%ebp),%eax
450731:	83 78 c0 00          	cmpl   $0x0,-0x40(%eax)
450735:	74 35                	je     0x45076c
450737:	8b 45 08             	mov    0x8(%ebp),%eax
45073a:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
45073e:	75 2c                	jne    0x45076c
450740:	8b 45 08             	mov    0x8(%ebp),%eax
450743:	8b 40 f0             	mov    -0x10(%eax),%eax
450746:	8b 55 08             	mov    0x8(%ebp),%edx
450749:	8b 52 c0             	mov    -0x40(%edx),%edx
45074c:	03 42 34             	add    0x34(%edx),%eax
45074f:	8b 55 08             	mov    0x8(%ebp),%edx
450752:	89 42 f8             	mov    %eax,-0x8(%edx)
450755:	8b 45 08             	mov    0x8(%ebp),%eax
450758:	8b 40 f4             	mov    -0xc(%eax),%eax
45075b:	8b 55 08             	mov    0x8(%ebp),%edx
45075e:	8b 52 c0             	mov    -0x40(%edx),%edx
450761:	03 42 30             	add    0x30(%edx),%eax
450764:	8b 55 08             	mov    0x8(%ebp),%edx
450767:	89 42 fc             	mov    %eax,-0x4(%edx)
45076a:	eb 18                	jmp    0x450784
45076c:	8b 45 08             	mov    0x8(%ebp),%eax
45076f:	8b 40 f0             	mov    -0x10(%eax),%eax
450772:	8b 55 08             	mov    0x8(%ebp),%edx
450775:	89 42 f8             	mov    %eax,-0x8(%edx)
450778:	8b 45 08             	mov    0x8(%ebp),%eax
45077b:	8b 40 f4             	mov    -0xc(%eax),%eax
45077e:	8b 55 08             	mov    0x8(%ebp),%edx
450781:	89 42 fc             	mov    %eax,-0x4(%edx)
450784:	8b 45 08             	mov    0x8(%ebp),%eax
450787:	c6 40 c7 00          	movb   $0x0,-0x39(%eax)
45078b:	8b 45 08             	mov    0x8(%ebp),%eax
45078e:	ff 48 f0             	decl   -0x10(%eax)
450791:	8b 45 08             	mov    0x8(%ebp),%eax
450794:	ff 48 f4             	decl   -0xc(%eax)
450797:	8b 45 08             	mov    0x8(%ebp),%eax
45079a:	83 40 f8 02          	addl   $0x2,-0x8(%eax)
45079e:	8b 45 08             	mov    0x8(%ebp),%eax
4507a1:	83 40 fc 02          	addl   $0x2,-0x4(%eax)
4507a5:	8b 45 08             	mov    0x8(%ebp),%eax
4507a8:	8b 40 c8             	mov    -0x38(%eax),%eax
4507ab:	80 78 38 00          	cmpb   $0x0,0x38(%eax)
4507af:	75 12                	jne    0x4507c3
4507b1:	8b 45 08             	mov    0x8(%ebp),%eax
4507b4:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4507b8:	74 3e                	je     0x4507f8
4507ba:	8b 45 08             	mov    0x8(%ebp),%eax
4507bd:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
4507c1:	74 35                	je     0x4507f8
4507c3:	8b 45 08             	mov    0x8(%ebp),%eax
4507c6:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
4507ca:	75 2c                	jne    0x4507f8
4507cc:	6a 0f                	push   $0xf
4507ce:	8b 45 08             	mov    0x8(%ebp),%eax
4507d1:	8b 40 c8             	mov    -0x38(%eax),%eax
4507d4:	0f b6 40 38          	movzbl 0x38(%eax),%eax
4507d8:	8b 04 85 6c 3d 46 00 	mov    0x463d6c(,%eax,4),%eax
4507df:	50                   	push   %eax
4507e0:	8b 45 08             	mov    0x8(%ebp),%eax
4507e3:	83 c0 f0             	add    $0xfffffff0,%eax
4507e6:	50                   	push   %eax
4507e7:	8b 45 08             	mov    0x8(%ebp),%eax
4507ea:	8b 40 d8             	mov    -0x28(%eax),%eax
4507ed:	e8 ea d9 fc ff       	call   0x41e1dc
4507f2:	50                   	push   %eax
4507f3:	e8 d4 5c fb ff       	call   0x4064cc
4507f8:	8b 45 08             	mov    0x8(%ebp),%eax
4507fb:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4507ff:	74 4c                	je     0x45084d
450801:	8b 45 08             	mov    0x8(%ebp),%eax
450804:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
450808:	74 0d                	je     0x450817
45080a:	8b 45 08             	mov    0x8(%ebp),%eax
45080d:	8b 40 f8             	mov    -0x8(%eax),%eax
450810:	40                   	inc    %eax
450811:	8b 55 08             	mov    0x8(%ebp),%edx
450814:	89 42 e0             	mov    %eax,-0x20(%edx)
450817:	8b 45 08             	mov    0x8(%ebp),%eax
45081a:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
45081e:	74 09                	je     0x450829
450820:	8b 45 08             	mov    0x8(%ebp),%eax
450823:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
450827:	75 13                	jne    0x45083c
450829:	8b 45 08             	mov    0x8(%ebp),%eax
45082c:	8b 40 d8             	mov    -0x28(%eax),%eax
45082f:	8b 40 14             	mov    0x14(%eax),%eax
450832:	ba 0d 00 00 ff       	mov    $0xff00000d,%edx
450837:	e8 58 d2 fc ff       	call   0x41da94
45083c:	8b 45 08             	mov    0x8(%ebp),%eax
45083f:	8d 50 e0             	lea    -0x20(%eax),%edx
450842:	8b 45 08             	mov    0x8(%ebp),%eax
450845:	8b 40 d8             	mov    -0x28(%eax),%eax
450848:	e8 eb d5 fc ff       	call   0x41de38
45084d:	8b 45 08             	mov    0x8(%ebp),%eax
450850:	80 78 08 00          	cmpb   $0x0,0x8(%eax)
450854:	74 77                	je     0x4508cd
450856:	8b 45 08             	mov    0x8(%ebp),%eax
450859:	80 78 a3 00          	cmpb   $0x0,-0x5d(%eax)
45085d:	74 6e                	je     0x4508cd
45085f:	8b 45 08             	mov    0x8(%ebp),%eax
450862:	80 78 df 00          	cmpb   $0x0,-0x21(%eax)
450866:	75 65                	jne    0x4508cd
450868:	8b 45 08             	mov    0x8(%ebp),%eax
45086b:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
45086f:	74 1e                	je     0x45088f
450871:	6a 0f                	push   $0xf
450873:	6a 02                	push   $0x2
450875:	8b 45 08             	mov    0x8(%ebp),%eax
450878:	83 c0 e0             	add    $0xffffffe0,%eax
45087b:	50                   	push   %eax
45087c:	8b 45 08             	mov    0x8(%ebp),%eax
45087f:	8b 40 d8             	mov    -0x28(%eax),%eax
450882:	e8 55 d9 fc ff       	call   0x41e1dc
450887:	50                   	push   %eax
450888:	e8 3f 5c fb ff       	call   0x4064cc
45088d:	eb 25                	jmp    0x4508b4
45088f:	8b 45 08             	mov    0x8(%ebp),%eax
450892:	f6 40 0c 40          	testb  $0x40,0xc(%eax)
450896:	74 1c                	je     0x4508b4
450898:	6a 0f                	push   $0xf
45089a:	6a 04                	push   $0x4
45089c:	8b 45 08             	mov    0x8(%ebp),%eax
45089f:	83 c0 e0             	add    $0xffffffe0,%eax
4508a2:	50                   	push   %eax
4508a3:	8b 45 08             	mov    0x8(%ebp),%eax
4508a6:	8b 40 d8             	mov    -0x28(%eax),%eax
4508a9:	e8 2e d9 fc ff       	call   0x41e1dc
4508ae:	50                   	push   %eax
4508af:	e8 18 5c fb ff       	call   0x4064cc
4508b4:	8b 45 08             	mov    0x8(%ebp),%eax
4508b7:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4508bb:	75 10                	jne    0x4508cd
4508bd:	6a ff                	push   $0xffffffff
4508bf:	6a 00                	push   $0x0
4508c1:	8b 45 08             	mov    0x8(%ebp),%eax
4508c4:	83 c0 e0             	add    $0xffffffe0,%eax
4508c7:	50                   	push   %eax
4508c8:	e8 cf 5e fb ff       	call   0x40679c
4508cd:	8b 45 08             	mov    0x8(%ebp),%eax
4508d0:	80 78 d7 00          	cmpb   $0x0,-0x29(%eax)
4508d4:	74 09                	je     0x4508df
4508d6:	8b 45 08             	mov    0x8(%ebp),%eax
4508d9:	80 78 c7 00          	cmpb   $0x0,-0x39(%eax)
4508dd:	75 0d                	jne    0x4508ec
4508df:	8b 45 08             	mov    0x8(%ebp),%eax
4508e2:	8b 40 f8             	mov    -0x8(%eax),%eax
4508e5:	40                   	inc    %eax
4508e6:	8b 55 08             	mov    0x8(%ebp),%edx
4508e9:	89 42 e0             	mov    %eax,-0x20(%edx)
4508ec:	8b 45 08             	mov    0x8(%ebp),%eax
4508ef:	83 40 e0 02          	addl   $0x2,-0x20(%eax)
4508f3:	8b 45 08             	mov    0x8(%ebp),%eax
4508f6:	ff 48 e8             	decl   -0x18(%eax)
4508f9:	8b 45 08             	mov    0x8(%ebp),%eax
4508fc:	0f b6 40 cf          	movzbl -0x31(%eax),%eax
450900:	66 8b 04 45 64 3d 46 	mov    0x463d64(,%eax,2),%ax
450907:	00
450908:	66 83 c8 60          	or     $0x60,%ax
45090c:	0f b7 c0             	movzwl %ax,%eax
45090f:	8b 55 08             	mov    0x8(%ebp),%edx
450912:	89 42 9c             	mov    %eax,-0x64(%edx)
450915:	8b 45 08             	mov    0x8(%ebp),%eax
450918:	80 78 9b 00          	cmpb   $0x0,-0x65(%eax)
45091c:	74 13                	je     0x450931
45091e:	8b 45 08             	mov    0x8(%ebp),%eax
450921:	f6 40 0d 01          	testb  $0x1,0xd(%eax)
450925:	74 0a                	je     0x450931
450927:	8b 45 08             	mov    0x8(%ebp),%eax
45092a:	81 48 9c 00 00 10 00 	orl    $0x100000,-0x64(%eax)
450931:	8b 45 08             	mov    0x8(%ebp),%eax
450934:	8b 55 08             	mov    0x8(%ebp),%edx
450937:	8d 70 e0             	lea    -0x20(%eax),%esi
45093a:	8d 7a a4             	lea    -0x5c(%edx),%edi
45093d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45093e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
45093f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450940:	a5                   	movsl  %ds:(%esi),%es:(%edi)
450941:	8b 45 08             	mov    0x8(%ebp),%eax
450944:	f6 40 0c 20          	testb  $0x20,0xc(%eax)
450948:	74 14                	je     0x45095e
45094a:	8b 45 08             	mov    0x8(%ebp),%eax
45094d:	8b 40 d8             	mov    -0x28(%eax),%eax
450950:	8b 40 0c             	mov    0xc(%eax),%eax
450953:	8a 15 c0 0a 45 00    	mov    0x450ac0,%dl
450959:	e8 36 cc fc ff       	call   0x41d594
45095e:	8b 45 08             	mov    0x8(%ebp),%eax
450961:	83 c0 e0             	add    $0xffffffe0,%eax
450964:	50                   	push   %eax
450965:	8b 45 08             	mov    0x8(%ebp),%eax
450968:	8a 40 d7             	mov    -0x29(%eax),%al
45096b:	50                   	push   %eax
45096c:	8b 45 08             	mov    0x8(%ebp),%eax
45096f:	8b 40 9c             	mov    -0x64(%eax),%eax
450972:	0d 00 04 00 00       	or     $0x400,%eax
450977:	0d 00 01 00 00       	or     $0x100,%eax
45097c:	50                   	push   %eax
45097d:	8b 45 08             	mov    0x8(%ebp),%eax
450980:	8b 40 c8             	mov    -0x38(%eax),%eax
450983:	8b 48 30             	mov    0x30(%eax),%ecx
450986:	8b 45 08             	mov    0x8(%ebp),%eax
450989:	8b 50 d8             	mov    -0x28(%eax),%edx
45098c:	8b 45 08             	mov    0x8(%ebp),%eax
45098f:	8b 40 c8             	mov    -0x38(%eax),%eax
450992:	e8 d5 f5 ff ff       	call   0x44ff6c
450997:	8b 45 08             	mov    0x8(%ebp),%eax