418ddb:	50                   	push   %eax
418ddc:	ff 15 e0 a3 44 00    	call   *0x44a3e0
418de2:	59                   	pop    %ecx
418de3:	33 c0                	xor    %eax,%eax
418de5:	39 46 08             	cmp    %eax,0x8(%esi)
418de8:	74 0f                	je     0x418df9
418dea:	8b ce                	mov    %esi,%ecx
418dec:	e8 07 bc fe ff       	call   0x4049f8
418df1:	85 c0                	test   %eax,%eax
418df3:	0f 85 91 be fe ff    	jne    0x404c8a
418df9:	f7 07 00 00 10 00    	testl  $0x100000,(%edi)
418dff:	0f 84 83 be fe ff    	je     0x404c88
418e05:	e8 e5 e4 ff ff       	call   0x4172ef
418e0a:	84 c0                	test   %al,%al
418e0c:	0f 84 76 be fe ff    	je     0x404c88
418e12:	b9 04 01 00 00       	mov    $0x104,%ecx
418e17:	c6 84 24 bc 04 00 00 	movb   $0x1,0x4bc(%esp)
418e1e:	01
418e1f:	33 c0                	xor    %eax,%eax
418e21:	89 8c 24 c0 04 00 00 	mov    %ecx,0x4c0(%esp)
418e28:	51                   	push   %ecx
418e29:	50                   	push   %eax
418e2a:	89 84 24 c0 04 00 00 	mov    %eax,0x4c0(%esp)
418e31:	8d 84 24 b8 02 00 00 	lea    0x2b8(%esp),%eax
418e38:	50                   	push   %eax
418e39:	e8 7f f1 ff ff       	call   0x417fbd
418e3e:	33 c0                	xor    %eax,%eax
418e40:	8d 8c 24 bc 02 00 00 	lea    0x2bc(%esp),%ecx
418e47:	83 c4 0c             	add    $0xc,%esp
418e4a:	38 84 24 bc 04 00 00 	cmp    %al,0x4bc(%esp)
418e51:	0f 94 c0             	sete   %al
418e54:	48                   	dec    %eax
418e55:	25 e3 7e 00 00       	and    $0x7ee3,%eax
418e5a:	05 04 01 00 00       	add    $0x104,%eax
418e5f:	50                   	push   %eax
418e60:	e8 8b 55 ff ff       	call   0x40e3f0
418e65:	85 c0                	test   %eax,%eax
418e67:	0f 88 fb 00 00 00    	js     0x418f68
418e6d:	8b 8c 24 b8 04 00 00 	mov    0x4b8(%esp),%ecx
418e74:	85 c9                	test   %ecx,%ecx
418e76:	75 07                	jne    0x418e7f
418e78:	8d 8c 24 b0 02 00 00 	lea    0x2b0(%esp),%ecx
418e7f:	8b 44 24 10          	mov    0x10(%esp),%eax
418e83:	8b 94 24 c0 04 00 00 	mov    0x4c0(%esp),%edx
418e8a:	83 c0 2c             	add    $0x2c,%eax
418e8d:	50                   	push   %eax
418e8e:	8b 44 24 1c          	mov    0x1c(%esp),%eax
418e92:	ff 70 04             	push   0x4(%eax)
418e95:	e8 1e a6 ff ff       	call   0x4134b8
418e9a:	85 c0                	test   %eax,%eax
418e9c:	0f 85 c6 00 00 00    	jne    0x418f68
418ea2:	8b 84 24 b8 04 00 00 	mov    0x4b8(%esp),%eax
418ea9:	85 c0                	test   %eax,%eax
418eab:	75 07                	jne    0x418eb4
418ead:	8d 84 24 b0 02 00 00 	lea    0x2b0(%esp),%eax
418eb4:	33 d2                	xor    %edx,%edx
418eb6:	8d 4c 24 38          	lea    0x38(%esp),%ecx
418eba:	52                   	push   %edx
418ebb:	51                   	push   %ecx
418ebc:	52                   	push   %edx
418ebd:	50                   	push   %eax
418ebe:	ff 15 38 d0 44 00    	call   *0x44d038
418ec4:	89 44 24 0c          	mov    %eax,0xc(%esp)
418ec8:	83 f8 ff             	cmp    $0xffffffff,%eax
418ecb:	0f 84 97 00 00 00    	je     0x418f68
418ed1:	8d 4c 24 40          	lea    0x40(%esp),%ecx
418ed5:	8d 51 02             	lea    0x2(%ecx),%edx
418ed8:	66 8b 01             	mov    (%ecx),%ax
418edb:	83 c1 02             	add    $0x2,%ecx
418ede:	66 3b 44 24 28       	cmp    0x28(%esp),%ax
418ee3:	75 f3                	jne    0x418ed8
418ee5:	2b ca                	sub    %edx,%ecx
418ee7:	d1 f9                	sar    $1,%ecx
418ee9:	83 f9 02             	cmp    $0x2,%ecx
418eec:	72 08                	jb     0x418ef6
418eee:	66 83 7c 24 42 3a    	cmpw   $0x3a,0x42(%esp)
418ef4:	74 51                	je     0x418f47
418ef6:	8b 17                	mov    (%edi),%edx
418ef8:	8d 44 24 38          	lea    0x38(%esp),%eax
418efc:	50                   	push   %eax
418efd:	ff 74 24 14          	push   0x14(%esp)
418f01:	8b ce                	mov    %esi,%ecx
418f03:	e8 57 17 01 00       	call   0x42a65f
418f08:	8b d8                	mov    %eax,%ebx
418f0a:	85 db                	test   %ebx,%ebx
418f0c:	75 39                	jne    0x418f47
418f0e:	39 46 08             	cmp    %eax,0x8(%esi)
418f11:	74 34                	je     0x418f47
418f13:	8b ce                	mov    %esi,%ecx
418f15:	e8 de ba fe ff       	call   0x4049f8
418f1a:	89 44 24 20          	mov    %eax,0x20(%esp)
418f1e:	85 c0                	test   %eax,%eax
418f20:	74 25                	je     0x418f47
418f22:	8b 84 24 b8 04 00 00 	mov    0x4b8(%esp),%eax
418f29:	33 c9                	xor    %ecx,%ecx
418f2b:	89 8c 24 b8 04 00 00 	mov    %ecx,0x4b8(%esp)
418f32:	85 c0                	test   %eax,%eax
418f34:	74 08                	je     0x418f3e
418f36:	50                   	push   %eax
418f37:	ff 15 e0 a3 44 00    	call   *0x44a3e0
418f3d:	59                   	pop    %ecx
418f3e:	8b 44 24 20          	mov    0x20(%esp),%eax
418f42:	e9 43 bd fe ff       	jmp    0x404c8a
418f47:	8d 44 24 38          	lea    0x38(%esp),%eax
418f4b:	50                   	push   %eax
418f4c:	ff 74 24 10          	push   0x10(%esp)
418f50:	ff 15 0c d0 44 00    	call   *0x44d00c
418f56:	85 c0                	test   %eax,%eax
418f58:	0f 85 73 ff ff ff    	jne    0x418ed1
418f5e:	ff 74 24 0c          	push   0xc(%esp)
418f62:	ff 15 d8 a0 44 00    	call   *0x44a0d8
418f68:	8b 84 24 b8 04 00 00 	mov    0x4b8(%esp),%eax
418f6f:	33 c9                	xor    %ecx,%ecx
418f71:	89 8c 24 b8 04 00 00 	mov    %ecx,0x4b8(%esp)
418f78:	85 c0                	test   %eax,%eax
418f7a:	0f 84 08 bd fe ff    	je     0x404c88
418f80:	50                   	push   %eax
418f81:	ff 15 e0 a3 44 00    	call   *0x44a3e0
418f87:	59                   	pop    %ecx
418f88:	e9 fb bc fe ff       	jmp    0x404c88
418f8d:	0f b7 43 02          	movzwl 0x2(%ebx),%eax
418f91:	66 85 c0             	test   %ax,%ax
418f94:	74 09                	je     0x418f9f
418f96:	8d 04 45 2c 00 00 00 	lea    0x2c(,%eax,2),%eax
418f9d:	eb 03                	jmp    0x418fa2
418f9f:	6a 2c                	push   $0x2c
418fa1:	58                   	pop    %eax
418fa2:	51                   	push   %ecx
418fa3:	8d 4b 04             	lea    0x4(%ebx),%ecx
418fa6:	03 c1                	add    %ecx,%eax
418fa8:	8b ce                	mov    %esi,%ecx
418faa:	50                   	push   %eax
418fab:	e8 72 1b 01 00       	call   0x42ab22
418fb0:	8b d8                	mov    %eax,%ebx
418fb2:	85 db                	test   %ebx,%ebx
418fb4:	75 1c                	jne    0x418fd2
418fb6:	6a 0e                	push   $0xe
418fb8:	5a                   	pop    %edx
418fb9:	8b ce                	mov    %esi,%ecx
418fbb:	e8 f1 f0 00 00       	call   0x4280b1
418fc0:	ff 74 24 10          	push   0x10(%esp)
418fc4:	8b 57 5c             	mov    0x5c(%edi),%edx
418fc7:	8b ce                	mov    %esi,%ecx
418fc9:	ff 37                	push   (%edi)
418fcb:	e8 a3 1a 01 00       	call   0x42aa73
418fd0:	8b d8                	mov    %eax,%ebx
418fd2:	83 7e 08 00          	cmpl   $0x0,0x8(%esi)
418fd6:	0f 84 ac bc fe ff    	je     0x404c88
418fdc:	8b ce                	mov    %esi,%ecx
418fde:	e8 15 ba fe ff       	call   0x4049f8
418fe3:	85 c0                	test   %eax,%eax
418fe5:	0f 85 9f bc fe ff    	jne    0x404c8a
418feb:	e9 98 bc fe ff       	jmp    0x404c88
418ff0:	85 d2                	test   %edx,%edx
418ff2:	0f 84 fc bc fe ff    	je     0x404cf4
418ff8:	f7 c1 00 40 00 00    	test   $0x4000,%ecx
418ffe:	74 0f                	je     0x41900f
419000:	ff 76 5c             	push   0x5c(%esi)
419003:	8d 56 10             	lea    0x10(%esi),%edx
419006:	8b cb                	mov    %ebx,%ecx
419008:	e8 19 16 01 00       	call   0x42a626
41900d:	8b 0e                	mov    (%esi),%ecx
41900f:	f6 c1 04             	test   $0x4,%cl
419012:	74 17                	je     0x41902b
419014:	8b cb                	mov    %ebx,%ecx
419016:	e8 e1 24 01 00       	call   0x42b4fc
41901b:	66 83 c0 03          	add    $0x3,%ax
41901f:	8b cf                	mov    %edi,%ecx
419021:	0f b7 d0             	movzwl %ax,%edx
419024:	e8 8e f2 00 00       	call   0x4282b7
419029:	eb 0a                	jmp    0x419035
41902b:	8b 47 20             	mov    0x20(%edi),%eax
41902e:	83 67 14 00          	andl   $0x0,0x14(%edi)
419032:	89 47 18             	mov    %eax,0x18(%edi)
419035:	f7 06 00 02 00 00    	testl  $0x200,(%esi)
41903b:	0f 84 df 00 00 00    	je     0x419120
419041:	8b 47 20             	mov    0x20(%edi),%eax
419044:	33 d2                	xor    %edx,%edx
419046:	f7 77 14             	divl   0x14(%edi)
419049:	8b c8                	mov    %eax,%ecx
41904b:	89 4c 24 20          	mov    %ecx,0x20(%esp)
41904f:	85 c9                	test   %ecx,%ecx
419051:	0f 84 c9 00 00 00    	je     0x419120
419057:	8b 44 24 10          	mov    0x10(%esp),%eax
41905b:	33 d2                	xor    %edx,%edx
41905d:	03 c1                	add    %ecx,%eax
41905f:	f7 f1                	div    %ecx
419061:	33 d2                	xor    %edx,%edx
419063:	89 44 24 14          	mov    %eax,0x14(%esp)
419067:	89 54 24 24          	mov    %edx,0x24(%esp)
41906b:	85 c0                	test   %eax,%eax
41906d:	0f 84 8f 00 00 00    	je     0x419102
419073:	83 64 24 18 00       	andl   $0x0,0x18(%esp)
419078:	89 54 24 1c          	mov    %edx,0x1c(%esp)
41907c:	85 c9                	test   %ecx,%ecx
41907e:	74 71                	je     0x4190f1
419080:	83 3d 9c 25 43 00 00 	cmpl   $0x0,0x43259c
419087:	0f 85 ea 00 00 00    	jne    0x419177
41908d:	3b 54 24 10          	cmp    0x10(%esp),%edx
419091:	73 47                	jae    0x4190da
419093:	8b 43 1c             	mov    0x1c(%ebx),%eax
419096:	56                   	push   %esi
419097:	57                   	push   %edi
419098:	8b 04 90             	mov    (%eax,%edx,4),%eax
41909b:	8b 48 24             	mov    0x24(%eax),%ecx
41909e:	8b 40 20             	mov    0x20(%eax),%eax
4190a1:	01 4e 68             	add    %ecx,0x68(%esi)
4190a4:	11 46 6c             	adc    %eax,0x6c(%esi)
4190a7:	8b 43 1c             	mov    0x1c(%ebx),%eax
4190aa:	ff 34 90             	push   (%eax,%edx,4)
4190ad:	53                   	push   %ebx
4190ae:	e8 5d bb fe ff       	call   0x404c10
4190b3:	85 c0                	test   %eax,%eax
4190b5:	0f 85 44 bc fe ff    	jne    0x404cff
4190bb:	8b 44 24 18          	mov    0x18(%esp),%eax
4190bf:	8b 54 24 1c          	mov    0x1c(%esp),%edx
4190c3:	40                   	inc    %eax
4190c4:	03 54 24 14          	add    0x14(%esp),%edx
4190c8:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4190cc:	89 44 24 18          	mov    %eax,0x18(%esp)
4190d0:	89 54 24 1c          	mov    %edx,0x1c(%esp)
4190d4:	3b c1                	cmp    %ecx,%eax
4190d6:	72 a8                	jb     0x419080
4190d8:	eb 13                	jmp    0x4190ed
4190da:	8b cf                	mov    %edi,%ecx
4190dc:	e8 17 b9 fe ff       	call   0x4049f8
4190e1:	85 c0                	test   %eax,%eax
4190e3:	0f 85 16 bc fe ff    	jne    0x404cff
4190e9:	8b 4c 24 20          	mov    0x20(%esp),%ecx
4190ed:	8b 44 24 14          	mov    0x14(%esp),%eax
4190f1:	8b 54 24 24          	mov    0x24(%esp),%edx
4190f5:	42                   	inc    %edx
4190f6:	89 54 24 24          	mov    %edx,0x24(%esp)
4190fa:	3b d0                	cmp    %eax,%edx
4190fc:	0f 82 71 ff ff ff    	jb     0x419073
419102:	83 7f 08 00          	cmpl   $0x0,0x8(%edi)
419106:	0f 84 e8 bb fe ff    	je     0x404cf4
41910c:	8b cf                	mov    %edi,%ecx
41910e:	e8 e5 b8 fe ff       	call   0x4049f8
419113:	85 c0                	test   %eax,%eax
419115:	0f 84 d9 bb fe ff    	je     0x404cf4
41911b:	e9 df bb fe ff       	jmp    0x404cff
419120:	a1 9c 25 43 00       	mov    0x43259c,%eax
419125:	85 c0                	test   %eax,%eax
419127:	75 4e                	jne    0x419177
419129:	33 d2                	xor    %edx,%edx
41912b:	89 54 24 24          	mov    %edx,0x24(%esp)
41912f:	39 54 24 10          	cmp    %edx,0x10(%esp)
419133:	76 cd                	jbe    0x419102
419135:	85 c0                	test   %eax,%eax
419137:	75 3e                	jne    0x419177
419139:	8b 43 1c             	mov    0x1c(%ebx),%eax
41913c:	56                   	push   %esi
41913d:	57                   	push   %edi
41913e:	8b 04 90             	mov    (%eax,%edx,4),%eax
419141:	8b 48 24             	mov    0x24(%eax),%ecx
419144:	8b 40 20             	mov    0x20(%eax),%eax
419147:	01 4e 68             	add    %ecx,0x68(%esi)
41914a:	11 46 6c             	adc    %eax,0x6c(%esi)
41914d:	8b 43 1c             	mov    0x1c(%ebx),%eax
419150:	ff 34 90             	push   (%eax,%edx,4)
419153:	53                   	push   %ebx
419154:	e8 b7 ba fe ff       	call   0x404c10
419159:	85 c0                	test   %eax,%eax
41915b:	0f 85 9e bb fe ff    	jne    0x404cff
419161:	8b 54 24 24          	mov    0x24(%esp),%edx
419165:	42                   	inc    %edx
419166:	89 54 24 24          	mov    %edx,0x24(%esp)
41916a:	3b 54 24 10          	cmp    0x10(%esp),%edx
41916e:	73 92                	jae    0x419102
419170:	a1 9c 25 43 00       	mov    0x43259c,%eax
419175:	eb be                	jmp    0x419135
419177:	33 c0                	xor    %eax,%eax
419179:	40                   	inc    %eax
41917a:	e9 80 bb fe ff       	jmp    0x404cff
41917f:	8b 43 24             	mov    0x24(%ebx),%eax
419182:	03 43 20             	add    0x20(%ebx),%eax
419185:	0f 84 72 bb fe ff    	je     0x404cfd
41918b:	ff 36                	push   (%esi)
41918d:	8d 53 28             	lea    0x28(%ebx),%edx
419190:	8b cf                	mov    %edi,%ecx
419192:	ff 73 20             	push   0x20(%ebx)
419195:	e8 35 17 01 00       	call   0x42a8cf
41919a:	85 c0                	test   %eax,%eax
41919c:	0f 85 5d bb fe ff    	jne    0x404cff
4191a2:	e9 56 bb fe ff       	jmp    0x404cfd
4191a7:	33 f6                	xor    %esi,%esi
4191a9:	46                   	inc    %esi
4191aa:	89 75 fc             	mov    %esi,-0x4(%ebp)
4191ad:	e9 ec bd fe ff       	jmp    0x404f9e
4191b2:	b9 f0 8b 44 00       	mov    $0x448bf0,%ecx
4191b7:	e9 d9 bc fe ff       	jmp    0x404e95
4191bc:	e8 61 07 01 00       	call   0x429922
4191c1:	6a 01                	push   $0x1
4191c3:	68 30 0a 44 00       	push   $0x440a30
4191c8:	ff 15 30 a4 44 00    	call   *0x44a430
4191ce:	e8 f8 fa 00 00       	call   0x428ccb
4191d3:	8b 75 fc             	mov    -0x4(%ebp),%esi
4191d6:	e9 8c bd fe ff       	jmp    0x404f67
4191db:	80 f9 01             	cmp    $0x1,%cl
4191de:	0f 94 c0             	sete   %al
4191e1:	a2 58 90 44 00       	mov    %al,0x449058
4191e6:	c3                   	ret
4191e7:	0f b7 01             	movzwl (%ecx),%eax
4191ea:	8b d0                	mov    %eax,%edx
4191ec:	66 85 c0             	test   %ax,%ax
4191ef:	74 0e                	je     0x4191ff
4191f1:	33 c0                	xor    %eax,%eax
4191f3:	8b d1                	mov    %ecx,%edx
4191f5:	03 ce                	add    %esi,%ecx
4191f7:	66 39 01             	cmp    %ax,(%ecx)
4191fa:	75 f7                	jne    0x4191f3
4191fc:	0f b7 12             	movzwl (%edx),%edx
4191ff:	66 83 fa 3a          	cmp    $0x3a,%dx
419203:	0f 84 ef bd fe ff    	je     0x404ff8
419209:	c7 05 04 67 43 00 03 	movl   $0x3,0x436704
419210:	00 00 00
419213:	e9 e0 bd fe ff       	jmp    0x404ff8
419218:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
41921c:	74 eb                	je     0x419209
41921e:	8b 45 0c             	mov    0xc(%ebp),%eax
419221:	8b 08                	mov    (%eax),%ecx
419223:	85 c9                	test   %ecx,%ecx
419225:	74 24                	je     0x41924b
419227:	f6 40 1c 08          	testb  $0x8,0x1c(%eax)
41922b:	75 1e                	jne    0x41924b
41922d:	0f b7 01             	movzwl (%ecx),%eax
419230:	8b d0                	mov    %eax,%edx
419232:	66 85 c0             	test   %ax,%ax
419235:	74 0e                	je     0x419245
419237:	33 c0                	xor    %eax,%eax
419239:	8b d1                	mov    %ecx,%edx
41923b:	03 ce                	add    %esi,%ecx
41923d:	66 39 01             	cmp    %ax,(%ecx)
419240:	75 f7                	jne    0x419239
419242:	0f b7 12             	movzwl (%edx),%edx
419245:	66 83 fa 3a          	cmp    $0x3a,%dx
419249:	75 be                	jne    0x419209
41924b:	c7 05 04 67 43 00 04 	movl   $0x4,0x436704
419252:	00 00 00
419255:	e9 9e bd fe ff       	jmp    0x404ff8
41925a:	8b d0                	mov    %eax,%edx
41925c:	66 89 16             	mov    %dx,(%esi)
41925f:	66 85 d2             	test   %dx,%dx
419262:	74 11                	je     0x419275
419264:	83 c1 02             	add    $0x2,%ecx
419267:	83 c6 02             	add    $0x2,%esi
41926a:	0f b7 01             	movzwl (%ecx),%eax
41926d:	66 89 06             	mov    %ax,(%esi)
419270:	66 85 c0             	test   %ax,%ax