410810:	8b 85 c4 fe ff ff    	mov    -0x13c(%ebp),%eax
410816:	50                   	push   %eax
410817:	8b 08                	mov    (%eax),%ecx
410819:	8b 71 08             	mov    0x8(%ecx),%esi
41081c:	8b ce                	mov    %esi,%ecx
41081e:	ff 15 c4 12 45 00    	call   *0x4512c4
410824:	ff d6                	call   *%esi
410826:	83 3d 44 09 45 00 00 	cmpl   $0x0,0x450944
41082d:	0f 85 ae 00 00 00    	jne    0x4108e1
410833:	33 c0                	xor    %eax,%eax
410835:	b9 03 00 00 00       	mov    $0x3,%ecx
41083a:	89 85 cc fe ff ff    	mov    %eax,-0x134(%ebp)
410840:	89 8d dc fe ff ff    	mov    %ecx,-0x124(%ebp)
410846:	03 c1                	add    %ecx,%eax
410848:	8d b5 7c ff ff ff    	lea    -0x84(%ebp),%esi
41084e:	d1 e8                	shr    $1,%eax
410850:	89 85 b8 fe ff ff    	mov    %eax,-0x148(%ebp)
410856:	8b 14 85 04 f0 44 00 	mov    0x44f004(,%eax,4),%edx
41085d:	0f b7 06             	movzwl (%esi),%eax
410860:	89 95 bc fe ff ff    	mov    %edx,-0x144(%ebp)
410866:	66 85 c0             	test   %ax,%ax
410869:	0f 84 22 90 01 00    	je     0x429891
41086f:	83 f8 7f             	cmp    $0x7f,%eax
410872:	0f 87 32 90 01 00    	ja     0x4298aa
410878:	8d 48 bf             	lea    -0x41(%eax),%ecx
41087b:	66 83 f9 19          	cmp    $0x19,%cx
41087f:	0f 86 50 01 00 00    	jbe    0x4109d5
410885:	0f b7 0a             	movzwl (%edx),%ecx
410888:	89 85 c0 fe ff ff    	mov    %eax,-0x140(%ebp)
41088e:	83 f9 7f             	cmp    $0x7f,%ecx
410891:	0f 87 56 90 01 00    	ja     0x4298ed
410897:	8d 41 bf             	lea    -0x41(%ecx),%eax
41089a:	66 83 f8 19          	cmp    $0x19,%ax
41089e:	0f 86 26 01 00 00    	jbe    0x4109ca
4108a4:	8b c1                	mov    %ecx,%eax
4108a6:	8b 8d c0 fe ff ff    	mov    -0x140(%ebp),%ecx
4108ac:	0f b7 c0             	movzwl %ax,%eax
4108af:	0f b7 c9             	movzwl %cx,%ecx
4108b2:	2b c8                	sub    %eax,%ecx
4108b4:	75 08                	jne    0x4108be
4108b6:	83 c6 02             	add    $0x2,%esi
4108b9:	83 c2 02             	add    $0x2,%edx
4108bc:	eb 9f                	jmp    0x41085d
4108be:	85 c9                	test   %ecx,%ecx
4108c0:	0f 88 1a 01 00 00    	js     0x4109e0
4108c6:	8b 85 b8 fe ff ff    	mov    -0x148(%ebp),%eax
4108cc:	8b 8d dc fe ff ff    	mov    -0x124(%ebp),%ecx
4108d2:	40                   	inc    %eax
4108d3:	89 85 cc fe ff ff    	mov    %eax,-0x134(%ebp)
4108d9:	3b c1                	cmp    %ecx,%eax
4108db:	0f 82 65 ff ff ff    	jb     0x410846
4108e1:	a1 00 f0 44 00       	mov    0x44f000,%eax
4108e6:	85 db                	test   %ebx,%ebx
4108e8:	0f 88 80 90 01 00    	js     0x42996e
4108ee:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
4108f3:	74 0a                	je     0x4108ff
4108f5:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
4108f9:	0f 85 88 90 01 00    	jne    0x429987
4108ff:	8b 77 24             	mov    0x24(%edi),%esi
410902:	85 db                	test   %ebx,%ebx
410904:	0f 88 ec 90 01 00    	js     0x4299f6
41090a:	83 fe 01             	cmp    $0x1,%esi
41090d:	0f 84 a9 90 01 00    	je     0x4299bc
410913:	c7 85 dc fe ff ff 00 	movl   $0x0,-0x124(%ebp)
41091a:	00 00 00
41091d:	8b 47 20             	mov    0x20(%edi),%eax
410920:	83 f8 01             	cmp    $0x1,%eax
410923:	0f 85 a4 90 01 00    	jne    0x4299cd
410929:	8d 4f 3c             	lea    0x3c(%edi),%ecx
41092c:	89 8d cc fe ff ff    	mov    %ecx,-0x134(%ebp)
410932:	83 fe 01             	cmp    $0x1,%esi
410935:	0f 84 a1 90 01 00    	je     0x4299dc
41093b:	33 d2                	xor    %edx,%edx
41093d:	83 f8 01             	cmp    $0x1,%eax
410940:	0f 85 9e 90 01 00    	jne    0x4299e4
410946:	83 c8 ff             	or     $0xffffffff,%eax
410949:	83 bd b4 fe ff ff 00 	cmpl   $0x0,-0x14c(%ebp)
410950:	0f 85 95 90 01 00    	jne    0x4299eb
410956:	33 c9                	xor    %ecx,%ecx
410958:	ff b5 dc fe ff ff    	push   -0x124(%ebp)
41095e:	ff b5 cc fe ff ff    	push   -0x134(%ebp)
410964:	52                   	push   %edx
410965:	50                   	push   %eax
410966:	8d 87 4c 04 00 00    	lea    0x44c(%edi),%eax
41096c:	50                   	push   %eax
41096d:	ff 77 30             	push   0x30(%edi)
410970:	51                   	push   %ecx
410971:	ff b5 b0 fe ff ff    	push   -0x150(%ebp)
410977:	ff b5 ac fe ff ff    	push   -0x154(%ebp)
41097d:	ff 77 38             	push   0x38(%edi)
410980:	ff b5 a8 fe ff ff    	push   -0x158(%ebp)
410986:	6a 01                	push   $0x1
410988:	ff 35 80 09 45 00    	push   0x450980
41098e:	ff 15 24 10 45 00    	call   *0x451024
410994:	83 c4 34             	add    $0x34,%esp
410997:	85 db                	test   %ebx,%ebx
410999:	0f 88 d6 90 01 00    	js     0x429a75
41099f:	a1 00 f0 44 00       	mov    0x44f000,%eax
4109a4:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
4109a9:	74 0a                	je     0x4109b5
4109ab:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
4109af:	0f 85 d4 90 01 00    	jne    0x429a89
4109b5:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4109b8:	8b c3                	mov    %ebx,%eax
4109ba:	5f                   	pop    %edi
4109bb:	5e                   	pop    %esi
4109bc:	33 cd                	xor    %ebp,%ecx
4109be:	5b                   	pop    %ebx
4109bf:	e8 4c e9 00 00       	call   0x41f310
4109c4:	8b e5                	mov    %ebp,%esp
4109c6:	5d                   	pop    %ebp
4109c7:	c2 10 00             	ret    $0x10
4109ca:	8d 41 20             	lea    0x20(%ecx),%eax
4109cd:	0f b7 c0             	movzwl %ax,%eax
4109d0:	e9 d1 fe ff ff       	jmp    0x4108a6
4109d5:	83 c0 20             	add    $0x20,%eax
4109d8:	0f b7 c0             	movzwl %ax,%eax
4109db:	e9 a5 fe ff ff       	jmp    0x410885
4109e0:	8b 8d b8 fe ff ff    	mov    -0x148(%ebp),%ecx
4109e6:	8b 85 cc fe ff ff    	mov    -0x134(%ebp),%eax
4109ec:	89 8d dc fe ff ff    	mov    %ecx,-0x124(%ebp)
4109f2:	e9 e2 fe ff ff       	jmp    0x4108d9
4109f7:	48                   	dec    %eax
4109f8:	83 f8 0c             	cmp    $0xc,%eax
4109fb:	0f 87 ab 8f 01 00    	ja     0x4299ac
410a01:	0f b6 80 28 0a 41 00 	movzbl 0x410a28(%eax),%eax
410a08:	ff 24 85 10 0a 41 00 	jmp    *0x410a10(,%eax,4)
410a0f:	90                   	nop
410a10:	23 07                	and    (%edi),%eax
410a12:	41                   	inc    %ecx
410a13:	00 9d 97 42 00 22    	add    %bl,0x22004297(%ebp)
410a19:	98                   	cwtl
410a1a:	42                   	inc    %edx
410a1b:	00 cd                	add    %cl,%ch
410a1d:	97                   	xchg   %eax,%edi
410a1e:	42                   	inc    %edx
410a1f:	00 fd                	add    %bh,%ch
410a21:	97                   	xchg   %eax,%edi
410a22:	42                   	inc    %edx
410a23:	00 ac 99 42 00 00 01 	add    %ch,0x1000042(%ecx,%ebx,4)
410a2a:	02 05 00 03 00 00    	add    0x300,%al
410a30:	05 04 00 00 00       	add    $0x4,%eax
410a35:	cc                   	int3
410a36:	cc                   	int3
410a37:	cc                   	int3
410a38:	cc                   	int3
410a39:	cc                   	int3
410a3a:	cc                   	int3
410a3b:	cc                   	int3
410a3c:	cc                   	int3
410a3d:	cc                   	int3
410a3e:	cc                   	int3
410a3f:	cc                   	int3
410a40:	8b ff                	mov    %edi,%edi
410a42:	55                   	push   %ebp
410a43:	8b ec                	mov    %esp,%ebp
410a45:	6a ff                	push   $0xffffffff
410a47:	68 2e 34 42 00       	push   $0x42342e
410a4c:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
410a52:	50                   	push   %eax
410a53:	81 ec cc 00 00 00    	sub    $0xcc,%esp
410a59:	a1 54 02 45 00       	mov    0x450254,%eax
410a5e:	33 c5                	xor    %ebp,%eax
410a60:	89 45 f0             	mov    %eax,-0x10(%ebp)
410a63:	53                   	push   %ebx
410a64:	56                   	push   %esi
410a65:	57                   	push   %edi
410a66:	50                   	push   %eax
410a67:	8d 45 f4             	lea    -0xc(%ebp),%eax
410a6a:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
410a70:	8b f9                	mov    %ecx,%edi
410a72:	89 bd 48 ff ff ff    	mov    %edi,-0xb8(%ebp)
410a78:	8b 45 18             	mov    0x18(%ebp),%eax
410a7b:	8d 95 50 ff ff ff    	lea    -0xb0(%ebp),%edx
410a81:	8b 5d 10             	mov    0x10(%ebp),%ebx
410a84:	8b 4f 20             	mov    0x20(%edi),%ecx
410a87:	8b 75 28             	mov    0x28(%ebp),%esi
410a8a:	89 85 44 ff ff ff    	mov    %eax,-0xbc(%ebp)
410a90:	8b 45 14             	mov    0x14(%ebp),%eax
410a93:	89 85 40 ff ff ff    	mov    %eax,-0xc0(%ebp)
410a99:	8b 45 0c             	mov    0xc(%ebp),%eax
410a9c:	89 85 3c ff ff ff    	mov    %eax,-0xc4(%ebp)
410aa2:	8b 45 1c             	mov    0x1c(%ebp),%eax
410aa5:	89 85 30 ff ff ff    	mov    %eax,-0xd0(%ebp)
410aab:	8b 45 24             	mov    0x24(%ebp),%eax
410aae:	89 9d 34 ff ff ff    	mov    %ebx,-0xcc(%ebp)
410ab4:	89 85 2c ff ff ff    	mov    %eax,-0xd4(%ebp)
410aba:	c7 85 50 ff ff ff 00 	movl   $0x0,-0xb0(%ebp)
410ac1:	00 00 00
410ac4:	e8 f7 f3 ff ff       	call   0x40fec0
410ac9:	85 c0                	test   %eax,%eax
410acb:	0f 88 23 92 01 00    	js     0x429cf4
410ad1:	8d 85 38 ff ff ff    	lea    -0xc8(%ebp),%eax
410ad7:	c7 85 38 ff ff ff 00 	movl   $0x0,-0xc8(%ebp)
410ade:	00 00 00
410ae1:	50                   	push   %eax
410ae2:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
410ae8:	8b d3                	mov    %ebx,%edx
410aea:	8b ce                	mov    %esi,%ecx
410aec:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
410af2:	ff b5 40 ff ff ff    	push   -0xc0(%ebp)
410af8:	e8 b3 fb ff ff       	call   0x4106b0
410afd:	8b d8                	mov    %eax,%ebx
410aff:	85 db                	test   %ebx,%ebx
410b01:	0f 88 3b 01 00 00    	js     0x410c42
410b07:	83 be 80 06 00 00 01 	cmpl   $0x1,0x680(%esi)
410b0e:	0f 84 9a 8f 01 00    	je     0x429aae
410b14:	8b 4f 28             	mov    0x28(%edi),%ecx
410b17:	89 8d 4c ff ff ff    	mov    %ecx,-0xb4(%ebp)
410b1d:	51                   	push   %ecx
410b1e:	8b 01                	mov    (%ecx),%eax
410b20:	8b 78 04             	mov    0x4(%eax),%edi
410b23:	8b cf                	mov    %edi,%ecx
410b25:	ff 15 c4 12 45 00    	call   *0x4512c4
410b2b:	ff d7                	call   *%edi
410b2d:	8b bd 4c ff ff ff    	mov    -0xb4(%ebp),%edi
410b33:	85 db                	test   %ebx,%ebx
410b35:	0f 88 dd 00 00 00    	js     0x410c18
410b3b:	8b 85 38 ff ff ff    	mov    -0xc8(%ebp),%eax
410b41:	89 85 4c ff ff ff    	mov    %eax,-0xb4(%ebp)
410b47:	85 c0                	test   %eax,%eax
410b49:	74 66                	je     0x410bb1
410b4b:	56                   	push   %esi
410b4c:	ff b5 2c ff ff ff    	push   -0xd4(%ebp)
410b52:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
410b58:	68 84 7a 40 00       	push   $0x407a84
410b5d:	ff b5 30 ff ff ff    	push   -0xd0(%ebp)
410b63:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
410b69:	ff b5 40 ff ff ff    	push   -0xc0(%ebp)
410b6f:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
410b75:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
410b7b:	ff 75 08             	push   0x8(%ebp)
410b7e:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
410b84:	50                   	push   %eax
410b85:	57                   	push   %edi
410b86:	e8 35 02 00 00       	call   0x410dc0
410b8b:	8b d8                	mov    %eax,%ebx
410b8d:	a1 00 f0 44 00       	mov    0x44f000,%eax
410b92:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
410b97:	74 0a                	je     0x410ba3
410b99:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
410b9d:	0f 85 7f 8f 01 00    	jne    0x429b22
410ba3:	85 db                	test   %ebx,%ebx
410ba5:	0f 88 c6 8f 01 00    	js     0x429b71
410bab:	8b 85 4c ff ff ff    	mov    -0xb4(%ebp),%eax
410bb1:	56                   	push   %esi
410bb2:	ff b5 2c ff ff ff    	push   -0xd4(%ebp)
410bb8:	83 ec 08             	sub    $0x8,%esp
410bbb:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
410bc1:	ff b5 40 ff ff ff    	push   -0xc0(%ebp)
410bc7:	ff b5 34 ff ff ff    	push   -0xcc(%ebp)
410bcd:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
410bd3:	51                   	push   %ecx
410bd4:	ff b5 50 ff ff ff    	push   -0xb0(%ebp)
410bda:	8b 8d 48 ff ff ff    	mov    -0xb8(%ebp),%ecx
410be0:	50                   	push   %eax
410be1:	57                   	push   %edi
410be2:	e8 19 1e 00 00       	call   0x412a00
410be7:	8b d8                	mov    %eax,%ebx
410be9:	85 db                	test   %ebx,%ebx
410beb:	0f 88 52 8f 01 00    	js     0x429b43
410bf1:	a1 00 f0 44 00       	mov    0x44f000,%eax
410bf6:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
410bfb:	74 1b                	je     0x410c18
410bfd:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
410c01:	0f 85 7e 8f 01 00    	jne    0x429b85
410c07:	3d 00 f0 44 00       	cmp    $0x44f000,%eax
410c0c:	74 0a                	je     0x410c18
410c0e:	f6 40 1c 04          	testb  $0x4,0x1c(%eax)
410c12:	0f 85 97 8f 01 00    	jne    0x429baf
410c18:	8b 07                	mov    (%edi),%eax
410c1a:	57                   	push   %edi
410c1b:	8b 78 08             	mov    0x8(%eax),%edi
410c1e:	8b cf                	mov    %edi,%ecx
410c20:	ff 15 c4 12 45 00    	call   *0x4512c4
410c26:	ff d7                	call   *%edi
410c28:	8b 8d 38 ff ff ff    	mov    -0xc8(%ebp),%ecx
410c2e:	85 c9                	test   %ecx,%ecx
410c30:	74 10                	je     0x410c42
410c32:	8b 01                	mov    (%ecx),%eax
410c34:	51                   	push   %ecx
410c35:	8b 78 08             	mov    0x8(%eax),%edi
410c38:	8b cf                	mov    %edi,%ecx
410c3a:	ff 15 c4 12 45 00    	call   *0x4512c4
410c40:	ff d7                	call   *%edi
410c42:	8b bd 34 ff ff ff    	mov    -0xcc(%ebp),%edi
410c48:	85 ff                	test   %edi,%edi
410c4a:	0f 85 8a 8f 01 00    	jne    0x429bda
410c50:	8b 56 24             	mov    0x24(%esi),%edx
410c53:	85 db                	test   %ebx,%ebx
410c55:	0f 88 ce 8f 01 00    	js     0x429c29
410c5b:	83 fa 01             	cmp    $0x1,%edx
410c5e:	0f 84 8b 8f 01 00    	je     0x429bef
410c64:	c7 85 48 ff ff ff 00 	movl   $0x0,-0xb8(%ebp)
410c6b:	00 00 00
410c6e:	8b 46 20             	mov    0x20(%esi),%eax
410c71:	83 f8 01             	cmp    $0x1,%eax
410c74:	0f 85 86 8f 01 00    	jne    0x429c00
410c7a:	8d 4e 3c             	lea    0x3c(%esi),%ecx
410c7d:	89 8d 3c ff ff ff    	mov    %ecx,-0xc4(%ebp)
410c83:	83 fa 01             	cmp    $0x1,%edx
410c86:	0f 84 83 8f 01 00    	je     0x429c0f
410c8c:	33 d2                	xor    %edx,%edx
410c8e:	83 f8 01             	cmp    $0x1,%eax
410c91:	0f 85 80 8f 01 00    	jne    0x429c17
410c97:	83 c8 ff             	or     $0xffffffff,%eax
410c9a:	85 ff                	test   %edi,%edi
410c9c:	0f 85 7c 8f 01 00    	jne    0x429c1e
410ca2:	33 c9                	xor    %ecx,%ecx
410ca4:	83 be 6c 06 00 00 00 	cmpl   $0x0,0x66c(%esi)
410cab:	75 0a                	jne    0x410cb7
410cad:	c7 85 44 ff ff ff 00 	movl   $0x0,-0xbc(%ebp)
410cb4:	00 00 00
410cb7:	ff 76 1c             	push   0x1c(%esi)
410cba:	8b bd 50 ff ff ff    	mov    -0xb0(%ebp),%edi
410cc0:	ff 76 18             	push   0x18(%esi)
410cc3:	ff b5 48 ff ff ff    	push   -0xb8(%ebp)
410cc9:	ff b5 3c ff ff ff    	push   -0xc4(%ebp)
410ccf:	52                   	push   %edx
410cd0:	50                   	push   %eax
410cd1:	8d 86 4c 04 00 00    	lea    0x44c(%esi),%eax
410cd7:	50                   	push   %eax
410cd8:	ff 76 30             	push   0x30(%esi)
410cdb:	8b 86 68 06 00 00    	mov    0x668(%esi),%eax
410ce1:	51                   	push   %ecx
410ce2:	ff b5 44 ff ff ff    	push   -0xbc(%ebp)
410ce8:	f7 d8                	neg    %eax
410cea:	1b c0                	sbb    %eax,%eax
410cec:	23 85 40 ff ff ff    	and    -0xc0(%ebp),%eax
410cf2:	50                   	push   %eax
410cf3:	ff 76 38             	push   0x38(%esi)
410cf6:	57                   	push   %edi
410cf7:	6a 01                	push   $0x1
410cf9:	ff 35 88 09 45 00    	push   0x450988
410cff:	ff 15 24 10 45 00    	call   *0x451024
410d05:	83 c4 3c             	add    $0x3c,%esp
410d08:	83 7e 38 00          	cmpl   $0x0,0x38(%esi)
410d0c:	74 2b                	je     0x410d39
410d0e:	ff 15 ac 12 45 00    	call   *0x4512ac
410d14:	83 7e 20 01          	cmpl   $0x1,0x20(%esi)
410d18:	0f 85 b5 8f 01 00    	jne    0x429cd3
410d1e:	8d 46 3c             	lea    0x3c(%esi),%eax
410d21:	8b 76 38             	mov    0x38(%esi),%esi
410d24:	50                   	push   %eax
410d25:	ff 15 fc 10 45 00    	call   *0x4510fc
410d2b:	50                   	push   %eax
410d2c:	68 bc 6a 40 00       	push   $0x406abc
410d31:	53                   	push   %ebx
410d32:	56                   	push   %esi
410d33:	ff 15 b0 12 45 00    	call   *0x4512b0