403d6c:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403d6d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403d6e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403d6f:	ff 75 b8             	push   -0x48(%ebp)
403d72:	e9 4e ff ff ff       	jmp    0x403cc5
403d77:	56                   	push   %esi
403d78:	e8 51 e9 01 00       	call   0x4226ce
403d7d:	0f b7 03             	movzwl (%ebx),%eax
403d80:	8b df                	mov    %edi,%ebx
403d82:	8b 4d 10             	mov    0x10(%ebp),%ecx
403d85:	50                   	push   %eax
403d86:	e9 9b fe ff ff       	jmp    0x403c26
403d8b:	55                   	push   %ebp
403d8c:	8b ec                	mov    %esp,%ebp
403d8e:	8b 4d 10             	mov    0x10(%ebp),%ecx
403d91:	83 ec 3c             	sub    $0x3c,%esp
403d94:	53                   	push   %ebx
403d95:	8b 5d 14             	mov    0x14(%ebp),%ebx
403d98:	56                   	push   %esi
403d99:	57                   	push   %edi
403d9a:	3b 5d 18             	cmp    0x18(%ebp),%ebx
403d9d:	0f 84 c2 00 00 00    	je     0x403e65
403da3:	c7 45 fc 0c 00 00 00 	movl   $0xc,-0x4(%ebp)
403daa:	0f b7 03             	movzwl (%ebx),%eax
403dad:	83 c3 02             	add    $0x2,%ebx
403db0:	8b d0                	mov    %eax,%edx
403db2:	83 f8 26             	cmp    $0x26,%eax
403db5:	75 39                	jne    0x403df0
403db7:	8b 75 0c             	mov    0xc(%ebp),%esi
403dba:	6a 0c                	push   $0xc
403dbc:	8b 7e 08             	mov    0x8(%esi),%edi
403dbf:	8b 46 0c             	mov    0xc(%esi),%eax
403dc2:	2b c7                	sub    %edi,%eax
403dc4:	89 7d 14             	mov    %edi,0x14(%ebp)
403dc7:	99                   	cltd
403dc8:	5e                   	pop    %esi
403dc9:	f7 fe                	idiv   %esi
403dcb:	85 c0                	test   %eax,%eax
403dcd:	0f 84 89 00 00 00    	je     0x403e5c
403dd3:	8b f7                	mov    %edi,%esi
403dd5:	8d 45 f8             	lea    -0x8(%ebp),%eax
403dd8:	8d 7d e8             	lea    -0x18(%ebp),%edi
403ddb:	51                   	push   %ecx
403ddc:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403ddd:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403dde:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403ddf:	8b 75 14             	mov    0x14(%ebp),%esi
403de2:	8d 7d dc             	lea    -0x24(%ebp),%edi
403de5:	ff 75 ec             	push   -0x14(%ebp)
403de8:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403de9:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403dea:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403deb:	ff 75 dc             	push   -0x24(%ebp)
403dee:	eb 53                	jmp    0x403e43
403df0:	83 f8 5c             	cmp    $0x5c,%eax
403df3:	74 03                	je     0x403df8
403df5:	52                   	push   %edx
403df6:	eb 5c                	jmp    0x403e54
403df8:	3b 5d 18             	cmp    0x18(%ebp),%ebx
403dfb:	74 68                	je     0x403e65
403dfd:	0f b7 13             	movzwl (%ebx),%edx
403e00:	83 c3 02             	add    $0x2,%ebx
403e03:	8b f2                	mov    %edx,%esi
403e05:	8d 42 d0             	lea    -0x30(%edx),%eax
403e08:	66 83 f8 09          	cmp    $0x9,%ax
403e0c:	77 45                	ja     0x403e53
403e0e:	8b 45 0c             	mov    0xc(%ebp),%eax
403e11:	8d 72 d0             	lea    -0x30(%edx),%esi
403e14:	8b 78 08             	mov    0x8(%eax),%edi
403e17:	8b 40 0c             	mov    0xc(%eax),%eax
403e1a:	2b c7                	sub    %edi,%eax
403e1c:	99                   	cltd
403e1d:	f7 7d fc             	idivl  -0x4(%ebp)
403e20:	3b f0                	cmp    %eax,%esi
403e22:	73 38                	jae    0x403e5c
403e24:	6b c6 0c             	imul   $0xc,%esi,%eax
403e27:	51                   	push   %ecx
403e28:	03 c7                	add    %edi,%eax
403e2a:	8d 7d d0             	lea    -0x30(%ebp),%edi
403e2d:	8b f0                	mov    %eax,%esi
403e2f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e30:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e31:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e32:	ff 75 d4             	push   -0x2c(%ebp)
403e35:	8b f0                	mov    %eax,%esi
403e37:	8d 7d c4             	lea    -0x3c(%ebp),%edi
403e3a:	8d 45 f4             	lea    -0xc(%ebp),%eax
403e3d:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e3e:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e3f:	a5                   	movsl  %ds:(%esi),%es:(%edi)
403e40:	ff 75 c4             	push   -0x3c(%ebp)
403e43:	50                   	push   %eax
403e44:	e8 12 2e 00 00       	call   0x406c5b
403e49:	83 c4 10             	add    $0x10,%esp
403e4c:	8b 08                	mov    (%eax),%ecx
403e4e:	89 4d 10             	mov    %ecx,0x10(%ebp)
403e51:	eb 09                	jmp    0x403e5c
403e53:	56                   	push   %esi
403e54:	e8 75 e8 01 00       	call   0x4226ce
403e59:	8b 4d 10             	mov    0x10(%ebp),%ecx
403e5c:	3b 5d 18             	cmp    0x18(%ebp),%ebx
403e5f:	0f 85 45 ff ff ff    	jne    0x403daa
403e65:	8b 45 08             	mov    0x8(%ebp),%eax
403e68:	5f                   	pop    %edi
403e69:	5e                   	pop    %esi
403e6a:	5b                   	pop    %ebx
403e6b:	89 08                	mov    %ecx,(%eax)
403e6d:	c9                   	leave
403e6e:	c3                   	ret
403e6f:	6a 38                	push   $0x38
403e71:	b8 4d a1 48 00       	mov    $0x48a14d,%eax
403e76:	e8 03 bc 03 00       	call   0x43fa7e
403e7b:	8b 5d 14             	mov    0x14(%ebp),%ebx
403e7e:	8b 45 08             	mov    0x8(%ebp),%eax
403e81:	8b 75 10             	mov    0x10(%ebp),%esi
403e84:	89 45 cc             	mov    %eax,-0x34(%ebp)
403e87:	8b 45 0c             	mov    0xc(%ebp),%eax
403e8a:	0f b7 0b             	movzwl (%ebx),%ecx
403e8d:	89 45 c0             	mov    %eax,-0x40(%ebp)
403e90:	33 c0                	xor    %eax,%eax
403e92:	8b d0                	mov    %eax,%edx
403e94:	66 85 c9             	test   %cx,%cx
403e97:	74 19                	je     0x403eb2
403e99:	8b f9                	mov    %ecx,%edi
403e9b:	66 3b f9             	cmp    %cx,%di
403e9e:	8d 46 01             	lea    0x1(%esi),%eax
403ea1:	0f 45 c6             	cmovne %esi,%eax
403ea4:	42                   	inc    %edx
403ea5:	8b f0                	mov    %eax,%esi
403ea7:	0f b7 3c 53          	movzwl (%ebx,%edx,2),%edi
403eab:	66 85 ff             	test   %di,%di
403eae:	75 eb                	jne    0x403e9b
403eb0:	33 c0                	xor    %eax,%eax
403eb2:	50                   	push   %eax
403eb3:	89 45 e8             	mov    %eax,-0x18(%ebp)
403eb6:	8d 4d d8             	lea    -0x28(%ebp),%ecx
403eb9:	89 45 ec             	mov    %eax,-0x14(%ebp)
403ebc:	56                   	push   %esi
403ebd:	89 45 e8             	mov    %eax,-0x18(%ebp)
403ec0:	c7 45 ec 0f 00 00 00 	movl   $0xf,-0x14(%ebp)
403ec7:	88 45 d8             	mov    %al,-0x28(%ebp)
403eca:	e8 6f b8 01 00       	call   0x41f73e
403ecf:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
403ed3:	33 d2                	xor    %edx,%edx
403ed5:	42                   	inc    %edx
403ed6:	c7 45 c4 fe ff ff ff 	movl   $0xfffffffe,-0x3c(%ebp)
403edd:	89 55 d0             	mov    %edx,-0x30(%ebp)
403ee0:	33 c9                	xor    %ecx,%ecx
403ee2:	c6 45 d7 00          	movb   $0x0,-0x29(%ebp)
403ee6:	33 ff                	xor    %edi,%edi
403ee8:	89 4d c8             	mov    %ecx,-0x38(%ebp)
403eeb:	85 f6                	test   %esi,%esi
403eed:	75 18                	jne    0x403f07
403eef:	83 4d fc ff          	orl    $0xffffffff,-0x4(%ebp)
403ef3:	8d 4d d8             	lea    -0x28(%ebp),%ecx
403ef6:	e8 d9 93 01 00       	call   0x41d2d4
403efb:	8b 45 c4             	mov    -0x3c(%ebp),%eax
403efe:	e8 25 bb 03 00       	call   0x43fa28
403f03:	c3                   	ret
403f04:	8b 55 d0             	mov    -0x30(%ebp),%edx
403f07:	0f b7 04 7b          	movzwl (%ebx,%edi,2),%eax
403f0b:	66 85 c0             	test   %ax,%ax
403f0e:	74 19                	je     0x403f29
403f10:	0f b7 13             	movzwl (%ebx),%edx
403f13:	89 55 bc             	mov    %edx,-0x44(%ebp)
403f16:	8b 55 d0             	mov    -0x30(%ebp),%edx
403f19:	66 3b 45 bc          	cmp    -0x44(%ebp),%ax
403f1d:	74 0a                	je     0x403f29
403f1f:	47                   	inc    %edi
403f20:	0f b7 04 7b          	movzwl (%ebx,%edi,2),%eax
403f24:	66 85 c0             	test   %ax,%ax
403f27:	75 f0                	jne    0x403f19
403f29:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
403f2d:	8d 45 d8             	lea    -0x28(%ebp),%eax
403f30:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
403f34:	80 3c 08 00          	cmpb   $0x0,(%eax,%ecx,1)
403f38:	74 16                	je     0x403f50
403f3a:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
403f3e:	8d 45 d8             	lea    -0x28(%ebp),%eax
403f41:	0f 43 45 d8          	cmovae -0x28(%ebp),%eax
403f45:	0f be 04 08          	movsbl (%eax,%ecx,1),%eax
403f49:	03 f8                	add    %eax,%edi
403f4b:	e9 8e 00 00 00       	jmp    0x403fde
403f50:	03 fa                	add    %edx,%edi
403f52:	0f b7 04 7b          	movzwl (%ebx,%edi,2),%eax
403f56:	66 3b 03             	cmp    (%ebx),%ax
403f59:	74 5e                	je     0x403fb9
403f5b:	66 85 c0             	test   %ax,%ax
403f5e:	74 59                	je     0x403fb9
403f60:	ff 75 c0             	push   -0x40(%ebp)
403f63:	8b 4d cc             	mov    -0x34(%ebp),%ecx
403f66:	e8 89 cc 01 00       	call   0x420bf4
403f6b:	84 c0                	test   %al,%al
403f6d:	75 26                	jne    0x403f95
403f6f:	8b 55 cc             	mov    -0x34(%ebp),%edx
403f72:	38 42 04             	cmp    %al,0x4(%edx)
403f75:	75 0a                	jne    0x403f81
403f77:	8b ca                	mov    %edx,%ecx
403f79:	e8 17 85 01 00       	call   0x41c495
403f7e:	8b 55 cc             	mov    -0x34(%ebp),%edx
403f81:	0f b7 42 06          	movzwl 0x6(%edx),%eax
403f85:	66 39 04 7b          	cmp    %ax,(%ebx,%edi,2)
403f89:	75 0a                	jne    0x403f95
403f8b:	8b 4d c8             	mov    -0x38(%ebp),%ecx
403f8e:	b0 01                	mov    $0x1,%al
403f90:	88 45 d7             	mov    %al,-0x29(%ebp)
403f93:	eb 4f                	jmp    0x403fe4
403f95:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
403f99:	8d 55 d8             	lea    -0x28(%ebp),%edx
403f9c:	8b 45 d0             	mov    -0x30(%ebp),%eax
403f9f:	0f 43 55 d8          	cmovae -0x28(%ebp),%edx
403fa3:	6a 7f                	push   $0x7f
403fa5:	59                   	pop    %ecx
403fa6:	39 4d d0             	cmp    %ecx,-0x30(%ebp)
403fa9:	0f b6 c0             	movzbl %al,%eax
403fac:	0f 42 c8             	cmovb  %eax,%ecx
403faf:	8b 45 c8             	mov    -0x38(%ebp),%eax
403fb2:	88 0c 02             	mov    %cl,(%edx,%eax,1)
403fb5:	8b c8                	mov    %eax,%ecx
403fb7:	eb 25                	jmp    0x403fde
403fb9:	83 7d ec 10          	cmpl   $0x10,-0x14(%ebp)
403fbd:	8d 55 d8             	lea    -0x28(%ebp),%edx
403fc0:	8b 45 d0             	mov    -0x30(%ebp),%eax
403fc3:	0f 43 55 d8          	cmovae -0x28(%ebp),%edx
403fc7:	6a 7f                	push   $0x7f
403fc9:	59                   	pop    %ecx
403fca:	39 4d d0             	cmp    %ecx,-0x30(%ebp)
403fcd:	0f b6 c0             	movzbl %al,%eax
403fd0:	0f 42 c8             	cmovb  %eax,%ecx
403fd3:	8b 45 c8             	mov    -0x38(%ebp),%eax
403fd6:	88 0c 02             	mov    %cl,(%edx,%eax,1)
403fd9:	8b c8                	mov    %eax,%ecx
403fdb:	89 4d c4             	mov    %ecx,-0x3c(%ebp)
403fde:	8b 55 cc             	mov    -0x34(%ebp),%edx
403fe1:	8a 45 d7             	mov    -0x29(%ebp),%al
403fe4:	41                   	inc    %ecx
403fe5:	89 4d c8             	mov    %ecx,-0x38(%ebp)
403fe8:	3b ce                	cmp    %esi,%ecx
403fea:	0f 82 14 ff ff ff    	jb     0x403f04
403ff0:	84 c0                	test   %al,%al
403ff2:	0f 84 f7 fe ff ff    	je     0x403eef
403ff8:	ff 75 c0             	push   -0x40(%ebp)
403ffb:	8b ca                	mov    %edx,%ecx
403ffd:	e8 f2 cb 01 00       	call   0x420bf4
404002:	84 c0                	test   %al,%al
404004:	0f 85 e5 fe ff ff    	jne    0x403eef
40400a:	8b 4d cc             	mov    -0x34(%ebp),%ecx
40400d:	ff 45 d0             	incl   -0x30(%ebp)
404010:	e8 ba 6d 01 00       	call   0x41adcf
404015:	83 4d c4 ff          	orl    $0xffffffff,-0x3c(%ebp)
404019:	8b 55 d0             	mov    -0x30(%ebp),%edx
40401c:	e9 bf fe ff ff       	jmp    0x403ee0
404021:	56                   	push   %esi
404022:	be 64 ab 4b 00       	mov    $0x4bab64,%esi
404027:	56                   	push   %esi
404028:	68 48 40 40 00       	push   $0x404048
40402d:	68 60 ab 4b 00       	push   $0x4bab60
404032:	e8 31 31 02 00       	call   0x427168
404037:	83 c4 0c             	add    $0xc,%esp
40403a:	85 c0                	test   %eax,%eax
40403c:	74 04                	je     0x404042
40403e:	8b c6                	mov    %esi,%eax
404040:	5e                   	pop    %esi
404041:	c3                   	ret
404042:	e8 dc 36 06 00       	call   0x467723
404047:	cc                   	int3
404048:	55                   	push   %ebp
404049:	8b ec                	mov    %esp,%ebp
40404b:	8b 45 0c             	mov    0xc(%ebp),%eax
40404e:	c7 00 94 46 49 00    	movl   $0x494694,(%eax)
404054:	c7 40 04 05 00 00 00 	movl   $0x5,0x4(%eax)
40405b:	33 c0                	xor    %eax,%eax
40405d:	40                   	inc    %eax
40405e:	5d                   	pop    %ebp
40405f:	c2 0c 00             	ret    $0xc
404062:	55                   	push   %ebp
404063:	8b ec                	mov    %esp,%ebp
404065:	51                   	push   %ecx
404066:	53                   	push   %ebx
404067:	56                   	push   %esi
404068:	8b 75 08             	mov    0x8(%ebp),%esi
40406b:	33 c0                	xor    %eax,%eax
40406d:	57                   	push   %edi
40406e:	8b 7d 0c             	mov    0xc(%ebp),%edi
404071:	33 db                	xor    %ebx,%ebx
404073:	2b fe                	sub    %esi,%edi
404075:	89 4d fc             	mov    %ecx,-0x4(%ebp)
404078:	3b 75 0c             	cmp    0xc(%ebp),%esi
40407b:	0f 47 f8             	cmova  %eax,%edi
40407e:	85 ff                	test   %edi,%edi
404080:	74 12                	je     0x404094
404082:	0f b6 06             	movzbl (%esi),%eax
404085:	50                   	push   %eax
404086:	e8 48 70 01 00       	call   0x41b0d3
40408b:	8b 4d fc             	mov    -0x4(%ebp),%ecx
40408e:	46                   	inc    %esi
40408f:	43                   	inc    %ebx
404090:	3b df                	cmp    %edi,%ebx
404092:	75 ee                	jne    0x404082
404094:	5f                   	pop    %edi
404095:	5e                   	pop    %esi
404096:	5b                   	pop    %ebx
404097:	c9                   	leave
404098:	c2 08 00             	ret    $0x8
40409b:	55                   	push   %ebp
40409c:	8b ec                	mov    %esp,%ebp
40409e:	51                   	push   %ecx
40409f:	53                   	push   %ebx
4040a0:	56                   	push   %esi
4040a1:	8b 75 0c             	mov    0xc(%ebp),%esi
4040a4:	33 db                	xor    %ebx,%ebx
4040a6:	57                   	push   %edi
4040a7:	8b 7d 08             	mov    0x8(%ebp),%edi
4040aa:	33 c0                	xor    %eax,%eax
4040ac:	2b f7                	sub    %edi,%esi
4040ae:	89 4d fc             	mov    %ecx,-0x4(%ebp)
4040b1:	46                   	inc    %esi
4040b2:	d1 ee                	shr    $1,%esi
4040b4:	3b 7d 0c             	cmp    0xc(%ebp),%edi
4040b7:	0f 47 f0             	cmova  %eax,%esi
4040ba:	85 f6                	test   %esi,%esi
4040bc:	74 14                	je     0x4040d2
4040be:	0f b7 07             	movzwl (%edi),%eax
4040c1:	50                   	push   %eax
4040c2:	e8 36 70 01 00       	call   0x41b0fd
4040c7:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4040ca:	8d 7f 02             	lea    0x2(%edi),%edi
4040cd:	43                   	inc    %ebx
4040ce:	3b de                	cmp    %esi,%ebx
4040d0:	75 ec                	jne    0x4040be
4040d2:	5f                   	pop    %edi
4040d3:	5e                   	pop    %esi
4040d4:	5b                   	pop    %ebx
4040d5:	c9                   	leave
4040d6:	c2 08 00             	ret    $0x8
4040d9:	6a 18                	push   $0x18
4040db:	b8 7a a1 48 00       	mov    $0x48a17a,%eax
4040e0:	e8 d0 b9 03 00       	call   0x43fab5
4040e5:	8b 7d 08             	mov    0x8(%ebp),%edi
4040e8:	33 db                	xor    %ebx,%ebx
4040ea:	8b c3                	mov    %ebx,%eax
4040ec:	89 45 e8             	mov    %eax,-0x18(%ebp)
4040ef:	89 45 ec             	mov    %eax,-0x14(%ebp)
4040f2:	8b 07                	mov    (%edi),%eax
4040f4:	8b 40 04             	mov    0x4(%eax),%eax
4040f7:	8b 74 38 20          	mov    0x20(%eax,%edi,1),%esi
4040fb:	39 5c 38 24          	cmp    %ebx,0x24(%eax,%edi,1)
4040ff:	7c 11                	jl     0x404112
404101:	7f 04                	jg     0x404107
404103:	3b f3                	cmp    %ebx,%esi