410a43:	89 5d e8             	mov    %ebx,-0x18(%ebp)
410a46:	8d 7d ec             	lea    -0x14(%ebp),%edi
410a49:	ab                   	stos   %eax,%es:(%edi)
410a4a:	8d 4d ec             	lea    -0x14(%ebp),%ecx
410a4d:	ab                   	stos   %eax,%es:(%edi)
410a4e:	ab                   	stos   %eax,%es:(%edi)
410a4f:	ab                   	stos   %eax,%es:(%edi)
410a50:	e8 75 7d ff ff       	call   0x4087ca
410a55:	83 7d e0 01          	cmpl   $0x1,-0x20(%ebp)
410a59:	0f 84 96 df 00 00    	je     0x41e9f5
410a5f:	bf ff 00 00 00       	mov    $0xff,%edi
410a64:	85 c0                	test   %eax,%eax
410a66:	0f 84 ec df 00 00    	je     0x41ea58
410a6c:	53                   	push   %ebx
410a6d:	68 30 0a 44 00       	push   $0x440a30
410a72:	e8 3a 75 00 00       	call   0x417fb1
410a77:	59                   	pop    %ecx
410a78:	59                   	pop    %ecx
410a79:	8b 0d 58 67 43 00    	mov    0x436758,%ecx
410a7f:	85 c0                	test   %eax,%eax
410a81:	0f 85 95 df 00 00    	jne    0x41ea1c
410a87:	8b 45 d8             	mov    -0x28(%ebp),%eax
410a8a:	85 c0                	test   %eax,%eax
410a8c:	75 37                	jne    0x410ac5
410a8e:	8b f3                	mov    %ebx,%esi
410a90:	8b 54 b5 ec          	mov    -0x14(%ebp,%esi,4),%edx
410a94:	85 d2                	test   %edx,%edx
410a96:	75 48                	jne    0x410ae0
410a98:	46                   	inc    %esi
410a99:	83 fe 03             	cmp    $0x3,%esi
410a9c:	7c f2                	jl     0x410a90
410a9e:	e8 6d d8 ff ff       	call   0x40e310
410aa3:	ff 15 1c a0 44 00    	call   *0x44a01c
410aa9:	68 f0 c9 43 00       	push   $0x43c9f0
410aae:	50                   	push   %eax
410aaf:	a3 a0 25 43 00       	mov    %eax,0x4325a0
410ab4:	ff 15 9c a1 44 00    	call   *0x44a19c
410aba:	e8 f0 d7 ff ff       	call   0x40e2af
410abf:	8b 0d 58 67 43 00    	mov    0x436758,%ecx
410ac5:	85 c9                	test   %ecx,%ecx
410ac7:	0f 84 85 df 00 00    	je     0x41ea52
410acd:	53                   	push   %ebx
410ace:	e8 9d 13 00 00       	call   0x411e70
410ad3:	85 c0                	test   %eax,%eax
410ad5:	74 f6                	je     0x410acd
410ad7:	ff 75 e8             	push   -0x18(%ebp)
410ada:	ff 15 a4 a3 44 00    	call   *0x44a3a4
410ae0:	ff 35 78 67 43 00    	push   0x436778
410ae6:	33 c9                	xor    %ecx,%ecx
410ae8:	41                   	inc    %ecx
410ae9:	e8 82 ba ff ff       	call   0x40c570
410aee:	83 f8 01             	cmp    $0x1,%eax
410af1:	0f 84 4a df 00 00    	je     0x41ea41
410af7:	83 f8 ff             	cmp    $0xffffffff,%eax
410afa:	0f 84 32 df 00 00    	je     0x41ea32
410b00:	8b d0                	mov    %eax,%edx
410b02:	33 c9                	xor    %ecx,%ecx
410b04:	e8 67 d9 ff ff       	call   0x40e470
410b09:	85 c0                	test   %eax,%eax
410b0b:	74 8b                	je     0x410a98
410b0d:	89 45 e8             	mov    %eax,-0x18(%ebp)
410b10:	eb 86                	jmp    0x410a98
410b12:	8b ff                	mov    %edi,%edi
410b14:	55                   	push   %ebp
410b15:	8b ec                	mov    %esp,%ebp
410b17:	83 ec 0c             	sub    $0xc,%esp
410b1a:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
410b1f:	33 c5                	xor    %ebp,%eax
410b21:	89 45 fc             	mov    %eax,-0x4(%ebp)
410b24:	6a 3a                	push   $0x3a
410b26:	58                   	pop    %eax
410b27:	66 89 45 f6          	mov    %ax,-0xa(%ebp)
410b2b:	6a 5c                	push   $0x5c
410b2d:	58                   	pop    %eax
410b2e:	66 89 45 f8          	mov    %ax,-0x8(%ebp)
410b32:	33 c0                	xor    %eax,%eax
410b34:	66 89 45 fa          	mov    %ax,-0x6(%ebp)
410b38:	8d 45 f4             	lea    -0xc(%ebp),%eax
410b3b:	50                   	push   %eax
410b3c:	66 89 4d f4          	mov    %cx,-0xc(%ebp)
410b40:	ff 15 f4 a0 44 00    	call   *0x44a0f4
410b46:	33 c9                	xor    %ecx,%ecx
410b48:	41                   	inc    %ecx
410b49:	3b c8                	cmp    %eax,%ecx
410b4b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
410b4e:	1b c0                	sbb    %eax,%eax
410b50:	33 cd                	xor    %ebp,%ecx
410b52:	f7 d8                	neg    %eax
410b54:	e8 d7 5f 00 00       	call   0x416b30
410b59:	c9                   	leave
410b5a:	c3                   	ret
410b5b:	cc                   	int3
410b5c:	cc                   	int3
410b5d:	cc                   	int3
410b5e:	cc                   	int3
410b5f:	cc                   	int3
410b60:	8b ff                	mov    %edi,%edi
410b62:	56                   	push   %esi
410b63:	57                   	push   %edi
410b64:	33 ff                	xor    %edi,%edi
410b66:	8b f1                	mov    %ecx,%esi
410b68:	33 c0                	xor    %eax,%eax
410b6a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
410b70:	0f b7 0c 46          	movzwl (%esi,%eax,2),%ecx
410b74:	83 f9 22             	cmp    $0x22,%ecx
410b77:	74 37                	je     0x410bb0
410b79:	66 83 3c 46 3b       	cmpw   $0x3b,(%esi,%eax,2)
410b7e:	8d 0c 46             	lea    (%esi,%eax,2),%ecx
410b81:	74 1d                	je     0x410ba0
410b83:	66 8b 0c 46          	mov    (%esi,%eax,2),%cx
410b87:	8d 14 46             	lea    (%esi,%eax,2),%edx
410b8a:	66 89 0c 7e          	mov    %cx,(%esi,%edi,2)
410b8e:	40                   	inc    %eax
410b8f:	47                   	inc    %edi
410b90:	66 83 3a 00          	cmpw   $0x0,(%edx)
410b94:	75 da                	jne    0x410b70
410b96:	5f                   	pop    %edi
410b97:	5e                   	pop    %esi
410b98:	c3                   	ret
410b99:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
410ba0:	66 83 79 02 3b       	cmpw   $0x3b,0x2(%ecx)
410ba5:	75 dc                	jne    0x410b83
410ba7:	e9 f1 df 00 00       	jmp    0x41eb9d
410bac:	8d 64 24 00          	lea    0x0(%esp),%esp
410bb0:	66 83 f9 22          	cmp    $0x22,%cx
410bb4:	74 c3                	je     0x410b79
410bb6:	e9 ca df 00 00       	jmp    0x41eb85
410bbb:	8b ff                	mov    %edi,%edi
410bbd:	56                   	push   %esi
410bbe:	8b f1                	mov    %ecx,%esi
410bc0:	e8 95 a8 ff ff       	call   0x40b45a
410bc5:	85 c0                	test   %eax,%eax
410bc7:	75 17                	jne    0x410be0
410bc9:	83 3d c0 e0 42 00 01 	cmpl   $0x1,0x42e0c0
410bd0:	0f 84 db df 00 00    	je     0x41ebb1
410bd6:	8b d6                	mov    %esi,%edx
410bd8:	33 c9                	xor    %ecx,%ecx
410bda:	5e                   	pop    %esi
410bdb:	e9 90 d8 ff ff       	jmp    0x40e470
410be0:	33 c0                	xor    %eax,%eax
410be2:	40                   	inc    %eax
410be3:	5e                   	pop    %esi
410be4:	c3                   	ret
410be5:	cc                   	int3
410be6:	cc                   	int3
410be7:	cc                   	int3
410be8:	cc                   	int3
410be9:	cc                   	int3
410bea:	cc                   	int3
410beb:	cc                   	int3
410bec:	cc                   	int3
410bed:	cc                   	int3
410bee:	cc                   	int3
410bef:	cc                   	int3
410bf0:	8b ff                	mov    %edi,%edi
410bf2:	55                   	push   %ebp
410bf3:	8b ec                	mov    %esp,%ebp
410bf5:	83 ec 60             	sub    $0x60,%esp
410bf8:	53                   	push   %ebx
410bf9:	56                   	push   %esi
410bfa:	8b f1                	mov    %ecx,%esi
410bfc:	89 55 ec             	mov    %edx,-0x14(%ebp)
410bff:	57                   	push   %edi
410c00:	b9 78 24 40 00       	mov    $0x402478,%ecx
410c05:	89 75 e8             	mov    %esi,-0x18(%ebp)
410c08:	c7 45 b0 01 00 00 00 	movl   $0x1,-0x50(%ebp)
410c0f:	c7 45 a8 01 00 00 00 	movl   $0x1,-0x58(%ebp)
410c16:	c7 45 bc 3b 00 00 00 	movl   $0x3b,-0x44(%ebp)
410c1d:	e8 29 f9 ff ff       	call   0x41054b
410c22:	8b 4e 4c             	mov    0x4c(%esi),%ecx
410c25:	bb 01 00 00 00       	mov    $0x1,%ebx
410c2a:	89 45 dc             	mov    %eax,-0x24(%ebp)
410c2d:	33 ff                	xor    %edi,%edi
410c2f:	33 c0                	xor    %eax,%eax
410c31:	c7 45 c0 00 00 00 00 	movl   $0x0,-0x40(%ebp)
410c38:	89 5d f4             	mov    %ebx,-0xc(%ebp)
410c3b:	89 5d d8             	mov    %ebx,-0x28(%ebp)
410c3e:	89 45 b8             	mov    %eax,-0x48(%ebp)
410c41:	89 7d f0             	mov    %edi,-0x10(%ebp)
410c44:	85 c9                	test   %ecx,%ecx
410c46:	0f 84 98 01 00 00    	je     0x410de4
410c4c:	89 4d fc             	mov    %ecx,-0x4(%ebp)
410c4f:	0f b7 01             	movzwl (%ecx),%eax
410c52:	83 f8 22             	cmp    $0x22,%eax
410c55:	0f 85 8a df 00 00    	jne    0x41ebe5
410c5b:	83 c1 02             	add    $0x2,%ecx
410c5e:	8b f0                	mov    %eax,%esi
410c60:	89 4d fc             	mov    %ecx,-0x4(%ebp)
410c63:	8b c1                	mov    %ecx,%eax
410c65:	89 75 e4             	mov    %esi,-0x1c(%ebp)
410c68:	85 c0                	test   %eax,%eax
410c6a:	0f 84 71 01 00 00    	je     0x410de1
410c70:	0f b7 11             	movzwl (%ecx),%edx
410c73:	66 85 d2             	test   %dx,%dx
410c76:	0f 84 ce 00 00 00    	je     0x410d4a
410c7c:	8d 64 24 00          	lea    0x0(%esp),%esp
410c80:	66 83 fa 20          	cmp    $0x20,%dx
410c84:	0f 86 78 05 00 00    	jbe    0x411202
410c8a:	66 39 31             	cmp    %si,(%ecx)
410c8d:	0f 84 b7 00 00 00    	je     0x410d4a
410c93:	6a 08                	push   $0x8
410c95:	68 38 24 40 00       	push   $0x402438
410c9a:	51                   	push   %ecx
410c9b:	ff 15 28 a4 44 00    	call   *0x44a428
410ca1:	83 c4 0c             	add    $0xc,%esp
410ca4:	85 c0                	test   %eax,%eax
410ca6:	0f 84 73 08 00 00    	je     0x41151f
410cac:	6a 07                	push   $0x7
410cae:	68 58 24 40 00       	push   $0x402458
410cb3:	ff 75 fc             	push   -0x4(%ebp)
410cb6:	ff 15 28 a4 44 00    	call   *0x44a428
410cbc:	83 c4 0c             	add    $0xc,%esp
410cbf:	85 c0                	test   %eax,%eax
410cc1:	0f 84 2e df 00 00    	je     0x41ebf5
410cc7:	6a 04                	push   $0x4
410cc9:	68 4c 24 40 00       	push   $0x40244c
410cce:	ff 75 fc             	push   -0x4(%ebp)
410cd1:	ff 15 28 a4 44 00    	call   *0x44a428
410cd7:	83 c4 0c             	add    $0xc,%esp
410cda:	85 c0                	test   %eax,%eax
410cdc:	0f 84 20 08 00 00    	je     0x411502
410ce2:	6a 07                	push   $0x7
410ce4:	68 68 24 40 00       	push   $0x402468
410ce9:	ff 75 fc             	push   -0x4(%ebp)
410cec:	ff 15 28 a4 44 00    	call   *0x44a428
410cf2:	83 c4 0c             	add    $0xc,%esp
410cf5:	85 c0                	test   %eax,%eax
410cf7:	0f 85 34 04 00 00    	jne    0x411131
410cfd:	8b 5d fc             	mov    -0x4(%ebp),%ebx
410d00:	83 c3 0e             	add    $0xe,%ebx
410d03:	8b cb                	mov    %ebx,%ecx
410d05:	89 5d ac             	mov    %ebx,-0x54(%ebp)
410d08:	89 4d fc             	mov    %ecx,-0x4(%ebp)
410d0b:	0f b7 01             	movzwl (%ecx),%eax
410d0e:	66 85 c0             	test   %ax,%ax
410d11:	0f 84 d8 03 00 00    	je     0x4110ef
410d17:	8b f3                	mov    %ebx,%esi
410d19:	8b d0                	mov    %eax,%edx
410d1b:	8b 5d e4             	mov    -0x1c(%ebp),%ebx
410d1e:	8b ff                	mov    %edi,%edi
410d20:	66 3b d3             	cmp    %bx,%dx
410d23:	0f 84 c3 03 00 00    	je     0x4110ec
410d29:	66 83 fa 20          	cmp    $0x20,%dx
410d2d:	0f 84 af 03 00 00    	je     0x4110e2
410d33:	8d 4e 02             	lea    0x2(%esi),%ecx
410d36:	89 4d fc             	mov    %ecx,-0x4(%ebp)
410d39:	8b f1                	mov    %ecx,%esi
410d3b:	0f b7 01             	movzwl (%ecx),%eax
410d3e:	8b d0                	mov    %eax,%edx
410d40:	66 85 c0             	test   %ax,%ax
410d43:	75 db                	jne    0x410d20
410d45:	e9 a2 03 00 00       	jmp    0x4110ec
410d4a:	83 fb 01             	cmp    $0x1,%ebx
410d4d:	0f 8e 8e 00 00 00    	jle    0x410de1
410d53:	8b 75 ec             	mov    -0x14(%ebp),%esi
410d56:	8b 0d 40 67 43 00    	mov    0x436740,%ecx
410d5c:	03 f3                	add    %ebx,%esi
410d5e:	8d 14 75 02 00 00 00 	lea    0x2(,%esi,2),%edx
410d65:	e8 b6 cf ff ff       	call   0x40dd20
410d6a:	8b 0d 3c 67 43 00    	mov    0x43673c,%ecx
410d70:	8d 14 b5 04 00 00 00 	lea    0x4(,%esi,4),%edx
410d77:	a3 40 67 43 00       	mov    %eax,0x436740
410d7c:	e8 9f cf ff ff       	call   0x40dd20
410d81:	8b d0                	mov    %eax,%edx
410d83:	a1 40 67 43 00       	mov    0x436740,%eax
410d88:	89 15 3c 67 43 00    	mov    %edx,0x43673c
410d8e:	85 c0                	test   %eax,%eax
410d90:	0f 84 91 de 00 00    	je     0x41ec27
410d96:	85 d2                	test   %edx,%edx
410d98:	0f 84 89 de 00 00    	je     0x41ec27
410d9e:	8b 75 ec             	mov    -0x14(%ebp),%esi
410da1:	b9 01 00 00 00       	mov    $0x1,%ecx
410da6:	8b 7d e8             	mov    -0x18(%ebp),%edi
410da9:	8d 14 b2             	lea    (%edx,%esi,4),%edx
410dac:	83 c2 04             	add    $0x4,%edx
410daf:	46                   	inc    %esi
410db0:	8d 34 70             	lea    (%eax,%esi,2),%esi
410db3:	66 8b 47 44          	mov    0x44(%edi),%ax
410db7:	8d 76 02             	lea    0x2(%esi),%esi
410dba:	66 03 c1             	add    %cx,%ax
410dbd:	8d 52 04             	lea    0x4(%edx),%edx
410dc0:	66 89 46 fe          	mov    %ax,-0x2(%esi)
410dc4:	41                   	inc    %ecx
410dc5:	c7 42 fc 00 00 00 00 	movl   $0x0,-0x4(%edx)
410dcc:	3b cb                	cmp    %ebx,%ecx
410dce:	7c e3                	jl     0x410db3
410dd0:	03 4d ec             	add    -0x14(%ebp),%ecx
410dd3:	33 d2                	xor    %edx,%edx
410dd5:	a1 40 67 43 00       	mov    0x436740,%eax
410dda:	8b 7d f0             	mov    -0x10(%ebp),%edi
410ddd:	66 89 14 48          	mov    %dx,(%eax,%ecx,2)
410de1:	8b 75 e8             	mov    -0x18(%ebp),%esi
410de4:	8b 76 3c             	mov    0x3c(%esi),%esi
410de7:	8b c7                	mov    %edi,%eax
410de9:	f7 d8                	neg    %eax
410deb:	89 75 f8             	mov    %esi,-0x8(%ebp)
410dee:	1b c0                	sbb    %eax,%eax
410df0:	83 e0 05             	and    $0x5,%eax
410df3:	83 c0 22             	add    $0x22,%eax
410df6:	f7 df                	neg    %edi
410df8:	0f b7 d8             	movzwl %ax,%ebx
410dfb:	1b ff                	sbb    %edi,%edi
410dfd:	89 5d a4             	mov    %ebx,-0x5c(%ebp)
410e00:	83 e7 39             	and    $0x39,%edi
410e03:	83 c7 27             	add    $0x27,%edi
410e06:	0f b7 ff             	movzwl %di,%edi
410e09:	89 7d a0             	mov    %edi,-0x60(%ebp)
410e0c:	85 f6                	test   %esi,%esi
410e0e:	0f 84 01 06 00 00    	je     0x411415
410e14:	0f b7 06             	movzwl (%esi),%eax
410e17:	8b d0                	mov    %eax,%edx
410e19:	66 3b c7             	cmp    %di,%ax
410e1c:	74 09                	je     0x410e27
410e1e:	66 3b c3             	cmp    %bx,%ax
410e21:	0f 85 ee 05 00 00    	jne    0x411415
410e27:	c7 45 b4 00 00 00 00 	movl   $0x0,-0x4c(%ebp)
410e2e:	66 85 d2             	test   %dx,%dx
410e31:	0f 84 77 02 00 00    	je     0x4110ae
410e37:	eb 07                	jmp    0x410e40
410e39:	8d a4 24 00 00 00 00 	lea    0x0(%esp),%esp
410e40:	80 3d 44 67 43 00 00 	cmpb   $0x0,0x436744
410e47:	0f 85 61 02 00 00    	jne    0x4110ae
410e4d:	83 3d 38 67 43 00 00 	cmpl   $0x0,0x436738
410e54:	0f 85 ee dd 00 00    	jne    0x41ec48
410e5a:	83 3d 9c 25 43 00 00 	cmpl   $0x0,0x43259c
410e61:	0f 85 04 de 00 00    	jne    0x41ec6b
410e67:	8b 45 c0             	mov    -0x40(%ebp),%eax
410e6a:	8b d6                	mov    %esi,%edx
410e6c:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
410e73:	c7 45 e4 00 00 00 00 	movl   $0x0,-0x1c(%ebp)
410e7a:	89 45 ac             	mov    %eax,-0x54(%ebp)
410e7d:	8d 4a 02             	lea    0x2(%edx),%ecx
410e80:	66 8b 02             	mov    (%edx),%ax
410e83:	83 c2 02             	add    $0x2,%edx
410e86:	66 85 c0             	test   %ax,%ax
410e89:	75 f5                	jne    0x410e80
410e8b:	0f b7 06             	movzwl (%esi),%eax
410e8e:	2b d1                	sub    %ecx,%edx
410e90:	d1 fa                	sar    $1,%edx
410e92:	89 55 cc             	mov    %edx,-0x34(%ebp)
410e95:	66 3b c7             	cmp    %di,%ax
410e98:	0f 84 21 04 00 00    	je     0x4112bf
410e9e:	66 3b c3             	cmp    %bx,%ax
410ea1:	0f 85 86 05 00 00    	jne    0x41142d
410ea7:	83 fa 01             	cmp    $0x1,%edx
410eaa:	0f 8e 7d 05 00 00    	jle    0x41142d
410eb0:	66 39 5c 56 fe       	cmp    %bx,-0x2(%esi,%edx,2)
410eb5:	0f 85 72 05 00 00    	jne    0x41142d
410ebb:	b8 0a 00 00 00       	mov    $0xa,%eax
410ec0:	66 89 44 56 fe       	mov    %ax,-0x2(%esi,%edx,2)