00401000 <.text>:
401000:	68 c0 0a 42 00       	push   $0x420ac0
401005:	b9 48 47 42 00       	mov    $0x424748,%ecx
40100a:	e8 b1 12 00 00       	call   0x4022c0
40100f:	68 50 a3 41 00       	push   $0x41a350
401014:	e8 c9 21 00 00       	call   0x4031e2
401019:	59                   	pop    %ecx
40101a:	c3                   	ret
40101b:	cc                   	int3
40101c:	cc                   	int3
40101d:	cc                   	int3
40101e:	cc                   	int3
40101f:	cc                   	int3
401020:	68 4c 47 42 00       	push   $0x42474c
401025:	ff 15 38 b0 41 00    	call   *0x41b038
40102b:	68 b0 a3 41 00       	push   $0x41a3b0
401030:	e8 ad 21 00 00       	call   0x4031e2
401035:	59                   	pop    %ecx
401036:	c3                   	ret
401037:	cc                   	int3
401038:	cc                   	int3
401039:	cc                   	int3
40103a:	cc                   	int3
40103b:	cc                   	int3
40103c:	cc                   	int3
40103d:	cc                   	int3
40103e:	cc                   	int3
40103f:	cc                   	int3
401040:	68 c0 a3 41 00       	push   $0x41a3c0
401045:	e8 98 21 00 00       	call   0x4031e2
40104a:	59                   	pop    %ecx
40104b:	c3                   	ret
40104c:	cc                   	int3
40104d:	cc                   	int3
40104e:	cc                   	int3
40104f:	cc                   	int3
401050:	55                   	push   %ebp
401051:	8b ec                	mov    %esp,%ebp
401053:	6a ff                	push   $0xffffffff
401055:	68 ea a1 41 00       	push   $0x41a1ea
40105a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
401060:	50                   	push   %eax
401061:	a1 0c 30 42 00       	mov    0x42300c,%eax
401066:	33 c5                	xor    %ebp,%eax
401068:	50                   	push   %eax
401069:	8d 45 f4             	lea    -0xc(%ebp),%eax
40106c:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
401072:	e8 09 06 00 00       	call   0x401680
401077:	8b c8                	mov    %eax,%ecx
401079:	85 c9                	test   %ecx,%ecx
40107b:	75 0a                	jne    0x401087
40107d:	68 05 40 00 80       	push   $0x80004005
401082:	e8 39 03 00 00       	call   0x4013c0
401087:	8b 01                	mov    (%ecx),%eax
401089:	ff 50 0c             	call   *0xc(%eax)
40108c:	83 c0 10             	add    $0x10,%eax
40108f:	a3 6c 47 42 00       	mov    %eax,0x42476c
401094:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
40109b:	68 d0 a3 41 00       	push   $0x41a3d0
4010a0:	e8 3d 21 00 00       	call   0x4031e2
4010a5:	83 c4 04             	add    $0x4,%esp
4010a8:	8b 4d f4             	mov    -0xc(%ebp),%ecx
4010ab:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4010b2:	59                   	pop    %ecx
4010b3:	8b e5                	mov    %ebp,%esp
4010b5:	5d                   	pop    %ebp
4010b6:	c3                   	ret
4010b7:	b9 38 3e 42 00       	mov    $0x423e38,%ecx
4010bc:	e8 bb 2c 00 00       	call   0x403d7c
4010c1:	68 26 a4 41 00       	push   $0x41a426
4010c6:	e8 17 21 00 00       	call   0x4031e2
4010cb:	59                   	pop    %ecx
4010cc:	c3                   	ret
4010cd:	cc                   	int3
4010ce:	cc                   	int3
4010cf:	cc                   	int3
4010d0:	b8 f0 46 42 00       	mov    $0x4246f0,%eax
4010d5:	c3                   	ret
4010d6:	cc                   	int3
4010d7:	cc                   	int3
4010d8:	cc                   	int3
4010d9:	cc                   	int3
4010da:	cc                   	int3
4010db:	cc                   	int3
4010dc:	cc                   	int3
4010dd:	cc                   	int3
4010de:	cc                   	int3
4010df:	cc                   	int3
4010e0:	55                   	push   %ebp
4010e1:	8b ec                	mov    %esp,%ebp
4010e3:	8d 45 14             	lea    0x14(%ebp),%eax
4010e6:	50                   	push   %eax
4010e7:	6a 00                	push   $0x0
4010e9:	ff 75 10             	push   0x10(%ebp)
4010ec:	ff 75 0c             	push   0xc(%ebp)
4010ef:	ff 75 08             	push   0x8(%ebp)
4010f2:	e8 d9 ff ff ff       	call   0x4010d0
4010f7:	ff 70 04             	push   0x4(%eax)
4010fa:	ff 30                	push   (%eax)
4010fc:	e8 04 56 00 00       	call   0x406705
401101:	83 c9 ff             	or     $0xffffffff,%ecx
401104:	83 c4 1c             	add    $0x1c,%esp
401107:	85 c0                	test   %eax,%eax
401109:	0f 48 c1             	cmovs  %ecx,%eax
40110c:	5d                   	pop    %ebp
40110d:	c3                   	ret
40110e:	cc                   	int3
40110f:	cc                   	int3
401110:	55                   	push   %ebp
401111:	8b ec                	mov    %esp,%ebp
401113:	83 e4 f8             	and    $0xfffffff8,%esp
401116:	83 ec 40             	sub    $0x40,%esp
401119:	a1 0c 30 42 00       	mov    0x42300c,%eax
40111e:	33 c4                	xor    %esp,%eax
401120:	89 44 24 3c          	mov    %eax,0x3c(%esp)
401124:	8b 45 08             	mov    0x8(%ebp),%eax
401127:	8d 0c 24             	lea    (%esp),%ecx
40112a:	51                   	push   %ecx
40112b:	50                   	push   %eax
40112c:	e8 f5 5d 00 00       	call   0x406f26
401131:	83 c4 08             	add    $0x8,%esp
401134:	85 c0                	test   %eax,%eax
401136:	75 19                	jne    0x401151
401138:	8b 44 24 18          	mov    0x18(%esp),%eax
40113c:	8b 54 24 1c          	mov    0x1c(%esp),%edx
401140:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
401144:	33 cc                	xor    %esp,%ecx
401146:	e8 0b 1e 00 00       	call   0x402f56
40114b:	8b e5                	mov    %ebp,%esp
40114d:	5d                   	pop    %ebp
40114e:	c2 04 00             	ret    $0x4
401151:	8b 4c 24 3c          	mov    0x3c(%esp),%ecx
401155:	33 c0                	xor    %eax,%eax
401157:	33 cc                	xor    %esp,%ecx
401159:	33 d2                	xor    %edx,%edx
40115b:	e8 f6 1d 00 00       	call   0x402f56
401160:	8b e5                	mov    %ebp,%esp
401162:	5d                   	pop    %ebp
401163:	c2 04 00             	ret    $0x4
401166:	cc                   	int3
401167:	cc                   	int3
401168:	cc                   	int3
401169:	cc                   	int3
40116a:	cc                   	int3
40116b:	cc                   	int3
40116c:	cc                   	int3
40116d:	cc                   	int3
40116e:	cc                   	int3
40116f:	cc                   	int3
401170:	55                   	push   %ebp
401171:	8b ec                	mov    %esp,%ebp
401173:	6a ff                	push   $0xffffffff
401175:	68 90 9f 41 00       	push   $0x419f90
40117a:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
401180:	50                   	push   %eax
401181:	51                   	push   %ecx
401182:	b8 4c 26 00 00       	mov    $0x264c,%eax
401187:	e8 14 72 01 00       	call   0x4183a0
40118c:	a1 0c 30 42 00       	mov    0x42300c,%eax
401191:	33 c5                	xor    %ebp,%eax
401193:	89 45 ec             	mov    %eax,-0x14(%ebp)
401196:	53                   	push   %ebx
401197:	56                   	push   %esi
401198:	57                   	push   %edi
401199:	50                   	push   %eax
40119a:	8d 45 f4             	lea    -0xc(%ebp),%eax
40119d:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
4011a3:	89 65 f0             	mov    %esp,-0x10(%ebp)
4011a6:	8b 75 0c             	mov    0xc(%ebp),%esi
4011a9:	c7 85 ac d9 ff ff 4c 	movl   $0x42474c,-0x2654(%ebp)
4011b0:	47 42 00
4011b3:	56                   	push   %esi
4011b4:	ff 15 3c b0 41 00    	call   *0x41b03c
4011ba:	68 4c 47 42 00       	push   $0x42474c
4011bf:	ff 15 2c b0 41 00    	call   *0x41b02c
4011c5:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
4011cc:	68 04 01 00 00       	push   $0x104
4011d1:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
4011d7:	50                   	push   %eax
4011d8:	6a 00                	push   $0x0
4011da:	ff 15 30 b0 41 00    	call   *0x41b030
4011e0:	8d 8d e4 fd ff ff    	lea    -0x21c(%ebp),%ecx
4011e6:	8d 51 02             	lea    0x2(%ecx),%edx
4011e9:	0f 1f 80 00 00 00 00 	nopl   0x0(%eax)
4011f0:	66 8b 01             	mov    (%ecx),%ax
4011f3:	83 c1 02             	add    $0x2,%ecx
4011f6:	66 85 c0             	test   %ax,%ax
4011f9:	75 f5                	jne    0x4011f0
4011fb:	2b ca                	sub    %edx,%ecx
4011fd:	d1 f9                	sar    $1,%ecx
4011ff:	89 8d b0 d9 ff ff    	mov    %ecx,-0x2650(%ebp)
401205:	85 c9                	test   %ecx,%ecx
401207:	78 18                	js     0x401221
401209:	66 83 bc 4d e4 fd ff 	cmpw   $0x5c,-0x21c(%ebp,%ecx,2)
401210:	ff 5c
401212:	74 0d                	je     0x401221
401214:	33 c0                	xor    %eax,%eax
401216:	66 89 84 4d e4 fd ff 	mov    %ax,-0x21c(%ebp,%ecx,2)
40121d:	ff
40121e:	49                   	dec    %ecx
40121f:	eb de                	jmp    0x4011ff
401221:	68 28 0a 42 00       	push   $0x420a28
401226:	8d 85 e4 fd ff ff    	lea    -0x21c(%ebp),%eax
40122c:	50                   	push   %eax
40122d:	68 50 0a 42 00       	push   $0x420a50
401232:	68 04 01 00 00       	push   $0x104
401237:	8d 85 dc fb ff ff    	lea    -0x424(%ebp),%eax
40123d:	50                   	push   %eax
40123e:	e8 9d fe ff ff       	call   0x4010e0
401243:	6a 00                	push   $0x0
401245:	e8 d3 67 00 00       	call   0x407a1d
40124a:	89 85 a4 d9 ff ff    	mov    %eax,-0x265c(%ebp)
401250:	89 95 a8 d9 ff ff    	mov    %edx,-0x2658(%ebp)
401256:	8d 85 a4 d9 ff ff    	lea    -0x265c(%ebp),%eax
40125c:	50                   	push   %eax
40125d:	8d 85 b8 d9 ff ff    	lea    -0x2648(%ebp),%eax
401263:	50                   	push   %eax
401264:	e8 52 5f 00 00       	call   0x4071bb
401269:	ff b5 b8 d9 ff ff    	push   -0x2648(%ebp)
40126f:	ff b5 bc d9 ff ff    	push   -0x2644(%ebp)
401275:	ff b5 c0 d9 ff ff    	push   -0x2640(%ebp)
40127b:	ff b5 c4 d9 ff ff    	push   -0x263c(%ebp)
401281:	8b 85 c8 d9 ff ff    	mov    -0x2638(%ebp),%eax
401287:	40                   	inc    %eax
401288:	50                   	push   %eax
401289:	8b 85 cc d9 ff ff    	mov    -0x2634(%ebp),%eax
40128f:	05 6c 07 00 00       	add    $0x76c,%eax
401294:	50                   	push   %eax
401295:	68 5c 0a 42 00       	push   $0x420a5c
40129a:	68 00 01 00 00       	push   $0x100
40129f:	8d 85 dc d9 ff ff    	lea    -0x2624(%ebp),%eax
4012a5:	50                   	push   %eax
4012a6:	e8 35 fe ff ff       	call   0x4010e0
4012ab:	83 c4 44             	add    $0x44,%esp
4012ae:	56                   	push   %esi
4012af:	68 00 11 00 00       	push   $0x1100
4012b4:	8d 85 dc d9 ff ff    	lea    -0x2624(%ebp),%eax
4012ba:	50                   	push   %eax
4012bb:	e8 d9 63 00 00       	call   0x407699
4012c0:	68 88 0a 42 00       	push   $0x420a88
4012c5:	68 00 11 00 00       	push   $0x1100
4012ca:	8d 85 dc d9 ff ff    	lea    -0x2624(%ebp),%eax
4012d0:	50                   	push   %eax
4012d1:	e8 c3 63 00 00       	call   0x407699
4012d6:	83 c4 18             	add    $0x18,%esp
4012d9:	c7 85 b4 d9 ff ff 00 	movl   $0x0,-0x264c(%ebp)
4012e0:	00 00 00
4012e3:	8d 85 dc fb ff ff    	lea    -0x424(%ebp),%eax
4012e9:	50                   	push   %eax
4012ea:	e8 21 fe ff ff       	call   0x401110
4012ef:	85 d2                	test   %edx,%edx
4012f1:	7c 10                	jl     0x401303
4012f3:	7f 07                	jg     0x4012fc
4012f5:	3d 00 00 02 00       	cmp    $0x20000,%eax
4012fa:	76 07                	jbe    0x401303
4012fc:	68 8c 0a 42 00       	push   $0x420a8c
401301:	eb 05                	jmp    0x401308
401303:	68 a4 0a 42 00       	push   $0x420aa4
401308:	8d 85 dc fb ff ff    	lea    -0x424(%ebp),%eax
40130e:	50                   	push   %eax
40130f:	8d 85 b4 d9 ff ff    	lea    -0x264c(%ebp),%eax
401315:	50                   	push   %eax
401316:	e8 6c 5f 00 00       	call   0x407287
40131b:	83 c4 0c             	add    $0xc,%esp
40131e:	8b 85 b4 d9 ff ff    	mov    -0x264c(%ebp),%eax
401324:	85 c0                	test   %eax,%eax
401326:	74 4a                	je     0x401372
401328:	6a 02                	push   $0x2
40132a:	6a 00                	push   $0x0
40132c:	50                   	push   %eax
40132d:	e8 4c 63 00 00       	call   0x40767e
401332:	83 c4 0c             	add    $0xc,%esp
401335:	8d 8d dc d9 ff ff    	lea    -0x2624(%ebp),%ecx
40133b:	8d 51 02             	lea    0x2(%ecx),%edx
40133e:	66 90                	xchg   %ax,%ax
401340:	66 8b 01             	mov    (%ecx),%ax
401343:	83 c1 02             	add    $0x2,%ecx
401346:	66 85 c0             	test   %ax,%ax
401349:	75 f5                	jne    0x401340
40134b:	2b ca                	sub    %edx,%ecx
40134d:	d1 f9                	sar    $1,%ecx
40134f:	ff b5 b4 d9 ff ff    	push   -0x264c(%ebp)
401355:	51                   	push   %ecx
401356:	6a 02                	push   $0x2
401358:	8d 85 dc d9 ff ff    	lea    -0x2624(%ebp),%eax
40135e:	50                   	push   %eax
40135f:	e8 e2 65 00 00       	call   0x407946
401364:	ff b5 b4 d9 ff ff    	push   -0x264c(%ebp)
40136a:	e8 d5 5f 00 00       	call   0x407344
40136f:	83 c4 14             	add    $0x14,%esp
401372:	68 4c 47 42 00       	push   $0x42474c
401377:	ff 15 34 b0 41 00    	call   *0x41b034
40137d:	c7 45 fc ff ff ff ff 	movl   $0xffffffff,-0x4(%ebp)
401384:	8b 4d f4             	mov    -0xc(%ebp),%ecx
401387:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
40138e:	59                   	pop    %ecx
40138f:	5f                   	pop    %edi
401390:	5e                   	pop    %esi
401391:	5b                   	pop    %ebx
401392:	8b 4d ec             	mov    -0x14(%ebp),%ecx
401395:	33 cd                	xor    %ebp,%ecx
401397:	e8 ba 1b 00 00       	call   0x402f56
40139c:	8b e5                	mov    %ebp,%esp
40139e:	5d                   	pop    %ebp
40139f:	c2 08 00             	ret    $0x8
4013a2:	ff b5 ac d9 ff ff    	push   -0x2654(%ebp)
4013a8:	ff 15 34 b0 41 00    	call   *0x41b034
4013ae:	b8 7d 13 40 00       	mov    $0x40137d,%eax
4013b3:	c3                   	ret
4013b4:	cc                   	int3
4013b5:	cc                   	int3
4013b6:	cc                   	int3
4013b7:	cc                   	int3
4013b8:	cc                   	int3
4013b9:	cc                   	int3
4013ba:	cc                   	int3
4013bb:	cc                   	int3
4013bc:	cc                   	int3
4013bd:	cc                   	int3
4013be:	cc                   	int3
4013bf:	cc                   	int3
4013c0:	55                   	push   %ebp
4013c1:	8b ec                	mov    %esp,%ebp
4013c3:	8b 45 08             	mov    0x8(%ebp),%eax
4013c6:	89 45 08             	mov    %eax,0x8(%ebp)
4013c9:	8d 45 08             	lea    0x8(%ebp),%eax
4013cc:	68 e8 1f 42 00       	push   $0x421fe8
4013d1:	50                   	push   %eax
4013d2:	e8 60 31 00 00       	call   0x404537
4013d7:	cc                   	int3
4013d8:	cc                   	int3
4013d9:	cc                   	int3
4013da:	cc                   	int3
4013db:	cc                   	int3
4013dc:	cc                   	int3
4013dd:	cc                   	int3
4013de:	cc                   	int3
4013df:	cc                   	int3
4013e0:	55                   	push   %ebp
4013e1:	8b ec                	mov    %esp,%ebp
4013e3:	8b 4d 08             	mov    0x8(%ebp),%ecx
4013e6:	83 f9 50             	cmp    $0x50,%ecx
4013e9:	77 26                	ja     0x401411
4013eb:	0f b6 81 2c 14 40 00 	movzbl 0x40142c(%ecx),%eax
4013f2:	ff 24 85 1c 14 40 00 	jmp    *0x40141c(,%eax,4)
4013f9:	8b c1                	mov    %ecx,%eax
4013fb:	5d                   	pop    %ebp
4013fc:	c3                   	ret
4013fd:	68 0e 00 07 80       	push   $0x8007000e
401402:	e8 b9 ff ff ff       	call   0x4013c0