410d75:	8a 46 04             	mov    0x4(%esi),%al
410d78:	88 42 08             	mov    %al,0x8(%edx)
410d7b:	66 8b 46 06          	mov    0x6(%esi),%ax
410d7f:	66 89 42 06          	mov    %ax,0x6(%edx)
410d83:	8a 46 08             	mov    0x8(%esi),%al
410d86:	88 42 09             	mov    %al,0x9(%edx)
410d89:	8b 46 10             	mov    0x10(%esi),%eax
410d8c:	83 c0 0a             	add    $0xa,%eax
410d8f:	89 46 14             	mov    %eax,0x14(%esi)
410d92:	5f                   	pop    %edi
410d93:	5e                   	pop    %esi
410d94:	5b                   	pop    %ebx
410d95:	5d                   	pop    %ebp
410d96:	c2 0c 00             	ret    $0xc
410d99:	51                   	push   %ecx
410d9a:	8b 4d 04             	mov    0x4(%ebp),%ecx
410d9d:	e8 a1 f2 ff ff       	call   0x410043
410da2:	cc                   	int3
410da3:	6a 44                	push   $0x44
410da5:	b8 79 44 41 00       	mov    $0x414479,%eax
410daa:	e8 90 2e 00 00       	call   0x413c3f
410daf:	8b f1                	mov    %ecx,%esi
410db1:	89 75 c4             	mov    %esi,-0x3c(%ebp)
410db4:	33 db                	xor    %ebx,%ebx
410db6:	89 5d fc             	mov    %ebx,-0x4(%ebp)
410db9:	8b 46 10             	mov    0x10(%esi),%eax
410dbc:	8a 4e 04             	mov    0x4(%esi),%cl
410dbf:	83 c0 0a             	add    $0xa,%eax
410dc2:	89 45 f0             	mov    %eax,-0x10(%ebp)
410dc5:	66 8b 46 02          	mov    0x2(%esi),%ax
410dc9:	66 89 45 dc          	mov    %ax,-0x24(%ebp)
410dcd:	33 c0                	xor    %eax,%eax
410dcf:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
410dd3:	66 8b 46 06          	mov    0x6(%esi),%ax
410dd7:	88 4d de             	mov    %cl,-0x22(%ebp)
410dda:	8a 4e 08             	mov    0x8(%esi),%cl
410ddd:	66 89 45 b0          	mov    %ax,-0x50(%ebp)
410de1:	33 c0                	xor    %eax,%eax
410de3:	89 5d e0             	mov    %ebx,-0x20(%ebp)
410de6:	89 5d e8             	mov    %ebx,-0x18(%ebp)
410de9:	89 5d ec             	mov    %ebx,-0x14(%ebp)
410dec:	88 4d b2             	mov    %cl,-0x4e(%ebp)
410def:	89 5d b4             	mov    %ebx,-0x4c(%ebp)
410df2:	66 89 45 b8          	mov    %ax,-0x48(%ebp)
410df6:	89 5d bc             	mov    %ebx,-0x44(%ebp)
410df9:	89 5d c0             	mov    %ebx,-0x40(%ebp)
410dfc:	eb 74                	jmp    0x410e72
410dfe:	8b fb                	mov    %ebx,%edi
410e00:	39 5d e0             	cmp    %ebx,-0x20(%ebp)
410e03:	76 6d                	jbe    0x410e72
410e05:	ff 76 14             	push   0x14(%esi)
410e08:	8d 45 f0             	lea    -0x10(%ebp),%eax
410e0b:	50                   	push   %eax
410e0c:	8d 4d b0             	lea    -0x50(%ebp),%ecx
410e0f:	e8 06 fd ff ff       	call   0x410b1a
410e14:	84 c0                	test   %al,%al
410e16:	74 5a                	je     0x410e72
410e18:	8b 45 b4             	mov    -0x4c(%ebp),%eax
410e1b:	89 45 d8             	mov    %eax,-0x28(%ebp)
410e1e:	0f b7 45 b8          	movzwl -0x48(%ebp),%eax
410e22:	89 45 d4             	mov    %eax,-0x2c(%ebp)
410e25:	8b 45 c0             	mov    -0x40(%ebp),%eax
410e28:	89 45 d0             	mov    %eax,-0x30(%ebp)
410e2b:	0f b7 45 e4          	movzwl -0x1c(%ebp),%eax
410e2f:	89 45 cc             	mov    %eax,-0x34(%ebp)
410e32:	8b 45 ec             	mov    -0x14(%ebp),%eax
410e35:	89 45 c8             	mov    %eax,-0x38(%ebp)
410e38:	8b 45 48             	mov    0x48(%ebp),%eax
410e3b:	85 c0                	test   %eax,%eax
410e3d:	74 75                	je     0x410eb4
410e3f:	8b 30                	mov    (%eax),%esi
410e41:	8d 45 d8             	lea    -0x28(%ebp),%eax
410e44:	50                   	push   %eax
410e45:	8d 45 d4             	lea    -0x2c(%ebp),%eax
410e48:	50                   	push   %eax
410e49:	8b 76 10             	mov    0x10(%esi),%esi
410e4c:	8d 45 d0             	lea    -0x30(%ebp),%eax
410e4f:	50                   	push   %eax
410e50:	8d 45 cc             	lea    -0x34(%ebp),%eax
410e53:	8b ce                	mov    %esi,%ecx
410e55:	50                   	push   %eax
410e56:	8d 45 c8             	lea    -0x38(%ebp),%eax
410e59:	50                   	push   %eax
410e5a:	ff 15 90 b3 41 00    	call   *0x41b390
410e60:	8b 4d 48             	mov    0x48(%ebp),%ecx
410e63:	ff d6                	call   *%esi
410e65:	84 c0                	test   %al,%al
410e67:	74 22                	je     0x410e8b
410e69:	8b 75 c4             	mov    -0x3c(%ebp),%esi
410e6c:	47                   	inc    %edi
410e6d:	3b 7d e0             	cmp    -0x20(%ebp),%edi
410e70:	72 93                	jb     0x410e05
410e72:	ff 76 14             	push   0x14(%esi)
410e75:	8d 45 f0             	lea    -0x10(%ebp),%eax
410e78:	50                   	push   %eax
410e79:	8d 4d dc             	lea    -0x24(%ebp),%ecx
410e7c:	e8 99 fc ff ff       	call   0x410b1a
410e81:	84 c0                	test   %al,%al
410e83:	0f 85 75 ff ff ff    	jne    0x410dfe
410e89:	b3 01                	mov    $0x1,%bl
410e8b:	c7 45 fc 02 00 00 00 	movl   $0x2,-0x4(%ebp)
410e92:	8b 7d 48             	mov    0x48(%ebp),%edi
410e95:	85 ff                	test   %edi,%edi
410e97:	74 11                	je     0x410eaa
410e99:	8b 17                	mov    (%edi),%edx
410e9b:	8b 72 0c             	mov    0xc(%edx),%esi
410e9e:	8b ce                	mov    %esi,%ecx
410ea0:	ff 15 90 b3 41 00    	call   *0x41b390
410ea6:	8b cf                	mov    %edi,%ecx
410ea8:	ff d6                	call   *%esi
410eaa:	8a c3                	mov    %bl,%al
410eac:	e8 6b 2d 00 00       	call   0x413c1c
410eb1:	c2 48 00             	ret    $0x48
410eb4:	e8 fe 58 ff ff       	call   0x4067b7
410eb9:	cc                   	int3
410eba:	6a 10                	push   $0x10
410ebc:	b8 9c 44 41 00       	mov    $0x41449c,%eax
410ec1:	e8 79 2d 00 00       	call   0x413c3f
410ec6:	8b f1                	mov    %ecx,%esi
410ec8:	ff 75 18             	push   0x18(%ebp)
410ecb:	8b 7d 14             	mov    0x14(%ebp),%edi
410ece:	8b 5d 0c             	mov    0xc(%ebp),%ebx
410ed1:	57                   	push   %edi
410ed2:	ff 75 10             	push   0x10(%ebp)
410ed5:	53                   	push   %ebx
410ed6:	ff 75 08             	push   0x8(%ebp)
410ed9:	e8 d0 02 00 00       	call   0x4111ae
410ede:	84 c0                	test   %al,%al
410ee0:	74 04                	je     0x410ee6
410ee2:	b0 01                	mov    $0x1,%al
410ee4:	eb 7b                	jmp    0x410f61
410ee6:	8d 47 20             	lea    0x20(%edi),%eax
410ee9:	33 d2                	xor    %edx,%edx
410eeb:	8d 4e 10             	lea    0x10(%esi),%ecx
410eee:	03 c3                	add    %ebx,%eax
410ef0:	39 11                	cmp    %edx,(%ecx)
410ef2:	75 50                	jne    0x410f44
410ef4:	89 55 e4             	mov    %edx,-0x1c(%ebp)
410ef7:	89 55 e8             	mov    %edx,-0x18(%ebp)
410efa:	89 55 ec             	mov    %edx,-0x14(%ebp)
410efd:	89 55 f0             	mov    %edx,-0x10(%ebp)
410f00:	83 c0 0a             	add    $0xa,%eax
410f03:	89 55 fc             	mov    %edx,-0x4(%ebp)
410f06:	50                   	push   %eax
410f07:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
410f0a:	e8 63 f8 ff ff       	call   0x410772
410f0f:	84 c0                	test   %al,%al
410f11:	74 27                	je     0x410f3a
410f13:	8b 45 ec             	mov    -0x14(%ebp),%eax
410f16:	8b ce                	mov    %esi,%ecx
410f18:	2b 45 e4             	sub    -0x1c(%ebp),%eax
410f1b:	50                   	push   %eax
410f1c:	6a 00                	push   $0x0
410f1e:	ff 75 e4             	push   -0x1c(%ebp)
410f21:	e8 97 fd ff ff       	call   0x410cbd
410f26:	8b 45 f0             	mov    -0x10(%ebp),%eax
410f29:	8d 4e 1c             	lea    0x1c(%esi),%ecx
410f2c:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
410f30:	50                   	push   %eax
410f31:	e8 11 12 00 00       	call   0x412147
410f36:	c6 46 22 01          	movb   $0x1,0x22(%esi)
410f3a:	8d 4d f0             	lea    -0x10(%ebp),%ecx
410f3d:	e8 29 12 00 00       	call   0x41216b
410f42:	eb 0b                	jmp    0x410f4f
410f44:	38 56 22             	cmp    %dl,0x22(%esi)
410f47:	74 06                	je     0x410f4f
410f49:	50                   	push   %eax
410f4a:	e8 23 f8 ff ff       	call   0x410772
410f4f:	ff 75 18             	push   0x18(%ebp)
410f52:	8b ce                	mov    %esi,%ecx
410f54:	57                   	push   %edi
410f55:	ff 75 10             	push   0x10(%ebp)
410f58:	53                   	push   %ebx
410f59:	ff 75 08             	push   0x8(%ebp)
410f5c:	e8 4d 02 00 00       	call   0x4111ae
410f61:	e8 b6 2c 00 00       	call   0x413c1c
410f66:	c2 14 00             	ret    $0x14
410f69:	8b ff                	mov    %edi,%edi
410f6b:	55                   	push   %ebp
410f6c:	8b ec                	mov    %esp,%ebp
410f6e:	83 ec 1c             	sub    $0x1c,%esp
410f71:	66 8b 41 06          	mov    0x6(%ecx),%ax
410f75:	33 d2                	xor    %edx,%edx
410f77:	66 89 45 e4          	mov    %ax,-0x1c(%ebp)
410f7b:	8a 41 08             	mov    0x8(%ecx),%al
410f7e:	53                   	push   %ebx
410f7f:	8b 5d 08             	mov    0x8(%ebp),%ebx
410f82:	56                   	push   %esi
410f83:	8b 75 0c             	mov    0xc(%ebp),%esi
410f86:	88 45 e6             	mov    %al,-0x1a(%ebp)
410f89:	33 c0                	xor    %eax,%eax
410f8b:	89 4d f8             	mov    %ecx,-0x8(%ebp)
410f8e:	89 55 e8             	mov    %edx,-0x18(%ebp)
410f91:	66 89 45 ec          	mov    %ax,-0x14(%ebp)
410f95:	89 55 f0             	mov    %edx,-0x10(%ebp)
410f98:	89 55 f4             	mov    %edx,-0xc(%ebp)
410f9b:	85 f6                	test   %esi,%esi
410f9d:	74 47                	je     0x410fe6
410f9f:	57                   	push   %edi
410fa0:	8b 41 0c             	mov    0xc(%ecx),%eax
410fa3:	8b fe                	mov    %esi,%edi
410fa5:	ff 71 14             	push   0x14(%ecx)
410fa8:	d1 ef                	shr    $1,%edi
410faa:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
410fad:	0f af c7             	imul   %edi,%eax
410fb0:	03 c3                	add    %ebx,%eax
410fb2:	89 45 fc             	mov    %eax,-0x4(%ebp)
410fb5:	8d 45 fc             	lea    -0x4(%ebp),%eax
410fb8:	50                   	push   %eax
410fb9:	e8 5c fb ff ff       	call   0x410b1a
410fbe:	ff 75 14             	push   0x14(%ebp)
410fc1:	8d 4d e4             	lea    -0x1c(%ebp),%ecx
410fc4:	ff 75 10             	push   0x10(%ebp)
410fc7:	e8 fe f9 ff ff       	call   0x4109ca
410fcc:	85 c0                	test   %eax,%eax
410fce:	7e 0c                	jle    0x410fdc
410fd0:	8b 5d fc             	mov    -0x4(%ebp),%ebx
410fd3:	83 c8 ff             	or     $0xffffffff,%eax
410fd6:	2b c7                	sub    %edi,%eax
410fd8:	03 f0                	add    %eax,%esi
410fda:	eb 02                	jmp    0x410fde
410fdc:	8b f7                	mov    %edi,%esi
410fde:	8b 4d f8             	mov    -0x8(%ebp),%ecx
410fe1:	85 f6                	test   %esi,%esi
410fe3:	75 bb                	jne    0x410fa0
410fe5:	5f                   	pop    %edi
410fe6:	5e                   	pop    %esi
410fe7:	8b c3                	mov    %ebx,%eax
410fe9:	5b                   	pop    %ebx
410fea:	c9                   	leave
410feb:	c2 10 00             	ret    $0x10
410fee:	8b ff                	mov    %edi,%edi
410ff0:	55                   	push   %ebp
410ff1:	8b ec                	mov    %esp,%ebp
410ff3:	83 ec 20             	sub    $0x20,%esp
410ff6:	83 4d f8 ff          	orl    $0xffffffff,-0x8(%ebp)
410ffa:	53                   	push   %ebx
410ffb:	56                   	push   %esi
410ffc:	8b 75 08             	mov    0x8(%ebp),%esi
410fff:	57                   	push   %edi
411000:	8b f9                	mov    %ecx,%edi
411002:	33 c9                	xor    %ecx,%ecx
411004:	66 89 4d e8          	mov    %cx,-0x18(%ebp)
411008:	66 8b 47 06          	mov    0x6(%edi),%ax
41100c:	8b 4f 0c             	mov    0xc(%edi),%ecx
41100f:	66 89 45 e0          	mov    %ax,-0x20(%ebp)
411013:	8a 47 08             	mov    0x8(%edi),%al
411016:	88 45 e2             	mov    %al,-0x1e(%ebp)
411019:	33 c0                	xor    %eax,%eax
41101b:	89 45 e4             	mov    %eax,-0x1c(%ebp)
41101e:	89 45 ec             	mov    %eax,-0x14(%ebp)
411021:	89 45 f0             	mov    %eax,-0x10(%ebp)
411024:	85 c9                	test   %ecx,%ecx
411026:	74 64                	je     0x41108c
411028:	8b 47 14             	mov    0x14(%edi),%eax
41102b:	33 d2                	xor    %edx,%edx
41102d:	2b 45 0c             	sub    0xc(%ebp),%eax
411030:	f7 f1                	div    %ecx
411032:	8b 56 04             	mov    0x4(%esi),%edx
411035:	3b d0                	cmp    %eax,%edx
411037:	76 0e                	jbe    0x411047
411039:	50                   	push   %eax
41103a:	8b ce                	mov    %esi,%ecx
41103c:	e8 b0 f9 ff ff       	call   0x4109f1
411041:	8b 56 04             	mov    0x4(%esi),%edx
411044:	8b 4f 0c             	mov    0xc(%edi),%ecx
411047:	ff 75 14             	push   0x14(%ebp)
41104a:	8b f2                	mov    %edx,%esi
41104c:	ff 75 10             	push   0x10(%ebp)
41104f:	0f af f1             	imul   %ecx,%esi
411052:	8b cf                	mov    %edi,%ecx
411054:	52                   	push   %edx
411055:	ff 75 0c             	push   0xc(%ebp)
411058:	03 75 0c             	add    0xc(%ebp),%esi
41105b:	e8 09 ff ff ff       	call   0x410f69
411060:	8b d8                	mov    %eax,%ebx
411062:	3b de                	cmp    %esi,%ebx
411064:	0f 83 ac 00 00 00    	jae    0x411116
41106a:	ff 77 14             	push   0x14(%edi)
41106d:	8d 45 f4             	lea    -0xc(%ebp),%eax
411070:	89 5d f4             	mov    %ebx,-0xc(%ebp)
411073:	50                   	push   %eax
411074:	8d 4d e0             	lea    -0x20(%ebp),%ecx
411077:	e8 9e fa ff ff       	call   0x410b1a
41107c:	ff 75 14             	push   0x14(%ebp)
41107f:	8d 4d e0             	lea    -0x20(%ebp),%ecx
411082:	ff 75 10             	push   0x10(%ebp)
411085:	e8 40 f9 ff ff       	call   0x4109ca
41108a:	eb 55                	jmp    0x4110e1
41108c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
41108f:	89 45 fc             	mov    %eax,-0x4(%ebp)
411092:	39 46 04             	cmp    %eax,0x4(%esi)
411095:	76 7f                	jbe    0x411116
411097:	ff 77 14             	push   0x14(%edi)
41109a:	8d 45 f4             	lea    -0xc(%ebp),%eax
41109d:	89 5d f4             	mov    %ebx,-0xc(%ebp)
4110a0:	50                   	push   %eax
4110a1:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4110a4:	e8 71 fa ff ff       	call   0x410b1a
4110a9:	84 c0                	test   %al,%al
4110ab:	74 26                	je     0x4110d3
4110ad:	ff 75 14             	push   0x14(%ebp)
4110b0:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4110b3:	ff 75 10             	push   0x10(%ebp)
4110b6:	e8 0f f9 ff ff       	call   0x4109ca
4110bb:	89 45 f8             	mov    %eax,-0x8(%ebp)
4110be:	85 c0                	test   %eax,%eax
4110c0:	7e 21                	jle    0x4110e3
4110c2:	8b 45 fc             	mov    -0x4(%ebp),%eax
4110c5:	8b 5d f4             	mov    -0xc(%ebp),%ebx
4110c8:	40                   	inc    %eax
4110c9:	89 45 fc             	mov    %eax,-0x4(%ebp)
4110cc:	3b 46 04             	cmp    0x4(%esi),%eax
4110cf:	72 c6                	jb     0x411097
4110d1:	eb 0b                	jmp    0x4110de
4110d3:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4110d6:	51                   	push   %ecx
4110d7:	8b ce                	mov    %esi,%ecx
4110d9:	e8 13 f9 ff ff       	call   0x4109f1
4110de:	8b 45 f8             	mov    -0x8(%ebp),%eax
4110e1:	85 c0                	test   %eax,%eax
4110e3:	75 31                	jne    0x411116
4110e5:	8a 45 e2             	mov    -0x1e(%ebp),%al
4110e8:	84 c0                	test   %al,%al
4110ea:	0f 95 c3             	setne  %bl
4110ed:	84 c0                	test   %al,%al
4110ef:	74 0f                	je     0x411100
4110f1:	8b 45 e4             	mov    -0x1c(%ebp),%eax
4110f4:	8d 4d e0             	lea    -0x20(%ebp),%ecx
4110f7:	03 45 18             	add    0x18(%ebp),%eax
4110fa:	50                   	push   %eax
4110fb:	e8 f1 f8 ff ff       	call   0x4109f1
411100:	84 db                	test   %bl,%bl
411102:	75 09                	jne    0x41110d
411104:	38 5f 20             	cmp    %bl,0x20(%edi)
411107:	75 04                	jne    0x41110d
411109:	33 c0                	xor    %eax,%eax
41110b:	eb 02                	jmp    0x41110f
41110d:	b0 01                	mov    $0x1,%al
41110f:	88 47 20             	mov    %al,0x20(%edi)
411112:	33 c0                	xor    %eax,%eax
411114:	eb 02                	jmp    0x411118
411116:	8b c3                	mov    %ebx,%eax
411118:	5f                   	pop    %edi
411119:	5e                   	pop    %esi
41111a:	5b                   	pop    %ebx
41111b:	c9                   	leave
41111c:	c2 14 00             	ret    $0x14
41111f:	8b ff                	mov    %edi,%edi
411121:	55                   	push   %ebp