428036:	e8 9b 21 fe ff       	call   0x40a1d6
42803b:	8b 0d 88 67 43 00    	mov    0x436788,%ecx
428041:	8b 49 0c             	mov    0xc(%ecx),%ecx
428044:	e8 23 21 fe ff       	call   0x40a16c
428049:	8b 35 88 67 43 00    	mov    0x436788,%esi
42804f:	8b 76 20             	mov    0x20(%esi),%esi
428052:	89 35 88 67 43 00    	mov    %esi,0x436788
428058:	85 f6                	test   %esi,%esi
42805a:	0f 85 3f ff ff ff    	jne    0x427f9f
428060:	33 c0                	xor    %eax,%eax
428062:	a3 8c 67 43 00       	mov    %eax,0x43678c
428067:	a3 e8 65 43 00       	mov    %eax,0x4365e8
42806c:	a3 e4 65 43 00       	mov    %eax,0x4365e4
428071:	5e                   	pop    %esi
428072:	c3                   	ret
428073:	cc                   	int3
428074:	cc                   	int3
428075:	cc                   	int3
428076:	cc                   	int3
428077:	cc                   	int3
428078:	cc                   	int3
428079:	cc                   	int3
42807a:	cc                   	int3
42807b:	cc                   	int3
42807c:	cc                   	int3
42807d:	cc                   	int3
42807e:	cc                   	int3
42807f:	cc                   	int3
428080:	8b ff                	mov    %edi,%edi
428082:	55                   	push   %ebp
428083:	8b ec                	mov    %esp,%ebp
428085:	83 e4 f8             	and    $0xfffffff8,%esp
428088:	51                   	push   %ecx
428089:	56                   	push   %esi
42808a:	8b 75 08             	mov    0x8(%ebp),%esi
42808d:	33 c9                	xor    %ecx,%ecx
42808f:	8b 56 38             	mov    0x38(%esi),%edx
428092:	e8 d9 63 fe ff       	call   0x40e470
428097:	85 c0                	test   %eax,%eax
428099:	74 0f                	je     0x4280aa
42809b:	8b 56 3c             	mov    0x3c(%esi),%edx
42809e:	33 c9                	xor    %ecx,%ecx
4280a0:	a3 dc 65 43 00       	mov    %eax,0x4365dc
4280a5:	e8 c6 63 fe ff       	call   0x40e470
4280aa:	5e                   	pop    %esi
4280ab:	8b e5                	mov    %ebp,%esp
4280ad:	5d                   	pop    %ebp
4280ae:	c2 04 00             	ret    $0x4
4280b1:	8b ff                	mov    %edi,%edi
4280b3:	55                   	push   %ebp
4280b4:	8b ec                	mov    %esp,%ebp
4280b6:	83 ec 0c             	sub    $0xc,%esp
4280b9:	53                   	push   %ebx
4280ba:	56                   	push   %esi
4280bb:	57                   	push   %edi
4280bc:	8b f2                	mov    %edx,%esi
4280be:	89 4d f8             	mov    %ecx,-0x8(%ebp)
4280c1:	e8 6e 13 fe ff       	call   0x409434
4280c6:	8b 79 10             	mov    0x10(%ecx),%edi
4280c9:	88 45 ff             	mov    %al,-0x1(%ebp)
4280cc:	84 c0                	test   %al,%al
4280ce:	74 0e                	je     0x4280de
4280d0:	8b cf                	mov    %edi,%ecx
4280d2:	e8 01 02 00 00       	call   0x4282d8
4280d7:	8b 4d f8             	mov    -0x8(%ebp),%ecx
4280da:	8b d8                	mov    %eax,%ebx
4280dc:	eb 03                	jmp    0x4280e1
4280de:	8b 59 08             	mov    0x8(%ecx),%ebx
4280e1:	8b d7                	mov    %edi,%edx
4280e3:	8d 42 02             	lea    0x2(%edx),%eax
4280e6:	89 45 f4             	mov    %eax,-0xc(%ebp)
4280e9:	66 8b 02             	mov    (%edx),%ax
4280ec:	83 c2 02             	add    $0x2,%edx
4280ef:	66 85 c0             	test   %ax,%ax
4280f2:	75 f5                	jne    0x4280e9
4280f4:	2b 55 f4             	sub    -0xc(%ebp),%edx
4280f7:	d1 fa                	sar    $1,%edx
4280f9:	3b de                	cmp    %esi,%ebx
4280fb:	72 14                	jb     0x428111
4280fd:	38 45 ff             	cmp    %al,-0x1(%ebp)
428100:	74 04                	je     0x428106
428102:	2b d3                	sub    %ebx,%edx
428104:	03 f2                	add    %edx,%esi
428106:	33 c0                	xor    %eax,%eax
428108:	66 89 04 77          	mov    %ax,(%edi,%esi,2)
42810c:	89 71 08             	mov    %esi,0x8(%ecx)
42810f:	eb 38                	jmp    0x428149
428111:	8d 04 57             	lea    (%edi,%edx,2),%eax
428114:	89 45 f4             	mov    %eax,-0xc(%ebp)
428117:	8b c6                	mov    %esi,%eax
428119:	2b c3                	sub    %ebx,%eax
42811b:	74 19                	je     0x428136
42811d:	8b 7d f4             	mov    -0xc(%ebp),%edi
428120:	8b c8                	mov    %eax,%ecx
428122:	d1 e9                	shr    $1,%ecx
428124:	b8 20 00 20 00       	mov    $0x200020,%eax
428129:	f3 ab                	rep stos %eax,%es:(%edi)
42812b:	13 c9                	adc    %ecx,%ecx
42812d:	66 f3 ab             	rep stos %ax,%es:(%edi)
428130:	8b 4d f8             	mov    -0x8(%ebp),%ecx
428133:	8b 79 10             	mov    0x10(%ecx),%edi
428136:	80 7d ff 00          	cmpb   $0x0,-0x1(%ebp)
42813a:	74 04                	je     0x428140
42813c:	2b d3                	sub    %ebx,%edx
42813e:	03 f2                	add    %edx,%esi
428140:	33 c0                	xor    %eax,%eax
428142:	89 71 08             	mov    %esi,0x8(%ecx)
428145:	66 89 04 77          	mov    %ax,(%edi,%esi,2)
428149:	5f                   	pop    %edi
42814a:	5e                   	pop    %esi
42814b:	5b                   	pop    %ebx
42814c:	c9                   	leave
42814d:	c3                   	ret
42814e:	83 3d f0 c9 43 00 01 	cmpl   $0x1,0x43c9f0
428155:	8b d1                	mov    %ecx,%edx
428157:	56                   	push   %esi
428158:	0f 84 55 01 00 00    	je     0x4282b3
42815e:	8d 42 e0             	lea    -0x20(%edx),%eax
428161:	66 83 f8 5e          	cmp    $0x5e,%ax
428165:	0f 86 48 01 00 00    	jbe    0x4282b3
42816b:	8d 82 00 d0 ff ff    	lea    -0x3000(%edx),%eax
428171:	66 83 f8 36          	cmp    $0x36,%ax
428175:	0f 86 33 01 00 00    	jbe    0x4282ae
42817b:	8d 82 bf cf ff ff    	lea    -0x3041(%edx),%eax
428181:	66 83 f8 53          	cmp    $0x53,%ax
428185:	0f 86 23 01 00 00    	jbe    0x4282ae
42818b:	8d 82 5f cf ff ff    	lea    -0x30a1(%edx),%eax
428191:	66 83 f8 55          	cmp    $0x55,%ax
428195:	0f 86 13 01 00 00    	jbe    0x4282ae
42819b:	8d 82 fb ce ff ff    	lea    -0x3105(%edx),%eax
4281a1:	66 83 f8 27          	cmp    $0x27,%ax
4281a5:	0f 86 03 01 00 00    	jbe    0x4282ae
4281ab:	6a 5d                	push   $0x5d
4281ad:	8d 82 cf ce ff ff    	lea    -0x3131(%edx),%eax
4281b3:	5e                   	pop    %esi
4281b4:	66 3b c6             	cmp    %si,%ax
4281b7:	0f 86 f1 00 00 00    	jbe    0x4282ae
4281bd:	8d 82 00 ce ff ff    	lea    -0x3200(%edx),%eax
4281c3:	b9 ff 00 00 00       	mov    $0xff,%ecx
4281c8:	66 3b c1             	cmp    %cx,%ax
4281cb:	0f 86 dd 00 00 00    	jbe    0x4282ae
4281d1:	8d 82 00 cd ff ff    	lea    -0x3300(%edx),%eax
4281d7:	49                   	dec    %ecx
4281d8:	66 3b c1             	cmp    %cx,%ax
4281db:	0f 86 cd 00 00 00    	jbe    0x4282ae
4281e1:	8d 82 00 54 00 00    	lea    0x5400(%edx),%eax
4281e7:	b9 a3 2b 00 00       	mov    $0x2ba3,%ecx
4281ec:	66 3b c1             	cmp    %cx,%ax
4281ef:	0f 86 b9 00 00 00    	jbe    0x4282ae
4281f5:	8d 82 00 20 00 00    	lea    0x2000(%edx),%eax
4281fb:	b9 ff 18 00 00       	mov    $0x18ff,%ecx
428200:	66 3b c1             	cmp    %cx,%ax
428203:	0f 86 a5 00 00 00    	jbe    0x4282ae
428209:	8d 82 ff 00 00 00    	lea    0xff(%edx),%eax
42820f:	66 3b c6             	cmp    %si,%ax
428212:	0f 86 96 00 00 00    	jbe    0x4282ae
428218:	8d 82 9f 00 00 00    	lea    0x9f(%edx),%eax
42821e:	66 83 f8 3e          	cmp    $0x3e,%ax
428222:	0f 86 8b 00 00 00    	jbe    0x4282b3
428228:	b8 a0 ff 00 00       	mov    $0xffa0,%eax
42822d:	66 3b c2             	cmp    %dx,%ax
428230:	77 08                	ja     0x42823a
428232:	83 c0 1e             	add    $0x1e,%eax
428235:	66 3b d0             	cmp    %ax,%dx
428238:	76 79                	jbe    0x4282b3
42823a:	b8 c2 ff 00 00       	mov    $0xffc2,%eax
42823f:	66 3b c2             	cmp    %dx,%ax
428242:	77 08                	ja     0x42824c
428244:	83 c0 05             	add    $0x5,%eax
428247:	66 3b d0             	cmp    %ax,%dx
42824a:	76 67                	jbe    0x4282b3
42824c:	b8 ca ff 00 00       	mov    $0xffca,%eax
428251:	66 3b c2             	cmp    %dx,%ax
428254:	77 08                	ja     0x42825e
428256:	83 c0 05             	add    $0x5,%eax
428259:	66 3b d0             	cmp    %ax,%dx
42825c:	76 55                	jbe    0x4282b3
42825e:	b8 d2 ff 00 00       	mov    $0xffd2,%eax
428263:	66 3b c2             	cmp    %dx,%ax
428266:	77 08                	ja     0x428270
428268:	83 c0 05             	add    $0x5,%eax
42826b:	66 3b d0             	cmp    %ax,%dx
42826e:	76 43                	jbe    0x4282b3
428270:	8d 42 26             	lea    0x26(%edx),%eax
428273:	66 83 f8 02          	cmp    $0x2,%ax
428277:	76 3a                	jbe    0x4282b3
428279:	8d 42 20             	lea    0x20(%edx),%eax
42827c:	66 83 f8 06          	cmp    $0x6,%ax
428280:	76 2c                	jbe    0x4282ae
428282:	8d 82 00 b2 ff ff    	lea    -0x4e00(%edx),%eax
428288:	b9 a5 51 00 00       	mov    $0x51a5,%ecx
42828d:	66 3b c1             	cmp    %cx,%ax
428290:	76 1c                	jbe    0x4282ae
428292:	8d 8a 00 07 00 00    	lea    0x700(%edx),%ecx
428298:	be 2d 01 00 00       	mov    $0x12d,%esi
42829d:	66 3b ce             	cmp    %si,%cx
4282a0:	76 0c                	jbe    0x4282ae
4282a2:	8d 8a d0 01 00 00    	lea    0x1d0(%edx),%ecx
4282a8:	66 83 f9 1f          	cmp    $0x1f,%cx
4282ac:	77 05                	ja     0x4282b3
4282ae:	33 c0                	xor    %eax,%eax
4282b0:	40                   	inc    %eax
4282b1:	5e                   	pop    %esi
4282b2:	c3                   	ret
4282b3:	33 c0                	xor    %eax,%eax
4282b5:	5e                   	pop    %esi
4282b6:	c3                   	ret
4282b7:	8b ff                	mov    %edi,%edi
4282b9:	56                   	push   %esi
4282ba:	8b 71 20             	mov    0x20(%ecx),%esi
4282bd:	57                   	push   %edi
4282be:	8b fa                	mov    %edx,%edi
4282c0:	89 71 18             	mov    %esi,0x18(%ecx)
4282c3:	85 ff                	test   %edi,%edi
4282c5:	74 0b                	je     0x4282d2
4282c7:	8b c6                	mov    %esi,%eax
4282c9:	33 d2                	xor    %edx,%edx
4282cb:	f7 f7                	div    %edi
4282cd:	2b f2                	sub    %edx,%esi
4282cf:	89 71 18             	mov    %esi,0x18(%ecx)
4282d2:	89 79 14             	mov    %edi,0x14(%ecx)
4282d5:	5f                   	pop    %edi
4282d6:	5e                   	pop    %esi
4282d7:	c3                   	ret
4282d8:	8b ff                	mov    %edi,%edi
4282da:	56                   	push   %esi
4282db:	57                   	push   %edi
4282dc:	8b f1                	mov    %ecx,%esi
4282de:	33 ff                	xor    %edi,%edi
4282e0:	e8 4f 11 fe ff       	call   0x409434
4282e5:	84 c0                	test   %al,%al
4282e7:	74 2a                	je     0x428313
4282e9:	0f b7 06             	movzwl (%esi),%eax
4282ec:	66 85 c0             	test   %ax,%ax
4282ef:	74 1e                	je     0x42830f
4282f1:	8b c8                	mov    %eax,%ecx
4282f3:	e8 56 fe ff ff       	call   0x42814e
4282f8:	33 c9                	xor    %ecx,%ecx
4282fa:	8d 76 02             	lea    0x2(%esi),%esi
4282fd:	85 c0                	test   %eax,%eax
4282ff:	0f 95 c1             	setne  %cl
428302:	41                   	inc    %ecx
428303:	03 f9                	add    %ecx,%edi
428305:	0f b7 0e             	movzwl (%esi),%ecx
428308:	8b c1                	mov    %ecx,%eax
42830a:	66 85 c9             	test   %cx,%cx
42830d:	75 e2                	jne    0x4282f1
42830f:	8b c7                	mov    %edi,%eax
428311:	eb 14                	jmp    0x428327
428313:	8d 4e 02             	lea    0x2(%esi),%ecx
428316:	66 8b 06             	mov    (%esi),%ax
428319:	83 c6 02             	add    $0x2,%esi
42831c:	66 3b c7             	cmp    %di,%ax
42831f:	75 f5                	jne    0x428316
428321:	2b f1                	sub    %ecx,%esi
428323:	d1 fe                	sar    $1,%esi
428325:	8b c6                	mov    %esi,%eax
428327:	5f                   	pop    %edi
428328:	5e                   	pop    %esi
428329:	c3                   	ret
42832a:	8b ff                	mov    %edi,%edi
42832c:	55                   	push   %ebp
42832d:	8b ec                	mov    %esp,%ebp
42832f:	83 ec 7c             	sub    $0x7c,%esp
428332:	a1 b4 e0 42 00       	mov    0x42e0b4,%eax
428337:	33 c5                	xor    %ebp,%eax
428339:	89 45 f8             	mov    %eax,-0x8(%ebp)
42833c:	56                   	push   %esi
42833d:	8b 75 08             	mov    0x8(%ebp),%esi
428340:	8d 45 14             	lea    0x14(%ebp),%eax
428343:	57                   	push   %edi
428344:	89 45 8c             	mov    %eax,-0x74(%ebp)
428347:	33 ff                	xor    %edi,%edi
428349:	8d 45 8c             	lea    -0x74(%ebp),%eax
42834c:	89 7d 90             	mov    %edi,-0x70(%ebp)
42834f:	50                   	push   %eax
428350:	6a 0a                	push   $0xa
428352:	8d 45 90             	lea    -0x70(%ebp),%eax
428355:	50                   	push   %eax
428356:	57                   	push   %edi
428357:	ff 75 0c             	push   0xc(%ebp)
42835a:	57                   	push   %edi
42835b:	68 00 19 00 00       	push   $0x1900
428360:	ff 15 88 a1 44 00    	call   *0x44a188
428366:	89 7d 8c             	mov    %edi,-0x74(%ebp)
428369:	85 c0                	test   %eax,%eax
42836b:	75 78                	jne    0x4283e5
42836d:	6a 10                	push   $0x10
42836f:	8d 45 d8             	lea    -0x28(%ebp),%eax
428372:	50                   	push   %eax
428373:	ff 75 0c             	push   0xc(%ebp)
428376:	ff 15 90 a3 44 00    	call   *0x44a390
42837c:	83 c4 0c             	add    $0xc,%esp
42837f:	8d 45 94             	lea    -0x6c(%ebp),%eax
428382:	6a 20                	push   $0x20
428384:	50                   	push   %eax
428385:	6a ff                	push   $0xffffffff
428387:	8d 45 d8             	lea    -0x28(%ebp),%eax
42838a:	50                   	push   %eax
42838b:	ff 15 90 a1 44 00    	call   *0x44a190
428391:	8b c8                	mov    %eax,%ecx
428393:	e8 b0 5e fe ff       	call   0x40e248
428398:	f7 d8                	neg    %eax
42839a:	1b c0                	sbb    %eax,%eax
42839c:	f7 d8                	neg    %eax
42839e:	50                   	push   %eax
42839f:	57                   	push   %edi
4283a0:	ff 15 68 a2 44 00    	call   *0x44a268
4283a6:	81 7d 0c 28 23 00 00 	cmpl   $0x2328,0xc(%ebp)
4283ad:	8d 45 94             	lea    -0x6c(%ebp),%eax
4283b0:	89 45 84             	mov    %eax,-0x7c(%ebp)
4283b3:	b8 70 3e 40 00       	mov    $0x403e70,%eax
4283b8:	73 05                	jae    0x4283bf
4283ba:	b8 88 3e 40 00       	mov    $0x403e88,%eax
4283bf:	89 45 88             	mov    %eax,-0x78(%ebp)
4283c2:	8d 45 84             	lea    -0x7c(%ebp),%eax
4283c5:	50                   	push   %eax
4283c6:	6a 0a                	push   $0xa
4283c8:	8d 45 90             	lea    -0x70(%ebp),%eax
4283cb:	50                   	push   %eax
4283cc:	57                   	push   %edi
4283cd:	68 3d 01 00 00       	push   $0x13d
4283d2:	57                   	push   %edi
4283d3:	68 00 31 00 00       	push   $0x3100
4283d8:	ff 15 88 a1 44 00    	call   *0x44a188
4283de:	85 c0                	test   %eax,%eax
4283e0:	75 03                	jne    0x4283e5
4283e2:	40                   	inc    %eax
4283e3:	eb 2f                	jmp    0x428414
4283e5:	ff 75 90             	push   -0x70(%ebp)
4283e8:	ba 00 1f 40 00       	mov    $0x401f00,%edx
4283ed:	8b ce                	mov    %esi,%ecx
4283ef:	e8 10 e2 fe ff       	call   0x416604
4283f4:	8b 56 10             	mov    0x10(%esi),%edx
4283f7:	8b ce                	mov    %esi,%ecx
4283f9:	e8 c7 c5 fd ff       	call   0x4049c5
4283fe:	85 c0                	test   %eax,%eax
428400:	74 07                	je     0x428409
428402:	8b ce                	mov    %esi,%ecx
428404:	e8 86 c5 fd ff       	call   0x40498f
428409:	ff 75 90             	push   -0x70(%ebp)
42840c:	ff 15 4c a1 44 00    	call   *0x44a14c
428412:	33 c0                	xor    %eax,%eax
428414:	8b 4d f8             	mov    -0x8(%ebp),%ecx
428417:	5f                   	pop    %edi
428418:	33 cd                	xor    %ebp,%ecx
42841a:	5e                   	pop    %esi
42841b:	e8 10 e7 fe ff       	call   0x416b30
428420:	c9                   	leave
428421:	c3                   	ret