404d76:	81 fb fe ff ff 7f    	cmp    $0x7ffffffe,%ebx
404d7c:	77 60                	ja     0x404dde
404d7e:	8b 47 14             	mov    0x14(%edi),%eax
404d81:	56                   	push   %esi
404d82:	53                   	push   %ebx
404d83:	89 45 fc             	mov    %eax,-0x4(%ebp)
404d86:	e8 21 1f 01 00       	call   0x416cac
404d8b:	8b f0                	mov    %eax,%esi
404d8d:	8d 4e 01             	lea    0x1(%esi),%ecx
404d90:	51                   	push   %ecx
404d91:	8b cf                	mov    %edi,%ecx
404d93:	e8 5d a7 01 00       	call   0x41f4f5
404d98:	89 77 14             	mov    %esi,0x14(%edi)
404d9b:	8d 34 1b             	lea    (%ebx,%ebx,1),%esi
404d9e:	56                   	push   %esi
404d9f:	ff 75 10             	push   0x10(%ebp)
404da2:	89 45 08             	mov    %eax,0x8(%ebp)
404da5:	50                   	push   %eax
404da6:	89 5f 10             	mov    %ebx,0x10(%edi)
404da9:	e8 b2 e5 03 00       	call   0x443360
404dae:	8b 5d 08             	mov    0x8(%ebp),%ebx
404db1:	33 c0                	xor    %eax,%eax
404db3:	83 c4 0c             	add    $0xc,%esp
404db6:	66 89 04 1e          	mov    %ax,(%esi,%ebx,1)
404dba:	8b 45 fc             	mov    -0x4(%ebp),%eax
404dbd:	5e                   	pop    %esi
404dbe:	83 f8 08             	cmp    $0x8,%eax
404dc1:	72 11                	jb     0x404dd4
404dc3:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
404dca:	50                   	push   %eax
404dcb:	ff 37                	push   (%edi)
404dcd:	e8 58 e7 ff ff       	call   0x40352a
404dd2:	59                   	pop    %ecx
404dd3:	59                   	pop    %ecx
404dd4:	89 1f                	mov    %ebx,(%edi)
404dd6:	8b c7                	mov    %edi,%eax
404dd8:	5f                   	pop    %edi
404dd9:	5b                   	pop    %ebx
404dda:	c9                   	leave
404ddb:	c2 0c 00             	ret    $0xc
404dde:	e8 29 89 01 00       	call   0x41d70c
404de3:	cc                   	int3
404de4:	55                   	push   %ebp
404de5:	8b ec                	mov    %esp,%ebp
404de7:	51                   	push   %ecx
404de8:	53                   	push   %ebx
404de9:	8b 5d 08             	mov    0x8(%ebp),%ebx
404dec:	56                   	push   %esi
404ded:	57                   	push   %edi
404dee:	8b f9                	mov    %ecx,%edi
404df0:	81 fb ff ff ff 7f    	cmp    $0x7fffffff,%ebx
404df6:	77 52                	ja     0x404e4a
404df8:	8b 47 14             	mov    0x14(%edi),%eax
404dfb:	53                   	push   %ebx
404dfc:	89 45 fc             	mov    %eax,-0x4(%ebp)
404dff:	e8 71 1e 01 00       	call   0x416c75
404e04:	8b f0                	mov    %eax,%esi
404e06:	8d 4e 01             	lea    0x1(%esi),%ecx
404e09:	51                   	push   %ecx
404e0a:	e8 79 d8 ff ff       	call   0x402688
404e0f:	53                   	push   %ebx
404e10:	ff 75 10             	push   0x10(%ebp)
404e13:	89 45 08             	mov    %eax,0x8(%ebp)
404e16:	50                   	push   %eax
404e17:	89 5f 10             	mov    %ebx,0x10(%edi)
404e1a:	89 77 14             	mov    %esi,0x14(%edi)
404e1d:	e8 3e e5 03 00       	call   0x443360
404e22:	8b 75 08             	mov    0x8(%ebp),%esi
404e25:	83 c4 10             	add    $0x10,%esp
404e28:	8b 45 fc             	mov    -0x4(%ebp),%eax
404e2b:	c6 04 1e 00          	movb   $0x0,(%esi,%ebx,1)
404e2f:	83 f8 10             	cmp    $0x10,%eax
404e32:	72 0b                	jb     0x404e3f
404e34:	40                   	inc    %eax
404e35:	50                   	push   %eax
404e36:	ff 37                	push   (%edi)
404e38:	e8 ed e6 ff ff       	call   0x40352a
404e3d:	59                   	pop    %ecx
404e3e:	59                   	pop    %ecx
404e3f:	89 37                	mov    %esi,(%edi)
404e41:	8b c7                	mov    %edi,%eax
404e43:	5f                   	pop    %edi
404e44:	5e                   	pop    %esi
404e45:	5b                   	pop    %ebx
404e46:	c9                   	leave
404e47:	c2 0c 00             	ret    $0xc
404e4a:	e8 b2 88 01 00       	call   0x41d701
404e4f:	cc                   	int3
404e50:	55                   	push   %ebp
404e51:	8b ec                	mov    %esp,%ebp
404e53:	51                   	push   %ecx
404e54:	53                   	push   %ebx
404e55:	8b 5d 08             	mov    0x8(%ebp),%ebx
404e58:	56                   	push   %esi
404e59:	57                   	push   %edi
404e5a:	8b f9                	mov    %ecx,%edi
404e5c:	81 fb ff ff ff 7f    	cmp    $0x7fffffff,%ebx
404e62:	77 54                	ja     0x404eb8
404e64:	8b 47 14             	mov    0x14(%edi),%eax
404e67:	53                   	push   %ebx
404e68:	89 45 fc             	mov    %eax,-0x4(%ebp)
404e6b:	e8 05 1e 01 00       	call   0x416c75
404e70:	8b f0                	mov    %eax,%esi
404e72:	8d 4e 01             	lea    0x1(%esi),%ecx
404e75:	51                   	push   %ecx
404e76:	e8 0d d8 ff ff       	call   0x402688
404e7b:	0f be 4d 10          	movsbl 0x10(%ebp),%ecx
404e7f:	53                   	push   %ebx
404e80:	51                   	push   %ecx
404e81:	50                   	push   %eax
404e82:	89 45 08             	mov    %eax,0x8(%ebp)
404e85:	89 5f 10             	mov    %ebx,0x10(%edi)
404e88:	89 77 14             	mov    %esi,0x14(%edi)
404e8b:	e8 d0 ef 03 00       	call   0x443e60
404e90:	8b 75 08             	mov    0x8(%ebp),%esi
404e93:	83 c4 10             	add    $0x10,%esp
404e96:	8b 45 fc             	mov    -0x4(%ebp),%eax
404e99:	c6 04 1e 00          	movb   $0x0,(%esi,%ebx,1)
404e9d:	83 f8 10             	cmp    $0x10,%eax
404ea0:	72 0b                	jb     0x404ead
404ea2:	40                   	inc    %eax
404ea3:	50                   	push   %eax
404ea4:	ff 37                	push   (%edi)
404ea6:	e8 7f e6 ff ff       	call   0x40352a
404eab:	59                   	pop    %ecx
404eac:	59                   	pop    %ecx
404ead:	89 37                	mov    %esi,(%edi)
404eaf:	8b c7                	mov    %edi,%eax
404eb1:	5f                   	pop    %edi
404eb2:	5e                   	pop    %esi
404eb3:	5b                   	pop    %ebx
404eb4:	c9                   	leave
404eb5:	c2 0c 00             	ret    $0xc
404eb8:	e8 44 88 01 00       	call   0x41d701
404ebd:	cc                   	int3
404ebe:	55                   	push   %ebp
404ebf:	8b ec                	mov    %esp,%ebp
404ec1:	51                   	push   %ecx
404ec2:	53                   	push   %ebx
404ec3:	8b 5d 08             	mov    0x8(%ebp),%ebx
404ec6:	56                   	push   %esi
404ec7:	57                   	push   %edi
404ec8:	8b f9                	mov    %ecx,%edi
404eca:	81 fb fe ff ff 7f    	cmp    $0x7ffffffe,%ebx
404ed0:	77 5c                	ja     0x404f2e
404ed2:	8b 47 14             	mov    0x14(%edi),%eax
404ed5:	53                   	push   %ebx
404ed6:	89 45 fc             	mov    %eax,-0x4(%ebp)
404ed9:	e8 ce 1d 01 00       	call   0x416cac
404ede:	8b f0                	mov    %eax,%esi
404ee0:	8d 4e 01             	lea    0x1(%esi),%ecx
404ee3:	51                   	push   %ecx
404ee4:	8b cf                	mov    %edi,%ecx
404ee6:	e8 0a a6 01 00       	call   0x41f4f5
404eeb:	53                   	push   %ebx
404eec:	ff 75 10             	push   0x10(%ebp)
404eef:	89 45 08             	mov    %eax,0x8(%ebp)
404ef2:	50                   	push   %eax
404ef3:	89 5f 10             	mov    %ebx,0x10(%edi)
404ef6:	89 77 14             	mov    %esi,0x14(%edi)
404ef9:	e8 03 ef 01 00       	call   0x423e01
404efe:	8b 75 08             	mov    0x8(%ebp),%esi
404f01:	33 c0                	xor    %eax,%eax
404f03:	83 c4 0c             	add    $0xc,%esp
404f06:	66 89 04 5e          	mov    %ax,(%esi,%ebx,2)
404f0a:	8b 45 fc             	mov    -0x4(%ebp),%eax
404f0d:	83 f8 08             	cmp    $0x8,%eax
404f10:	72 11                	jb     0x404f23
404f12:	8d 04 45 02 00 00 00 	lea    0x2(,%eax,2),%eax
404f19:	50                   	push   %eax
404f1a:	ff 37                	push   (%edi)
404f1c:	e8 09 e6 ff ff       	call   0x40352a
404f21:	59                   	pop    %ecx
404f22:	59                   	pop    %ecx
404f23:	89 37                	mov    %esi,(%edi)
404f25:	8b c7                	mov    %edi,%eax
404f27:	5f                   	pop    %edi
404f28:	5e                   	pop    %esi
404f29:	5b                   	pop    %ebx
404f2a:	c9                   	leave
404f2b:	c2 0c 00             	ret    $0xc
404f2e:	e8 d9 87 01 00       	call   0x41d70c
404f33:	cc                   	int3
404f34:	55                   	push   %ebp
404f35:	8b ec                	mov    %esp,%ebp
404f37:	51                   	push   %ecx
404f38:	51                   	push   %ecx
404f39:	8b 55 08             	mov    0x8(%ebp),%edx
404f3c:	b8 ff ff ff 7f       	mov    $0x7fffffff,%eax
404f41:	53                   	push   %ebx
404f42:	8b 59 10             	mov    0x10(%ecx),%ebx
404f45:	2b c3                	sub    %ebx,%eax
404f47:	89 4d fc             	mov    %ecx,-0x4(%ebp)
404f4a:	56                   	push   %esi
404f4b:	57                   	push   %edi
404f4c:	3b c2                	cmp    %edx,%eax
404f4e:	72 7d                	jb     0x404fcd
404f50:	8b 41 14             	mov    0x14(%ecx),%eax
404f53:	8d 3c 13             	lea    (%ebx,%edx,1),%edi
404f56:	57                   	push   %edi
404f57:	89 45 f8             	mov    %eax,-0x8(%ebp)
404f5a:	e8 16 1d 01 00       	call   0x416c75
404f5f:	8b f0                	mov    %eax,%esi
404f61:	8d 4e 01             	lea    0x1(%esi),%ecx
404f64:	51                   	push   %ecx
404f65:	e8 1e d7 ff ff       	call   0x402688
404f6a:	83 7d f8 10          	cmpl   $0x10,-0x8(%ebp)
404f6e:	59                   	pop    %ecx
404f6f:	8b 4d fc             	mov    -0x4(%ebp),%ecx
404f72:	89 45 08             	mov    %eax,0x8(%ebp)
404f75:	53                   	push   %ebx
404f76:	89 79 10             	mov    %edi,0x10(%ecx)
404f79:	8b f9                	mov    %ecx,%edi
404f7b:	89 77 14             	mov    %esi,0x14(%edi)
404f7e:	72 2a                	jb     0x404faa
404f80:	8b 37                	mov    (%edi),%esi
404f82:	56                   	push   %esi
404f83:	50                   	push   %eax
404f84:	e8 d7 e3 03 00       	call   0x443360
404f89:	8b 4d 08             	mov    0x8(%ebp),%ecx
404f8c:	8a 45 10             	mov    0x10(%ebp),%al
404f8f:	88 04 19             	mov    %al,(%ecx,%ebx,1)
404f92:	8b 45 f8             	mov    -0x8(%ebp),%eax
404f95:	40                   	inc    %eax
404f96:	c6 44 19 01 00       	movb   $0x0,0x1(%ecx,%ebx,1)
404f9b:	50                   	push   %eax
404f9c:	56                   	push   %esi
404f9d:	e8 88 e5 ff ff       	call   0x40352a
404fa2:	8b 4d 08             	mov    0x8(%ebp),%ecx
404fa5:	83 c4 14             	add    $0x14,%esp
404fa8:	eb 18                	jmp    0x404fc2
404faa:	57                   	push   %edi
404fab:	50                   	push   %eax
404fac:	e8 af e3 03 00       	call   0x443360
404fb1:	8b 4d 08             	mov    0x8(%ebp),%ecx
404fb4:	83 c4 0c             	add    $0xc,%esp
404fb7:	8a 45 10             	mov    0x10(%ebp),%al
404fba:	88 04 19             	mov    %al,(%ecx,%ebx,1)
404fbd:	c6 44 19 01 00       	movb   $0x0,0x1(%ecx,%ebx,1)
404fc2:	89 0f                	mov    %ecx,(%edi)
404fc4:	8b c7                	mov    %edi,%eax
404fc6:	5f                   	pop    %edi
404fc7:	5e                   	pop    %esi
404fc8:	5b                   	pop    %ebx
404fc9:	c9                   	leave
404fca:	c2 0c 00             	ret    $0xc
404fcd:	e8 2f 87 01 00       	call   0x41d701
404fd2:	cc                   	int3
404fd3:	55                   	push   %ebp
404fd4:	8b ec                	mov    %esp,%ebp
404fd6:	51                   	push   %ecx
404fd7:	51                   	push   %ecx
404fd8:	8b 55 08             	mov    0x8(%ebp),%edx
404fdb:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
404fe0:	53                   	push   %ebx
404fe1:	8b d9                	mov    %ecx,%ebx
404fe3:	56                   	push   %esi
404fe4:	57                   	push   %edi
404fe5:	8b 4b 10             	mov    0x10(%ebx),%ecx
404fe8:	2b c1                	sub    %ecx,%eax
404fea:	89 4d fc             	mov    %ecx,-0x4(%ebp)
404fed:	3b c2                	cmp    %edx,%eax
404fef:	72 6b                	jb     0x40505c
404ff1:	8b 43 14             	mov    0x14(%ebx),%eax
404ff4:	8d 3c 11             	lea    (%ecx,%edx,1),%edi
404ff7:	57                   	push   %edi
404ff8:	8b cb                	mov    %ebx,%ecx
404ffa:	89 45 08             	mov    %eax,0x8(%ebp)
404ffd:	e8 aa 1c 01 00       	call   0x416cac
405002:	8b f0                	mov    %eax,%esi
405004:	8d 4e 01             	lea    0x1(%esi),%ecx
405007:	51                   	push   %ecx
405008:	8b cb                	mov    %ebx,%ecx
40500a:	e8 e6 a4 01 00       	call   0x41f4f5
40500f:	ff 75 14             	push   0x14(%ebp)
405012:	89 7b 10             	mov    %edi,0x10(%ebx)
405015:	8d 4d 0c             	lea    0xc(%ebp),%ecx
405018:	ff 75 10             	push   0x10(%ebp)
40501b:	8b 7d 08             	mov    0x8(%ebp),%edi
40501e:	89 45 f8             	mov    %eax,-0x8(%ebp)
405021:	89 73 14             	mov    %esi,0x14(%ebx)
405024:	ff 75 fc             	push   -0x4(%ebp)
405027:	83 ff 08             	cmp    $0x8,%edi
40502a:	72 1b                	jb     0x405047
40502c:	8b 33                	mov    (%ebx),%esi
40502e:	56                   	push   %esi
40502f:	50                   	push   %eax
405030:	e8 e8 af 00 00       	call   0x41001d
405035:	8d 04 7d 02 00 00 00 	lea    0x2(,%edi,2),%eax
40503c:	50                   	push   %eax
40503d:	56                   	push   %esi
40503e:	e8 e7 e4 ff ff       	call   0x40352a
405043:	59                   	pop    %ecx
405044:	59                   	pop    %ecx
405045:	eb 07                	jmp    0x40504e
405047:	53                   	push   %ebx
405048:	50                   	push   %eax
405049:	e8 cf af 00 00       	call   0x41001d
40504e:	8b 45 f8             	mov    -0x8(%ebp),%eax
405051:	5f                   	pop    %edi
405052:	89 03                	mov    %eax,(%ebx)
405054:	8b c3                	mov    %ebx,%eax
405056:	5e                   	pop    %esi
405057:	5b                   	pop    %ebx
405058:	c9                   	leave
405059:	c2 10 00             	ret    $0x10
40505c:	e8 ab 86 01 00       	call   0x41d70c
405061:	cc                   	int3
405062:	55                   	push   %ebp
405063:	8b ec                	mov    %esp,%ebp
405065:	51                   	push   %ecx
405066:	51                   	push   %ecx
405067:	8b 55 08             	mov    0x8(%ebp),%edx
40506a:	b8 fe ff ff 7f       	mov    $0x7ffffffe,%eax
40506f:	53                   	push   %ebx
405070:	8b d9                	mov    %ecx,%ebx
405072:	56                   	push   %esi
405073:	57                   	push   %edi
405074:	8b 4b 10             	mov    0x10(%ebx),%ecx
405077:	2b c1                	sub    %ecx,%eax
405079:	89 4d fc             	mov    %ecx,-0x4(%ebp)
40507c:	3b c2                	cmp    %edx,%eax
40507e:	72 68                	jb     0x4050e8
405080:	8b 43 14             	mov    0x14(%ebx),%eax
405083:	8d 3c 11             	lea    (%ecx,%edx,1),%edi
405086:	57                   	push   %edi
405087:	8b cb                	mov    %ebx,%ecx
405089:	89 45 08             	mov    %eax,0x8(%ebp)
40508c:	e8 1b 1c 01 00       	call   0x416cac
405091:	8b f0                	mov    %eax,%esi
405093:	8d 4e 01             	lea    0x1(%esi),%ecx
405096:	51                   	push   %ecx
405097:	8b cb                	mov    %ebx,%ecx
405099:	e8 57 a4 01 00       	call   0x41f4f5
40509e:	ff 75 10             	push   0x10(%ebp)
4050a1:	89 7b 10             	mov    %edi,0x10(%ebx)
4050a4:	8d 4d 0c             	lea    0xc(%ebp),%ecx
4050a7:	8b 7d 08             	mov    0x8(%ebp),%edi
4050aa:	89 45 f8             	mov    %eax,-0x8(%ebp)
4050ad:	89 73 14             	mov    %esi,0x14(%ebx)
4050b0:	ff 75 fc             	push   -0x4(%ebp)
4050b3:	83 ff 08             	cmp    $0x8,%edi
4050b6:	72 1b                	jb     0x4050d3
4050b8:	8b 33                	mov    (%ebx),%esi
4050ba:	56                   	push   %esi
4050bb:	50                   	push   %eax
4050bc:	e8 9c af 00 00       	call   0x41005d
4050c1:	8d 04 7d 02 00 00 00 	lea    0x2(,%edi,2),%eax
4050c8:	50                   	push   %eax
4050c9:	56                   	push   %esi