410dcc:	8d 86 9c 01 00 00    	lea    0x19c(%esi),%eax
410dd2:	50                   	push   %eax
410dd3:	ff 15 e4 a0 42 00    	call   *0x42a0e4
410dd9:	ff b6 94 01 00 00    	push   0x194(%esi)
410ddf:	ff d5                	call   *%ebp
410de1:	ff b6 98 01 00 00    	push   0x198(%esi)
410de7:	ff d5                	call   *%ebp
410de9:	5e                   	pop    %esi
410dea:	5d                   	pop    %ebp
410deb:	5b                   	pop    %ebx
410dec:	c3                   	ret
410ded:	55                   	push   %ebp
410dee:	8b ec                	mov    %esp,%ebp
410df0:	51                   	push   %ecx
410df1:	51                   	push   %ecx
410df2:	56                   	push   %esi
410df3:	8d 45 f8             	lea    -0x8(%ebp),%eax
410df6:	50                   	push   %eax
410df7:	8b f1                	mov    %ecx,%esi
410df9:	e8 e3 fe ff ff       	call   0x410ce1
410dfe:	84 c0                	test   %al,%al
410e00:	74 3f                	je     0x410e41
410e02:	57                   	push   %edi
410e03:	8d be 9c 01 00 00    	lea    0x19c(%esi),%edi
410e09:	ff 75 fc             	push   -0x4(%ebp)
410e0c:	ff 55 f8             	call   *-0x8(%ebp)
410e0f:	57                   	push   %edi
410e10:	ff 15 e8 a0 42 00    	call   *0x42a0e8
410e16:	ff 8e 84 00 00 00    	decl   0x84(%esi)
410e1c:	75 0c                	jne    0x410e2a
410e1e:	ff b6 98 01 00 00    	push   0x198(%esi)
410e24:	ff 15 00 a1 42 00    	call   *0x42a100
410e2a:	57                   	push   %edi
410e2b:	ff 15 ec a0 42 00    	call   *0x42a0ec
410e31:	8d 45 f8             	lea    -0x8(%ebp),%eax
410e34:	50                   	push   %eax
410e35:	8b ce                	mov    %esi,%ecx
410e37:	e8 a5 fe ff ff       	call   0x410ce1
410e3c:	84 c0                	test   %al,%al
410e3e:	75 c9                	jne    0x410e09
410e40:	5f                   	pop    %edi
410e41:	5e                   	pop    %esi
410e42:	c9                   	leave
410e43:	c3                   	ret
410e44:	56                   	push   %esi
410e45:	8b f1                	mov    %ecx,%esi
410e47:	8b 86 88 01 00 00    	mov    0x188(%esi),%eax
410e4d:	40                   	inc    %eax
410e4e:	83 e0 1f             	and    $0x1f,%eax
410e51:	3b 86 8c 01 00 00    	cmp    0x18c(%esi),%eax
410e57:	75 05                	jne    0x410e5e
410e59:	e8 e3 fe ff ff       	call   0x410d41
410e5e:	8b 86 88 01 00 00    	mov    0x188(%esi),%eax
410e64:	8b 4c 24 08          	mov    0x8(%esp),%ecx
410e68:	89 8c c6 88 00 00 00 	mov    %ecx,0x88(%esi,%eax,8)
410e6f:	8b 86 88 01 00 00    	mov    0x188(%esi),%eax
410e75:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
410e79:	89 8c c6 8c 00 00 00 	mov    %ecx,0x8c(%esi,%eax,8)
410e80:	8b 86 88 01 00 00    	mov    0x188(%esi),%eax
410e86:	40                   	inc    %eax
410e87:	83 e0 1f             	and    $0x1f,%eax
410e8a:	89 86 88 01 00 00    	mov    %eax,0x188(%esi)
410e90:	5e                   	pop    %esi
410e91:	c2 08 00             	ret    $0x8
410e94:	8b 4c 24 04          	mov    0x4(%esp),%ecx
410e98:	e8 50 ff ff ff       	call   0x410ded
410e9d:	33 c0                	xor    %eax,%eax
410e9f:	c2 04 00             	ret    $0x4
410ea2:	57                   	push   %edi
410ea3:	bf 58 ea 44 00       	mov    $0x44ea58,%edi
410ea8:	57                   	push   %edi
410ea9:	ff 15 e8 a0 42 00    	call   *0x42a0e8
410eaf:	83 7c 24 08 00       	cmpl   $0x0,0x8(%esp)
410eb4:	74 31                	je     0x410ee7
410eb6:	8b 0d 4c ea 44 00    	mov    0x44ea4c,%ecx
410ebc:	39 4c 24 08          	cmp    %ecx,0x8(%esp)
410ec0:	75 25                	jne    0x410ee7
410ec2:	83 3d 50 ea 44 00 00 	cmpl   $0x0,0x44ea50
410ec9:	76 1c                	jbe    0x410ee7
410ecb:	ff 0d 50 ea 44 00    	decl   0x44ea50
410ed1:	75 14                	jne    0x410ee7
410ed3:	56                   	push   %esi
410ed4:	8b f1                	mov    %ecx,%esi
410ed6:	85 c9                	test   %ecx,%ecx
410ed8:	74 0c                	je     0x410ee6
410eda:	e8 a9 fe ff ff       	call   0x410d88
410edf:	56                   	push   %esi
410ee0:	e8 f2 8f 00 00       	call   0x419ed7
410ee5:	59                   	pop    %ecx
410ee6:	5e                   	pop    %esi
410ee7:	57                   	push   %edi
410ee8:	ff 15 ec a0 42 00    	call   *0x42a0ec
410eee:	5f                   	pop    %edi
410eef:	c2 04 00             	ret    $0x4
410ef2:	51                   	push   %ecx
410ef3:	8b 44 24 08          	mov    0x8(%esp),%eax
410ef7:	53                   	push   %ebx
410ef8:	55                   	push   %ebp
410ef9:	56                   	push   %esi
410efa:	57                   	push   %edi
410efb:	6a 20                	push   $0x20
410efd:	5f                   	pop    %edi
410efe:	8b f1                	mov    %ecx,%esi
410f00:	89 06                	mov    %eax,(%esi)
410f02:	3b c7                	cmp    %edi,%eax
410f04:	76 02                	jbe    0x410f08
410f06:	89 3e                	mov    %edi,(%esi)
410f08:	33 ed                	xor    %ebp,%ebp
410f0a:	33 db                	xor    %ebx,%ebx
410f0c:	45                   	inc    %ebp
410f0d:	39 1e                	cmp    %ebx,(%esi)
410f0f:	75 02                	jne    0x410f13
410f11:	89 2e                	mov    %ebp,(%esi)
410f13:	39 3e                	cmp    %edi,(%esi)
410f15:	76 02                	jbe    0x410f19
410f17:	89 3e                	mov    %edi,(%esi)
410f19:	8d 86 9c 01 00 00    	lea    0x19c(%esi),%eax
410f1f:	50                   	push   %eax
410f20:	88 9e 90 01 00 00    	mov    %bl,0x190(%esi)
410f26:	ff 15 e0 a0 42 00    	call   *0x42a0e0
410f2c:	53                   	push   %ebx
410f2d:	57                   	push   %edi
410f2e:	53                   	push   %ebx
410f2f:	53                   	push   %ebx
410f30:	ff 15 0c a1 42 00    	call   *0x42a10c
410f36:	53                   	push   %ebx
410f37:	55                   	push   %ebp
410f38:	55                   	push   %ebp
410f39:	53                   	push   %ebx
410f3a:	89 86 94 01 00 00    	mov    %eax,0x194(%esi)
410f40:	ff 15 08 a1 42 00    	call   *0x42a108
410f46:	89 86 98 01 00 00    	mov    %eax,0x198(%esi)
410f4c:	39 9e 94 01 00 00    	cmp    %ebx,0x194(%esi)
410f52:	74 04                	je     0x410f58
410f54:	3b c3                	cmp    %ebx,%eax
410f56:	75 1b                	jne    0x410f73
410f58:	68 48 ad 42 00       	push   $0x42ad48
410f5d:	bf 74 2a 43 00       	mov    $0x432a74,%edi
410f62:	57                   	push   %edi
410f63:	e8 f5 55 ff ff       	call   0x40655d
410f68:	59                   	pop    %ecx
410f69:	59                   	pop    %ecx
410f6a:	6a 02                	push   $0x2
410f6c:	8b cf                	mov    %edi,%ecx
410f6e:	e8 38 55 ff ff       	call   0x4064ab
410f73:	89 5c 24 18          	mov    %ebx,0x18(%esp)
410f77:	39 1e                	cmp    %ebx,(%esi)
410f79:	76 6b                	jbe    0x410fe6
410f7b:	8d 6e 04             	lea    0x4(%esi),%ebp
410f7e:	8d 44 24 10          	lea    0x10(%esp),%eax
410f82:	50                   	push   %eax
410f83:	53                   	push   %ebx
410f84:	56                   	push   %esi
410f85:	68 94 0e 41 00       	push   $0x410e94
410f8a:	68 00 00 01 00       	push   $0x10000
410f8f:	53                   	push   %ebx
410f90:	ff 15 f0 a0 42 00    	call   *0x42a0f0
410f96:	8b f8                	mov    %eax,%edi
410f98:	3b fb                	cmp    %ebx,%edi
410f9a:	75 27                	jne    0x410fc3
410f9c:	68 b8 ac 42 00       	push   $0x42acb8
410fa1:	68 74 2a 43 00       	push   $0x432a74
410fa6:	e8 b2 55 ff ff       	call   0x40655d
410fab:	59                   	pop    %ecx
410fac:	59                   	pop    %ecx
410fad:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
410fb2:	e8 49 00 ff ff       	call   0x401000
410fb7:	6a 02                	push   $0x2
410fb9:	b9 74 2a 43 00       	mov    $0x432a74,%ecx
410fbe:	e8 e8 54 ff ff       	call   0x4064ab
410fc3:	89 7d 00             	mov    %edi,0x0(%ebp)
410fc6:	a1 54 ea 44 00       	mov    0x44ea54,%eax
410fcb:	3b c3                	cmp    %ebx,%eax
410fcd:	74 08                	je     0x410fd7
410fcf:	50                   	push   %eax
410fd0:	57                   	push   %edi
410fd1:	ff 15 04 a1 42 00    	call   *0x42a104
410fd7:	ff 44 24 18          	incl   0x18(%esp)
410fdb:	8b 44 24 18          	mov    0x18(%esp),%eax
410fdf:	83 c5 04             	add    $0x4,%ebp
410fe2:	3b 06                	cmp    (%esi),%eax
410fe4:	72 98                	jb     0x410f7e
410fe6:	5f                   	pop    %edi
410fe7:	89 9e 88 01 00 00    	mov    %ebx,0x188(%esi)
410fed:	89 9e 8c 01 00 00    	mov    %ebx,0x18c(%esi)
410ff3:	89 9e 84 00 00 00    	mov    %ebx,0x84(%esi)
410ff9:	8b c6                	mov    %esi,%eax
410ffb:	5e                   	pop    %esi
410ffc:	5d                   	pop    %ebp
410ffd:	5b                   	pop    %ebx
410ffe:	59                   	pop    %ecx
410fff:	c2 04 00             	ret    $0x4
411002:	b8 1a 94 42 00       	mov    $0x42941a,%eax
411007:	e8 ac 8e 00 00       	call   0x419eb8
41100c:	51                   	push   %ecx
41100d:	56                   	push   %esi
41100e:	be 58 ea 44 00       	mov    $0x44ea58,%esi
411013:	56                   	push   %esi
411014:	ff 15 e8 a0 42 00    	call   *0x42a0e8
41101a:	a1 50 ea 44 00       	mov    0x44ea50,%eax
41101f:	ff 05 50 ea 44 00    	incl   0x44ea50
411025:	85 c0                	test   %eax,%eax
411027:	75 25                	jne    0x41104e
411029:	68 b4 01 00 00       	push   $0x1b4
41102e:	e8 47 92 00 00       	call   0x41a27a
411033:	59                   	pop    %ecx
411034:	8b c8                	mov    %eax,%ecx
411036:	89 4d f0             	mov    %ecx,-0x10(%ebp)
411039:	33 c0                	xor    %eax,%eax
41103b:	89 45 fc             	mov    %eax,-0x4(%ebp)
41103e:	3b c8                	cmp    %eax,%ecx
411040:	74 07                	je     0x411049
411042:	6a 20                	push   $0x20
411044:	e8 a9 fe ff ff       	call   0x410ef2
411049:	a3 4c ea 44 00       	mov    %eax,0x44ea4c
41104e:	56                   	push   %esi
41104f:	ff 15 ec a0 42 00    	call   *0x42a0ec
411055:	8b 4d f4             	mov    -0xc(%ebp),%ecx
411058:	a1 4c ea 44 00       	mov    0x44ea4c,%eax
41105d:	5e                   	pop    %esi
41105e:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
411065:	c9                   	leave
411066:	c3                   	ret
411067:	8b c1                	mov    %ecx,%eax
411069:	8b 4c 24 04          	mov    0x4(%esp),%ecx
41106d:	8b 11                	mov    (%ecx),%edx
41106f:	8b 49 04             	mov    0x4(%ecx),%ecx
411072:	89 10                	mov    %edx,(%eax)
411074:	89 48 04             	mov    %ecx,0x4(%eax)
411077:	c2 04 00             	ret    $0x4
41107a:	8b 01                	mov    (%ecx),%eax
41107c:	8b 49 04             	mov    0x4(%ecx),%ecx
41107f:	8b 54 24 04          	mov    0x4(%esp),%edx
411083:	89 02                	mov    %eax,(%edx)
411085:	89 4a 04             	mov    %ecx,0x4(%edx)
411088:	c2 04 00             	ret    $0x4
41108b:	8b 44 24 04          	mov    0x4(%esp),%eax
41108f:	56                   	push   %esi
411090:	8b f1                	mov    %ecx,%esi
411092:	8b 4c 24 0c          	mov    0xc(%esp),%ecx
411096:	6a 00                	push   $0x0
411098:	05 00 91 10 b6       	add    $0xb6109100,%eax
41109d:	68 80 96 98 00       	push   $0x989680
4110a2:	83 d1 02             	adc    $0x2,%ecx
4110a5:	51                   	push   %ecx
4110a6:	50                   	push   %eax
4110a7:	e8 04 95 00 00       	call   0x41a5b0
4110ac:	89 06                	mov    %eax,(%esi)
4110ae:	89 56 04             	mov    %edx,0x4(%esi)
4110b1:	8b c6                	mov    %esi,%eax
4110b3:	5e                   	pop    %esi
4110b4:	c2 08 00             	ret    $0x8
4110b7:	8b 44 24 04          	mov    0x4(%esp),%eax
4110bb:	89 01                	mov    %eax,(%ecx)
4110bd:	8b 44 24 08          	mov    0x8(%esp),%eax
4110c1:	89 41 04             	mov    %eax,0x4(%ecx)
4110c4:	c2 08 00             	ret    $0x8
4110c7:	55                   	push   %ebp
4110c8:	8b ec                	mov    %esp,%ebp
4110ca:	83 ec 18             	sub    $0x18,%esp
4110cd:	56                   	push   %esi
4110ce:	8d 45 e8             	lea    -0x18(%ebp),%eax
4110d1:	50                   	push   %eax
4110d2:	8b f1                	mov    %ecx,%esi
4110d4:	ff 15 14 a1 42 00    	call   *0x42a114
4110da:	8d 45 f8             	lea    -0x8(%ebp),%eax
4110dd:	50                   	push   %eax
4110de:	8d 45 e8             	lea    -0x18(%ebp),%eax
4110e1:	50                   	push   %eax
4110e2:	ff 15 10 a1 42 00    	call   *0x42a110
4110e8:	8b 45 f8             	mov    -0x8(%ebp),%eax
4110eb:	8b 4d fc             	mov    -0x4(%ebp),%ecx
4110ee:	89 06                	mov    %eax,(%esi)
4110f0:	89 4e 04             	mov    %ecx,0x4(%esi)
4110f3:	5e                   	pop    %esi
4110f4:	c9                   	leave
4110f5:	c3                   	ret
4110f6:	8b 4c 24 04          	mov    0x4(%esp),%ecx
4110fa:	f6 c1 03             	test   $0x3,%cl
4110fd:	75 21                	jne    0x411120
4110ff:	56                   	push   %esi
411100:	8b c1                	mov    %ecx,%eax
411102:	6a 64                	push   $0x64
411104:	99                   	cltd
411105:	5e                   	pop    %esi
411106:	f7 fe                	idiv   %esi
411108:	5e                   	pop    %esi
411109:	85 d2                	test   %edx,%edx
41110b:	75 0e                	jne    0x41111b
41110d:	8b c1                	mov    %ecx,%eax
41110f:	99                   	cltd
411110:	b9 90 01 00 00       	mov    $0x190,%ecx
411115:	f7 f9                	idiv   %ecx
411117:	85 d2                	test   %edx,%edx
411119:	75 05                	jne    0x411120
41111b:	33 c0                	xor    %eax,%eax
41111d:	40                   	inc    %eax
41111e:	eb 02                	jmp    0x411122
411120:	33 c0                	xor    %eax,%eax
411122:	c2 04 00             	ret    $0x4
411125:	55                   	push   %ebp
411126:	8b ec                	mov    %esp,%ebp
411128:	83 ec 48             	sub    $0x48,%esp
41112b:	8b 01                	mov    (%ecx),%eax
41112d:	8b 49 04             	mov    0x4(%ecx),%ecx
411130:	53                   	push   %ebx
411131:	56                   	push   %esi
411132:	8b 35 ac a0 42 00    	mov    0x42a0ac,%esi
411138:	89 45 f0             	mov    %eax,-0x10(%ebp)
41113b:	57                   	push   %edi
41113c:	8d 45 c8             	lea    -0x38(%ebp),%eax
41113f:	50                   	push   %eax
411140:	8d 45 f0             	lea    -0x10(%ebp),%eax
411143:	50                   	push   %eax
411144:	89 4d f4             	mov    %ecx,-0xc(%ebp)
411147:	ff d6                	call   *%esi
411149:	8d 45 b8             	lea    -0x48(%ebp),%eax
41114c:	50                   	push   %eax
41114d:	8d 45 c8             	lea    -0x38(%ebp),%eax
411150:	50                   	push   %eax
411151:	6a 00                	push   $0x0
411153:	ff 15 18 a1 42 00    	call   *0x42a118
411159:	8b 3d 10 a1 42 00    	mov    0x42a110,%edi
41115f:	8d 45 f8             	lea    -0x8(%ebp),%eax
411162:	50                   	push   %eax
411163:	8d 45 b8             	lea    -0x48(%ebp),%eax
411166:	50                   	push   %eax
411167:	ff d7                	call   *%edi
411169:	8d 45 d8             	lea    -0x28(%ebp),%eax
41116c:	50                   	push   %eax
41116d:	8d 45 f8             	lea    -0x8(%ebp),%eax
411170:	50                   	push   %eax
411171:	ff d6                	call   *%esi
411173:	8b 75 08             	mov    0x8(%ebp),%esi
411176:	0f b7 5d e0          	movzwl -0x20(%ebp),%ebx
41117a:	0f b7 45 de          	movzwl -0x22(%ebp),%eax
41117e:	0f b7 4d da          	movzwl -0x26(%ebp),%ecx
411182:	0f b7 55 d8          	movzwl -0x28(%ebp),%edx
411186:	89 5e 0c             	mov    %ebx,0xc(%esi)
411189:	0f b7 5d e2          	movzwl -0x1e(%ebp),%ebx
41118d:	89 46 08             	mov    %eax,0x8(%esi)
411190:	89 5e 10             	mov    %ebx,0x10(%esi)
411193:	0f b7 5d e4          	movzwl -0x1c(%ebp),%ebx
411197:	48                   	dec    %eax
411198:	89 46 20             	mov    %eax,0x20(%esi)
41119b:	33 c0                	xor    %eax,%eax
41119d:	89 5e 14             	mov    %ebx,0x14(%esi)
4111a0:	0f b7 5d dc          	movzwl -0x24(%ebp),%ebx
4111a4:	40                   	inc    %eax
4111a5:	89 16                	mov    %edx,(%esi)