450729:	33 d2                	xor    %edx,%edx
45072b:	8b c6                	mov    %esi,%eax
45072d:	e8 8e bf 00 00       	call   0x45c6c0
450732:	8b e8                	mov    %eax,%ebp
450734:	85 ed                	test   %ebp,%ebp
450736:	74 56                	je     0x45078e
450738:	3b f5                	cmp    %ebp,%esi
45073a:	74 52                	je     0x45078e
45073c:	80 bd 75 02 00 00 00 	cmpb   $0x0,0x275(%ebp)
450743:	74 0d                	je     0x450752
450745:	8b d7                	mov    %edi,%edx
450747:	8b c5                	mov    %ebp,%eax
450749:	e8 ce ff ff ff       	call   0x45071c
45074e:	84 c0                	test   %al,%al
450750:	75 68                	jne    0x4507ba
450752:	83 7d 30 00          	cmpl   $0x0,0x30(%ebp)
450756:	74 36                	je     0x45078e
450758:	b2 01                	mov    $0x1,%dl
45075a:	8b c5                	mov    %ebp,%eax
45075c:	e8 5f bf 00 00       	call   0x45c6c0
450761:	89 44 24 04          	mov    %eax,0x4(%esp)
450765:	83 7c 24 04 00       	cmpl   $0x0,0x4(%esp)
45076a:	74 22                	je     0x45078e
45076c:	3b 6c 24 04          	cmp    0x4(%esp),%ebp
450770:	74 1c                	je     0x45078e
450772:	8b 44 24 04          	mov    0x4(%esp),%eax
450776:	80 b8 75 02 00 00 00 	cmpb   $0x0,0x275(%eax)
45077d:	74 0f                	je     0x45078e
45077f:	8b d7                	mov    %edi,%edx
450781:	8b 44 24 04          	mov    0x4(%esp),%eax
450785:	e8 92 ff ff ff       	call   0x45071c
45078a:	84 c0                	test   %al,%al
45078c:	75 2c                	jne    0x4507ba
45078e:	8b 47 08             	mov    0x8(%edi),%eax
450791:	e8 ea bd 00 00       	call   0x45c580
450796:	88 04 24             	mov    %al,(%esp)
450799:	f6 46 51 10          	testb  $0x10,0x51(%esi)
45079d:	75 19                	jne    0x4507b8
45079f:	8d 57 04             	lea    0x4(%edi),%edx
4507a2:	0f b6 0c 24          	movzbl (%esp),%ecx
4507a6:	8b c6                	mov    %esi,%eax
4507a8:	66 be ba ff          	mov    $0xffba,%si
4507ac:	e8 67 33 fb ff       	call   0x403b18
4507b1:	66 83 7f 04 00       	cmpw   $0x0,0x4(%edi)
4507b6:	74 02                	je     0x4507ba
4507b8:	33 db                	xor    %ebx,%ebx
4507ba:	8b c3                	mov    %ebx,%eax
4507bc:	59                   	pop    %ecx
4507bd:	5a                   	pop    %edx
4507be:	5d                   	pop    %ebp
4507bf:	5f                   	pop    %edi
4507c0:	5e                   	pop    %esi
4507c1:	5b                   	pop    %ebx
4507c2:	c3                   	ret
4507c3:	90                   	nop
4507c4:	53                   	push   %ebx
4507c5:	56                   	push   %esi
4507c6:	8b f2                	mov    %edx,%esi
4507c8:	8b d8                	mov    %eax,%ebx
4507ca:	8b d6                	mov    %esi,%edx
4507cc:	8b c3                	mov    %ebx,%eax
4507ce:	e8 49 ff ff ff       	call   0x45071c
4507d3:	84 c0                	test   %al,%al
4507d5:	75 09                	jne    0x4507e0
4507d7:	8b d6                	mov    %esi,%edx
4507d9:	8b c3                	mov    %ebx,%eax
4507db:	8b 08                	mov    (%eax),%ecx
4507dd:	ff 51 f0             	call   *-0x10(%ecx)
4507e0:	0f b7 56 04          	movzwl 0x4(%esi),%edx
4507e4:	8b c3                	mov    %ebx,%eax
4507e6:	e8 c9 24 00 00       	call   0x452cb4
4507eb:	5e                   	pop    %esi
4507ec:	5b                   	pop    %ebx
4507ed:	c3                   	ret
4507ee:	8b c0                	mov    %eax,%eax
4507f0:	53                   	push   %ebx
4507f1:	56                   	push   %esi
4507f2:	8b f2                	mov    %edx,%esi
4507f4:	8b d8                	mov    %eax,%ebx
4507f6:	8b d6                	mov    %esi,%edx
4507f8:	8b c3                	mov    %ebx,%eax
4507fa:	e8 1d ff ff ff       	call   0x45071c
4507ff:	84 c0                	test   %al,%al
450801:	75 09                	jne    0x45080c
450803:	8b d6                	mov    %esi,%edx
450805:	8b c3                	mov    %ebx,%eax
450807:	8b 08                	mov    (%eax),%ecx
450809:	ff 51 f0             	call   *-0x10(%ecx)
45080c:	0f b7 56 04          	movzwl 0x4(%esi),%edx
450810:	8b c3                	mov    %ebx,%eax
450812:	e8 9d 24 00 00       	call   0x452cb4
450817:	5e                   	pop    %esi
450818:	5b                   	pop    %ebx
450819:	c3                   	ret
45081a:	8b c0                	mov    %eax,%eax
45081c:	53                   	push   %ebx
45081d:	51                   	push   %ecx
45081e:	88 0c 24             	mov    %cl,(%esp)
450821:	66 83 b8 1a 02 00 00 	cmpw   $0x0,0x21a(%eax)
450828:	00
450829:	74 17                	je     0x450842
45082b:	0f b6 0c 24          	movzbl (%esp),%ecx
45082f:	51                   	push   %ecx
450830:	8b ca                	mov    %edx,%ecx
450832:	8b d8                	mov    %eax,%ebx
450834:	8b d0                	mov    %eax,%edx
450836:	8b 83 1c 02 00 00    	mov    0x21c(%ebx),%eax
45083c:	ff 93 18 02 00 00    	call   *0x218(%ebx)
450842:	5a                   	pop    %edx
450843:	5b                   	pop    %ebx
450844:	c3                   	ret
450845:	8d 40 00             	lea    0x0(%eax),%eax
450848:	53                   	push   %ebx
450849:	56                   	push   %esi
45084a:	57                   	push   %edi
45084b:	55                   	push   %ebp
45084c:	51                   	push   %ecx
45084d:	8b fa                	mov    %edx,%edi
45084f:	8b f0                	mov    %eax,%esi
450851:	b3 01                	mov    $0x1,%bl
450853:	b2 01                	mov    $0x1,%dl
450855:	8b c6                	mov    %esi,%eax
450857:	e8 64 be 00 00       	call   0x45c6c0
45085c:	8b e8                	mov    %eax,%ebp
45085e:	85 ed                	test   %ebp,%ebp
450860:	74 1a                	je     0x45087c
450862:	3b f5                	cmp    %ebp,%esi
450864:	74 16                	je     0x45087c
450866:	80 bd 75 02 00 00 00 	cmpb   $0x0,0x275(%ebp)
45086d:	74 0d                	je     0x45087c
45086f:	8b d7                	mov    %edi,%edx
450871:	8b c5                	mov    %ebp,%eax
450873:	e8 d0 ff ff ff       	call   0x450848
450878:	84 c0                	test   %al,%al
45087a:	75 2c                	jne    0x4508a8
45087c:	8b 47 08             	mov    0x8(%edi),%eax
45087f:	e8 fc bc 00 00       	call   0x45c580
450884:	88 04 24             	mov    %al,(%esp)
450887:	f6 46 51 10          	testb  $0x10,0x51(%esi)
45088b:	75 19                	jne    0x4508a6
45088d:	8d 57 04             	lea    0x4(%edi),%edx
450890:	0f b6 0c 24          	movzbl (%esp),%ecx
450894:	8b c6                	mov    %esi,%eax
450896:	66 be b9 ff          	mov    $0xffb9,%si
45089a:	e8 79 32 fb ff       	call   0x403b18
45089f:	66 83 7f 04 00       	cmpw   $0x0,0x4(%edi)
4508a4:	74 02                	je     0x4508a8
4508a6:	33 db                	xor    %ebx,%ebx
4508a8:	8b c3                	mov    %ebx,%eax
4508aa:	5a                   	pop    %edx
4508ab:	5d                   	pop    %ebp
4508ac:	5f                   	pop    %edi
4508ad:	5e                   	pop    %esi
4508ae:	5b                   	pop    %ebx
4508af:	c3                   	ret
4508b0:	53                   	push   %ebx
4508b1:	56                   	push   %esi
4508b2:	8b f2                	mov    %edx,%esi
4508b4:	8b d8                	mov    %eax,%ebx
4508b6:	8b d6                	mov    %esi,%edx
4508b8:	8b c3                	mov    %ebx,%eax
4508ba:	e8 89 ff ff ff       	call   0x450848
4508bf:	84 c0                	test   %al,%al
4508c1:	75 09                	jne    0x4508cc
4508c3:	8b d6                	mov    %esi,%edx
4508c5:	8b c3                	mov    %ebx,%eax
4508c7:	8b 08                	mov    (%eax),%ecx
4508c9:	ff 51 f0             	call   *-0x10(%ecx)
4508cc:	5e                   	pop    %esi
4508cd:	5b                   	pop    %ebx
4508ce:	c3                   	ret
4508cf:	90                   	nop
4508d0:	53                   	push   %ebx
4508d1:	56                   	push   %esi
4508d2:	8b f2                	mov    %edx,%esi
4508d4:	8b d8                	mov    %eax,%ebx
4508d6:	8b d6                	mov    %esi,%edx
4508d8:	8b c3                	mov    %ebx,%eax
4508da:	e8 69 ff ff ff       	call   0x450848
4508df:	84 c0                	test   %al,%al
4508e1:	75 09                	jne    0x4508ec
4508e3:	8b d6                	mov    %esi,%edx
4508e5:	8b c3                	mov    %ebx,%eax
4508e7:	8b 08                	mov    (%eax),%ecx
4508e9:	ff 51 f0             	call   *-0x10(%ecx)
4508ec:	5e                   	pop    %esi
4508ed:	5b                   	pop    %ebx
4508ee:	c3                   	ret
4508ef:	90                   	nop
4508f0:	53                   	push   %ebx
4508f1:	66 83 b8 12 02 00 00 	cmpw   $0x0,0x212(%eax)
4508f8:	00
4508f9:	74 12                	je     0x45090d
4508fb:	8b ca                	mov    %edx,%ecx
4508fd:	8b d8                	mov    %eax,%ebx
4508ff:	8b d0                	mov    %eax,%edx
450901:	8b 83 14 02 00 00    	mov    0x214(%ebx),%eax
450907:	ff 93 10 02 00 00    	call   *0x210(%ebx)
45090d:	5b                   	pop    %ebx
45090e:	c3                   	ret
45090f:	90                   	nop
450910:	53                   	push   %ebx
450911:	56                   	push   %esi
450912:	57                   	push   %edi
450913:	55                   	push   %ebp
450914:	51                   	push   %ecx
450915:	8b fa                	mov    %edx,%edi
450917:	8b f0                	mov    %eax,%esi
450919:	b3 01                	mov    $0x1,%bl
45091b:	b2 01                	mov    $0x1,%dl
45091d:	8b c6                	mov    %esi,%eax
45091f:	e8 9c bd 00 00       	call   0x45c6c0
450924:	8b e8                	mov    %eax,%ebp
450926:	85 ed                	test   %ebp,%ebp
450928:	74 1a                	je     0x450944
45092a:	3b f5                	cmp    %ebp,%esi
45092c:	74 16                	je     0x450944
45092e:	80 bd 75 02 00 00 00 	cmpb   $0x0,0x275(%ebp)
450935:	74 0d                	je     0x450944
450937:	8b d7                	mov    %edi,%edx
450939:	8b c5                	mov    %ebp,%eax
45093b:	e8 d0 ff ff ff       	call   0x450910
450940:	84 c0                	test   %al,%al
450942:	75 2a                	jne    0x45096e
450944:	f6 46 51 10          	testb  $0x10,0x51(%esi)
450948:	75 22                	jne    0x45096c
45094a:	0f b6 47 04          	movzbl 0x4(%edi),%eax
45094e:	88 04 24             	mov    %al,(%esp)
450951:	8b d4                	mov    %esp,%edx
450953:	8b c6                	mov    %esi,%eax
450955:	66 be b8 ff          	mov    $0xffb8,%si
450959:	e8 ba 31 fb ff       	call   0x403b18
45095e:	0f b6 04 24          	movzbl (%esp),%eax
450962:	66 89 47 04          	mov    %ax,0x4(%edi)
450966:	80 7f 04 00          	cmpb   $0x0,0x4(%edi)
45096a:	74 02                	je     0x45096e
45096c:	33 db                	xor    %ebx,%ebx
45096e:	8b c3                	mov    %ebx,%eax
450970:	5a                   	pop    %edx
450971:	5d                   	pop    %ebp
450972:	5f                   	pop    %edi
450973:	5e                   	pop    %esi
450974:	5b                   	pop    %ebx
450975:	c3                   	ret
450976:	8b c0                	mov    %eax,%eax
450978:	53                   	push   %ebx
450979:	56                   	push   %esi
45097a:	8b f2                	mov    %edx,%esi
45097c:	8b d8                	mov    %eax,%ebx
45097e:	8b d6                	mov    %esi,%edx
450980:	8b c3                	mov    %ebx,%eax
450982:	e8 89 ff ff ff       	call   0x450910
450987:	84 c0                	test   %al,%al
450989:	75 09                	jne    0x450994
45098b:	8b d6                	mov    %esi,%edx
45098d:	8b c3                	mov    %ebx,%eax
45098f:	8b 08                	mov    (%eax),%ecx
450991:	ff 51 f0             	call   *-0x10(%ecx)
450994:	5e                   	pop    %esi
450995:	5b                   	pop    %ebx
450996:	c3                   	ret
450997:	90                   	nop
450998:	55                   	push   %ebp
450999:	8b ec                	mov    %esp,%ebp
45099b:	83 c4 f8             	add    $0xfffffff8,%esp
45099e:	53                   	push   %ebx
45099f:	56                   	push   %esi
4509a0:	57                   	push   %edi
4509a1:	89 45 fc             	mov    %eax,-0x4(%ebp)
4509a4:	c6 45 fb 00          	movb   $0x0,-0x5(%ebp)
4509a8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4509ab:	80 b8 da 01 00 00 00 	cmpb   $0x0,0x1da(%eax)
4509b2:	0f 84 83 00 00 00    	je     0x450a3b
4509b8:	8b 45 fc             	mov    -0x4(%ebp),%eax
4509bb:	e8 44 d3 ff ff       	call   0x44dd04
4509c0:	8b f0                	mov    %eax,%esi
4509c2:	4e                   	dec    %esi
4509c3:	85 f6                	test   %esi,%esi
4509c5:	7c 74                	jl     0x450a3b
4509c7:	46                   	inc    %esi
4509c8:	33 ff                	xor    %edi,%edi
4509ca:	8b d7                	mov    %edi,%edx
4509cc:	8b 45 fc             	mov    -0x4(%ebp),%eax
4509cf:	e8 f4 d2 ff ff       	call   0x44dcc8
4509d4:	8b d8                	mov    %eax,%ebx
4509d6:	80 7b 57 00          	cmpb   $0x0,0x57(%ebx)
4509da:	74 5b                	je     0x450a37
4509dc:	8b c3                	mov    %ebx,%eax
4509de:	8b 10                	mov    (%eax),%edx
4509e0:	ff 52 50             	call   *0x50(%edx)
4509e3:	84 c0                	test   %al,%al
4509e5:	74 50                	je     0x450a37
4509e7:	f6 43 52 01          	testb  $0x1,0x52(%ebx)
4509eb:	74 23                	je     0x450a10
4509ed:	8b 45 08             	mov    0x8(%ebp),%eax
4509f0:	8b 40 fc             	mov    -0x4(%eax),%eax
4509f3:	8b 40 08             	mov    0x8(%eax),%eax
4509f6:	50                   	push   %eax
4509f7:	8b 45 08             	mov    0x8(%ebp),%eax
4509fa:	8b 48 fc             	mov    -0x4(%eax),%ecx
4509fd:	8b 49 04             	mov    0x4(%ecx),%ecx
450a00:	ba 12 01 00 00       	mov    $0x112,%edx
450a05:	8b c3                	mov    %ebx,%eax
450a07:	e8 20 a7 ff ff       	call   0x44b12c
450a0c:	85 c0                	test   %eax,%eax
450a0e:	75 21                	jne    0x450a31
450a10:	8b c3                	mov    %ebx,%eax
450a12:	8b 15 bc 59 44 00    	mov    0x4459bc,%edx
450a18:	e8 8b 30 fb ff       	call   0x403aa8
450a1d:	84 c0                	test   %al,%al
450a1f:	74 16                	je     0x450a37
450a21:	8b 45 08             	mov    0x8(%ebp),%eax
450a24:	50                   	push   %eax
450a25:	8b c3                	mov    %ebx,%eax
450a27:	e8 6c ff ff ff       	call   0x450998
450a2c:	59                   	pop    %ecx
450a2d:	84 c0                	test   %al,%al
450a2f:	74 06                	je     0x450a37
450a31:	c6 45 fb 01          	movb   $0x1,-0x5(%ebp)
450a35:	eb 04                	jmp    0x450a3b
450a37:	47                   	inc    %edi
450a38:	4e                   	dec    %esi
450a39:	75 8f                	jne    0x4509ca
450a3b:	0f b6 45 fb          	movzbl -0x5(%ebp),%eax
450a3f:	5f                   	pop    %edi
450a40:	5e                   	pop    %esi
450a41:	5b                   	pop    %ebx
450a42:	59                   	pop    %ecx
450a43:	59                   	pop    %ecx
450a44:	5d                   	pop    %ebp
450a45:	c3                   	ret
450a46:	8b c0                	mov    %eax,%eax
450a48:	55                   	push   %ebp
450a49:	8b ec                	mov    %esp,%ebp
450a4b:	51                   	push   %ecx
450a4c:	53                   	push   %ebx
450a4d:	56                   	push   %esi
450a4e:	89 55 fc             	mov    %edx,-0x4(%ebp)
450a51:	8b d8                	mov    %eax,%ebx
450a53:	8b 45 fc             	mov    -0x4(%ebp),%eax
450a56:	8b 40 04             	mov    0x4(%eax),%eax
450a59:	25 f0 ff 00 00       	and    $0xfff0,%eax
450a5e:	3d 00 f1 00 00       	cmp    $0xf100,%eax
450a63:	75 5e                	jne    0x450ac3
450a65:	8b 45 fc             	mov    -0x4(%ebp),%eax
450a68:	66 83 78 08 20       	cmpw   $0x20,0x8(%eax)
450a6d:	74 54                	je     0x450ac3
450a6f:	8b 45 fc             	mov    -0x4(%ebp),%eax
450a72:	66 83 78 08 2d       	cmpw   $0x2d,0x8(%eax)
450a77:	74 4a                	je     0x450ac3