429cbb:	57                   	push   %edi
429cbc:	8d 4d d8             	lea    -0x28(%ebp),%ecx
429cbf:	e8 dc 56 fe ff       	call   0x40f3a0
429cc4:	8d 45 d8             	lea    -0x28(%ebp),%eax
429cc7:	50                   	push   %eax
429cc8:	ff 15 1c a4 44 00    	call   *0x44a41c
429cce:	59                   	pop    %ecx
429ccf:	eb 34                	jmp    0x429d05
429cd1:	8d 4d d8             	lea    -0x28(%ebp),%ecx
429cd4:	be 70 3f 40 00       	mov    $0x403f70,%esi
429cd9:	8b c1                	mov    %ecx,%eax
429cdb:	2b f0                	sub    %eax,%esi
429cdd:	8d 82 ee ff ff 7f    	lea    0x7fffffee(%edx),%eax
429ce3:	85 c0                	test   %eax,%eax
429ce5:	74 13                	je     0x429cfa
429ce7:	0f b7 04 0e          	movzwl (%esi,%ecx,1),%eax
429ceb:	66 85 c0             	test   %ax,%ax
429cee:	74 0a                	je     0x429cfa
429cf0:	66 89 01             	mov    %ax,(%ecx)
429cf3:	03 cb                	add    %ebx,%ecx
429cf5:	83 ea 01             	sub    $0x1,%edx
429cf8:	75 e3                	jne    0x429cdd
429cfa:	85 d2                	test   %edx,%edx
429cfc:	75 02                	jne    0x429d00
429cfe:	2b cb                	sub    %ebx,%ecx
429d00:	33 c0                	xor    %eax,%eax
429d02:	66 89 01             	mov    %ax,(%ecx)
429d05:	8d 4d d8             	lea    -0x28(%ebp),%ecx
429d08:	33 f6                	xor    %esi,%esi
429d0a:	8d 51 02             	lea    0x2(%ecx),%edx
429d0d:	66 8b 01             	mov    (%ecx),%ax
429d10:	03 cb                	add    %ebx,%ecx
429d12:	66 3b c6             	cmp    %si,%ax
429d15:	75 f6                	jne    0x429d0d
429d17:	2b ca                	sub    %edx,%ecx
429d19:	d1 f9                	sar    $1,%ecx
429d1b:	57                   	push   %edi
429d1c:	8d 41 ff             	lea    -0x1(%ecx),%eax
429d1f:	89 45 c8             	mov    %eax,-0x38(%ebp)
429d22:	ff 15 4c a1 44 00    	call   *0x44a14c
429d28:	6a f5                	push   $0xfffffff5
429d2a:	ff 15 bc a1 44 00    	call   *0x44a1bc
429d30:	8b d8                	mov    %eax,%ebx
429d32:	8d 45 c4             	lea    -0x3c(%ebp),%eax
429d35:	50                   	push   %eax
429d36:	53                   	push   %ebx
429d37:	89 5d ac             	mov    %ebx,-0x54(%ebp)
429d3a:	ff 15 10 a0 44 00    	call   *0x44a010
429d40:	85 c0                	test   %eax,%eax
429d42:	74 12                	je     0x429d56
429d44:	8b 45 c4             	mov    -0x3c(%ebp),%eax
429d47:	83 c8 01             	or     $0x1,%eax
429d4a:	c6 45 d7 01          	movb   $0x1,-0x29(%ebp)
429d4e:	50                   	push   %eax
429d4f:	53                   	push   %ebx
429d50:	ff 15 14 a0 44 00    	call   *0x44a014
429d56:	6a f6                	push   $0xfffffff6
429d58:	ff 15 bc a1 44 00    	call   *0x44a1bc
429d5e:	8b f0                	mov    %eax,%esi
429d60:	8d 45 c0             	lea    -0x40(%ebp),%eax
429d63:	50                   	push   %eax
429d64:	56                   	push   %esi
429d65:	89 75 b0             	mov    %esi,-0x50(%ebp)
429d68:	ff 15 10 a0 44 00    	call   *0x44a010
429d6e:	85 c0                	test   %eax,%eax
429d70:	74 2b                	je     0x429d9d
429d72:	8b 4d c0             	mov    -0x40(%ebp),%ecx
429d75:	b7 01                	mov    $0x1,%bh
429d77:	83 c9 07             	or     $0x7,%ecx
429d7a:	51                   	push   %ecx
429d7b:	56                   	push   %esi
429d7c:	ff 15 14 a0 44 00    	call   *0x44a014
429d82:	8b 35 b4 25 43 00    	mov    0x4325b4,%esi
429d88:	85 f6                	test   %esi,%esi
429d8a:	74 14                	je     0x429da0
429d8c:	68 78 3f 40 00       	push   $0x403f78
429d91:	8b ce                	mov    %esi,%ecx
429d93:	ff 15 c4 a4 44 00    	call   *0x44a4c4
429d99:	ff d6                	call   *%esi
429d9b:	eb 03                	jmp    0x429da0
429d9d:	8a 7d d6             	mov    -0x2a(%ebp),%bh
429da0:	8b 75 bc             	mov    -0x44(%ebp),%esi
429da3:	33 c0                	xor    %eax,%eax
429da5:	b3 01                	mov    $0x1,%bl
429da7:	66 89 45 d0          	mov    %ax,-0x30(%ebp)
429dab:	8b 45 b8             	mov    -0x48(%ebp),%eax
429dae:	6a 0a                	push   $0xa
429db0:	5f                   	pop    %edi
429db1:	85 c0                	test   %eax,%eax
429db3:	74 0e                	je     0x429dc3
429db5:	50                   	push   %eax
429db6:	6a 01                	push   $0x1
429db8:	56                   	push   %esi
429db9:	e8 ff c5 fd ff       	call   0x4063bd
429dbe:	83 c4 0c             	add    $0xc,%esp
429dc1:	eb 0b                	jmp    0x429dce
429dc3:	33 c0                	xor    %eax,%eax
429dc5:	50                   	push   %eax
429dc6:	56                   	push   %esi
429dc7:	e8 f1 c5 fd ff       	call   0x4063bd
429dcc:	59                   	pop    %ecx
429dcd:	59                   	pop    %ecx
429dce:	33 c9                	xor    %ecx,%ecx
429dd0:	e8 c3 3f fe ff       	call   0x40dd98
429dd5:	85 c0                	test   %eax,%eax
429dd7:	74 70                	je     0x429e49
429dd9:	6a f6                	push   $0xfffffff6
429ddb:	ff 15 bc a1 44 00    	call   *0x44a1bc
429de1:	50                   	push   %eax
429de2:	ff 15 30 a0 44 00    	call   *0x44a030
429de8:	eb 5f                	jmp    0x429e49
429dea:	8d 45 b4             	lea    -0x4c(%ebp),%eax
429ded:	50                   	push   %eax
429dee:	6a 01                	push   $0x1
429df0:	6a f6                	push   $0xfffffff6
429df2:	ff 15 bc a1 44 00    	call   *0x44a1bc
429df8:	8d 55 d0             	lea    -0x30(%ebp),%edx
429dfb:	8b c8                	mov    %eax,%ecx
429dfd:	e8 97 a9 ff ff       	call   0x424799
429e02:	85 c0                	test   %eax,%eax
429e04:	74 4b                	je     0x429e51
429e06:	83 7d b4 01          	cmpl   $0x1,-0x4c(%ebp)
429e0a:	75 45                	jne    0x429e51
429e0c:	84 db                	test   %bl,%bl
429e0e:	74 10                	je     0x429e20
429e10:	ff 75 d0             	push   -0x30(%ebp)
429e13:	ff 15 18 a4 44 00    	call   *0x44a418
429e19:	0f b7 c0             	movzwl %ax,%eax
429e1c:	59                   	pop    %ecx
429e1d:	89 45 cc             	mov    %eax,-0x34(%ebp)
429e20:	33 c0                	xor    %eax,%eax
429e22:	33 c9                	xor    %ecx,%ecx
429e24:	8a d8                	mov    %al,%bl
429e26:	e8 6d 3f fe ff       	call   0x40dd98
429e2b:	85 c0                	test   %eax,%eax
429e2d:	74 09                	je     0x429e38
429e2f:	f6 05 1c 67 43 00 01 	testb  $0x1,0x43671c
429e36:	75 11                	jne    0x429e49
429e38:	0f b7 45 d0          	movzwl -0x30(%ebp),%eax
429e3c:	50                   	push   %eax
429e3d:	68 64 3b 40 00       	push   $0x403b64
429e42:	e8 09 fb fd ff       	call   0x409950
429e47:	59                   	pop    %ecx
429e48:	59                   	pop    %ecx
429e49:	66 39 7d d0          	cmp    %di,-0x30(%ebp)
429e4d:	75 9b                	jne    0x429dea
429e4f:	eb 12                	jmp    0x429e63
429e51:	0f b7 45 d8          	movzwl -0x28(%ebp),%eax
429e55:	68 8c 1f 40 00       	push   $0x401f8c
429e5a:	89 45 cc             	mov    %eax,-0x34(%ebp)
429e5d:	e8 ee fa fd ff       	call   0x409950
429e62:	59                   	pop    %ecx
429e63:	ff 75 cc             	push   -0x34(%ebp)
429e66:	8d 45 d8             	lea    -0x28(%ebp),%eax
429e69:	50                   	push   %eax
429e6a:	ff 15 b0 a3 44 00    	call   *0x44a3b0
429e70:	8b f8                	mov    %eax,%edi
429e72:	59                   	pop    %ecx
429e73:	59                   	pop    %ecx
429e74:	85 ff                	test   %edi,%edi
429e76:	0f 84 27 ff ff ff    	je     0x429da3
429e7c:	8d 45 d8             	lea    -0x28(%ebp),%eax
429e7f:	2b f8                	sub    %eax,%edi
429e81:	d1 ff                	sar    $1,%edi
429e83:	3b 7d c8             	cmp    -0x38(%ebp),%edi
429e86:	0f 87 17 ff ff ff    	ja     0x429da3
429e8c:	80 7d d7 00          	cmpb   $0x0,-0x29(%ebp)
429e90:	8b 75 b0             	mov    -0x50(%ebp),%esi
429e93:	74 0c                	je     0x429ea1
429e95:	ff 75 c4             	push   -0x3c(%ebp)
429e98:	ff 75 ac             	push   -0x54(%ebp)
429e9b:	ff 15 14 a0 44 00    	call   *0x44a014
429ea1:	84 ff                	test   %bh,%bh
429ea3:	74 23                	je     0x429ec8
429ea5:	ff 75 c0             	push   -0x40(%ebp)
429ea8:	56                   	push   %esi
429ea9:	ff 15 14 a0 44 00    	call   *0x44a014
429eaf:	8b 35 b4 25 43 00    	mov    0x4325b4,%esi
429eb5:	85 f6                	test   %esi,%esi
429eb7:	74 0f                	je     0x429ec8
429eb9:	68 3c 23 40 00       	push   $0x40233c
429ebe:	8b ce                	mov    %esi,%ecx
429ec0:	ff 15 c4 a4 44 00    	call   *0x44a4c4
429ec6:	ff d6                	call   *%esi
429ec8:	8b c7                	mov    %edi,%eax
429eca:	8b 4d f8             	mov    -0x8(%ebp),%ecx
429ecd:	5f                   	pop    %edi
429ece:	5e                   	pop    %esi
429ecf:	33 cd                	xor    %ebp,%ecx
429ed1:	5b                   	pop    %ebx
429ed2:	e8 59 cc fe ff       	call   0x416b30
429ed7:	c9                   	leave
429ed8:	c2 04 00             	ret    $0x4
429edb:	8b 15 00 e1 42 00    	mov    0x42e100,%edx
429ee1:	33 c0                	xor    %eax,%eax
429ee3:	eb 10                	jmp    0x429ef5
429ee5:	39 15 a8 67 43 00    	cmp    %edx,0x4367a8
429eeb:	74 0e                	je     0x429efb
429eed:	8b 14 c5 08 e1 42 00 	mov    0x42e108(,%eax,8),%edx
429ef4:	40                   	inc    %eax
429ef5:	85 d2                	test   %edx,%edx
429ef7:	75 ec                	jne    0x429ee5
429ef9:	eb 0e                	jmp    0x429f09
429efb:	8b 04 c5 04 e1 42 00 	mov    0x42e104(,%eax,8),%eax
429f02:	83 f8 ff             	cmp    $0xffffffff,%eax
429f05:	74 02                	je     0x429f09
429f07:	8b c8                	mov    %eax,%ecx
429f09:	85 c9                	test   %ecx,%ecx
429f0b:	74 0a                	je     0x429f17
429f0d:	6a 00                	push   $0x0
429f0f:	51                   	push   %ecx
429f10:	e8 cf d9 fd ff       	call   0x4078e4
429f15:	59                   	pop    %ecx
429f16:	59                   	pop    %ecx
429f17:	c3                   	ret
429f18:	8b ff                	mov    %edi,%edi
429f1a:	55                   	push   %ebp
429f1b:	8b ec                	mov    %esp,%ebp
429f1d:	51                   	push   %ecx
429f1e:	8d 45 fc             	lea    -0x4(%ebp),%eax
429f21:	50                   	push   %eax
429f22:	6a 01                	push   $0x1
429f24:	ff 15 2c a4 44 00    	call   *0x44a42c
429f2a:	59                   	pop    %ecx
429f2b:	50                   	push   %eax
429f2c:	ff 15 10 a0 44 00    	call   *0x44a010
429f32:	85 c0                	test   %eax,%eax
429f34:	74 1a                	je     0x429f50
429f36:	8b 45 fc             	mov    -0x4(%ebp),%eax
429f39:	83 e0 fb             	and    $0xfffffffb,%eax
429f3c:	50                   	push   %eax
429f3d:	6a 01                	push   $0x1
429f3f:	89 45 fc             	mov    %eax,-0x4(%ebp)
429f42:	ff 15 2c a4 44 00    	call   *0x44a42c
429f48:	59                   	pop    %ecx
429f49:	50                   	push   %eax
429f4a:	ff 15 14 a0 44 00    	call   *0x44a014
429f50:	c9                   	leave
429f51:	c3                   	ret
429f52:	cc                   	int3
429f53:	cc                   	int3
429f54:	cc                   	int3
429f55:	cc                   	int3
429f56:	cc                   	int3
429f57:	cc                   	int3
429f58:	cc                   	int3
429f59:	cc                   	int3
429f5a:	cc                   	int3
429f5b:	cc                   	int3
429f5c:	cc                   	int3
429f5d:	cc                   	int3
429f5e:	cc                   	int3
429f5f:	cc                   	int3
429f60:	8b ff                	mov    %edi,%edi
429f62:	55                   	push   %ebp
429f63:	8b ec                	mov    %esp,%ebp
429f65:	83 ec 0c             	sub    $0xc,%esp
429f68:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
429f6d:	33 c5                	xor    %ebp,%eax
429f6f:	89 45 fc             	mov    %eax,-0x4(%ebp)
429f72:	a1 00 95 44 00       	mov    0x449500,%eax
429f77:	c7 45 f4 2f 00 00 00 	movl   $0x2f,-0xc(%ebp)
429f7e:	c7 45 f8 3f 00 00 00 	movl   $0x3f,-0x8(%ebp)
429f85:	3d 96 23 00 00       	cmp    $0x2396,%eax
429f8a:	75 06                	jne    0x429f92
429f8c:	6a 01                	push   $0x1
429f8e:	6a 2b                	push   $0x2b
429f90:	eb 18                	jmp    0x429faa
429f92:	3d 95 23 00 00       	cmp    $0x2395,%eax
429f97:	75 06                	jne    0x429f9f
429f99:	6a 01                	push   $0x1
429f9b:	6a 2c                	push   $0x2c
429f9d:	eb 0b                	jmp    0x429faa
429f9f:	3d 90 23 00 00       	cmp    $0x2390,%eax
429fa4:	75 0f                	jne    0x429fb5
429fa6:	6a 01                	push   $0x1
429fa8:	6a 2d                	push   $0x2d
429faa:	8d 55 f4             	lea    -0xc(%ebp),%edx
429fad:	59                   	pop    %ecx
429fae:	e8 4d 08 fe ff       	call   0x40a800
429fb3:	eb 0a                	jmp    0x429fbf
429fb5:	6a 00                	push   $0x0
429fb7:	50                   	push   %eax
429fb8:	e8 00 c4 fd ff       	call   0x4063bd
429fbd:	59                   	pop    %ecx
429fbe:	59                   	pop    %ecx
429fbf:	8b 4d fc             	mov    -0x4(%ebp),%ecx
429fc2:	33 c0                	xor    %eax,%eax
429fc4:	33 cd                	xor    %ebp,%ecx
429fc6:	e8 65 cb fe ff       	call   0x416b30
429fcb:	c9                   	leave
429fcc:	c2 04 00             	ret    $0x4
429fcf:	8b ff                	mov    %edi,%edi
429fd1:	51                   	push   %ecx
429fd2:	ff 15 2c a4 44 00    	call   *0x44a42c
429fd8:	59                   	pop    %ecx
429fd9:	50                   	push   %eax
429fda:	ff 15 d0 a0 44 00    	call   *0x44a0d0
429fe0:	83 25 1c 67 43 00 00 	andl   $0x0,0x43671c
429fe7:	8b c8                	mov    %eax,%ecx
429fe9:	81 e1 ff 7f ff ff    	and    $0xffff7fff,%ecx
429fef:	33 c0                	xor    %eax,%eax
429ff1:	83 f9 03             	cmp    $0x3,%ecx
429ff4:	0f 94 c0             	sete   %al
429ff7:	c3                   	ret
429ff8:	8b ff                	mov    %edi,%edi
429ffa:	55                   	push   %ebp
429ffb:	8b ec                	mov    %esp,%ebp
429ffd:	81 ec 24 02 00 00    	sub    $0x224,%esp
42a003:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
42a008:	33 c5                	xor    %ebp,%eax
42a00a:	89 45 fc             	mov    %eax,-0x4(%ebp)
42a00d:	53                   	push   %ebx
42a00e:	56                   	push   %esi
42a00f:	57                   	push   %edi
42a010:	b8 04 01 00 00       	mov    $0x104,%eax
42a015:	33 ff                	xor    %edi,%edi
42a017:	50                   	push   %eax
42a018:	89 45 f0             	mov    %eax,-0x10(%ebp)
42a01b:	33 db                	xor    %ebx,%ebx
42a01d:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
42a023:	89 bd dc fd ff ff    	mov    %edi,-0x224(%ebp)
42a029:	57                   	push   %edi
42a02a:	43                   	inc    %ebx
42a02b:	89 7d e8             	mov    %edi,-0x18(%ebp)
42a02e:	50                   	push   %eax
42a02f:	8b f1                	mov    %ecx,%esi
42a031:	88 5d ec             	mov    %bl,-0x14(%ebp)
42a034:	e8 84 df fe ff       	call   0x417fbd
42a039:	33 c0                	xor    %eax,%eax
42a03b:	8d 8d e0 fd ff ff    	lea    -0x220(%ebp),%ecx
42a041:	83 c4 0c             	add    $0xc,%esp
42a044:	38 45 ec             	cmp    %al,-0x14(%ebp)
42a047:	0f 94 c0             	sete   %al
42a04a:	48                   	dec    %eax
42a04b:	25 c6 fd 00 00       	and    $0xfdc6,%eax
42a050:	05 08 02 00 00       	add    $0x208,%eax
42a055:	50                   	push   %eax
42a056:	e8 95 43 fe ff       	call   0x40e3f0
42a05b:	85 c0                	test   %eax,%eax
42a05d:	78 56                	js     0x42a0b5
42a05f:	8b 45 e8             	mov    -0x18(%ebp),%eax
42a062:	85 c0                	test   %eax,%eax
42a064:	75 06                	jne    0x42a06c
42a066:	8d 85 e0 fd ff ff    	lea    -0x220(%ebp),%eax
42a06c:	8d 8d dc fd ff ff    	lea    -0x224(%ebp),%ecx
42a072:	51                   	push   %ecx
42a073:	50                   	push   %eax
42a074:	ff 75 f0             	push   -0x10(%ebp)
42a077:	56                   	push   %esi